@things-factory/worksheet-base 4.3.461 → 4.3.464
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/graphql/resolvers/worksheet/cancel-arrival-notice.js +55 -0
- package/dist-server/graphql/resolvers/worksheet/cancel-arrival-notice.js.map +1 -0
- package/dist-server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.js +54 -31
- package/dist-server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.js +362 -5
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/index.js +4 -3
- package/dist-server/graphql/resolvers/worksheet/index.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/fetch-and-assign-picking-task.js +12 -6
- package/dist-server/graphql/resolvers/worksheet/picking/fetch-and-assign-picking-task.js.map +1 -1
- package/dist-server/graphql/types/worksheet/find-release-orders-by-task-no.js +1 -0
- package/dist-server/graphql/types/worksheet/find-release-orders-by-task-no.js.map +1 -1
- package/dist-server/graphql/types/worksheet/index.js +5 -1
- package/dist-server/graphql/types/worksheet/index.js.map +1 -1
- package/dist-server/utils/lmd-util.js +5 -3
- package/dist-server/utils/lmd-util.js.map +1 -1
- package/package.json +9 -9
- package/server/graphql/resolvers/worksheet/cancel-arrival-notice.ts +80 -0
- package/server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.ts +59 -32
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.ts +469 -8
- package/server/graphql/resolvers/worksheet/index.ts +5 -3
- package/server/graphql/resolvers/worksheet/picking/fetch-and-assign-picking-task.ts +13 -7
- package/server/graphql/types/worksheet/find-release-orders-by-task-no.ts +1 -0
- package/server/graphql/types/worksheet/index.ts +5 -1
- package/server/utils/lmd-util.ts +7 -4
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cancelArrivalNoticeResolver = void 0;
|
|
4
|
+
const typeorm_1 = require("typeorm");
|
|
5
|
+
const sales_base_1 = require("@things-factory/sales-base");
|
|
6
|
+
const constants_1 = require("../../../constants");
|
|
7
|
+
const entities_1 = require("../../../entities");
|
|
8
|
+
exports.cancelArrivalNoticeResolver = {
|
|
9
|
+
async cancelArrivalNotice(_, { name }, context) {
|
|
10
|
+
const { user, domain } = context.state;
|
|
11
|
+
const arrivalNotice = await (0, typeorm_1.getRepository)(sales_base_1.ArrivalNotice).findOne({
|
|
12
|
+
where: { domain: domain, name },
|
|
13
|
+
relations: ['bizplace', 'orderProducts']
|
|
14
|
+
});
|
|
15
|
+
if (!arrivalNotice)
|
|
16
|
+
throw new Error(`Arrival notice doesn't exists.`);
|
|
17
|
+
await (0, typeorm_1.getRepository)(sales_base_1.ArrivalNotice).update({ id: arrivalNotice.id }, {
|
|
18
|
+
status: sales_base_1.ORDER_STATUS.CANCELLED,
|
|
19
|
+
updater: user,
|
|
20
|
+
updatedAt: new Date().toISOString()
|
|
21
|
+
});
|
|
22
|
+
let foundOPs = arrivalNotice.orderProducts;
|
|
23
|
+
await Promise.all(foundOPs.map((op) => (0, typeorm_1.getRepository)(sales_base_1.OrderProduct).update({ id: op.id }, {
|
|
24
|
+
status: sales_base_1.ORDER_PRODUCT_STATUS.TERMINATED,
|
|
25
|
+
updater: user,
|
|
26
|
+
updatedAt: new Date().toISOString()
|
|
27
|
+
})));
|
|
28
|
+
let foundWorksheet = await (0, typeorm_1.getRepository)(entities_1.Worksheet).findOne({
|
|
29
|
+
where: {
|
|
30
|
+
domain,
|
|
31
|
+
arrivalNotice: arrivalNotice
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
if (foundWorksheet) {
|
|
35
|
+
await (0, typeorm_1.getRepository)(entities_1.Worksheet).update({ id: foundWorksheet.id }, {
|
|
36
|
+
status: constants_1.WORKSHEET_STATUS.CANCELLED,
|
|
37
|
+
updater: user,
|
|
38
|
+
updatedAt: new Date().toISOString()
|
|
39
|
+
});
|
|
40
|
+
let foundWorksheetDetails = await (0, typeorm_1.getRepository)(entities_1.WorksheetDetail).findOne({
|
|
41
|
+
where: {
|
|
42
|
+
domain,
|
|
43
|
+
worksheet: foundWorksheet
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
await (0, typeorm_1.getRepository)(entities_1.WorksheetDetail).update({ id: foundWorksheetDetails.id }, {
|
|
47
|
+
status: constants_1.WORKSHEET_STATUS.CANCELLED,
|
|
48
|
+
updater: user,
|
|
49
|
+
updatedAt: new Date().toISOString()
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
return true;
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=cancel-arrival-notice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cancel-arrival-notice.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/cancel-arrival-notice.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AAGvC,2DAKmC;AAGnC,kDAAqD;AACrD,gDAG0B;AAEb,QAAA,2BAA2B,GAAG;IAC1C,KAAK,CAAC,mBAAmB,CAAC,CAAM,EAC/B,EAAE,IAAI,EAAE,EACR,OAAY;QAEZ,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAmC,OAAO,CAAC,KAAK,CAAA;QAEtE,MAAM,aAAa,GAAkB,MAAM,IAAA,uBAAa,EAAC,0BAAa,CAAC,CAAC,OAAO,CAAC;YAC/E,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;YAC/B,SAAS,EAAE,CAAC,UAAU,EAAE,eAAe,CAAE;SACzC,CAAC,CAAA;QAEF,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QAErE,MAAM,IAAA,uBAAa,EAAC,0BAAa,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE;YACnE,MAAM,EAAG,yBAAY,CAAC,SAAS;YAC/B,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACnC,CAAC,CAAA;QAEF,IAAI,QAAQ,GAAmB,aAAa,CAAC,aAAa,CAAA;QAE1D,MAAM,OAAO,CAAC,GAAG,CAChB,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAgB,EAAE,EAAE,CACjC,IAAA,uBAAa,EAAC,yBAAY,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;YACjD,MAAM,EAAE,iCAAoB,CAAC,UAAU;YACvC,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACnC,CAAC,CACF,CACD,CAAC;QAEF,IAAI,cAAc,GAAc,MAAM,IAAA,uBAAa,EAAC,oBAAS,CAAC,CAAC,OAAO,CAAC;YACtE,KAAK,EAAE;gBACN,MAAM;gBACN,aAAa,EAAE,aAAa;aAC5B;SACD,CAAC,CAAA;QAEF,IAAI,cAAc,EAAE;YACnB,MAAM,IAAA,uBAAa,EAAC,oBAAS,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,EAAE;gBAChE,MAAM,EAAE,4BAAgB,CAAC,SAAS;gBAClC,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACnC,CAAC,CAAA;YAEF,IAAI,qBAAqB,GAAoB,MAAM,IAAA,uBAAa,EAAC,0BAAe,CAAC,CAAC,OAAO,CAAC;gBACzF,KAAK,EAAE;oBACN,MAAM;oBACN,SAAS,EAAE,cAAc;iBACzB;aACD,CAAC,CAAA;YAEF,MAAM,IAAA,uBAAa,EAAC,0BAAe,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,qBAAqB,CAAC,EAAE,EAAE,EAAE;gBAC7E,MAAM,EAAE,4BAAgB,CAAC,SAAS;gBAClC,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACnC,CAAC,CAAA;SACF;QAED,OAAO,IAAI,CAAA;IACZ,CAAC;CACD,CAAA"}
|
|
@@ -14,6 +14,27 @@ exports.findSortingReleaseOrdersByTaskNoResolver = {
|
|
|
14
14
|
async findSortingReleaseOrdersByTaskNo(_, { taskNo }, context) {
|
|
15
15
|
var _a;
|
|
16
16
|
const { domain, tx, user } = context.state;
|
|
17
|
+
let selectedReleaseGood = null;
|
|
18
|
+
let ws = await tx.getRepository(entities_1.Worksheet).createQueryBuilder('ws')
|
|
19
|
+
.addSelect('rg.name', 'release_good_name')
|
|
20
|
+
.addSelect('rg.status', 'release_good_status')
|
|
21
|
+
.innerJoin('worksheet_details', 'wd', `ws.id = wd.worksheet_id`)
|
|
22
|
+
.innerJoin('order_inventories', 'oi', `wd.target_inventory_id = oi.id and wd."type" ='SORTING'`)
|
|
23
|
+
.innerJoin('release_goods', 'rg', `rg.id = oi.release_good_id`)
|
|
24
|
+
.where('rg.domain_id = :domainId', { domainId: domain.id })
|
|
25
|
+
.andWhere('rg.name = :name', { name: taskNo })
|
|
26
|
+
.andWhere('rg.status IN (:...statuses)', {
|
|
27
|
+
statuses: [sales_base_1.ORDER_STATUS.READY_TO_SORT, sales_base_1.ORDER_STATUS.SORTING, sales_base_1.ORDER_STATUS.LOADING, sales_base_1.ORDER_STATUS.DONE]
|
|
28
|
+
})
|
|
29
|
+
.andWhere('ws.type = :type', { type: constants_1.WORKSHEET_TYPE.SORTING })
|
|
30
|
+
.getRawOne();
|
|
31
|
+
if (ws) {
|
|
32
|
+
if (ws.release_good_status == 'LOADING' || ws.release_good_status == 'DONE') {
|
|
33
|
+
throw new Error(`Release Good already sorted`);
|
|
34
|
+
}
|
|
35
|
+
selectedReleaseGood = ws.release_good_name;
|
|
36
|
+
taskNo = ws.ws_task_no;
|
|
37
|
+
}
|
|
17
38
|
let task = await tx.getRepository(entities_1.Worksheet).findOne({
|
|
18
39
|
where: { taskNo, type: constants_1.WORKSHEET_TYPE.SORTING, domain },
|
|
19
40
|
relations: ['bizplace', 'bizplace.domain', 'worksheetDetails']
|
|
@@ -23,37 +44,39 @@ exports.findSortingReleaseOrdersByTaskNoResolver = {
|
|
|
23
44
|
const binLocation = await tx.getRepository(warehouse_base_1.Location).findOne({
|
|
24
45
|
where: { domain, name: taskNo }
|
|
25
46
|
});
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
.innerJoinAndSelect('
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
const orderInventoryByBin = await qb.getRawOne();
|
|
43
|
-
if (orderInventoryByBin === null || orderInventoryByBin === void 0 ? void 0 : orderInventoryByBin.releaseGood_id) {
|
|
44
|
-
taskNo = orderInventoryByBin.ws_task_no;
|
|
45
|
-
task = await tx.getRepository(entities_1.Worksheet).findOne({
|
|
46
|
-
where: {
|
|
47
|
-
taskNo,
|
|
48
|
-
status: (0, typeorm_1.In)([constants_1.WORKSHEET_STATUS.DEACTIVATED, constants_1.WORKSHEET_STATUS.EXECUTING]),
|
|
49
|
-
type: constants_1.WORKSHEET_TYPE.SORTING,
|
|
50
|
-
domain
|
|
51
|
-
},
|
|
52
|
-
relations: ['worksheetDetails']
|
|
47
|
+
if (binLocation) {
|
|
48
|
+
const qb = tx
|
|
49
|
+
.getRepository(sales_base_1.OrderInventory)
|
|
50
|
+
.createQueryBuilder('orderInventory');
|
|
51
|
+
qb.innerJoinAndSelect('orderInventory.releaseGood', 'releaseGood')
|
|
52
|
+
.innerJoinAndSelect('worksheets', 'ws', `orderInventory.ref_worksheet_id = ws.id AND ws.type = 'BATCH_PICKING'`)
|
|
53
|
+
.innerJoinAndSelect('worksheets', 'ws2', `ws2.task_no = ws.task_no AND ws2.type = 'SORTING'`)
|
|
54
|
+
.innerJoinAndSelect('releaseGood.bizplace', 'bizplace')
|
|
55
|
+
.innerJoinAndSelect('bizplace.domain', 'domain')
|
|
56
|
+
.where('orderInventory.domain_id = :domainId', { domainId: domain.id })
|
|
57
|
+
.andWhere('orderInventory.status IN (:...orderInventoryStatus)', {
|
|
58
|
+
orderInventoryStatus: [sales_base_1.ORDER_INVENTORY_STATUS.READY_TO_SORT, sales_base_1.ORDER_INVENTORY_STATUS.SORTING]
|
|
59
|
+
})
|
|
60
|
+
.andWhere('orderInventory.bin_location_id = :locationId', { locationId: binLocation.id })
|
|
61
|
+
.andWhere('releaseGood.status IN (:...statuses)', {
|
|
62
|
+
statuses: [sales_base_1.ORDER_STATUS.READY_TO_SORT, sales_base_1.ORDER_STATUS.SORTING]
|
|
53
63
|
});
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
64
|
+
const orderInventoryByBin = await qb.getRawOne();
|
|
65
|
+
if (orderInventoryByBin === null || orderInventoryByBin === void 0 ? void 0 : orderInventoryByBin.releaseGood_id) {
|
|
66
|
+
taskNo = orderInventoryByBin.ws_task_no;
|
|
67
|
+
task = await tx.getRepository(entities_1.Worksheet).findOne({
|
|
68
|
+
where: {
|
|
69
|
+
taskNo,
|
|
70
|
+
status: (0, typeorm_1.In)([constants_1.WORKSHEET_STATUS.DEACTIVATED, constants_1.WORKSHEET_STATUS.EXECUTING]),
|
|
71
|
+
type: constants_1.WORKSHEET_TYPE.SORTING,
|
|
72
|
+
domain
|
|
73
|
+
},
|
|
74
|
+
relations: ['worksheetDetails']
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
throw new Error(`Bin do not have any batch picking order.`);
|
|
79
|
+
}
|
|
57
80
|
}
|
|
58
81
|
}
|
|
59
82
|
if (!task)
|
|
@@ -109,7 +132,7 @@ exports.findSortingReleaseOrdersByTaskNoResolver = {
|
|
|
109
132
|
.addGroupBy('user.name')
|
|
110
133
|
.orderBy('rg.createdAt', 'ASC');
|
|
111
134
|
const releaseGoods = await qb.getRawMany();
|
|
112
|
-
return { releaseGoods, taskNo };
|
|
135
|
+
return { releaseGoods, taskNo, selectedReleaseGood };
|
|
113
136
|
}
|
|
114
137
|
};
|
|
115
138
|
//# sourceMappingURL=find-sorting-release-orders-by-task-no.js.map
|
package/dist-server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find-sorting-release-orders-by-task-no.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.ts"],"names":[],"mappings":";;;AAAA,qCAA+D;AAE/D,2DAKmC;AACnC,iDAA8C;AAC9C,yDAAgD;AAChD,mEAAyD;AACzD,uDAAkE;AAClE,+DAAsE;AAEtE,kDAAqE;AACrE,gDAA0G;AAE7F,QAAA,wCAAwC,GAAG;IACtD,KAAK,CAAC,gCAAgC,CAAC,CAAM,EAAE,EAAE,MAAM,EAAE,EAAE,OAAY;;QACrE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"find-sorting-release-orders-by-task-no.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generatePickingWorksheetDetail = exports.generatePickingWorksheet = exports.generateReleaseGoodWorksheetResolver = void 0;
|
|
3
|
+
exports.mmsRTSMarketplaceOrder = exports.mmsPackMarketplaceOrder = exports.mmsProcessOrder = exports.generatePickingWorksheetDetail = exports.generatePickingWorksheet = exports.generateReleaseGoodWorksheetResolver = void 0;
|
|
4
|
+
const typeorm_1 = require("typeorm");
|
|
5
|
+
const env_1 = require("@things-factory/env");
|
|
6
|
+
const integration_marketplace_1 = require("@things-factory/integration-marketplace");
|
|
7
|
+
const marketplace_base_1 = require("@things-factory/marketplace-base");
|
|
4
8
|
const sales_base_1 = require("@things-factory/sales-base");
|
|
5
9
|
const setting_base_1 = require("@things-factory/setting-base");
|
|
10
|
+
const warehouse_base_1 = require("@things-factory/warehouse-base");
|
|
6
11
|
const controllers_1 = require("../../../../controllers/");
|
|
7
12
|
const entities_1 = require("../../../../entities");
|
|
8
|
-
const
|
|
13
|
+
const utils_1 = require("../../../../utils");
|
|
9
14
|
exports.generateReleaseGoodWorksheetResolver = {
|
|
10
15
|
async generateReleaseGoodWorksheet(_, { releaseGoodNo, currentStatus = null }, context) {
|
|
11
16
|
const { tx, domain, user } = context.state;
|
|
12
|
-
let worksheet = await generatePickingWorksheet(tx, domain, user, releaseGoodNo, currentStatus);
|
|
17
|
+
let worksheet = await generatePickingWorksheet(tx, domain, user, releaseGoodNo, currentStatus, context);
|
|
13
18
|
if (worksheet) {
|
|
14
19
|
return true;
|
|
15
20
|
}
|
|
@@ -18,7 +23,7 @@ exports.generateReleaseGoodWorksheetResolver = {
|
|
|
18
23
|
}
|
|
19
24
|
}
|
|
20
25
|
};
|
|
21
|
-
async function generatePickingWorksheet(tx, domain, user, releaseGoodNo, currentStatus = null) {
|
|
26
|
+
async function generatePickingWorksheet(tx, domain, user, releaseGoodNo, currentStatus = null, context) {
|
|
22
27
|
try {
|
|
23
28
|
const worksheetController = new controllers_1.PickingWorksheetController(tx, domain, user);
|
|
24
29
|
let releaseGood = await worksheetController.findRefOrder(sales_base_1.ReleaseGood, {
|
|
@@ -32,6 +37,7 @@ async function generatePickingWorksheet(tx, domain, user, releaseGoodNo, current
|
|
|
32
37
|
});
|
|
33
38
|
if (releaseGood.type == 'b2c' && directReleaseOrder && directReleaseOrder.value.toLowerCase() == 'true') {
|
|
34
39
|
const inventoryUtil = new warehouse_base_1.InventoryUtil(tx, domain, user);
|
|
40
|
+
await mmsProcessOrder(tx, domain, user, releaseGood, context);
|
|
35
41
|
let orderInventories = await tx.getRepository(sales_base_1.OrderInventory).find({
|
|
36
42
|
where: { domain, releaseGood },
|
|
37
43
|
relations: ['inventory']
|
|
@@ -64,7 +70,8 @@ async function generatePickingWorksheet(tx, domain, user, releaseGoodNo, current
|
|
|
64
70
|
return worksheet;
|
|
65
71
|
}
|
|
66
72
|
catch (error) {
|
|
67
|
-
|
|
73
|
+
throw new Error(error.message);
|
|
74
|
+
//return new Worksheet()
|
|
68
75
|
}
|
|
69
76
|
}
|
|
70
77
|
exports.generatePickingWorksheet = generatePickingWorksheet;
|
|
@@ -85,4 +92,354 @@ async function generatePickingWorksheetDetail(tx, domain, user, worksheet, targe
|
|
|
85
92
|
return await worksheetController.generatePickingWorksheetDetail(worksheet, targetInventory);
|
|
86
93
|
}
|
|
87
94
|
exports.generatePickingWorksheetDetail = generatePickingWorksheetDetail;
|
|
95
|
+
async function mmsProcessOrder(tx, domain, user, foundReleaseGood, context) {
|
|
96
|
+
var _a, _b, _c;
|
|
97
|
+
try {
|
|
98
|
+
let marketplaceOrder;
|
|
99
|
+
let marketplaceOrderPackages;
|
|
100
|
+
let marketplaceOrderItems;
|
|
101
|
+
let marketplaceStore;
|
|
102
|
+
marketplaceOrder = await tx.getRepository(marketplace_base_1.MarketplaceOrder).findOne({
|
|
103
|
+
where: {
|
|
104
|
+
orderNo: foundReleaseGood.refNo
|
|
105
|
+
},
|
|
106
|
+
relations: [
|
|
107
|
+
'marketplaceStore',
|
|
108
|
+
'marketplaceOrderPackages',
|
|
109
|
+
'marketplaceOrderPackages.marketplaceOrderPackageItems',
|
|
110
|
+
'marketplaceOrderPackages.marketplaceOrderPackageItems.marketplaceOrderItem',
|
|
111
|
+
'marketplaceOrderPackages.marketplaceOrderPackageItems.marketplaceOrderItem.marketplaceProductVariation',
|
|
112
|
+
'marketplaceOrderItems',
|
|
113
|
+
'marketplaceOrderItems.marketplaceProductVariation'
|
|
114
|
+
]
|
|
115
|
+
});
|
|
116
|
+
let releaseGood = await tx.getRepository(sales_base_1.ReleaseGood).findOne({
|
|
117
|
+
where: { id: foundReleaseGood.id, domain: domain },
|
|
118
|
+
relations: [
|
|
119
|
+
'orderPackages',
|
|
120
|
+
'orderPackages.orderPackageItems',
|
|
121
|
+
'orderProducts',
|
|
122
|
+
'orderProducts.product',
|
|
123
|
+
'orderProducts.productDetail',
|
|
124
|
+
'domain',
|
|
125
|
+
'bizplace',
|
|
126
|
+
'creator',
|
|
127
|
+
'updater',
|
|
128
|
+
'lastMileDelivery'
|
|
129
|
+
]
|
|
130
|
+
});
|
|
131
|
+
if (!releaseGood)
|
|
132
|
+
throw new Error('unable to find release good');
|
|
133
|
+
marketplaceStore = marketplaceOrder.marketplaceStore;
|
|
134
|
+
marketplaceOrderItems = (marketplaceOrder === null || marketplaceOrder === void 0 ? void 0 : marketplaceOrder.marketplaceOrderItems) ? marketplaceOrder.marketplaceOrderItems : [];
|
|
135
|
+
marketplaceOrderPackages = (marketplaceOrder === null || marketplaceOrder === void 0 ? void 0 : marketplaceOrder.marketplaceOrderPackages)
|
|
136
|
+
? marketplaceOrder.marketplaceOrderPackages
|
|
137
|
+
: [];
|
|
138
|
+
if ((marketplaceOrderPackages === null || marketplaceOrderPackages === void 0 ? void 0 : marketplaceOrderPackages.length) <= 0) {
|
|
139
|
+
let platform = marketplaceOrder.marketplaceStore.platform;
|
|
140
|
+
if (platform == 'shopee') {
|
|
141
|
+
let orderList = marketplaceOrder.id;
|
|
142
|
+
let result = await integration_marketplace_1.StoreAPI.getStoreOrderByBatch(marketplaceStore, { orderIdList: orderList });
|
|
143
|
+
if (result.packageList && result.packageList.length > 0) {
|
|
144
|
+
releaseGood = await mmsPackMarketplaceOrder(releaseGood, marketplaceOrder, marketplaceOrderItems, result, domain, tx);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
else if (platform == 'lazada') {
|
|
148
|
+
try {
|
|
149
|
+
let fullOrderItemList = marketplaceOrderItems.map(moi => moi.name);
|
|
150
|
+
const logisticByPackage = await integration_marketplace_1.StoreAPI.getStoreLogisticsByPackage(marketplaceStore, {
|
|
151
|
+
orderId: marketplaceOrder.orderNo,
|
|
152
|
+
orderItemIds: fullOrderItemList
|
|
153
|
+
});
|
|
154
|
+
if (!logisticByPackage)
|
|
155
|
+
throw new Error('Shipment provider not found');
|
|
156
|
+
//panggil packOrder Lazada utk dapatkan packageId utk create op dan opi
|
|
157
|
+
let result = await integration_marketplace_1.StoreAPI.setStoreOrderStatusPackedByMarketplace(marketplaceStore, {
|
|
158
|
+
packOrderList: [{ orderId: marketplaceOrder.orderNo, orderItemList: fullOrderItemList }],
|
|
159
|
+
deliveryType: 'dropship',
|
|
160
|
+
shippingAllocateType: logisticByPackage.shippingAllocateType
|
|
161
|
+
});
|
|
162
|
+
//massage data frst one package
|
|
163
|
+
const data = result.packOrderList.map(pol => {
|
|
164
|
+
const groupedItems = {};
|
|
165
|
+
pol.orderItemList.forEach(item => {
|
|
166
|
+
const { packageId, shipmentProvider, trackingNumber, orderItemId } = item;
|
|
167
|
+
if (!groupedItems[packageId]) {
|
|
168
|
+
groupedItems[packageId] = { packageId, packageItem: [] };
|
|
169
|
+
}
|
|
170
|
+
groupedItems[packageId].packageItem.push({ shipmentProvider, trackingNumber, orderItemId });
|
|
171
|
+
});
|
|
172
|
+
const massagedData = Object.values(groupedItems);
|
|
173
|
+
result = { packOrderList: massagedData };
|
|
174
|
+
});
|
|
175
|
+
//create mop , mopi , op & opi
|
|
176
|
+
if (result.packOrderList && result.packOrderList.length) {
|
|
177
|
+
releaseGood = await mmsPackMarketplaceOrder(releaseGood, marketplaceOrder, marketplaceOrderItems, result, domain, tx);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
catch (e) {
|
|
181
|
+
env_1.logger.error(`packOrder[lazada]: ${e}`);
|
|
182
|
+
throw e;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
try {
|
|
188
|
+
releaseGood = await mmsPackMarketplaceOrder(releaseGood, marketplaceOrder, marketplaceOrderItems, [], domain, tx, marketplaceOrderPackages);
|
|
189
|
+
}
|
|
190
|
+
catch (e) {
|
|
191
|
+
env_1.logger.error(`packOrder[shopee]: ${e}`);
|
|
192
|
+
throw e;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
if (((_a = releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.orderPackages) === null || _a === void 0 ? void 0 : _a.length) > 0 &&
|
|
196
|
+
releaseGood.lmdOption &&
|
|
197
|
+
releaseGood.lastMileDelivery &&
|
|
198
|
+
((_b = releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.orderPackages) === null || _b === void 0 ? void 0 : _b.some(op => op.parcelId == null))) {
|
|
199
|
+
try {
|
|
200
|
+
await (0, utils_1.createLmdParcel)([releaseGood], tx, domain, user, marketplaceOrder);
|
|
201
|
+
let updatedReleaseGood = await tx.getRepository(sales_base_1.ReleaseGood).findOne({
|
|
202
|
+
where: { id: releaseGood.id },
|
|
203
|
+
relations: ['domain', 'bizplace', 'orderPackages', 'orderPackages.orderPackageItems']
|
|
204
|
+
});
|
|
205
|
+
let updatedMarketplaceOrderPackages = await tx
|
|
206
|
+
.getRepository(marketplace_base_1.MarketplaceOrderPackage)
|
|
207
|
+
.find({
|
|
208
|
+
where: { marketplaceOrder: marketplaceOrder.id },
|
|
209
|
+
relations: ['marketplaceOrder', 'marketplaceOrderPackageItems']
|
|
210
|
+
});
|
|
211
|
+
let updatedOrderPackage = updatedReleaseGood.orderPackages;
|
|
212
|
+
const hasNullAirwaybill = updatedOrderPackage.some(orderPackage => orderPackage.airwaybill === null);
|
|
213
|
+
// if the user had call the awb more than 5 times
|
|
214
|
+
if (updatedReleaseGood.countParcel > 5 && hasNullAirwaybill) {
|
|
215
|
+
throw new Error('It appears that we are unable to retrieve the AWB from the platform. Please reach out to support for assistance');
|
|
216
|
+
}
|
|
217
|
+
if (hasNullAirwaybill)
|
|
218
|
+
throw new Error('We are in the process to get the AWB. Please retry by clicking the GENERATE PICKING WORKSHEET');
|
|
219
|
+
for (let updatePackage of updatedOrderPackage) {
|
|
220
|
+
for (let mop of updatedMarketplaceOrderPackages) {
|
|
221
|
+
// Find match order package based on packageId and releaseGood refOrderId
|
|
222
|
+
if (updatePackage.packageId === mop.packageId && updatedReleaseGood.refOrderId === marketplaceOrder.id) {
|
|
223
|
+
await tx.getRepository(marketplace_base_1.MarketplaceOrderPackage).update({ id: mop.id }, {
|
|
224
|
+
airwayBill: updatePackage.airwayBill,
|
|
225
|
+
trackingNo: updatePackage.trackingNo,
|
|
226
|
+
transporter: updatePackage === null || updatePackage === void 0 ? void 0 : updatePackage.transporter
|
|
227
|
+
});
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
catch (e) {
|
|
233
|
+
env_1.logger.error(`mms-create-parcel-error: ${e}`);
|
|
234
|
+
throw e;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
//ini belum test fr shopee && lazada
|
|
238
|
+
try {
|
|
239
|
+
if (((_c = marketplaceOrder === null || marketplaceOrder === void 0 ? void 0 : marketplaceOrder.marketplaceOrderPackages) === null || _c === void 0 ? void 0 : _c.length) > 0) {
|
|
240
|
+
await mmsRTSMarketplaceOrder(marketplaceOrder, tx, domain);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
catch (e) {
|
|
244
|
+
env_1.logger.error(`rts-mms-orders:${e}`);
|
|
245
|
+
throw e;
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
catch (e) {
|
|
249
|
+
console.log(e);
|
|
250
|
+
throw e;
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
exports.mmsProcessOrder = mmsProcessOrder;
|
|
254
|
+
async function mmsPackMarketplaceOrder(releaseGood, marketplaceOrder, marketplaceOrderItems, result, domain, tx, existingMarketplaceOrderPackage) {
|
|
255
|
+
try {
|
|
256
|
+
let newMarketplaceOrderPackage = new marketplace_base_1.MarketplaceOrderPackage();
|
|
257
|
+
let newMarketplaceOrderPackageItem = new marketplace_base_1.MarketplaceOrderPackageItem();
|
|
258
|
+
let orderPackage = new sales_base_1.OrderPackage();
|
|
259
|
+
let orderPackageItem = new sales_base_1.OrderPackageItem();
|
|
260
|
+
let newMarketplaceOrderPackages = [];
|
|
261
|
+
let newOrderPackages = [];
|
|
262
|
+
if (!existingMarketplaceOrderPackage) {
|
|
263
|
+
let packagePack = (result === null || result === void 0 ? void 0 : result.packageList) ? result.packageList : result.packOrderList;
|
|
264
|
+
for (let j = 0; j < packagePack.length; j++) {
|
|
265
|
+
let marketplacePackage = packagePack[j];
|
|
266
|
+
let packageItems = (marketplacePackage === null || marketplacePackage === void 0 ? void 0 : marketplacePackage.packageItem) || (marketplacePackage === null || marketplacePackage === void 0 ? void 0 : marketplacePackage.orderItemList);
|
|
267
|
+
let marketplaceOrderItem;
|
|
268
|
+
newMarketplaceOrderPackage.name = result.name || marketplaceOrder.name;
|
|
269
|
+
newMarketplaceOrderPackage.packageId = marketplacePackage.packageId;
|
|
270
|
+
newMarketplaceOrderPackage.transporter = marketplacePackage.transporter;
|
|
271
|
+
newMarketplaceOrderPackage.marketplaceOrder = marketplaceOrder;
|
|
272
|
+
newMarketplaceOrderPackage.domain = domain;
|
|
273
|
+
newMarketplaceOrderPackage.marketplaceOrderPackageItems = [];
|
|
274
|
+
await tx.getRepository(marketplace_base_1.MarketplaceOrderPackage).insert(newMarketplaceOrderPackage);
|
|
275
|
+
newMarketplaceOrderPackages.push(newMarketplaceOrderPackage);
|
|
276
|
+
for (let i = 0; i < packageItems.length; i++) {
|
|
277
|
+
let packageItem = packageItems[i];
|
|
278
|
+
marketplaceOrderItem = marketplaceOrderItems.find(itm => {
|
|
279
|
+
return itm.orderId == packageItem.orderItemId;
|
|
280
|
+
});
|
|
281
|
+
newMarketplaceOrderPackageItem.name = marketplaceOrderItem.name;
|
|
282
|
+
newMarketplaceOrderPackageItem.qty = marketplaceOrderItem.qty;
|
|
283
|
+
newMarketplaceOrderPackageItem.domain = domain;
|
|
284
|
+
newMarketplaceOrderPackageItem.marketplaceOrderPackage = newMarketplaceOrderPackage;
|
|
285
|
+
newMarketplaceOrderPackageItem.marketplaceOrderItem = marketplaceOrderItem;
|
|
286
|
+
await tx.getRepository(marketplace_base_1.MarketplaceOrderPackageItem).insert(newMarketplaceOrderPackageItem);
|
|
287
|
+
newMarketplaceOrderPackage.marketplaceOrderPackageItems.push(newMarketplaceOrderPackageItem);
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
marketplaceOrder.marketplaceOrderPackages = newMarketplaceOrderPackages;
|
|
291
|
+
existingMarketplaceOrderPackage = (marketplaceOrder === null || marketplaceOrder === void 0 ? void 0 : marketplaceOrder.marketplaceOrderPackages)
|
|
292
|
+
? marketplaceOrder.marketplaceOrderPackages
|
|
293
|
+
: [];
|
|
294
|
+
}
|
|
295
|
+
if (releaseGood.orderPackages.length <= 0) {
|
|
296
|
+
for (let i = 0; i < existingMarketplaceOrderPackage.length; i++) {
|
|
297
|
+
let mop = existingMarketplaceOrderPackage[i];
|
|
298
|
+
let mopi = mop.marketplaceOrderPackageItems;
|
|
299
|
+
orderPackage.name = sales_base_1.OrderNoGenerator.orderPackage();
|
|
300
|
+
orderPackage.packageId = mop === null || mop === void 0 ? void 0 : mop.packageId;
|
|
301
|
+
orderPackage.transporter = null;
|
|
302
|
+
orderPackage.airwaybill = null;
|
|
303
|
+
orderPackage.status = sales_base_1.ORDER_STATUS.PROCESSING;
|
|
304
|
+
orderPackage.releaseGood = releaseGood;
|
|
305
|
+
orderPackage.domain = releaseGood.domain;
|
|
306
|
+
orderPackage.bizplace = releaseGood.bizplace;
|
|
307
|
+
orderPackage.creator = releaseGood.creator;
|
|
308
|
+
orderPackage.updater = releaseGood.updater;
|
|
309
|
+
orderPackage.orderPackageItems = [];
|
|
310
|
+
await tx.getRepository(sales_base_1.OrderPackage).save(orderPackage);
|
|
311
|
+
newOrderPackages.push(orderPackage);
|
|
312
|
+
for (let j = 0; j < (mopi === null || mopi === void 0 ? void 0 : mopi.length); j++) {
|
|
313
|
+
let productVariation = mopi[j].marketplaceOrderItem.marketplaceProductVariation;
|
|
314
|
+
let matchedOrderProduct = releaseGood.orderProducts.find(op => op.product.sku == productVariation.sku);
|
|
315
|
+
orderPackageItem.name = sales_base_1.OrderNoGenerator.orderPackageItem();
|
|
316
|
+
orderPackageItem.orderProduct = matchedOrderProduct;
|
|
317
|
+
orderPackageItem.status = sales_base_1.ORDER_STATUS.PROCESSING;
|
|
318
|
+
orderPackageItem.orderPackage = orderPackage;
|
|
319
|
+
orderPackageItem.releaseQty = matchedOrderProduct.releaseQty;
|
|
320
|
+
orderPackageItem.domain = releaseGood.domain;
|
|
321
|
+
orderPackageItem.bizplace = releaseGood.bizplace;
|
|
322
|
+
orderPackageItem.creator = releaseGood.creator;
|
|
323
|
+
orderPackageItem.updater = releaseGood.updater;
|
|
324
|
+
orderPackageItem.productDetail = matchedOrderProduct === null || matchedOrderProduct === void 0 ? void 0 : matchedOrderProduct.productDetail;
|
|
325
|
+
await tx.getRepository(sales_base_1.OrderPackageItem).save(orderPackageItem);
|
|
326
|
+
orderPackage.orderPackageItems.push(orderPackageItem);
|
|
327
|
+
}
|
|
328
|
+
releaseGood.orderPackages = newOrderPackages;
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
return releaseGood;
|
|
332
|
+
}
|
|
333
|
+
catch (e) {
|
|
334
|
+
env_1.logger.error(`mmsPackMarketplaceOrder: ${e}`);
|
|
335
|
+
throw e;
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
exports.mmsPackMarketplaceOrder = mmsPackMarketplaceOrder;
|
|
339
|
+
async function mmsRTSMarketplaceOrder(mop, tx, domain) {
|
|
340
|
+
try {
|
|
341
|
+
// const { tx } = context.state
|
|
342
|
+
let marketplaceOrder = await tx.getRepository(marketplace_base_1.MarketplaceOrder).findOne({
|
|
343
|
+
where: {
|
|
344
|
+
id: mop.id
|
|
345
|
+
},
|
|
346
|
+
relations: [
|
|
347
|
+
'marketplaceStore',
|
|
348
|
+
'marketplaceOrderPackages',
|
|
349
|
+
'marketplaceOrderPackages.marketplaceOrderPackageItems',
|
|
350
|
+
'marketplaceOrderPackages.marketplaceOrderPackageItems.marketplaceOrderItem',
|
|
351
|
+
'marketplaceOrderPackages.marketplaceOrderPackageItems.marketplaceOrderItem.marketplaceProductVariation',
|
|
352
|
+
'marketplaceOrderItems',
|
|
353
|
+
'marketplaceOrderItems.marketplaceProductVariation'
|
|
354
|
+
]
|
|
355
|
+
});
|
|
356
|
+
let marketplaceStore = marketplaceOrder.marketplaceStore;
|
|
357
|
+
let marketplaceOrderPackages = marketplaceOrder.marketplaceOrderPackages;
|
|
358
|
+
let platform = marketplaceStore.platform;
|
|
359
|
+
if ((marketplaceOrder === null || marketplaceOrder === void 0 ? void 0 : marketplaceOrder.marketplaceOrderPackages.length) > 0) {
|
|
360
|
+
switch (platform) {
|
|
361
|
+
case 'shopee':
|
|
362
|
+
await rtsShopeeOrder(marketplaceOrder, marketplaceOrderPackages, tx, domain);
|
|
363
|
+
break;
|
|
364
|
+
case 'lazada':
|
|
365
|
+
await rtsLazadaOrder(marketplaceOrder, marketplaceOrderPackages, tx, domain);
|
|
366
|
+
break;
|
|
367
|
+
default:
|
|
368
|
+
break;
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
return true;
|
|
372
|
+
}
|
|
373
|
+
catch (e) {
|
|
374
|
+
env_1.logger.error(`mmsRTSMarketplaceOrder[main]: ${e}`);
|
|
375
|
+
throw e;
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
exports.mmsRTSMarketplaceOrder = mmsRTSMarketplaceOrder;
|
|
379
|
+
async function rtsShopeeOrder(marketplaceOrder, marketplaceOrderPackages, tx, domain) {
|
|
380
|
+
await Promise.all(marketplaceOrderPackages.map(async (marketplaceOrderPackage) => {
|
|
381
|
+
try {
|
|
382
|
+
let deliveryType = {};
|
|
383
|
+
let store = marketplaceOrder.marketplaceStore;
|
|
384
|
+
let isMultipackage = marketplaceOrderPackages.length > 1 ? true : false;
|
|
385
|
+
// call api to know delivery type
|
|
386
|
+
let shippingParams = await integration_marketplace_1.StoreAPI.getLogisticsParam(store, { orderNo: marketplaceOrder.name, packageId: marketplaceOrderPackage.packageId, isMultipackage }, tx);
|
|
387
|
+
//let shippingType = shippingParams?.infoNeeded
|
|
388
|
+
let shippingDetail = shippingParams === null || shippingParams === void 0 ? void 0 : shippingParams.logisticsDetail;
|
|
389
|
+
if (shippingParams === null || shippingParams === void 0 ? void 0 : shippingParams.pickup) {
|
|
390
|
+
deliveryType = {
|
|
391
|
+
pickup: {
|
|
392
|
+
addressId: shippingDetail.addressId,
|
|
393
|
+
branchId: shippingDetail.branchId
|
|
394
|
+
}
|
|
395
|
+
};
|
|
396
|
+
}
|
|
397
|
+
else if (shippingParams === null || shippingParams === void 0 ? void 0 : shippingParams.non_integrated) {
|
|
398
|
+
deliveryType = {
|
|
399
|
+
non_integrated: {
|
|
400
|
+
trackingNo: marketplaceOrderPackage.trackingNo
|
|
401
|
+
}
|
|
402
|
+
};
|
|
403
|
+
}
|
|
404
|
+
else if (shippingParams === null || shippingParams === void 0 ? void 0 : shippingParams.dropoff) {
|
|
405
|
+
deliveryType = {
|
|
406
|
+
dropoff: (shippingDetail === null || shippingDetail === void 0 ? void 0 : shippingDetail.branchId)
|
|
407
|
+
? {
|
|
408
|
+
branchId: shippingDetail.branchId
|
|
409
|
+
}
|
|
410
|
+
: {}
|
|
411
|
+
};
|
|
412
|
+
}
|
|
413
|
+
await integration_marketplace_1.StoreAPI.initLogistics(marketplaceOrder.marketplaceStore, {
|
|
414
|
+
deliveryType,
|
|
415
|
+
orderNo: marketplaceOrder.orderNo,
|
|
416
|
+
packageId: marketplaceOrderPackage.packageId,
|
|
417
|
+
isMultipackage
|
|
418
|
+
});
|
|
419
|
+
await tx
|
|
420
|
+
.getRepository(sales_base_1.OrderPackage)
|
|
421
|
+
.update({ packageId: marketplaceOrderPackage.packageId, domain: { id: domain.id } }, { marketRtsCallSuccess: new Date() });
|
|
422
|
+
}
|
|
423
|
+
catch (e) {
|
|
424
|
+
env_1.logger.error(`mmsRTSMarketplaceOrder[shopee]: ${e}`);
|
|
425
|
+
throw e;
|
|
426
|
+
}
|
|
427
|
+
}));
|
|
428
|
+
}
|
|
429
|
+
async function rtsLazadaOrder(marketplaceOrder, marketplaceOrderPackages, tx, domain) {
|
|
430
|
+
const packages = marketplaceOrderPackages.map(item => {
|
|
431
|
+
return { packageId: item.packageId };
|
|
432
|
+
});
|
|
433
|
+
const packageIds = marketplaceOrderPackages.map(item => item.packageId);
|
|
434
|
+
try {
|
|
435
|
+
await integration_marketplace_1.StoreAPI.setStoreOrderStatusReadyToShip(marketplaceOrder.marketplaceStore, { packages });
|
|
436
|
+
await tx
|
|
437
|
+
.getRepository(sales_base_1.OrderPackage)
|
|
438
|
+
.update({ packageId: (0, typeorm_1.In)(packageIds), domain: { id: domain.id } }, { marketRtsCallSuccess: new Date() });
|
|
439
|
+
}
|
|
440
|
+
catch (e) {
|
|
441
|
+
env_1.logger.error(`mmsRTSMarketplaceOrder[lazada]: ${e}`);
|
|
442
|
+
throw e;
|
|
443
|
+
}
|
|
444
|
+
}
|
|
88
445
|
//# sourceMappingURL=generate-release-good-worksheet.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-release-good-worksheet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.ts"],"names":[],"mappings":";;;AAGA,2DAA8G;AAE9G,+DAAsE;AAEtE,0DAAqE;AACrE,mDAAiE;AAEjE,mEAAqG;AAExF,QAAA,oCAAoC,GAAG;IAClD,KAAK,CAAC,4BAA4B,CAAC,CAAM,EAAE,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,EAAE,EAAE,OAAY;QAC9F,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;QAC7F,IAAI,SAAS,GAAG,MAAM,wBAAwB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,aAAa,CAAC,CAAA;QAC9F,IAAI,SAAS,EAAE;YACb,OAAO,IAAI,CAAA;SACZ;aAAM;YACL,OAAO,KAAK,CAAA;SACb;IACH,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,wBAAwB,CAC5C,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,aAAqB,EACrB,gBAAwB,IAAI;IAE5B,IAAI;QACF,MAAM,mBAAmB,GAA+B,IAAI,wCAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAExG,IAAI,WAAW,GAAgB,MAAM,mBAAmB,CAAC,YAAY,CAAC,wBAAW,EAAE;YACjF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,yBAAY,CAAC,iBAAiB;SACvC,CAAC,CAAA;QAEF,IAAI,SAAS,GAAc,IAAI,oBAAS,EAAE,CAAA;QAE1C,MAAM,kBAAkB,GAAY,MAAM,EAAE,CAAC,aAAa,CAAC,sBAAO,CAAC,CAAC,OAAO,CAAC;YAC1E,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,iCAAiC,EAAE;SAChF,CAAC,CAAA;QAEF,IAAI,WAAW,CAAC,IAAI,IAAI,KAAK,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,MAAM,EAAE;YACvG,MAAM,aAAa,GAAG,IAAI,8BAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;YAEzD,IAAI,gBAAgB,GAAqB,MAAM,EAAE,CAAC,aAAa,CAAC,2BAAc,CAAC,CAAC,IAAI,CAAC;gBACnF,KAAK,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE;gBAC9B,SAAS,EAAE,CAAC,WAAW,CAAC;aACzB,CAAC,CAAA;YAEF,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;gBACtD,IAAI,cAAc,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;gBAC1C,IAAI,cAAc,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,IAAI,IAAI,cAAc,CAAC,QAAQ,IAAI,CAAC,CAAC,EAAE;oBACvG,MAAM,IAAI,KAAK,CAAC,oBAAoB,aAAa,2BAA2B,CAAC,CAAA;iBAC9E;gBACD,cAAc,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;gBAEnF,IAAI,SAAS,GAAc,MAAM,EAAE;qBAChC,aAAa,CAAC,0BAAS,CAAC;qBACxB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBAE1D,MAAM,aAAa,CAAC,oBAAoB,CACtC;oBACE,EAAE,EAAE,SAAS,CAAC,EAAE;oBAChB,GAAG,EAAE,SAAS,CAAC,GAAG,GAAG,cAAc,CAAC,UAAU;oBAC9C,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,QAAQ,GAAG,cAAc,CAAC,eAAe,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG;oBACvF,SAAS,EAAE,SAAS,CAAC,SAAS,GAAG,cAAc,CAAC,UAAU;oBAC1D,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,cAAc,GAAG,cAAc,CAAC,eAAe,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG;iBACpG,EACD,WAAW,EACX,CAAC,cAAc,CAAC,UAAU,EAC1B,CAAC,cAAc,CAAC,eAAe,EAC/B,2CAA0B,CAAC,gBAAgB,CAC5C,CAAA;gBAED,MAAM,EAAE;qBACL,aAAa,CAAC,2BAAc,CAAC;qBAC7B,MAAM,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,mCAAsB,CAAC,UAAU,EAAE,CAAC,CAAA;aACpF;YAED,MAAM,EAAE,CAAC,aAAa,CAAC,wBAAW,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,yBAAY,CAAC,IAAI,EAAE,CAAC,CAAA;SAClG;aAAM;YACL,SAAS,GAAG,MAAM,mBAAmB,CAAC,wBAAwB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAA;SAC7F;QAED,OAAO,SAAS,CAAA;KACjB;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,IAAI,oBAAS,EAAE,CAAA;KACvB;AACH,CAAC;AArED,4DAqEC;AAED;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,8BAA8B,CAClD,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,SAAoB,EACpB,eAA0C;IAE1C,MAAM,mBAAmB,GAA+B,IAAI,wCAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IACxG,OAAO,MAAM,mBAAmB,CAAC,8BAA8B,CAAC,SAAS,EAAE,eAAe,CAAC,CAAA;AAC7F,CAAC;AATD,wEASC"}
|
|
1
|
+
{"version":3,"file":"generate-release-good-worksheet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.ts"],"names":[],"mappings":"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"}
|