@things-factory/worksheet-base 4.3.658 → 4.3.660
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/dist-server/entities/warehouse-bizplace-onhand-inventory.js +8 -0
- package/dist-server/entities/warehouse-bizplace-onhand-inventory.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-arrival-notice-worksheet.js +33 -29
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-arrival-notice-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/proceed-extra-products.js +57 -30
- package/dist-server/graphql/resolvers/worksheet/proceed-extra-products.js.map +1 -1
- package/package.json +11 -11
- package/server/entities/warehouse-bizplace-onhand-inventory.ts +7 -0
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-arrival-notice-worksheet.ts +50 -34
- package/server/graphql/resolvers/worksheet/proceed-extra-products.ts +51 -17
|
@@ -45,6 +45,10 @@ __decorate([
|
|
|
45
45
|
(0, typeorm_1.ViewColumn)(),
|
|
46
46
|
__metadata("design:type", String)
|
|
47
47
|
], WarehouseBizplaceOnhandInventory.prototype, "productId", void 0);
|
|
48
|
+
__decorate([
|
|
49
|
+
(0, typeorm_1.ViewColumn)(),
|
|
50
|
+
__metadata("design:type", String)
|
|
51
|
+
], WarehouseBizplaceOnhandInventory.prototype, "batchId", void 0);
|
|
48
52
|
__decorate([
|
|
49
53
|
(0, typeorm_1.ViewColumn)(),
|
|
50
54
|
__metadata("design:type", String)
|
|
@@ -81,6 +85,7 @@ WarehouseBizplaceOnhandInventory = __decorate([
|
|
|
81
85
|
i.packing_size as "packing_size",
|
|
82
86
|
i.uom,
|
|
83
87
|
i.product_id as "product_id",
|
|
88
|
+
i.batch_id as "batch_id",
|
|
84
89
|
pd.ref_code as "ref_code",
|
|
85
90
|
null as "product_bundle_id",
|
|
86
91
|
COALESCE(SUM(COALESCE(i.qty, 0)) - SUM(COALESCE(i.locked_qty, 0)) - COALESCE(pds.unassigned_qty, 0)) AS "remain_qty",
|
|
@@ -104,6 +109,7 @@ WarehouseBizplaceOnhandInventory = __decorate([
|
|
|
104
109
|
i.packing_type,
|
|
105
110
|
i.packing_size,
|
|
106
111
|
i.uom,
|
|
112
|
+
i.batch_id,
|
|
107
113
|
pds.unassigned_qty,
|
|
108
114
|
pds.unassigned_uom_value,
|
|
109
115
|
pd.ref_code
|
|
@@ -116,6 +122,7 @@ WarehouseBizplaceOnhandInventory = __decorate([
|
|
|
116
122
|
pb.packing_size as "packing_size",
|
|
117
123
|
'UNIT' AS "uom",
|
|
118
124
|
null as "product_id",
|
|
125
|
+
null as "batch_id",
|
|
119
126
|
null as "product_detail_id",
|
|
120
127
|
pb.id AS "product_bundle_id",
|
|
121
128
|
COALESCE(MIN(FLOOR(pbs."available_qty")),0) AS "remain_qty",
|
|
@@ -145,6 +152,7 @@ WarehouseBizplaceOnhandInventory = __decorate([
|
|
|
145
152
|
i.bizplace_id,
|
|
146
153
|
pbs.product_id,
|
|
147
154
|
pbs.product_bundle_id,
|
|
155
|
+
i.batch_id,
|
|
148
156
|
pds.unassigned_qty,
|
|
149
157
|
pds.unassigned_uom_value,
|
|
150
158
|
pd.ref_code
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warehouse-bizplace-onhand-inventory.js","sourceRoot":"","sources":["../../server/entities/warehouse-bizplace-onhand-inventory.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAgD;
|
|
1
|
+
{"version":3,"file":"warehouse-bizplace-onhand-inventory.js","sourceRoot":"","sources":["../../server/entities/warehouse-bizplace-onhand-inventory.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAgD;AAsGzC,IAAM,gCAAgC,GAAtC,MAAM,gCAAgC;CA6C5C,CAAA;AA5CC;IAAC,IAAA,oBAAU,GAAE;;oEACK;AAElB;IAAC,IAAA,oBAAU,GAAE;;sEACO;AAEpB;IAAC,IAAA,oBAAU,GAAE;;kEACG;AAEhB;IAAC,IAAA,oBAAU,GAAE;;oEACK;AAElB;IAAC,IAAA,oBAAU,GAAE;;qEACM;AAEnB;IAAC,IAAA,oBAAU,GAAE;;qEACM;AAEnB;IAAC,IAAA,oBAAU,GAAE;;6DACF;AAEX;IAAC,IAAA,oBAAU,GAAE;;mEACI;AAEjB;IAAC,IAAA,oBAAU,GAAE;;iEACE;AAEf;IAAC,IAAA,oBAAU,GAAE;;yEACU;AAEvB;IAAC,IAAA,oBAAU,GAAE;;mEACI;AAEjB;IAAC,IAAA,oBAAU,GAAE;;wEACS;AAEtB;IAAC,IAAA,oBAAU,GAAE;;qEACM;AAEnB;IAAC,IAAA,oBAAU,GAAE;;0EACW;AAExB;IAAC,IAAA,oBAAU,GAAE;;mEACI;AA5CN,gCAAgC;IApG5C,IAAA,oBAAU,EAAC;QACV,UAAU,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiGX;KACF,CAAC;GACW,gCAAgC,CA6C5C;AA7CY,4EAAgC"}
|
|
@@ -1,43 +1,47 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateArrivalNoticeWorksheetResolver = void 0;
|
|
3
|
+
exports.generateArrivalNoticeWorksheet = exports.generateArrivalNoticeWorksheetResolver = void 0;
|
|
4
4
|
const sales_base_1 = require("@things-factory/sales-base");
|
|
5
5
|
const controllers_1 = require("../../../../controllers");
|
|
6
6
|
const entities_1 = require("../../../../entities");
|
|
7
7
|
exports.generateArrivalNoticeWorksheetResolver = {
|
|
8
8
|
async generateArrivalNoticeWorksheet(_, { arrivalNoticeNos, bufferLocation }, context) {
|
|
9
9
|
const { tx, domain, user } = context.state;
|
|
10
|
-
await
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (crossDocking) {
|
|
23
|
-
arrivalNotice = await tx
|
|
24
|
-
.getRepository(sales_base_1.ArrivalNotice)
|
|
25
|
-
.findOne({ where: { domain: domain, name: arrivalNoticeNo }, relations: ['releaseGood'] });
|
|
26
|
-
const releaseGoodNo = arrivalNotice.releaseGood.name;
|
|
27
|
-
const pickingWSCtrl = new controllers_1.PickingWorksheetController(tx, domain, user);
|
|
28
|
-
await pickingWSCtrl.generatePickingWorksheet(releaseGoodNo);
|
|
29
|
-
}
|
|
30
|
-
const vasWorksheet = await tx.getRepository(entities_1.Worksheet).findOne({
|
|
31
|
-
where: { domain: domain, arrivalNotice }
|
|
10
|
+
return await generateArrivalNoticeWorksheet(tx, domain, user, arrivalNoticeNos, bufferLocation);
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
async function generateArrivalNoticeWorksheet(tx, domain, user, arrivalNoticeNos, bufferLocation) {
|
|
14
|
+
return await Promise.all(arrivalNoticeNos.map(async (arrivalNoticeNo) => {
|
|
15
|
+
var _a;
|
|
16
|
+
try {
|
|
17
|
+
let unloadingWorksheet = await generateUnloadingWorksheet(tx, domain, user, arrivalNoticeNo, bufferLocation);
|
|
18
|
+
if (!((_a = unloadingWorksheet.arrivalNotice) === null || _a === void 0 ? void 0 : _a.id)) {
|
|
19
|
+
unloadingWorksheet = await tx.getRepository(entities_1.Worksheet).findOne({
|
|
20
|
+
where: unloadingWorksheet,
|
|
21
|
+
relations: ['arrivalNotice']
|
|
32
22
|
});
|
|
33
|
-
return { unloadingWorksheet, vasWorksheet };
|
|
34
23
|
}
|
|
35
|
-
|
|
36
|
-
|
|
24
|
+
let arrivalNotice = unloadingWorksheet.arrivalNotice;
|
|
25
|
+
const crossDocking = unloadingWorksheet.arrivalNotice.crossDocking;
|
|
26
|
+
if (crossDocking) {
|
|
27
|
+
arrivalNotice = await tx
|
|
28
|
+
.getRepository(sales_base_1.ArrivalNotice)
|
|
29
|
+
.findOne({ where: { domain: domain, name: arrivalNoticeNo }, relations: ['releaseGood'] });
|
|
30
|
+
const releaseGoodNo = arrivalNotice.releaseGood.name;
|
|
31
|
+
const pickingWSCtrl = new controllers_1.PickingWorksheetController(tx, domain, user);
|
|
32
|
+
await pickingWSCtrl.generatePickingWorksheet(releaseGoodNo);
|
|
37
33
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
};
|
|
34
|
+
const vasWorksheet = await tx.getRepository(entities_1.Worksheet).findOne({
|
|
35
|
+
where: { domain: domain, arrivalNotice }
|
|
36
|
+
});
|
|
37
|
+
return { unloadingWorksheet, vasWorksheet };
|
|
38
|
+
}
|
|
39
|
+
catch (e) {
|
|
40
|
+
throw new Error(e);
|
|
41
|
+
}
|
|
42
|
+
}));
|
|
43
|
+
}
|
|
44
|
+
exports.generateArrivalNoticeWorksheet = generateArrivalNoticeWorksheet;
|
|
41
45
|
async function generateUnloadingWorksheet(tx, domain, user, arrivalNoticeNo, bufferLocation) {
|
|
42
46
|
const worksheetController = new controllers_1.UnloadingWorksheetController(tx, domain, user);
|
|
43
47
|
return await worksheetController.generateUnloadingWorksheet(arrivalNoticeNo, bufferLocation.id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-arrival-notice-worksheet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/generate-worksheet/generate-arrival-notice-worksheet.ts"],"names":[],"mappings":";;;AACA,2DAA0D;AAG1D,yDAAkG;AAClG,mDAAgD;AAEnC,QAAA,sCAAsC,GAAG;IACpD,KAAK,CAAC,8BAA8B,CAAC,CAAM,EAAE,EAAE,gBAAgB,EAAE,cAAc,EAAE,EAAE,OAAY;QAC7F,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"generate-arrival-notice-worksheet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/generate-worksheet/generate-arrival-notice-worksheet.ts"],"names":[],"mappings":";;;AACA,2DAA0D;AAG1D,yDAAkG;AAClG,mDAAgD;AAEnC,QAAA,sCAAsC,GAAG;IACpD,KAAK,CAAC,8BAA8B,CAAC,CAAM,EAAE,EAAE,gBAAgB,EAAE,cAAc,EAAE,EAAE,OAAY;QAC7F,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,OAAO,MAAM,8BAA8B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAA;IACjG,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,8BAA8B,CAClD,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,gBAA0B,EAC1B,cAA8B;IAO9B,OAAO,MAAM,OAAO,CAAC,GAAG,CACtB,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAC,eAAe,EAAC,EAAE;;QAC3C,IAAI;YACF,IAAI,kBAAkB,GAAG,MAAM,0BAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,CAAA;YAE5G,IAAI,CAAC,CAAA,MAAA,kBAAkB,CAAC,aAAa,0CAAE,EAAE,CAAA,EAAE;gBACzC,kBAAkB,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,oBAAS,CAAC,CAAC,OAAO,CAAC;oBAC7D,KAAK,EAAE,kBAAkB;oBACzB,SAAS,EAAE,CAAC,eAAe,CAAC;iBAC7B,CAAC,CAAA;aACH;YAED,IAAI,aAAa,GAAkB,kBAAkB,CAAC,aAAa,CAAA;YACnE,MAAM,YAAY,GAAY,kBAAkB,CAAC,aAAa,CAAC,YAAY,CAAA;YAE3E,IAAI,YAAY,EAAE;gBAChB,aAAa,GAAG,MAAM,EAAE;qBACrB,aAAa,CAAC,0BAAa,CAAC;qBAC5B,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,SAAS,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;gBAE5F,MAAM,aAAa,GAAW,aAAa,CAAC,WAAW,CAAC,IAAI,CAAA;gBAC5D,MAAM,aAAa,GAA+B,IAAI,wCAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;gBAClG,MAAM,aAAa,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAA;aAC5D;YAED,MAAM,YAAY,GAAc,MAAM,EAAE,CAAC,aAAa,CAAC,oBAAS,CAAC,CAAC,OAAO,CAAC;gBACxE,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE;aACzC,CAAC,CAAA;YAEF,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,CAAA;SAC5C;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;SACnB;IACH,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AA/CD,wEA+CC;AAED,KAAK,UAAU,0BAA0B,CACvC,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,eAAuB,EACvB,cAA8B;IAE9B,MAAM,mBAAmB,GAAiC,IAAI,0CAA4B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC5G,OAAO,MAAM,mBAAmB,CAAC,0BAA0B,CAAC,eAAe,EAAE,cAAc,CAAC,EAAE,CAAC,CAAA;AACjG,CAAC"}
|
|
@@ -7,6 +7,7 @@ const sales_base_1 = require("@things-factory/sales-base");
|
|
|
7
7
|
const constants_1 = require("../../../constants");
|
|
8
8
|
const entities_1 = require("../../../entities");
|
|
9
9
|
const utils_1 = require("../../../utils");
|
|
10
|
+
const setting_base_1 = require("@things-factory/setting-base");
|
|
10
11
|
const debug = require('debug')('things-factory:operato-wms:proceedExtraProducts');
|
|
11
12
|
exports.proceedExtraProductsResolver = {
|
|
12
13
|
async proceedExtraProducts(_, { ganNo, bizplaceId, approvedProducts, rejectedProducts }, context) {
|
|
@@ -28,6 +29,9 @@ exports.proceedExtraProductsResolver = {
|
|
|
28
29
|
});
|
|
29
30
|
if (!arrivalNotice)
|
|
30
31
|
throw new Error(`Unable to find ${arrivalNotice.name} under PENDING APPROVAL status`);
|
|
32
|
+
let enableDirectInbound = await tx.getRepository(setting_base_1.Setting).findOne({
|
|
33
|
+
where: { name: 'enable-direct-gan-order', domain }
|
|
34
|
+
});
|
|
31
35
|
// Create worksheet details with approved order products
|
|
32
36
|
const worksheet = await tx.getRepository(entities_1.Worksheet).findOne({
|
|
33
37
|
where: {
|
|
@@ -36,10 +40,19 @@ exports.proceedExtraProductsResolver = {
|
|
|
36
40
|
type: constants_1.WORKSHEET_TYPE.UNLOADING
|
|
37
41
|
}
|
|
38
42
|
});
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
+
if (enableDirectInbound) {
|
|
44
|
+
arrivalNotice.status = sales_base_1.ORDER_STATUS.PENDING;
|
|
45
|
+
arrivalNotice.updater = user;
|
|
46
|
+
await tx.getRepository(sales_base_1.ArrivalNotice).save(arrivalNotice);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
arrivalNotice.status =
|
|
50
|
+
worksheet.status === constants_1.WORKSHEET_STATUS.DEACTIVATED
|
|
51
|
+
? sales_base_1.ORDER_STATUS.READY_TO_UNLOAD
|
|
52
|
+
: sales_base_1.ORDER_STATUS.PROCESSING;
|
|
53
|
+
arrivalNotice.updater = user;
|
|
54
|
+
await tx.getRepository(sales_base_1.ArrivalNotice).save(arrivalNotice);
|
|
55
|
+
}
|
|
43
56
|
const targetProdCnt = arrivalNotice.orderProducts.filter((op) => op.status === sales_base_1.ORDER_PRODUCT_STATUS.ADDED || op.status === sales_base_1.ORDER_PRODUCT_STATUS.EDITED).length;
|
|
44
57
|
const storedOrderProducts = arrivalNotice.orderProducts;
|
|
45
58
|
if (approvedProducts.length + rejectedProducts.length != targetProdCnt)
|
|
@@ -67,38 +80,50 @@ exports.proceedExtraProductsResolver = {
|
|
|
67
80
|
? selectedOrderProduct.adjustedPalletQty
|
|
68
81
|
: selectedOrderProduct.palletQty, unitPrice: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedUnitPrice)
|
|
69
82
|
? selectedOrderProduct.adjustedUnitPrice
|
|
70
|
-
: selectedOrderProduct.unitPrice,
|
|
71
|
-
?
|
|
72
|
-
:
|
|
83
|
+
: selectedOrderProduct.unitPrice, location: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedLocationId)
|
|
84
|
+
? selectedOrderProduct.adjustedLocationId
|
|
85
|
+
: selectedOrderProduct.location, warehouse: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedWarehouseId)
|
|
86
|
+
? selectedOrderProduct.adjustedWarehouseId
|
|
87
|
+
: selectedOrderProduct.warehouse, expDate: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedExpDate)
|
|
88
|
+
? selectedOrderProduct.adjustedExpDate
|
|
89
|
+
: selectedOrderProduct.expDate, status: enableDirectInbound
|
|
90
|
+
? sales_base_1.ORDER_PRODUCT_STATUS.PENDING
|
|
91
|
+
: worksheet.status === constants_1.WORKSHEET_STATUS.DEACTIVATED
|
|
92
|
+
? sales_base_1.ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
|
|
93
|
+
: sales_base_1.ORDER_PRODUCT_STATUS.UNLOADING, updater: user }));
|
|
73
94
|
}));
|
|
74
95
|
}
|
|
75
96
|
if ((addedApprovedProducts === null || addedApprovedProducts === void 0 ? void 0 : addedApprovedProducts.length) > 0) {
|
|
76
97
|
await Promise.all(addedApprovedProducts.map(async (addedApprovedProd) => {
|
|
77
98
|
const selectedOrderProduct = storedOrderProducts.find((op) => op.id === addedApprovedProd.id);
|
|
78
|
-
updatedOrderProducts.push(Object.assign(Object.assign({}, selectedOrderProduct), { batchId: selectedOrderProduct.adjustedBatchId, batchIdRef: selectedOrderProduct.adjustedBatchIdRef, packingType: selectedOrderProduct.adjustedPackingType, packQty: selectedOrderProduct.adjustedPackQty, uom: selectedOrderProduct.adjustedUom, uomValue: selectedOrderProduct.adjustedUomValue, totalUomValue: selectedOrderProduct.adjustedTotalUomValue, palletQty: selectedOrderProduct.adjustedPalletQty, unitPrice: selectedOrderProduct.adjustedUnitPrice,
|
|
79
|
-
? sales_base_1.ORDER_PRODUCT_STATUS.
|
|
80
|
-
:
|
|
99
|
+
updatedOrderProducts.push(Object.assign(Object.assign({}, selectedOrderProduct), { batchId: selectedOrderProduct.adjustedBatchId, batchIdRef: selectedOrderProduct.adjustedBatchIdRef, packingType: selectedOrderProduct.adjustedPackingType, packQty: selectedOrderProduct.adjustedPackQty, uom: selectedOrderProduct.adjustedUom, uomValue: selectedOrderProduct.adjustedUomValue, totalUomValue: selectedOrderProduct.adjustedTotalUomValue, palletQty: selectedOrderProduct.adjustedPalletQty, unitPrice: selectedOrderProduct.adjustedUnitPrice, location: selectedOrderProduct.locationId, warehouse: selectedOrderProduct.warehouseId, expDate: selectedOrderProduct.expDate, status: enableDirectInbound
|
|
100
|
+
? sales_base_1.ORDER_PRODUCT_STATUS.PENDING
|
|
101
|
+
: worksheet.status === constants_1.WORKSHEET_STATUS.DEACTIVATED
|
|
102
|
+
? sales_base_1.ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
|
|
103
|
+
: sales_base_1.ORDER_PRODUCT_STATUS.UNLOADING, updater: user }));
|
|
81
104
|
}));
|
|
82
105
|
}
|
|
83
106
|
debug('approved and updated order product', updatedOrderProducts);
|
|
84
107
|
await tx.getRepository(sales_base_1.OrderProduct).save(updatedOrderProducts);
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
108
|
+
if (!enableDirectInbound) {
|
|
109
|
+
const unloadingWSDs = await Promise.all(addedApprovedProducts.map(async (targetProduct) => {
|
|
110
|
+
return {
|
|
111
|
+
domain,
|
|
112
|
+
bizplace: customerBizplace,
|
|
113
|
+
worksheet,
|
|
114
|
+
name: utils_1.WorksheetNoGenerator.unloadingDetail(),
|
|
115
|
+
targetProduct: await tx.getRepository(sales_base_1.OrderProduct).findOne(targetProduct.id),
|
|
116
|
+
type: constants_1.WORKSHEET_TYPE.UNLOADING,
|
|
117
|
+
status: worksheet.status === constants_1.WORKSHEET_STATUS.EXECUTING
|
|
118
|
+
? constants_1.WORKSHEET_STATUS.EXECUTING
|
|
119
|
+
: constants_1.WORKSHEET_STATUS.DEACTIVATED,
|
|
120
|
+
creator: user,
|
|
121
|
+
updater: user
|
|
122
|
+
};
|
|
123
|
+
}));
|
|
124
|
+
debug('new unloading worksheet details', unloadingWSDs);
|
|
125
|
+
await tx.getRepository(entities_1.WorksheetDetail).save(unloadingWSDs);
|
|
126
|
+
}
|
|
102
127
|
}
|
|
103
128
|
if (rejectedProducts === null || rejectedProducts === void 0 ? void 0 : rejectedProducts.length) {
|
|
104
129
|
const addedRejectedProducts = rejectedProducts.filter((addedRejectedProduct) => addedRejectedProduct.status === sales_base_1.ORDER_PRODUCT_STATUS.ADDED);
|
|
@@ -106,9 +131,11 @@ exports.proceedExtraProductsResolver = {
|
|
|
106
131
|
if ((editedRejectedProducts === null || editedRejectedProducts === void 0 ? void 0 : editedRejectedProducts.length) > 0) {
|
|
107
132
|
editedRejectedProducts = editedRejectedProducts.map((editedRejectProduct) => {
|
|
108
133
|
const selectedOrderProduct = storedOrderProducts.find((op) => op.id === editedRejectProduct.id);
|
|
109
|
-
return Object.assign(Object.assign({}, selectedOrderProduct), { status:
|
|
110
|
-
? sales_base_1.ORDER_PRODUCT_STATUS.
|
|
111
|
-
:
|
|
134
|
+
return Object.assign(Object.assign({}, selectedOrderProduct), { status: enableDirectInbound
|
|
135
|
+
? sales_base_1.ORDER_PRODUCT_STATUS.PENDING
|
|
136
|
+
: worksheet.status === constants_1.WORKSHEET_STATUS.DEACTIVATED
|
|
137
|
+
? sales_base_1.ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
|
|
138
|
+
: sales_base_1.ORDER_PRODUCT_STATUS.UNLOADING, updater: user });
|
|
112
139
|
});
|
|
113
140
|
debug('rejected existing order product changes', editedRejectedProducts);
|
|
114
141
|
await tx.getRepository(sales_base_1.OrderProduct).save(editedRejectedProducts);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proceed-extra-products.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/proceed-extra-products.ts"],"names":[],"mappings":";;;AAEA,yDAAsD;AACtD,uDAAmD;AAEnD,2DAA4G;AAG5G,kDAAqE;AACrE,gDAA8D;AAC9D,0CAAqD;
|
|
1
|
+
{"version":3,"file":"proceed-extra-products.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/proceed-extra-products.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@things-factory/worksheet-base",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.660",
|
|
4
4
|
"main": "dist-server/index.js",
|
|
5
5
|
"browser": "client/index.js",
|
|
6
6
|
"things-factory": true,
|
|
@@ -27,23 +27,23 @@
|
|
|
27
27
|
"@things-factory/biz-base": "^4.3.595",
|
|
28
28
|
"@things-factory/document-template-base": "^4.3.591",
|
|
29
29
|
"@things-factory/id-rule-base": "^4.3.642",
|
|
30
|
-
"@things-factory/integration-accounting": "^4.3.
|
|
30
|
+
"@things-factory/integration-accounting": "^4.3.660",
|
|
31
31
|
"@things-factory/integration-base": "^4.3.653",
|
|
32
|
-
"@things-factory/integration-lmd": "^4.3.
|
|
33
|
-
"@things-factory/integration-marketplace": "^4.3.
|
|
34
|
-
"@things-factory/integration-powrup": "^4.3.
|
|
35
|
-
"@things-factory/integration-sellercraft": "^4.3.
|
|
36
|
-
"@things-factory/integration-sftp": "^4.3.
|
|
37
|
-
"@things-factory/marketplace-base": "^4.3.
|
|
32
|
+
"@things-factory/integration-lmd": "^4.3.660",
|
|
33
|
+
"@things-factory/integration-marketplace": "^4.3.660",
|
|
34
|
+
"@things-factory/integration-powrup": "^4.3.660",
|
|
35
|
+
"@things-factory/integration-sellercraft": "^4.3.660",
|
|
36
|
+
"@things-factory/integration-sftp": "^4.3.660",
|
|
37
|
+
"@things-factory/marketplace-base": "^4.3.660",
|
|
38
38
|
"@things-factory/notification": "^4.3.609",
|
|
39
|
-
"@things-factory/sales-base": "^4.3.
|
|
39
|
+
"@things-factory/sales-base": "^4.3.660",
|
|
40
40
|
"@things-factory/setting-base": "^4.3.609",
|
|
41
41
|
"@things-factory/shell": "^4.3.591",
|
|
42
42
|
"@things-factory/transport-base": "^4.3.631",
|
|
43
|
-
"@things-factory/warehouse-base": "^4.3.
|
|
43
|
+
"@things-factory/warehouse-base": "^4.3.660",
|
|
44
44
|
"jspdf": "2.5.1",
|
|
45
45
|
"puppeteer": "21.0.3",
|
|
46
46
|
"uuid": "^9.0.0"
|
|
47
47
|
},
|
|
48
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "d5c870cd06b2fcacea68ba21baadd244e4532b99"
|
|
49
49
|
}
|
|
@@ -11,6 +11,7 @@ import { ViewColumn, ViewEntity } from 'typeorm'
|
|
|
11
11
|
i.packing_size as "packing_size",
|
|
12
12
|
i.uom,
|
|
13
13
|
i.product_id as "product_id",
|
|
14
|
+
i.batch_id as "batch_id",
|
|
14
15
|
pd.ref_code as "ref_code",
|
|
15
16
|
null as "product_bundle_id",
|
|
16
17
|
COALESCE(SUM(COALESCE(i.qty, 0)) - SUM(COALESCE(i.locked_qty, 0)) - COALESCE(pds.unassigned_qty, 0)) AS "remain_qty",
|
|
@@ -34,6 +35,7 @@ import { ViewColumn, ViewEntity } from 'typeorm'
|
|
|
34
35
|
i.packing_type,
|
|
35
36
|
i.packing_size,
|
|
36
37
|
i.uom,
|
|
38
|
+
i.batch_id,
|
|
37
39
|
pds.unassigned_qty,
|
|
38
40
|
pds.unassigned_uom_value,
|
|
39
41
|
pd.ref_code
|
|
@@ -46,6 +48,7 @@ import { ViewColumn, ViewEntity } from 'typeorm'
|
|
|
46
48
|
pb.packing_size as "packing_size",
|
|
47
49
|
'UNIT' AS "uom",
|
|
48
50
|
null as "product_id",
|
|
51
|
+
null as "batch_id",
|
|
49
52
|
null as "product_detail_id",
|
|
50
53
|
pb.id AS "product_bundle_id",
|
|
51
54
|
COALESCE(MIN(FLOOR(pbs."available_qty")),0) AS "remain_qty",
|
|
@@ -75,6 +78,7 @@ import { ViewColumn, ViewEntity } from 'typeorm'
|
|
|
75
78
|
i.bizplace_id,
|
|
76
79
|
pbs.product_id,
|
|
77
80
|
pbs.product_bundle_id,
|
|
81
|
+
i.batch_id,
|
|
78
82
|
pds.unassigned_qty,
|
|
79
83
|
pds.unassigned_uom_value,
|
|
80
84
|
pd.ref_code
|
|
@@ -121,6 +125,9 @@ export class WarehouseBizplaceOnhandInventory {
|
|
|
121
125
|
@ViewColumn()
|
|
122
126
|
productId: string
|
|
123
127
|
|
|
128
|
+
@ViewColumn()
|
|
129
|
+
batchId: string
|
|
130
|
+
|
|
124
131
|
@ViewColumn()
|
|
125
132
|
productBundleId: string
|
|
126
133
|
|
package/server/graphql/resolvers/worksheet/generate-worksheet/generate-arrival-notice-worksheet.ts
CHANGED
|
@@ -7,43 +7,58 @@ import { Worksheet } from '../../../../entities'
|
|
|
7
7
|
|
|
8
8
|
export const generateArrivalNoticeWorksheetResolver = {
|
|
9
9
|
async generateArrivalNoticeWorksheet(_: any, { arrivalNoticeNos, bufferLocation }, context: any) {
|
|
10
|
-
const { tx, domain, user }
|
|
11
|
-
await
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
const vasWorksheet: Worksheet = await tx.getRepository(Worksheet).findOne({
|
|
37
|
-
where: { domain: domain, arrivalNotice }
|
|
10
|
+
const { tx, domain, user } = context.state
|
|
11
|
+
return await generateArrivalNoticeWorksheet(tx, domain, user, arrivalNoticeNos, bufferLocation)
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export async function generateArrivalNoticeWorksheet(
|
|
16
|
+
tx: EntityManager,
|
|
17
|
+
domain: Domain,
|
|
18
|
+
user: User,
|
|
19
|
+
arrivalNoticeNos: string[],
|
|
20
|
+
bufferLocation: { id: string }
|
|
21
|
+
): Promise<
|
|
22
|
+
{
|
|
23
|
+
unloadingWorksheet: Worksheet
|
|
24
|
+
vasWorksheet: Worksheet | undefined
|
|
25
|
+
}[]
|
|
26
|
+
> {
|
|
27
|
+
return await Promise.all(
|
|
28
|
+
arrivalNoticeNos.map(async arrivalNoticeNo => {
|
|
29
|
+
try {
|
|
30
|
+
let unloadingWorksheet = await generateUnloadingWorksheet(tx, domain, user, arrivalNoticeNo, bufferLocation)
|
|
31
|
+
|
|
32
|
+
if (!unloadingWorksheet.arrivalNotice?.id) {
|
|
33
|
+
unloadingWorksheet = await tx.getRepository(Worksheet).findOne({
|
|
34
|
+
where: unloadingWorksheet,
|
|
35
|
+
relations: ['arrivalNotice']
|
|
38
36
|
})
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
let arrivalNotice: ArrivalNotice = unloadingWorksheet.arrivalNotice
|
|
40
|
+
const crossDocking: boolean = unloadingWorksheet.arrivalNotice.crossDocking
|
|
39
41
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
42
|
+
if (crossDocking) {
|
|
43
|
+
arrivalNotice = await tx
|
|
44
|
+
.getRepository(ArrivalNotice)
|
|
45
|
+
.findOne({ where: { domain: domain, name: arrivalNoticeNo }, relations: ['releaseGood'] })
|
|
46
|
+
|
|
47
|
+
const releaseGoodNo: string = arrivalNotice.releaseGood.name
|
|
48
|
+
const pickingWSCtrl: PickingWorksheetController = new PickingWorksheetController(tx, domain, user)
|
|
49
|
+
await pickingWSCtrl.generatePickingWorksheet(releaseGoodNo)
|
|
43
50
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
51
|
+
|
|
52
|
+
const vasWorksheet: Worksheet = await tx.getRepository(Worksheet).findOne({
|
|
53
|
+
where: { domain: domain, arrivalNotice }
|
|
54
|
+
})
|
|
55
|
+
|
|
56
|
+
return { unloadingWorksheet, vasWorksheet }
|
|
57
|
+
} catch (e) {
|
|
58
|
+
throw new Error(e)
|
|
59
|
+
}
|
|
60
|
+
})
|
|
61
|
+
)
|
|
47
62
|
}
|
|
48
63
|
|
|
49
64
|
async function generateUnloadingWorksheet(
|
|
@@ -56,3 +71,4 @@ async function generateUnloadingWorksheet(
|
|
|
56
71
|
const worksheetController: UnloadingWorksheetController = new UnloadingWorksheetController(tx, domain, user)
|
|
57
72
|
return await worksheetController.generateUnloadingWorksheet(arrivalNoticeNo, bufferLocation.id)
|
|
58
73
|
}
|
|
74
|
+
|
|
@@ -9,6 +9,7 @@ import { Domain } from '@things-factory/shell'
|
|
|
9
9
|
import { WORKSHEET_STATUS, WORKSHEET_TYPE } from '../../../constants'
|
|
10
10
|
import { Worksheet, WorksheetDetail } from '../../../entities'
|
|
11
11
|
import { WorksheetNoGenerator } from '../../../utils'
|
|
12
|
+
import { Setting } from '@things-factory/setting-base'
|
|
12
13
|
|
|
13
14
|
const debug = require('debug')('things-factory:operato-wms:proceedExtraProducts')
|
|
14
15
|
|
|
@@ -38,6 +39,10 @@ export const proceedExtraProductsResolver = {
|
|
|
38
39
|
|
|
39
40
|
if (!arrivalNotice) throw new Error(`Unable to find ${arrivalNotice.name} under PENDING APPROVAL status`)
|
|
40
41
|
|
|
42
|
+
let enableDirectInbound: Setting = await tx.getRepository(Setting).findOne({
|
|
43
|
+
where: { name: 'enable-direct-gan-order', domain}
|
|
44
|
+
})
|
|
45
|
+
|
|
41
46
|
// Create worksheet details with approved order products
|
|
42
47
|
const worksheet: Worksheet = await tx.getRepository(Worksheet).findOne({
|
|
43
48
|
where: {
|
|
@@ -47,10 +52,18 @@ export const proceedExtraProductsResolver = {
|
|
|
47
52
|
}
|
|
48
53
|
})
|
|
49
54
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
55
|
+
if(enableDirectInbound){
|
|
56
|
+
arrivalNotice.status = ORDER_STATUS.PENDING
|
|
57
|
+
arrivalNotice.updater = user
|
|
58
|
+
await tx.getRepository(ArrivalNotice).save(arrivalNotice)
|
|
59
|
+
} else {
|
|
60
|
+
arrivalNotice.status =
|
|
61
|
+
worksheet.status === WORKSHEET_STATUS.DEACTIVATED
|
|
62
|
+
? ORDER_STATUS.READY_TO_UNLOAD
|
|
63
|
+
: ORDER_STATUS.PROCESSING
|
|
64
|
+
arrivalNotice.updater = user
|
|
65
|
+
await tx.getRepository(ArrivalNotice).save(arrivalNotice)
|
|
66
|
+
}
|
|
54
67
|
|
|
55
68
|
const targetProdCnt: number = arrivalNotice.orderProducts.filter(
|
|
56
69
|
(op: OrderProduct) => op.status === ORDER_PRODUCT_STATUS.ADDED || op.status === ORDER_PRODUCT_STATUS.EDITED
|
|
@@ -105,10 +118,21 @@ export const proceedExtraProductsResolver = {
|
|
|
105
118
|
unitPrice: selectedOrderProduct?.adjustedUnitPrice
|
|
106
119
|
? selectedOrderProduct.adjustedUnitPrice
|
|
107
120
|
: selectedOrderProduct.unitPrice,
|
|
121
|
+
location: selectedOrderProduct?.adjustedLocationId
|
|
122
|
+
? selectedOrderProduct.adjustedLocationId
|
|
123
|
+
: selectedOrderProduct.location,
|
|
124
|
+
warehouse: selectedOrderProduct?. adjustedWarehouseId
|
|
125
|
+
? selectedOrderProduct.adjustedWarehouseId
|
|
126
|
+
: selectedOrderProduct.warehouse,
|
|
127
|
+
expDate: selectedOrderProduct?.adjustedExpDate
|
|
128
|
+
? selectedOrderProduct.adjustedExpDate
|
|
129
|
+
: selectedOrderProduct.expDate,
|
|
108
130
|
status:
|
|
109
|
-
|
|
110
|
-
? ORDER_PRODUCT_STATUS.
|
|
111
|
-
:
|
|
131
|
+
enableDirectInbound
|
|
132
|
+
? ORDER_PRODUCT_STATUS.PENDING
|
|
133
|
+
: worksheet.status === WORKSHEET_STATUS.DEACTIVATED
|
|
134
|
+
? ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
|
|
135
|
+
: ORDER_PRODUCT_STATUS.UNLOADING,
|
|
112
136
|
updater: user
|
|
113
137
|
})
|
|
114
138
|
})
|
|
@@ -133,10 +157,15 @@ export const proceedExtraProductsResolver = {
|
|
|
133
157
|
totalUomValue: selectedOrderProduct.adjustedTotalUomValue,
|
|
134
158
|
palletQty: selectedOrderProduct.adjustedPalletQty,
|
|
135
159
|
unitPrice: selectedOrderProduct.adjustedUnitPrice,
|
|
160
|
+
location: selectedOrderProduct.locationId,
|
|
161
|
+
warehouse: selectedOrderProduct.warehouseId,
|
|
162
|
+
expDate: selectedOrderProduct.expDate,
|
|
136
163
|
status:
|
|
137
|
-
|
|
138
|
-
? ORDER_PRODUCT_STATUS.
|
|
139
|
-
:
|
|
164
|
+
enableDirectInbound
|
|
165
|
+
? ORDER_PRODUCT_STATUS.PENDING
|
|
166
|
+
: worksheet.status === WORKSHEET_STATUS.DEACTIVATED
|
|
167
|
+
? ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
|
|
168
|
+
: ORDER_PRODUCT_STATUS.UNLOADING,
|
|
140
169
|
updater: user
|
|
141
170
|
})
|
|
142
171
|
})
|
|
@@ -146,7 +175,9 @@ export const proceedExtraProductsResolver = {
|
|
|
146
175
|
debug('approved and updated order product', updatedOrderProducts)
|
|
147
176
|
await tx.getRepository(OrderProduct).save(updatedOrderProducts)
|
|
148
177
|
|
|
149
|
-
|
|
178
|
+
|
|
179
|
+
if(!enableDirectInbound){
|
|
180
|
+
const unloadingWSDs: any[] = await Promise.all(
|
|
150
181
|
addedApprovedProducts.map(async (targetProduct: OrderProduct) => {
|
|
151
182
|
return {
|
|
152
183
|
domain,
|
|
@@ -163,9 +194,10 @@ export const proceedExtraProductsResolver = {
|
|
|
163
194
|
updater: user
|
|
164
195
|
}
|
|
165
196
|
})
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
197
|
+
)
|
|
198
|
+
debug('new unloading worksheet details', unloadingWSDs)
|
|
199
|
+
await tx.getRepository(WorksheetDetail).save(unloadingWSDs)
|
|
200
|
+
}
|
|
169
201
|
}
|
|
170
202
|
|
|
171
203
|
if (rejectedProducts?.length) {
|
|
@@ -185,9 +217,11 @@ export const proceedExtraProductsResolver = {
|
|
|
185
217
|
return {
|
|
186
218
|
...selectedOrderProduct,
|
|
187
219
|
status:
|
|
188
|
-
|
|
189
|
-
? ORDER_PRODUCT_STATUS.
|
|
190
|
-
:
|
|
220
|
+
enableDirectInbound
|
|
221
|
+
? ORDER_PRODUCT_STATUS.PENDING
|
|
222
|
+
: worksheet.status === WORKSHEET_STATUS.DEACTIVATED
|
|
223
|
+
? ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
|
|
224
|
+
: ORDER_PRODUCT_STATUS.UNLOADING,
|
|
191
225
|
updater: user
|
|
192
226
|
}
|
|
193
227
|
})
|