diff --git a/models/baseModels/Invoice/Invoice.ts b/models/baseModels/Invoice/Invoice.ts
index 840fb283..8d010cae 100644
--- a/models/baseModels/Invoice/Invoice.ts
+++ b/models/baseModels/Invoice/Invoice.ts
@@ -50,6 +50,7 @@ import { CouponCode } from '../CouponCode/CouponCode';
import { SalesInvoice } from '../SalesInvoice/SalesInvoice';
import { SalesInvoiceItem } from '../SalesInvoiceItem/SalesInvoiceItem';
import { PricingRuleItem } from '../PricingRuleItem/PricingRuleItem';
+import { getLinkedEntries } from 'src/utils/doc';
export type TaxDetail = {
account: string;
@@ -982,6 +983,17 @@ export abstract class Invoice extends Transactional {
return null;
}
+ let linkedEntries;
+
+ if (this.returnAgainst) {
+ const someDOC = (await this.fyo.doc.getDoc(
+ ModelNameEnum.SalesInvoice,
+ this.returnAgainst
+ )) as SalesInvoice;
+
+ linkedEntries = await getLinkedEntries(someDOC);
+ }
+
if (!this.stockNotTransferred) {
return null;
}
@@ -1005,6 +1017,7 @@ export abstract class Invoice extends Transactional {
terms,
numberSeries,
backReference: this.name,
+ returnAgainst: linkedEntries ? linkedEntries.Shipment![0] : '',
};
let location = this.autoStockTransferLocation;
diff --git a/src/pages/POS/ClassicPOS.vue b/src/pages/POS/ClassicPOS.vue
index 707ad1d3..fae4e18a 100644
--- a/src/pages/POS/ClassicPOS.vue
+++ b/src/pages/POS/ClassicPOS.vue
@@ -339,6 +339,7 @@ import LoyaltyProgramModal from './LoyaltyProgramModal.vue';
import { POSItem, ItemQtyMap } from 'src/components/POS/types';
import ItemsGrid from 'src/components/POS/Classic/ItemsGrid.vue';
import ItemsTable from 'src/components/POS/Classic/ItemsTable.vue';
+import ReturnSalesInvoiceModal from './ReturnSalesInvoiceModal.vue';
import MultiLabelLink from 'src/components/Controls/MultiLabelLink.vue';
import { SalesInvoice } from 'models/baseModels/SalesInvoice/SalesInvoice';
import SelectedItemTable from 'src/components/POS/Classic/SelectedItemTable.vue';
@@ -346,7 +347,6 @@ import WeightEnabledBarcode from 'src/components/Controls/WeightEnabledBarcode.v
import FloatingLabelFloatInput from 'src/components/POS/FloatingLabelFloatInput.vue';
import FloatingLabelCurrencyInput from 'src/components/POS/FloatingLabelCurrencyInput.vue';
import { AppliedCouponCodes } from 'models/baseModels/AppliedCouponCodes/AppliedCouponCodes';
-import ReturnSalesInvoiceModal from './ReturnSalesInvoiceModal.vue';
export default defineComponent({
name: 'ClassicPOS',
@@ -451,6 +451,9 @@ export default defineComponent({
eventName: PosEmits,
...args: (string | boolean | Item | number | Money)[]
) {
+ console.log(eventName, 'eventName');
+ console.log(...args, '...args');
+
this.$emit(eventName, ...args);
},
getItem,
diff --git a/src/pages/POS/POS.vue b/src/pages/POS/POS.vue
index e352734e..7abbdfaf 100644
--- a/src/pages/POS/POS.vue
+++ b/src/pages/POS/POS.vue
@@ -50,6 +50,7 @@
@save-invoice-action="saveInvoiceAction"
@set-transfer-amount="setTransferAmount"
@selected-invoice-name="selectedInvoiceName"
+ @selected-return-invoice="selectedReturnInvoice"
@set-transfer-clearance-date="setTransferClearanceDate"
/>