@devx-commerce/plugin-gati 0.0.34-beta.51 → 0.0.34-beta.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.medusa/server/src/api/erp/webhook/config.js +34 -9
- package/.medusa/server/src/modules/order-proceed-master/index.js +13 -0
- package/.medusa/server/src/modules/order-proceed-master/migrations/Migration20260327100226.js +31 -0
- package/.medusa/server/src/modules/order-proceed-master/models/order-proceed-master.js +38 -0
- package/.medusa/server/src/modules/order-proceed-master/service.js +11 -0
- package/.medusa/server/src/modules/receive-voucher-master/index.js +13 -0
- package/.medusa/server/src/modules/receive-voucher-master/migrations/Migration20260328053649.js +16 -0
- package/.medusa/server/src/modules/receive-voucher-master/models/receive-voucher-master.js +27 -0
- package/.medusa/server/src/modules/receive-voucher-master/service.js +10 -0
- package/.medusa/server/src/modules/sale-return-master/migrations/Migration20260327084135.js +14 -0
- package/.medusa/server/src/modules/sale-return-master/models/sale-return-master.js +3 -1
- package/.medusa/server/src/workflows/index.js +2 -1
- package/.medusa/server/src/workflows/material-purchase-master/steps/create-material-purchase-master.js +41 -2
- package/.medusa/server/src/workflows/material-purchase-master/steps/delete-material-purchase-master.js +22 -1
- package/.medusa/server/src/workflows/material-purchase-master/steps/update-material-purchase-master.js +67 -19
- package/.medusa/server/src/workflows/order-master/steps/process-order-master-from-webhook.js +2 -2
- package/.medusa/server/src/workflows/order-proceed-master/index.js +6 -0
- package/.medusa/server/src/workflows/order-proceed-master/order-proceed-master-webhook.js +26 -0
- package/.medusa/server/src/workflows/order-proceed-master/steps/create-or-update-order-proceed-master.js +186 -0
- package/.medusa/server/src/workflows/order-proceed-master/steps/delete-order-proceed-master-by-erp-ids.js +28 -0
- package/.medusa/server/src/workflows/orders/steps/sync-old-gold-to-erp-step.js +2 -2
- package/.medusa/server/src/workflows/orders/steps/sync-order-to-erp.js +97 -40
- package/.medusa/server/src/workflows/orders/steps/sync-sale-return-to-erp-step.js +102 -2
- package/.medusa/server/src/workflows/orders/utils/order-helper.js +5 -5
- package/.medusa/server/src/workflows/receive-voucher-master/index.js +24 -0
- package/.medusa/server/src/workflows/receive-voucher-master/steps/create-receive-voucher-master.js +125 -0
- package/.medusa/server/src/workflows/receive-voucher-master/steps/delete-receive-voucher-master.js +45 -0
- package/.medusa/server/src/workflows/receive-voucher-master/steps/fetch-receive-voucher-master.js +22 -0
- package/.medusa/server/src/workflows/receive-voucher-master/steps/update-receive-voucher-master.js +44 -0
- package/.medusa/server/src/workflows/sale-return-master/index.js +4 -22
- package/.medusa/server/src/workflows/sale-return-master/sale-return-master-webhook.js +28 -0
- package/.medusa/server/src/workflows/sale-return-master/steps/create-or-update-sale-return-master.js +109 -0
- package/.medusa/server/src/workflows/sale-return-master/steps/delete-sale-return-master-by-erp-ids.js +36 -0
- package/.medusa/server/src/workflows/sale-return-master/steps/process-sale-return-from-webhook.js +232 -0
- package/package.json +1 -1
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deleteOrderProceedMasterByErpIds = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const order_proceed_master_1 = require("../../../modules/order-proceed-master");
|
|
6
|
+
const framework_1 = require("@medusajs/framework");
|
|
7
|
+
exports.deleteOrderProceedMasterByErpIds = (0, workflows_sdk_1.createStep)("delete-order-proceed-master-by-erp-ids", async (input, { container }) => {
|
|
8
|
+
try {
|
|
9
|
+
const orderProceedMasterService = container.resolve(order_proceed_master_1.ORDER_PROCEED_MASTER_MODULE);
|
|
10
|
+
for (const proceedId of input.order_proceed_ids) {
|
|
11
|
+
const existing = await orderProceedMasterService.listOrderProceedMasters({
|
|
12
|
+
erp_order_proceed_id: Number(proceedId),
|
|
13
|
+
});
|
|
14
|
+
if (existing?.length > 0) {
|
|
15
|
+
framework_1.logger.info(`Deleting OrderProceed ${proceedId}.`);
|
|
16
|
+
await Promise.all(existing.map((record) => orderProceedMasterService.deleteOrderProceedMasters(record.id)));
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
return new workflows_sdk_1.StepResponse({
|
|
20
|
+
deletedCount: input.order_proceed_ids.length,
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
framework_1.logger.error("Error in deleteOrderProceedMasterByErpIds:", error);
|
|
25
|
+
throw error;
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLW9yZGVyLXByb2NlZWQtbWFzdGVyLWJ5LWVycC1pZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL29yZGVyLXByb2NlZWQtbWFzdGVyL3N0ZXBzL2RlbGV0ZS1vcmRlci1wcm9jZWVkLW1hc3Rlci1ieS1lcnAtaWRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUU3RSxnRkFBb0Y7QUFDcEYsbURBQTZDO0FBTWhDLFFBQUEsZ0NBQWdDLEdBQUcsSUFBQSwwQkFBVSxFQUN4RCx3Q0FBd0MsRUFDeEMsS0FBSyxFQUFFLEtBQWdELEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ3hFLElBQUksQ0FBQztRQUNILE1BQU0seUJBQXlCLEdBQThCLFNBQVMsQ0FBQyxPQUFPLENBQzVFLGtEQUEyQixDQUM1QixDQUFDO1FBRUYsS0FBSyxNQUFNLFNBQVMsSUFBSSxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNoRCxNQUFNLFFBQVEsR0FBRyxNQUFNLHlCQUF5QixDQUFDLHVCQUF1QixDQUFDO2dCQUN2RSxvQkFBb0IsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDO2FBQ3hDLENBQUMsQ0FBQztZQUVILElBQUksUUFBUSxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDekIsa0JBQU0sQ0FBQyxJQUFJLENBQUMseUJBQXlCLFNBQVMsR0FBRyxDQUFDLENBQUM7Z0JBQ25ELE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDZixRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUUsQ0FDM0IseUJBQXlCLENBQUMseUJBQXlCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUMvRCxDQUNGLENBQUM7WUFDSixDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sSUFBSSw0QkFBWSxDQUFDO1lBQ3RCLFlBQVksRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTTtTQUM3QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLGtCQUFNLENBQUMsS0FBSyxDQUFDLDRDQUE0QyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sS0FBSyxDQUFDO0lBQ2QsQ0FBQztBQUNILENBQUMsQ0FDRixDQUFDIn0=
|
|
@@ -96,7 +96,7 @@ exports.syncOldGoldToErpStep = (0, workflows_sdk_1.createStep)("sync-old-gold-to
|
|
|
96
96
|
MaterialTransDate: transDate,
|
|
97
97
|
PartyNo: partyNo,
|
|
98
98
|
FirmName: (entry.customer_name || "").trim() || "",
|
|
99
|
-
SalesPerson: (entry.
|
|
99
|
+
SalesPerson: (entry.staff_party_no || "").trim() || "",
|
|
100
100
|
BranchNo: (entry.branch_id || "").trim(),
|
|
101
101
|
BranchName: branchName,
|
|
102
102
|
GrossAmount: amount,
|
|
@@ -158,4 +158,4 @@ exports.syncOldGoldToErpStep = (0, workflows_sdk_1.createStep)("sync-old-gold-to
|
|
|
158
158
|
});
|
|
159
159
|
}
|
|
160
160
|
});
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
161
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1vbGQtZ29sZC10by1lcnAtc3RlcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvb3JkZXJzL3N0ZXBzL3N5bmMtb2xkLWdvbGQtdG8tZXJwLXN0ZXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7Ozs7R0FJRztBQUNILHFFQUE2RTtBQUM3RSxxREFBc0U7QUF5Q3RFLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQztBQUM1QixNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUM7QUFFN0IsU0FBUyxXQUFXLENBQUMsTUFBYztJQUNqQyxJQUFJLENBQUMsTUFBTSxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVE7UUFBRSxPQUFPLENBQUMsQ0FBQztJQUNwRCxNQUFNLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNwRCxPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3BDLENBQUM7QUFFRCw0RkFBNEY7QUFDNUYsU0FBUyx1QkFBdUIsQ0FBQyxlQUF1QjtJQUN0RCxNQUFNLENBQUMsR0FBRyxDQUFDLGVBQWUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2RCxJQUFJLENBQUMsS0FBSyxJQUFJO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFDNUIsSUFBSSxDQUFDLEtBQUssS0FBSztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQzlCLElBQUksQ0FBQyxLQUFLLEtBQUs7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUM5QixJQUFJLENBQUMsS0FBSyxLQUFLO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFDOUIsT0FBTyxlQUFlLElBQUksU0FBUyxDQUFDO0FBQ3RDLENBQUM7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
|
|
@@ -18,18 +18,12 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
18
18
|
fields: ["*", "extended_customer.*"],
|
|
19
19
|
filters: { id: order.customer_id || "" },
|
|
20
20
|
});
|
|
21
|
-
// let filter:any = {}
|
|
22
|
-
// if(order?.metadata?.cart_type ==="POS_CART"){
|
|
23
|
-
// filter.party_no = customer.extended_customer?.external_id
|
|
24
|
-
// } else {
|
|
25
|
-
// filter.branch_name= "self"
|
|
26
|
-
// }
|
|
27
21
|
const branch_no = order?.metadata?.branch_no || "";
|
|
28
22
|
const { data: partyData } = await query.graph({
|
|
29
23
|
entity: "party_master",
|
|
30
24
|
fields: ["*"],
|
|
31
25
|
filters: {
|
|
32
|
-
owner_mobile: customer.phone?.replace("+91", ""),
|
|
26
|
+
owner_mobile: customer.phone?.replace("+91", "") || "",
|
|
33
27
|
is_main_client: true,
|
|
34
28
|
},
|
|
35
29
|
});
|
|
@@ -205,7 +199,7 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
205
199
|
if (conflictingJewelCode) {
|
|
206
200
|
console.log("[SYNC ORDER TO ERP] Conflicting jewel_code:", conflictingJewelCode);
|
|
207
201
|
// Find the item with this jewel_code
|
|
208
|
-
const conflictingItem = (order.items || []).find((item) => item
|
|
202
|
+
const conflictingItem = (order.items || []).find((item) => item?.variant_barcode === conflictingJewelCode);
|
|
209
203
|
if (conflictingItem) {
|
|
210
204
|
const styleCode = conflictingItem.variant?.extended_variant
|
|
211
205
|
?.style_code;
|
|
@@ -231,30 +225,27 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
231
225
|
const orderService = container.resolve(utils_1.Modules.ORDER);
|
|
232
226
|
const cartService = container.resolve(utils_1.Modules.CART);
|
|
233
227
|
if (alternativeInward) {
|
|
234
|
-
// Found alternative - update
|
|
228
|
+
// Found alternative - update variant_barcode and metadata, then retry
|
|
235
229
|
console.log("[SYNC ORDER TO ERP] Found alternative jewel_code:", alternativeInward.jewel_code);
|
|
236
|
-
|
|
237
|
-
...(conflictingItem.metadata?.jewel_items || {}),
|
|
238
|
-
jewel_code: alternativeInward.jewel_code,
|
|
239
|
-
jewel_id: alternativeInward.jewel_id,
|
|
240
|
-
};
|
|
241
|
-
// Update order item metadata
|
|
230
|
+
// Update order item with new variant_barcode and jewel_id
|
|
242
231
|
await orderService.updateOrderLineItems([
|
|
243
232
|
{
|
|
244
233
|
selector: { id: conflictingItem.id },
|
|
245
234
|
data: {
|
|
235
|
+
variant_barcode: alternativeInward.jewel_code,
|
|
246
236
|
metadata: {
|
|
247
237
|
...(conflictingItem.metadata || {}),
|
|
248
|
-
|
|
238
|
+
jewel_id: alternativeInward.jewel_id,
|
|
249
239
|
previous_jewel_code: conflictingJewelCode,
|
|
250
240
|
},
|
|
251
241
|
},
|
|
252
242
|
},
|
|
253
243
|
]);
|
|
254
244
|
// Update in-memory order for payload rebuild
|
|
245
|
+
conflictingItem.variant_barcode = alternativeInward.jewel_code;
|
|
255
246
|
conflictingItem.metadata = {
|
|
256
247
|
...(conflictingItem.metadata || {}),
|
|
257
|
-
|
|
248
|
+
jewel_id: alternativeInward.jewel_id,
|
|
258
249
|
};
|
|
259
250
|
// Update cart item if exists
|
|
260
251
|
const cartId = order.metadata?.cart_id;
|
|
@@ -268,9 +259,10 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
268
259
|
await cartService.updateLineItems([
|
|
269
260
|
{
|
|
270
261
|
id: cartItem.id,
|
|
262
|
+
variant_barcode: alternativeInward.jewel_code,
|
|
271
263
|
metadata: {
|
|
272
264
|
...(cartItem.metadata || {}),
|
|
273
|
-
|
|
265
|
+
jewel_id: alternativeInward.jewel_id,
|
|
274
266
|
previous_jewel_code: conflictingJewelCode,
|
|
275
267
|
},
|
|
276
268
|
},
|
|
@@ -292,19 +284,45 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
292
284
|
else {
|
|
293
285
|
// No alternative - convert to make_to_order
|
|
294
286
|
console.log("[SYNC ORDER TO ERP] No alternative jewel_code found, converting to make_to_order");
|
|
295
|
-
//
|
|
287
|
+
// Reset inward_master for conflicting jewel code
|
|
288
|
+
if (conflictingJewelCode) {
|
|
289
|
+
try {
|
|
290
|
+
const { data: inwardRecords } = await query.graph({
|
|
291
|
+
entity: "inward_master",
|
|
292
|
+
fields: ["id"],
|
|
293
|
+
filters: { jewel_code: conflictingJewelCode },
|
|
294
|
+
});
|
|
295
|
+
if (inwardRecords?.length) {
|
|
296
|
+
await container.resolve("extended_variant").updateInwardMasters(inwardRecords.map((r) => ({
|
|
297
|
+
id: r.id,
|
|
298
|
+
is_inward_marked: false,
|
|
299
|
+
inward_order_id: null,
|
|
300
|
+
inward_marked_at: null,
|
|
301
|
+
})));
|
|
302
|
+
console.log(`[SYNC ORDER TO ERP] Released inward reservation for conflicting jewel_code: ${conflictingJewelCode}`);
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
catch (inwardErr) {
|
|
306
|
+
console.error(`[SYNC ORDER TO ERP] Failed to reset inward for conflicting jewel_code:`, inwardErr);
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
// Update order item - remove variant_barcode and metadata.jewel_id
|
|
296
310
|
const updatedItemMetadata = { ...(conflictingItem.metadata || {}) };
|
|
297
|
-
delete updatedItemMetadata.
|
|
311
|
+
delete updatedItemMetadata.jewel_id;
|
|
298
312
|
updatedItemMetadata.converted_to_mto = true;
|
|
299
313
|
updatedItemMetadata.conversion_timestamp = new Date().toISOString();
|
|
300
314
|
await orderService.updateOrderLineItems([
|
|
301
315
|
{
|
|
302
316
|
selector: { id: conflictingItem.id },
|
|
303
|
-
data: {
|
|
317
|
+
data: {
|
|
318
|
+
variant_barcode: undefined,
|
|
319
|
+
metadata: updatedItemMetadata,
|
|
320
|
+
},
|
|
304
321
|
},
|
|
305
322
|
]);
|
|
306
323
|
// Update in-memory order
|
|
307
324
|
conflictingItem.metadata = updatedItemMetadata;
|
|
325
|
+
conflictingItem.variant_barcode = null;
|
|
308
326
|
// Update cart if exists
|
|
309
327
|
const cartId = order.metadata?.cart_id;
|
|
310
328
|
if (cartId && typeof cartId === "string") {
|
|
@@ -315,10 +333,14 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
315
333
|
const cartItem = cart?.items?.find((item) => item.variant_id === conflictingItem.variant_id);
|
|
316
334
|
if (cartItem) {
|
|
317
335
|
const updatedCartMeta = { ...(cartItem.metadata || {}) };
|
|
318
|
-
delete updatedCartMeta.
|
|
336
|
+
delete updatedCartMeta.jewel_id;
|
|
319
337
|
updatedCartMeta.converted_to_mto = true;
|
|
320
338
|
await cartService.updateLineItems([
|
|
321
|
-
{
|
|
339
|
+
{
|
|
340
|
+
id: cartItem.id,
|
|
341
|
+
variant_barcode: undefined,
|
|
342
|
+
metadata: updatedCartMeta,
|
|
343
|
+
},
|
|
322
344
|
]);
|
|
323
345
|
}
|
|
324
346
|
// Update cart order type
|
|
@@ -419,7 +441,7 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
419
441
|
order?.metadata?.cart_type === "POS_CART" &&
|
|
420
442
|
order.metadata.cart_order_type === "ready_to_sell") {
|
|
421
443
|
// Check if all items with jewel_code exist in inward_master with matching branch_no
|
|
422
|
-
const itemsWithJewelCode = (order.items || []).filter((item) => item.
|
|
444
|
+
const itemsWithJewelCode = (order.items || []).filter((item) => item.variant_barcode);
|
|
423
445
|
let allItemsMatch = true;
|
|
424
446
|
if (itemsWithJewelCode.length > 0) {
|
|
425
447
|
const branchNo = branch_data?.branch_no;
|
|
@@ -430,7 +452,7 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
430
452
|
else {
|
|
431
453
|
// Check each item with jewel_code in inward_master
|
|
432
454
|
const inwardChecks = await Promise.all(itemsWithJewelCode.map(async (item) => {
|
|
433
|
-
const jewelCode = item
|
|
455
|
+
const jewelCode = item?.variant_barcode;
|
|
434
456
|
if (!jewelCode)
|
|
435
457
|
return true;
|
|
436
458
|
const { data: [inwardMaster], } = await query.graph({
|
|
@@ -486,7 +508,6 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
486
508
|
console.log("salePayload", JSON.stringify(salePayload, null, 2));
|
|
487
509
|
saleResponse = await erpModuleService.createSale(salePayload, order?.metadata?.cart_type === "POS_CART" ? "POS" : "WEBSITE");
|
|
488
510
|
console.log("saleResponse", JSON.stringify(saleResponse, null, 2));
|
|
489
|
-
// Check if sale creation failed and send Slack notification
|
|
490
511
|
if (saleResponse?.status === false) {
|
|
491
512
|
try {
|
|
492
513
|
const notificationService = container.resolve(utils_1.Modules.NOTIFICATION);
|
|
@@ -514,16 +535,14 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
514
535
|
catch (slackError) {
|
|
515
536
|
console.error("Failed to send Slack notification:", slackError);
|
|
516
537
|
}
|
|
517
|
-
// Sale failed but order succeeded — convert to make_to_order,
|
|
518
|
-
// strip jewel_items from all order items, and release inward reservations
|
|
519
|
-
console.log("[SYNC ORDER TO ERP] Sale failed — converting order to make_to_order and releasing inward reservations");
|
|
520
538
|
try {
|
|
521
539
|
const orderService = container.resolve(utils_1.Modules.ORDER);
|
|
522
540
|
const inwardMasterService = container.resolve("extended_variant");
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
541
|
+
const cartService = container.resolve(utils_1.Modules.CART);
|
|
542
|
+
// Get items with variant_barcode (ready_to_sell items with jewel code)
|
|
543
|
+
const itemsWithJewelCode = (order.items || []).filter((item) => item.variant_barcode);
|
|
544
|
+
for (const item of itemsWithJewelCode) {
|
|
545
|
+
const jewelCode = item?.variant_barcode;
|
|
527
546
|
// Reset inward_master reservation fields
|
|
528
547
|
if (jewelCode) {
|
|
529
548
|
try {
|
|
@@ -546,15 +565,16 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
546
565
|
console.error(`[SYNC ORDER TO ERP] Failed to reset inward for jewel_code ${jewelCode}:`, inwardErr);
|
|
547
566
|
}
|
|
548
567
|
}
|
|
549
|
-
// Remove
|
|
550
|
-
|
|
568
|
+
// Remove variant_barcode and metadata.jewel_id from order item
|
|
569
|
+
const updatedMetadata = { ...(item.metadata || {}) };
|
|
570
|
+
delete updatedMetadata.jewel_id;
|
|
551
571
|
await orderService.updateOrderLineItems([
|
|
552
572
|
{
|
|
553
573
|
selector: { id: item.id },
|
|
554
574
|
data: {
|
|
575
|
+
variant_barcode: undefined,
|
|
555
576
|
metadata: {
|
|
556
|
-
...
|
|
557
|
-
jewel_items: null,
|
|
577
|
+
...updatedMetadata,
|
|
558
578
|
converted_to_mto: true,
|
|
559
579
|
mto_conversion_reason: "sale_creation_failed",
|
|
560
580
|
},
|
|
@@ -562,6 +582,45 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
562
582
|
},
|
|
563
583
|
]);
|
|
564
584
|
}
|
|
585
|
+
// Update cart items if exists
|
|
586
|
+
const cartId = order.metadata?.cart_id;
|
|
587
|
+
if (cartId && typeof cartId === "string") {
|
|
588
|
+
try {
|
|
589
|
+
const cart = await cartService.retrieveCart(cartId, {
|
|
590
|
+
relations: ["items"],
|
|
591
|
+
});
|
|
592
|
+
for (const item of itemsWithJewelCode) {
|
|
593
|
+
const cartItem = cart?.items?.find((ci) => ci.variant_id === item.variant_id);
|
|
594
|
+
if (cartItem) {
|
|
595
|
+
const updatedCartMetadata = { ...(cartItem.metadata || {}) };
|
|
596
|
+
delete updatedCartMetadata.jewel_id;
|
|
597
|
+
await cartService.updateLineItems([
|
|
598
|
+
{
|
|
599
|
+
id: cartItem.id,
|
|
600
|
+
variant_barcode: undefined,
|
|
601
|
+
metadata: {
|
|
602
|
+
...updatedCartMetadata,
|
|
603
|
+
converted_to_mto: true,
|
|
604
|
+
},
|
|
605
|
+
},
|
|
606
|
+
]);
|
|
607
|
+
}
|
|
608
|
+
}
|
|
609
|
+
// Update cart order type
|
|
610
|
+
await cartService.updateCarts([
|
|
611
|
+
{
|
|
612
|
+
id: cartId,
|
|
613
|
+
metadata: {
|
|
614
|
+
...(cart?.metadata || {}),
|
|
615
|
+
cart_order_type: "make_to_order",
|
|
616
|
+
},
|
|
617
|
+
},
|
|
618
|
+
]);
|
|
619
|
+
}
|
|
620
|
+
catch (cartErr) {
|
|
621
|
+
console.error("[SYNC ORDER TO ERP] Cart update error:", cartErr);
|
|
622
|
+
}
|
|
623
|
+
}
|
|
565
624
|
// Convert order to make_to_order
|
|
566
625
|
await orderService.updateOrders([
|
|
567
626
|
{
|
|
@@ -569,8 +628,6 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
569
628
|
metadata: {
|
|
570
629
|
...(order.metadata || {}),
|
|
571
630
|
cart_order_type: "make_to_order",
|
|
572
|
-
original_order_type: order.metadata?.cart_order_type,
|
|
573
|
-
mto_conversion_reason: "sale_creation_failed",
|
|
574
631
|
},
|
|
575
632
|
},
|
|
576
633
|
]);
|
|
@@ -662,4 +719,4 @@ exports.syncOrderToErpStep = (0, workflows_sdk_1.createStep)("sync-order-to-erp"
|
|
|
662
719
|
: null,
|
|
663
720
|
});
|
|
664
721
|
});
|
|
665
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1vcmRlci10by1lcnAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL29yZGVycy9zdGVwcy9zeW5jLW9yZGVyLXRvLWVycC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFBK0U7QUFDL0UscUVBQTZFO0FBRTdFLHdEQUFzRTtBQUV0RSxtREFBNkM7QUFJaEMsUUFBQSxrQkFBa0IsR0FBRyxJQUFBLDBCQUFVLEVBQzFDLG1CQUFtQixFQUNuQixLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQWEsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDNUMsdUZBQXVGO0lBQ3ZGLElBQ0UsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEtBQUssS0FBSztRQUNqQyxLQUFLLEVBQUUsUUFBUSxFQUFFLFFBQVEsS0FBSyxJQUFJLEVBQ2xDLENBQUM7UUFDRCxrQkFBTSxDQUFDLElBQUksQ0FDVCw4QkFBOEIsS0FBSyxDQUFDLEVBQUUsa0NBQWtDLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxHQUFHLENBQzFJLENBQUM7UUFDRixPQUFPLElBQUksNEJBQVksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakUsTUFBTSxFQUNKLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUNqQixHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztRQUNwQixNQUFNLEVBQUUsVUFBVTtRQUNsQixNQUFNLEVBQUUsQ0FBQyxHQUFHLEVBQUUscUJBQXFCLENBQUM7UUFDcEMsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FB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
|
|
722
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1vcmRlci10by1lcnAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL29yZGVycy9zdGVwcy9zeW5jLW9yZGVyLXRvLWVycC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFBK0U7QUFDL0UscUVBQTZFO0FBRTdFLHdEQUFzRTtBQUV0RSxtREFBNkM7QUFJaEMsUUFBQSxrQkFBa0IsR0FBRyxJQUFBLDBCQUFVLEVBQzFDLG1CQUFtQixFQUNuQixLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQWEsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDNUMsdUZBQXVGO0lBQ3ZGLElBQ0UsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEtBQUssS0FBSztRQUNqQyxLQUFLLEVBQUUsUUFBUSxFQUFFLFFBQVEsS0FBSyxJQUFJLEVBQ2xDLENBQUM7UUFDRCxrQkFBTSxDQUFDLElBQUksQ0FDVCw4QkFBOEIsS0FBSyxDQUFDLEVBQUUsa0NBQWtDLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxHQUFHLENBQzFJLENBQUM7UUFDRixPQUFPLElBQUksNEJBQVksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakUsTUFBTSxFQUNKLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUNqQixHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztRQUNwQixNQUFNLEVBQUUsVUFBVTtRQUNsQixNQUFNLEVBQUUsQ0FBQyxHQUFHLEVBQUUscUJBQXFCLENBQUM7UUFDcEMsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FB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
|