@things-factory/operato-wms 4.3.758 → 4.3.760
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/client/pages/outbound/loading-v2/delivery-order-info.js +38 -3
- package/client/pages/outbound/loading-v2/loading-execution-base.js +122 -19
- package/dist-server/graphql/resolvers/outbound/complete-load.js +8 -18
- package/dist-server/graphql/resolvers/outbound/complete-load.js.map +1 -1
- package/dist-server/graphql/resolvers/outbound/find-loadable-release-good-by-bin.js +15 -0
- package/dist-server/graphql/resolvers/outbound/find-loadable-release-good-by-bin.js.map +1 -1
- package/dist-server/graphql/resolvers/outbound/find-loadable-release-good.js +9 -8
- package/dist-server/graphql/resolvers/outbound/find-loadable-release-good.js.map +1 -1
- package/dist-server/graphql/resolvers/outbound/load-by-qty.js +115 -45
- package/dist-server/graphql/resolvers/outbound/load-by-qty.js.map +1 -1
- package/dist-server/graphql/resolvers/outbound/loading-worksheet-v2.js +4 -0
- package/dist-server/graphql/resolvers/outbound/loading-worksheet-v2.js.map +1 -1
- package/dist-server/graphql/resolvers/outbound/undo-load.js +94 -42
- package/dist-server/graphql/resolvers/outbound/undo-load.js.map +1 -1
- package/dist-server/graphql/resolvers/route-label/route-label.js +8 -12
- package/dist-server/graphql/resolvers/route-label/route-label.js.map +1 -1
- package/dist-server/graphql/resolvers/zone-worksheet/zone-picking.js +31 -2
- package/dist-server/graphql/resolvers/zone-worksheet/zone-picking.js.map +1 -1
- package/package.json +4 -4
- package/server/graphql/resolvers/outbound/complete-load.ts +8 -18
- package/server/graphql/resolvers/outbound/find-loadable-release-good-by-bin.ts +15 -0
- package/server/graphql/resolvers/outbound/find-loadable-release-good.ts +9 -7
- package/server/graphql/resolvers/outbound/load-by-qty.ts +198 -81
- package/server/graphql/resolvers/outbound/loading-worksheet-v2.ts +4 -0
- package/server/graphql/resolvers/outbound/undo-load.ts +116 -44
- package/server/graphql/resolvers/route-label/route-label.ts +9 -12
- package/server/graphql/resolvers/zone-worksheet/zone-picking.ts +41 -2
|
@@ -8,7 +8,7 @@ const worksheet_base_1 = require("@things-factory/worksheet-base");
|
|
|
8
8
|
const warehouse_base_1 = require("@things-factory/warehouse-base");
|
|
9
9
|
exports.loadByQty = {
|
|
10
10
|
async loadByQty(_, { worksheetDetailPatch }, context) {
|
|
11
|
-
var _a;
|
|
11
|
+
var _a, _b, _c;
|
|
12
12
|
try {
|
|
13
13
|
const { domain, user, tx } = context.state;
|
|
14
14
|
console.time('load');
|
|
@@ -52,52 +52,122 @@ exports.loadByQty = {
|
|
|
52
52
|
});
|
|
53
53
|
const updatedOrderInventories = [];
|
|
54
54
|
for (const wsd of updatedWorksheetDetails) {
|
|
55
|
-
//
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
55
|
+
// Check if this is combined data with multiple order inventory references
|
|
56
|
+
// (from bin scan flow with combineSameProductsWithAllRefs)
|
|
57
|
+
if (wsd.allRelatedOrderInvs && wsd.allRelatedOrderInvs.length > 0) {
|
|
58
|
+
// Combined mode: distribute loadedQty across multiple order inventories (FIFO)
|
|
59
|
+
let remainingLoadQty = wsd.loadedQty;
|
|
60
|
+
for (const ref of wsd.allRelatedOrderInvs) {
|
|
61
|
+
if (remainingLoadQty <= 0)
|
|
62
|
+
break;
|
|
63
|
+
let orderInventory = orderInventories.find(oi => oi.id === ref.id);
|
|
64
|
+
if (!orderInventory)
|
|
65
|
+
continue;
|
|
66
|
+
const foundWorksheetDetail = worksheet.worksheetDetails.find(foundWsd => foundWsd.targetInventory.id === orderInventory.id);
|
|
67
|
+
if (!foundWorksheetDetail)
|
|
68
|
+
continue;
|
|
69
|
+
// Skip if already loaded or DO generated
|
|
70
|
+
if (orderInventory.status === sales_base_1.ORDER_INVENTORY_STATUS.LOADED || orderInventory.deliveryOrderId !== null) {
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
// Calculate how much to load from this order inventory
|
|
74
|
+
const availableQty = orderInventory.pickedQty;
|
|
75
|
+
const qtyToLoad = Math.min(remainingLoadQty, availableQty);
|
|
76
|
+
remainingLoadQty -= qtyToLoad;
|
|
77
|
+
if (qtyToLoad === orderInventory.releaseQty) {
|
|
78
|
+
// Full load - mark as LOADED
|
|
79
|
+
orderInventory = Object.assign(Object.assign({}, orderInventory), { status: sales_base_1.ORDER_INVENTORY_STATUS.LOADED, updater: user, updatedAt: new Date() });
|
|
80
|
+
await tx.getRepository(worksheet_base_1.WorksheetDetail).update(foundWorksheetDetail.id, {
|
|
81
|
+
status: worksheet_base_1.WORKSHEET_STATUS.DONE,
|
|
82
|
+
updater: user,
|
|
83
|
+
updatedAt: new Date()
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
else if (qtyToLoad < orderInventory.releaseQty && qtyToLoad > 0) {
|
|
87
|
+
// Partial load - split order inventory
|
|
88
|
+
const remainingOiQty = orderInventory.releaseQty - qtyToLoad;
|
|
89
|
+
const newOrderInventory = tx.getRepository(sales_base_1.OrderInventory).create(Object.assign(Object.assign({}, orderInventory), { id: undefined, name: sales_base_1.OrderNoGenerator.orderInventory(), releaseQty: remainingOiQty, releaseUomValue: (orderInventory.releaseUomValue / orderInventory.releaseQty) * remainingOiQty, pickedQty: orderInventory.pickedQty - qtyToLoad, sortedQty: orderInventory.sortedQty === 0 ? 0 : orderInventory.sortedQty - qtyToLoad, status: orderInventory.status, updater: user, updatedAt: new Date() }));
|
|
90
|
+
await tx.getRepository(sales_base_1.OrderInventory).save(newOrderInventory);
|
|
91
|
+
const newWorksheetDetail = tx.getRepository(worksheet_base_1.WorksheetDetail).create(Object.assign(Object.assign({}, foundWorksheetDetail), { id: undefined, name: `LOAD-DETAIL-` + (0, uuid_1.v4)(), worksheet: worksheet, targetInventory: newOrderInventory, status: worksheet_base_1.WORKSHEET_STATUS.EXECUTING, updater: user, updatedAt: new Date() }));
|
|
92
|
+
await tx.getRepository(worksheet_base_1.WorksheetDetail).save(newWorksheetDetail);
|
|
93
|
+
orderInventory = Object.assign(Object.assign({}, orderInventory), { status: sales_base_1.ORDER_INVENTORY_STATUS.LOADED, releaseUomValue: (orderInventory.releaseUomValue / orderInventory.releaseQty) * qtyToLoad, releaseQty: qtyToLoad, pickedQty: qtyToLoad, sortedQty: qtyToLoad, updater: user, updatedAt: new Date() });
|
|
94
|
+
await tx.getRepository(worksheet_base_1.WorksheetDetail).update(foundWorksheetDetail.id, {
|
|
95
|
+
status: worksheet_base_1.WORKSHEET_STATUS.DONE,
|
|
96
|
+
updater: user,
|
|
97
|
+
updatedAt: new Date()
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
// qtyToLoad is 0, skip this order inventory
|
|
102
|
+
continue;
|
|
103
|
+
}
|
|
104
|
+
const inventory = await tx.getRepository(warehouse_base_1.Inventory).findOne({
|
|
105
|
+
where: { id: orderInventory.inventoryId }
|
|
106
|
+
});
|
|
107
|
+
await (0, warehouse_base_1.generateInventoryHistory)(inventory, releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.LOADING, 0, 0, user, tx);
|
|
108
|
+
updatedOrderInventories.push(orderInventory);
|
|
109
|
+
}
|
|
110
|
+
// Validate that all requested quantity was loaded
|
|
111
|
+
if (remainingLoadQty > 0) {
|
|
112
|
+
console.warn(`Could not fully distribute loadedQty for SKU ${wsd.productSku}. Remaining: ${remainingLoadQty}`);
|
|
113
|
+
}
|
|
61
114
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
updatedAt: new Date()
|
|
115
|
+
else {
|
|
116
|
+
// Standard mode: single order inventory reference
|
|
117
|
+
// Support both:
|
|
118
|
+
// 1. Match by worksheetDetail name (when using LOADING_WORKSHEET_V2 query)
|
|
119
|
+
// 2. Match by relatedOrderInv.id (when name is null)
|
|
120
|
+
let foundWorksheetDetail;
|
|
121
|
+
let orderInventory;
|
|
122
|
+
if (wsd.name) {
|
|
123
|
+
foundWorksheetDetail = worksheet.worksheetDetails.find(foundWsd => foundWsd.name === wsd.name);
|
|
124
|
+
if (foundWorksheetDetail) {
|
|
125
|
+
orderInventory = orderInventories.find(oi => oi.id === foundWorksheetDetail.targetInventory.id);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
if (!foundWorksheetDetail && ((_a = wsd.relatedOrderInv) === null || _a === void 0 ? void 0 : _a.id)) {
|
|
129
|
+
orderInventory = orderInventories.find(oi => oi.id === wsd.relatedOrderInv.id);
|
|
130
|
+
if (orderInventory) {
|
|
131
|
+
foundWorksheetDetail = worksheet.worksheetDetails.find(foundWsd => foundWsd.targetInventory.id === orderInventory.id);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
if (!foundWorksheetDetail || !orderInventory) {
|
|
135
|
+
console.warn(`Could not find worksheet detail or order inventory for item: ${JSON.stringify({ name: wsd.name, relatedOrderInvId: (_b = wsd.relatedOrderInv) === null || _b === void 0 ? void 0 : _b.id, productSku: wsd.productSku })}`);
|
|
136
|
+
continue;
|
|
137
|
+
}
|
|
138
|
+
if (orderInventory.status === sales_base_1.ORDER_INVENTORY_STATUS.LOADED || orderInventory.deliveryOrderId !== null) {
|
|
139
|
+
continue;
|
|
140
|
+
}
|
|
141
|
+
if (wsd.loadedQty > orderInventory.pickedQty) {
|
|
142
|
+
throw new Error('Load qty is more than picked qty for sku ' + wsd.productSku);
|
|
143
|
+
}
|
|
144
|
+
else if (wsd.loadedQty == orderInventory.releaseQty) {
|
|
145
|
+
orderInventory = Object.assign(Object.assign({}, orderInventory), { status: sales_base_1.ORDER_INVENTORY_STATUS.LOADED, updater: user, updatedAt: new Date() });
|
|
146
|
+
await tx.getRepository(worksheet_base_1.WorksheetDetail).update(foundWorksheetDetail.id, {
|
|
147
|
+
status: worksheet_base_1.WORKSHEET_STATUS.DONE,
|
|
148
|
+
updater: user,
|
|
149
|
+
updatedAt: new Date()
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
else if (wsd.loadedQty < orderInventory.releaseQty) {
|
|
153
|
+
const remainingQty = orderInventory.releaseQty - wsd.loadedQty;
|
|
154
|
+
const newOrderInventory = tx.getRepository(sales_base_1.OrderInventory).create(Object.assign(Object.assign({}, orderInventory), { id: undefined, name: sales_base_1.OrderNoGenerator.orderInventory(), releaseQty: remainingQty, releaseUomValue: (orderInventory.releaseUomValue / orderInventory.releaseQty) * remainingQty, pickedQty: orderInventory.pickedQty - wsd.loadedQty, sortedQty: orderInventory.sortedQty === 0 ? 0 : orderInventory.sortedQty - wsd.loadedQty, status: orderInventory.status, updater: user, updatedAt: new Date() }));
|
|
155
|
+
await tx.getRepository(sales_base_1.OrderInventory).save(newOrderInventory);
|
|
156
|
+
const newWorksheetDetail = tx.getRepository(worksheet_base_1.WorksheetDetail).create(Object.assign(Object.assign({}, foundWorksheetDetail), { id: undefined, name: `LOAD-DETAIL-` + (0, uuid_1.v4)(), worksheet: worksheet, targetInventory: newOrderInventory, status: worksheet_base_1.WORKSHEET_STATUS.EXECUTING, updater: user, updatedAt: new Date() }));
|
|
157
|
+
await tx.getRepository(worksheet_base_1.WorksheetDetail).save(newWorksheetDetail);
|
|
158
|
+
orderInventory = Object.assign(Object.assign({}, orderInventory), { status: sales_base_1.ORDER_INVENTORY_STATUS.LOADED, releaseUomValue: (orderInventory.releaseUomValue / orderInventory.releaseQty) * wsd.loadedQty, releaseQty: wsd.loadedQty, pickedQty: wsd.loadedQty, sortedQty: wsd.loadedQty, updater: user, updatedAt: new Date() });
|
|
159
|
+
await tx.getRepository(worksheet_base_1.WorksheetDetail).update(foundWorksheetDetail.id, {
|
|
160
|
+
status: worksheet_base_1.WORKSHEET_STATUS.DONE,
|
|
161
|
+
updater: user,
|
|
162
|
+
updatedAt: new Date()
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
const inventory = await tx.getRepository(warehouse_base_1.Inventory).findOne({
|
|
166
|
+
where: { id: orderInventory.inventoryId }
|
|
93
167
|
});
|
|
168
|
+
await (0, warehouse_base_1.generateInventoryHistory)(inventory, releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.LOADING, 0, 0, user, tx);
|
|
169
|
+
updatedOrderInventories.push(orderInventory);
|
|
94
170
|
}
|
|
95
|
-
const inventory = await tx.getRepository(warehouse_base_1.Inventory).findOne({
|
|
96
|
-
where: { id: orderInventory.inventoryId }
|
|
97
|
-
});
|
|
98
|
-
// generate inventory history
|
|
99
|
-
await (0, warehouse_base_1.generateInventoryHistory)(inventory, releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.LOADING, 0, 0, user, tx);
|
|
100
|
-
updatedOrderInventories.push(orderInventory);
|
|
101
171
|
}
|
|
102
172
|
if (updatedOrderInventories.length < 1) {
|
|
103
173
|
return false;
|
|
@@ -107,7 +177,7 @@ exports.loadByQty = {
|
|
|
107
177
|
truckNo: worksheetDetailPatch === null || worksheetDetailPatch === void 0 ? void 0 : worksheetDetailPatch.vehicleNo,
|
|
108
178
|
ownCollection: worksheetDetailPatch === null || worksheetDetailPatch === void 0 ? void 0 : worksheetDetailPatch.ownCollection,
|
|
109
179
|
totalPalletQty: worksheetDetailPatch === null || worksheetDetailPatch === void 0 ? void 0 : worksheetDetailPatch.palletQty,
|
|
110
|
-
contactPointRefId: ((
|
|
180
|
+
contactPointRefId: ((_c = releaseGood.deliverTo) === null || _c === void 0 ? void 0 : _c.id) || null
|
|
111
181
|
};
|
|
112
182
|
const createdDo = await (0, sales_base_1.generateDeliveryOrder)(deliveryOrder, updatedOrderInventories, releaseGood.bizplace, releaseGood, domain, user, tx);
|
|
113
183
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-by-qty.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/outbound/load-by-qty.ts"],"names":[],"mappings":";;;AAAA,qCAA2C;AAC3C,+BAAmC;AAInC,2DAQmC;AACnC,mEAA6G;AAC7G,mEAAgH;AAEnG,QAAA,SAAS,GAAG;IACvB,KAAK,CAAC,SAAS,CAAC,CAAM,EAAE,EAAE,oBAAoB,EAAE,EAAE,OAAY;;QAC5D,IAAI;YACF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;YAC7F,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACpB,MAAM,uBAAuB,GAAG,oBAAoB,CAAC,gBAAgB,CAAA;YACrE,MAAM,aAAa,GAAG,oBAAoB,CAAC,aAAa,CAAA;YACxD,MAAM,WAAW,GAAgB,MAAM,EAAE,CAAC,aAAa,CAAC,wBAAW,CAAC,CAAC,OAAO,CAAC;gBAC3E,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE;gBACtC,SAAS,EAAE,CAAC,UAAU,EAAE,kBAAkB,CAAC;aAC5C,CAAC,CAAA;YAEF,IAAI,CAAC,WAAW,EAAE;gBAChB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;aAC1C;YAED,MAAM,SAAS,GAAc,MAAM,EAAE,CAAC,aAAa,CAAC,0BAAS,CAAC,CAAC,OAAO,CAAC;gBACrE,KAAK,EAAE;oBACL,MAAM;oBACN,WAAW;oBACX,IAAI,EAAE,+BAAc,CAAC,OAAO;oBAC5B,MAAM,EAAE,IAAA,YAAE,EAAC;wBACT,iCAAgB,CAAC,SAAS;wBAC1B,iCAAgB,CAAC,iBAAiB;qBACnC,CAAC;iBACH;gBACD,SAAS,EAAE,CAAC,kBAAkB,EAAE,kCAAkC,EAAE,yBAAyB,CAAC;aAC/F,CAAC,CAAA;YAEF,IAAI,CAAC,SAAS,EAAE;gBACd,MAAM,IAAI,KAAK,CAAC,uCAAuC,GAAG,aAAa,CAAC,CAAA;aACzE;YAED,MAAM,KAAK,GAAG,SAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAoB,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC,CAAA;YAC9F,MAAM,gBAAgB,GAAqB,MAAM,EAAE,CAAC,aAAa,CAAC,2BAAc,CAAC,CAAC,IAAI,CAAC;gBACrF,KAAK,EAAE,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,KAAK,CAAC,EAAE;gBACxB,SAAS,EAAE;oBACT,WAAW;oBACX,QAAQ;oBACR,UAAU;oBACV,aAAa;oBACb,SAAS;oBACT,eAAe;oBACf,aAAa;oBACb,cAAc;iBACf;aACF,CAAC,CAAA;YAEF,MAAM,uBAAuB,GAAqB,EAAE,CAAA;YACpD,KAAK,MAAM,GAAG,IAAI,uBAAuB,EAAE;gBACzC,
|
|
1
|
+
{"version":3,"file":"load-by-qty.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/outbound/load-by-qty.ts"],"names":[],"mappings":"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"}
|
|
@@ -86,6 +86,10 @@ exports.loadingWorksheetv2 = {
|
|
|
86
86
|
if (filter === FILTER_TYPES.LOADING) {
|
|
87
87
|
if (shouldFilterBySortedQty(releaseGood.status, disableQc)) {
|
|
88
88
|
qb.andWhere('targetInventory.sortedQty > 0');
|
|
89
|
+
// Exclude LOADED items - they should only appear in LOADED tab
|
|
90
|
+
qb.andWhere('targetInventory.status <> :loadedStatus', {
|
|
91
|
+
loadedStatus: sales_base_1.ORDER_INVENTORY_STATUS.LOADED
|
|
92
|
+
});
|
|
89
93
|
}
|
|
90
94
|
else {
|
|
91
95
|
qb.andWhere('targetInventory.status IN (:...loadingStatus)', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loading-worksheet-v2.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/outbound/loading-worksheet-v2.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"loading-worksheet-v2.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/outbound/loading-worksheet-v2.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.undoLoad = void 0;
|
|
4
|
+
const typeorm_1 = require("typeorm");
|
|
4
5
|
const sales_base_1 = require("@things-factory/sales-base");
|
|
5
6
|
const warehouse_base_1 = require("@things-factory/warehouse-base");
|
|
6
7
|
const worksheet_base_1 = require("@things-factory/worksheet-base");
|
|
@@ -15,56 +16,107 @@ exports.undoLoad = {
|
|
|
15
16
|
throw new Error(`Delivery order not found`);
|
|
16
17
|
}
|
|
17
18
|
const releaseGood = deliveryOrder.releaseGood;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
19
|
+
const doInventories = deliveryOrder.orderInventories;
|
|
20
|
+
if (!doInventories.length) {
|
|
21
|
+
await tx.getRepository(sales_base_1.DeliveryOrder).delete(deliveryOrder.id);
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
// OPTIMIZATION 1: Batch fetch all worksheet details in one query instead of N queries
|
|
25
|
+
const doInventoryIds = doInventories.map(oi => oi.id);
|
|
26
|
+
const worksheetDetails = await tx.getRepository(worksheet_base_1.WorksheetDetail).find({
|
|
27
|
+
where: {
|
|
28
|
+
targetInventory: { id: (0, typeorm_1.In)(doInventoryIds) },
|
|
29
|
+
type: worksheet_base_1.WORKSHEET_TYPE.LOADING,
|
|
30
|
+
status: worksheet_base_1.WORKSHEET_STATUS.DONE
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
// Create a map for O(1) lookup of worksheet details by targetInventory.id
|
|
34
|
+
const wsdByTargetId = new Map();
|
|
35
|
+
worksheetDetails.forEach((wsd) => {
|
|
36
|
+
var _a;
|
|
37
|
+
const targetInvId = (_a = wsd.targetInventory) === null || _a === void 0 ? void 0 : _a.id;
|
|
38
|
+
if (targetInvId) {
|
|
39
|
+
wsdByTargetId.set(targetInvId, wsd);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
// OPTIMIZATION 2: Create a map for O(1) lookup of previous (split) order inventories
|
|
43
|
+
// Key: inventoryId_productId_productDetailId, Value: OrderInventory with LOADING status
|
|
44
|
+
const previousOiMap = new Map();
|
|
45
|
+
const doInventoryIdSet = new Set(doInventoryIds);
|
|
46
|
+
releaseGood.orderInventories.forEach(roInventory => {
|
|
47
|
+
if (!doInventoryIdSet.has(roInventory.id) && roInventory.status === sales_base_1.ORDER_INVENTORY_STATUS.LOADING) {
|
|
48
|
+
const key = `${roInventory.inventoryId}_${roInventory.productId}_${roInventory.productDetailId}`;
|
|
49
|
+
previousOiMap.set(key, roInventory);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
// Categorize order inventories for batch processing
|
|
53
|
+
const toTerminate = [];
|
|
54
|
+
const toRevert = [];
|
|
55
|
+
for (const doInventory of doInventories) {
|
|
56
|
+
const worksheetDetail = wsdByTargetId.get(doInventory.id);
|
|
57
|
+
const lookupKey = `${doInventory.inventoryId}_${doInventory.productId}_${doInventory.productDetailId}`;
|
|
58
|
+
const previousOi = previousOiMap.get(lookupKey);
|
|
28
59
|
if (previousOi) {
|
|
29
|
-
|
|
30
|
-
await tx.getRepository(sales_base_1.OrderInventory).update(previousOi.id, {
|
|
31
|
-
releaseQty: previousOi.releaseQty + doInventory.releaseQty,
|
|
32
|
-
pickedQty: previousOi.pickedQty + doInventory.pickedQty,
|
|
33
|
-
sortedQty: previousOi.sortedQty + doInventory.sortedQty,
|
|
34
|
-
releaseUomValue: previousOi.releaseUomValue + doInventory.releaseUomValue,
|
|
35
|
-
updater: user,
|
|
36
|
-
updatedAt: new Date()
|
|
37
|
-
});
|
|
38
|
-
//terminate splitted oi
|
|
39
|
-
await tx.getRepository(sales_base_1.OrderInventory).update(doInventory.id, {
|
|
40
|
-
deliveryOrder: null,
|
|
41
|
-
status: sales_base_1.ORDER_INVENTORY_STATUS.TERMINATED,
|
|
42
|
-
updatedAt: new Date(),
|
|
43
|
-
updater: user
|
|
44
|
-
});
|
|
45
|
-
//delete wsd
|
|
46
|
-
await tx.getRepository(worksheet_base_1.WorksheetDetail).delete({ id: worksheetDetail.id, status: worksheet_base_1.WORKSHEET_STATUS.DONE });
|
|
60
|
+
toTerminate.push({ doInventory, previousOi, wsd: worksheetDetail });
|
|
47
61
|
}
|
|
48
62
|
else {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
63
|
+
toRevert.push({ doInventory, wsd: worksheetDetail });
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
// OPTIMIZATION 3: Batch update operations
|
|
67
|
+
const now = new Date();
|
|
68
|
+
// Process terminations (split order inventories)
|
|
69
|
+
if (toTerminate.length > 0) {
|
|
70
|
+
// Update previous OIs with combined quantities - must be done individually due to different values
|
|
71
|
+
await Promise.all(toTerminate.map(({ doInventory, previousOi }) => tx.getRepository(sales_base_1.OrderInventory).update(previousOi.id, {
|
|
72
|
+
releaseQty: previousOi.releaseQty + doInventory.releaseQty,
|
|
73
|
+
pickedQty: previousOi.pickedQty + doInventory.pickedQty,
|
|
74
|
+
sortedQty: previousOi.sortedQty + doInventory.sortedQty,
|
|
75
|
+
releaseUomValue: previousOi.releaseUomValue + doInventory.releaseUomValue,
|
|
76
|
+
updater: user,
|
|
77
|
+
updatedAt: now
|
|
78
|
+
})));
|
|
79
|
+
// Batch terminate the DO inventories
|
|
80
|
+
const terminateIds = toTerminate.map(t => t.doInventory.id);
|
|
81
|
+
await tx.getRepository(sales_base_1.OrderInventory).update({ id: (0, typeorm_1.In)(terminateIds) }, {
|
|
82
|
+
deliveryOrder: null,
|
|
83
|
+
status: sales_base_1.ORDER_INVENTORY_STATUS.TERMINATED,
|
|
84
|
+
updatedAt: now,
|
|
85
|
+
updater: user
|
|
86
|
+
});
|
|
87
|
+
// Batch delete worksheet details
|
|
88
|
+
const wsdToDeleteIds = toTerminate.filter(t => { var _a; return (_a = t.wsd) === null || _a === void 0 ? void 0 : _a.id; }).map(t => t.wsd.id);
|
|
89
|
+
if (wsdToDeleteIds.length > 0) {
|
|
90
|
+
await tx.getRepository(worksheet_base_1.WorksheetDetail).delete({ id: (0, typeorm_1.In)(wsdToDeleteIds) });
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
// Process reversions (non-split order inventories)
|
|
94
|
+
if (toRevert.length > 0) {
|
|
95
|
+
// Batch update order inventories to LOADING status
|
|
96
|
+
const revertOiIds = toRevert.map(r => r.doInventory.id);
|
|
97
|
+
await tx.getRepository(sales_base_1.OrderInventory).update({ id: (0, typeorm_1.In)(revertOiIds) }, {
|
|
98
|
+
deliveryOrder: null,
|
|
99
|
+
status: sales_base_1.ORDER_INVENTORY_STATUS.LOADING,
|
|
100
|
+
loadedAt: null,
|
|
101
|
+
loadedByUser: null,
|
|
102
|
+
loadedBy: null,
|
|
103
|
+
updater: user
|
|
104
|
+
});
|
|
105
|
+
// Batch update worksheet details to EXECUTING status
|
|
106
|
+
const wsdToUpdateIds = toRevert.filter(r => { var _a; return (_a = r.wsd) === null || _a === void 0 ? void 0 : _a.id; }).map(r => r.wsd.id);
|
|
107
|
+
if (wsdToUpdateIds.length > 0) {
|
|
108
|
+
await tx.getRepository(worksheet_base_1.WorksheetDetail).update({ id: (0, typeorm_1.In)(wsdToUpdateIds) }, {
|
|
59
109
|
status: worksheet_base_1.WORKSHEET_STATUS.EXECUTING,
|
|
60
110
|
updater: user,
|
|
61
|
-
updatedAt:
|
|
111
|
+
updatedAt: now
|
|
62
112
|
});
|
|
63
113
|
}
|
|
64
|
-
//generate inventory history
|
|
65
|
-
let inventory = doInventory.inventory;
|
|
66
|
-
await (0, warehouse_base_1.generateInventoryHistory)(inventory, releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.UNDO_LOADING, 0, 0, this.user);
|
|
67
114
|
}
|
|
115
|
+
// OPTIMIZATION 4: Generate inventory histories in parallel
|
|
116
|
+
await Promise.all(doInventories.map(doInventory => {
|
|
117
|
+
const inventory = doInventory.inventory;
|
|
118
|
+
return (0, warehouse_base_1.generateInventoryHistory)(inventory, releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.UNDO_LOADING, 0, 0, user, tx);
|
|
119
|
+
}));
|
|
68
120
|
await tx.getRepository(sales_base_1.DeliveryOrder).delete(deliveryOrder.id);
|
|
69
121
|
return true;
|
|
70
122
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"undo-load.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/outbound/undo-load.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"undo-load.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/outbound/undo-load.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.routeLabelSequenceLogs = exports.reserveRouteLabelSequence = exports.routeLabelSequenceStatuses = exports.routeLabelReleaseGoodsInExecutingWorksheet = void 0;
|
|
4
4
|
const typeorm_1 = require("typeorm");
|
|
5
|
-
const worksheet_base_1 = require("@things-factory/worksheet-base");
|
|
6
5
|
const route_label_sequence_counter_1 = require("../../../entities/route-label-sequence-counter");
|
|
7
6
|
const route_label_sequence_log_1 = require("../../../entities/route-label-sequence-log");
|
|
7
|
+
// Statuses to exclude from route label printing
|
|
8
|
+
const EXCLUDED_RO_STATUSES = ['DONE', 'PENDING_CANCEL', 'CANCELLED'];
|
|
8
9
|
function ensureSeqField(field) {
|
|
9
10
|
if (!['refNo', 'refNo2', 'refNo3'].includes(field)) {
|
|
10
11
|
throw new Error('Invalid sequence field. Allowed: refNo, refNo2, refNo3');
|
|
@@ -35,7 +36,7 @@ exports.routeLabelReleaseGoodsInExecutingWorksheet = {
|
|
|
35
36
|
)`;
|
|
36
37
|
}
|
|
37
38
|
const rows = await tx.query(`
|
|
38
|
-
select
|
|
39
|
+
select
|
|
39
40
|
rg.id as "id",
|
|
40
41
|
rg.name as "name",
|
|
41
42
|
rg.ref_no as "refNo",
|
|
@@ -46,18 +47,13 @@ exports.routeLabelReleaseGoodsInExecutingWorksheet = {
|
|
|
46
47
|
rg.store_name as "storeName",
|
|
47
48
|
rg.stop_id as "stopId",
|
|
48
49
|
rg.created_at as "createdAt"
|
|
49
|
-
from
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
where ws.domain_id = $1
|
|
54
|
-
and ws.type = $2
|
|
55
|
-
and ws.status = $3
|
|
56
|
-
and rg.domain_id = $1
|
|
57
|
-
and rg.bizplace_id = $4
|
|
50
|
+
from release_goods rg
|
|
51
|
+
where rg.domain_id = $1
|
|
52
|
+
and rg.bizplace_id = $2
|
|
53
|
+
and rg.status not in ($3, $4, $5)
|
|
58
54
|
${filterRefNo}
|
|
59
55
|
order by rg.created_at desc
|
|
60
|
-
`, [domain.id,
|
|
56
|
+
`, [domain.id, partnerId, ...EXCLUDED_RO_STATUSES]);
|
|
61
57
|
const releaseGoods = rows || [];
|
|
62
58
|
// If seqField is provided, fetch and merge sequence data
|
|
63
59
|
if (seqField && ['refNo', 'refNo2', 'refNo3'].includes(seqField) && releaseGoods.length > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route-label.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/route-label/route-label.ts"],"names":[],"mappings":";;;AAAA,qCAA2C;
|
|
1
|
+
{"version":3,"file":"route-label.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/route-label/route-label.ts"],"names":[],"mappings":"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"}
|