@things-factory/worksheet-base 4.1.7 → 4.1.13
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/controllers/ecommerce/sellercraft-controller.js +2 -2
- package/dist-server/controllers/ecommerce/sellercraft-controller.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-multiple-release-good-worksheet.js +4 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-multiple-release-good-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.js +47 -2
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js +92 -96
- package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js.map +1 -1
- package/package.json +17 -17
- package/server/controllers/ecommerce/sellercraft-controller.ts +6 -8
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-multiple-release-good-worksheet.ts +4 -2
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.ts +70 -3
- package/server/graphql/resolvers/worksheet/picking/complete-picking.ts +100 -102
|
@@ -48,7 +48,7 @@ class SellercraftController extends worksheet_controller_1.WorksheetController {
|
|
|
48
48
|
batchId: orderProduct.batchId,
|
|
49
49
|
productName: product.name,
|
|
50
50
|
gtin: defaultProductDetail.gtin,
|
|
51
|
-
forceCreateProduct:
|
|
51
|
+
forceCreateProduct: true,
|
|
52
52
|
expiryTime: 0,
|
|
53
53
|
weight: defaultProductDetail.nettWeight < 1 ? 1 : defaultProductDetail.nettWeight,
|
|
54
54
|
packageDimension: {
|
|
@@ -88,7 +88,7 @@ class SellercraftController extends worksheet_controller_1.WorksheetController {
|
|
|
88
88
|
receivedQty: orderInventory.returnQty * packingSize,
|
|
89
89
|
uom: 'EA',
|
|
90
90
|
batchId: orderInventory.batchId,
|
|
91
|
-
forceCreateProduct:
|
|
91
|
+
forceCreateProduct: true,
|
|
92
92
|
expiryTime: 0,
|
|
93
93
|
weight: defaultProductDetail.nettWeight < 1 ? 1 : defaultProductDetail.nettWeight,
|
|
94
94
|
packageDimension: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sellercraft-controller.js","sourceRoot":"","sources":["../../../server/controllers/ecommerce/sellercraft-controller.ts"],"names":[],"mappings":";;;AAAA,qFAAqF;AAErF,2DAOmC;AACnC,mEAA2F;AAE3F,kEAA6D;AAE7D,MAAa,qBAAsB,SAAQ,0CAAmB;IAC5D,KAAK,CAAC,SAAS,CAAC,WAAwB,EAAE,WAAwB;QAChE,MAAM,aAAa,GAAmB,WAAW,CAAC,aAAa,CAAA;QAC/D,IAAI,cAAc,GAAU,EAAE,CAAA;QAE9B,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YAChD,MAAM,OAAO,GAAY,YAAY,CAAC,OAAO,CAAA;YAE7C,OAAO;gBACL,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,UAAU,EAAE,YAAY,CAAC,UAAU;gBACnC,GAAG,EAAE,IAAI;aACV,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,gBAAgB,GAAQ;YAC5B,SAAS,EAAE,WAAW,CAAC,SAAS;YAChC,OAAO,EAAE,WAAW,CAAC,MAAM;YAC3B,cAAc;SACf,CAAA;QACD,MAAM,SAAS,GAAW,MAAM,wCAAc,CAAC,oBAAoB,CAAC,WAAW,oBAAO,gBAAgB,EAAG,CAAA;QAEzG,WAAW,CAAC,SAAS,GAAG,SAAS,CAAA;QACjC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;QAC/B,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,WAAwB,EAAE,aAA4B;QACjF,MAAM,aAAa,GAAmB,aAAa,CAAC,aAAa,CAAA;QACjE,MAAM,aAAa,GAAkB,aAAa,CAAC,aAAa,CAAA;QAChE,MAAM,cAAc,GAAU,MAAM,OAAO,CAAC,GAAG,CAC7C,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,YAA0B,EAAE,EAAE;YACrD,MAAM,OAAO,GAAY,YAAY,CAAC,OAAO,CAAA;YAC7C,MAAM,cAAc,GAAoB,OAAO,CAAC,cAAc,CAAA;YAC9D,MAAM,mBAAmB,GAAW,YAAY,CAAC,WAAW,CAAA;YAC5D,MAAM,oBAAoB,GAAkB,OAAO,CAAC,cAAc,CAAC,IAAI,CACrE,aAAa,CAAC,EAAE,CAAC,aAAa,CAAC,SAAS,CACzC,CAAA;YAED,IAAI,WAAW,GAAW,CAAC,CAAA;YAC3B,IAAI,mBAAmB,KAAK,oBAAoB,CAAC,WAAW,EAAE;gBAC5D,MAAM,uBAAuB,GAAkB,OAAO,CAAC,cAAc,CAAC,IAAI,CACxE,aAAa,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,KAAK,mBAAmB,CACnE,CAAA;gBAED,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,oBAAoB,EAAE,uBAAuB,CAAC,CAAA;aAC5G;YAED,OAAO;gBACL,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,gBAAgB,EAAE,YAAY,CAAC,OAAO,GAAG,WAAW;gBACpD,WAAW,EAAE,YAAY,CAAC,aAAa,GAAG,WAAW;gBACrD,GAAG,EAAE,IAAI;gBACT,OAAO,EAAE,YAAY,CAAC,OAAO;gBAC7B,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,IAAI,EAAE,oBAAoB,CAAC,IAAI;gBAC/B,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"sellercraft-controller.js","sourceRoot":"","sources":["../../../server/controllers/ecommerce/sellercraft-controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.generateMultipleReleaseGoodWorksheetResolver = void 0;
|
|
4
|
+
const typeorm_1 = require("typeorm");
|
|
4
5
|
const generate_release_good_worksheet_1 = require("./generate-release-good-worksheet");
|
|
5
6
|
exports.generateMultipleReleaseGoodWorksheetResolver = {
|
|
6
7
|
async generateMultipleReleaseGoodWorksheet(_, { releaseGoodNos }, context) {
|
|
7
8
|
const { tx, domain, user } = context.state;
|
|
8
9
|
for (let idx = 0; idx < releaseGoodNos.length; idx++) {
|
|
9
|
-
await (0,
|
|
10
|
+
await (0, typeorm_1.getManager)().transaction(async (txMgr) => {
|
|
11
|
+
await (0, generate_release_good_worksheet_1.generatePickingWorksheet)(txMgr, domain, user, releaseGoodNos[idx]);
|
|
12
|
+
});
|
|
10
13
|
}
|
|
11
14
|
return true;
|
|
12
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-multiple-release-good-worksheet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/generate-worksheet/generate-multiple-release-good-worksheet.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"generate-multiple-release-good-worksheet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/generate-worksheet/generate-multiple-release-good-worksheet.ts"],"names":[],"mappings":";;;AAAA,qCAAmD;AASnD,uFAA4E;AAE/D,QAAA,4CAA4C,GAAG;IAC1D,KAAK,CAAC,oCAAoC,CAAC,CAAM,EAAE,EAAE,cAAc,EAAE,EAAE,OAAY;QACjF,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;QAE7F,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;YACpD,MAAM,IAAA,oBAAU,GAAE,CAAC,WAAW,CAAC,KAAK,EAAC,KAAK,EAAC,EAAE;gBAC3C,MAAM,IAAA,0DAAwB,EAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAA;YAC1E,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,IAAI,CAAA;IACb,CAAC;CACF,CAAA"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.generatePickingWorksheetDetail = exports.generatePickingWorksheet = exports.generateReleaseGoodWorksheetResolver = void 0;
|
|
4
|
+
const sales_base_1 = require("@things-factory/sales-base");
|
|
5
|
+
const setting_base_1 = require("@things-factory/setting-base");
|
|
4
6
|
const controllers_1 = require("../../../../controllers/");
|
|
7
|
+
const entities_1 = require("../../../../entities");
|
|
8
|
+
const warehouse_base_1 = require("@things-factory/warehouse-base");
|
|
5
9
|
exports.generateReleaseGoodWorksheetResolver = {
|
|
6
10
|
async generateReleaseGoodWorksheet(_, { releaseGoodNo }, context) {
|
|
7
11
|
const { tx, domain, user } = context.state;
|
|
@@ -9,8 +13,49 @@ exports.generateReleaseGoodWorksheetResolver = {
|
|
|
9
13
|
}
|
|
10
14
|
};
|
|
11
15
|
async function generatePickingWorksheet(tx, domain, user, releaseGoodNo) {
|
|
12
|
-
|
|
13
|
-
|
|
16
|
+
try {
|
|
17
|
+
const worksheetController = new controllers_1.PickingWorksheetController(tx, domain, user);
|
|
18
|
+
let releaseGood = await worksheetController.findRefOrder(sales_base_1.ReleaseGood, {
|
|
19
|
+
domain: domain,
|
|
20
|
+
name: releaseGoodNo,
|
|
21
|
+
status: sales_base_1.ORDER_STATUS.PENDING_WORKSHEET
|
|
22
|
+
});
|
|
23
|
+
let worksheet = new entities_1.Worksheet();
|
|
24
|
+
const directReleaseOrder = await tx.getRepository(setting_base_1.Setting).findOne({
|
|
25
|
+
where: { domain, category: 'id-rule', name: 'enable-direct-b2c-release-order' }
|
|
26
|
+
});
|
|
27
|
+
if (releaseGood.type == 'b2c' && directReleaseOrder && directReleaseOrder.value.toLowerCase() == 'true') {
|
|
28
|
+
const inventoryUtil = new warehouse_base_1.InventoryUtil(tx, domain, user);
|
|
29
|
+
let orderInventories = await tx.getRepository(sales_base_1.OrderInventory).find({
|
|
30
|
+
where: { domain, releaseGood },
|
|
31
|
+
relations: ['inventory']
|
|
32
|
+
});
|
|
33
|
+
for (let idx = 0; idx < orderInventories.length; idx++) {
|
|
34
|
+
let orderInventory = orderInventories[idx];
|
|
35
|
+
if (orderInventory.releaseQty <= 0 || (orderInventory.uomValue != null && orderInventory.uomValue <= 0)) {
|
|
36
|
+
throw new Error(`Invalid data for ${releaseGoodNo}. Please contact support.`);
|
|
37
|
+
}
|
|
38
|
+
orderInventory.uomValue = orderInventory.uomValue > 0 ? orderInventory.uomValue : 0;
|
|
39
|
+
let inventory = await tx.getRepository(warehouse_base_1.Inventory).findOne({ where: { id: orderInventory.inventory.id } });
|
|
40
|
+
await inventoryUtil.transactionInventory({
|
|
41
|
+
id: inventory.id,
|
|
42
|
+
qty: inventory.qty - orderInventory.releaseQty,
|
|
43
|
+
uomValue: Math.round((inventory.uomValue - orderInventory.releaseUomValue) * 100) / 100,
|
|
44
|
+
lockedQty: inventory.lockedQty - orderInventory.releaseQty,
|
|
45
|
+
lockedUomValue: Math.round((inventory.lockedUomValue - orderInventory.releaseUomValue) * 100) / 100
|
|
46
|
+
}, releaseGood, -orderInventory.releaseQty, -orderInventory.releaseUomValue, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.DIRECT_DEDUCTION);
|
|
47
|
+
await tx.getRepository(sales_base_1.OrderInventory).save({ id: orderInventory.id, status: sales_base_1.ORDER_INVENTORY_STATUS.TERMINATED });
|
|
48
|
+
}
|
|
49
|
+
await tx.getRepository(sales_base_1.ReleaseGood).save({ id: releaseGood.id, status: sales_base_1.ORDER_STATUS.DONE });
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
worksheet = await worksheetController.generatePickingWorksheet(releaseGoodNo);
|
|
53
|
+
}
|
|
54
|
+
return worksheet;
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
return new entities_1.Worksheet();
|
|
58
|
+
}
|
|
14
59
|
}
|
|
15
60
|
exports.generatePickingWorksheet = generatePickingWorksheet;
|
|
16
61
|
/**
|
|
@@ -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":";;;
|
|
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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"}
|
|
@@ -65,105 +65,101 @@ async function completePicking(tx, domain, user, releaseGoodNo) {
|
|
|
65
65
|
releaseGood = await sellercraftCtrl.initiateOrderShipment(sellercraft, releaseGood);
|
|
66
66
|
await sellercraftCtrl.initiateOrderDocument(sellercraft, releaseGood);
|
|
67
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
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
68
|
+
const companyDomain = releaseGood.bizplace.company.domain;
|
|
69
|
+
let marketplaceOrder = await tx.getRepository(marketplace_base_1.MarketplaceOrder).findOne({
|
|
70
|
+
where: { orderNo: releaseGood.refNo, domain: companyDomain },
|
|
71
|
+
relations: [
|
|
72
|
+
'marketplaceStore',
|
|
73
|
+
'marketplaceOrderItems',
|
|
74
|
+
'marketplaceOrderItems.marketplaceOrderShippingItems',
|
|
75
|
+
'marketplaceOrderItems.marketplaceOrderShippingItems.marketplaceOrderShipping'
|
|
76
|
+
]
|
|
77
|
+
});
|
|
78
|
+
if (!sellercraft && marketplaceOrder) {
|
|
79
|
+
const marketplaceStore = marketplaceOrder.marketplaceStore;
|
|
80
|
+
let eTraxOption;
|
|
81
|
+
if (marketplaceStore.isAutoUpdateShipment) {
|
|
82
|
+
const ecommerceCtrl = new ecommerce_1.EcommerceController(tx, domain, user);
|
|
83
|
+
await ecommerceCtrl.createOrderComment(marketplaceStore, marketplaceOrder, sales_base_1.ORDER_STATUS.PACKING);
|
|
84
|
+
}
|
|
85
|
+
if (!marketplaceOrder)
|
|
86
|
+
throw new Error('Failed to find ecommerce order, kindly contact our support team regarding this issue');
|
|
87
|
+
eTraxOption = marketplaceOrder === null || marketplaceOrder === void 0 ? void 0 : marketplaceOrder.marketplaceStore.eTrax;
|
|
88
|
+
// if eTrax option is true
|
|
89
|
+
if (eTraxOption) {
|
|
90
|
+
const marketplaceOrderItems = marketplaceOrder.marketplaceOrderItems;
|
|
91
|
+
// access every marketplaceOrderItems for shipping information you need
|
|
92
|
+
// trigger the controller from integration-lmd that trigger the API, build the parameters needed
|
|
93
|
+
// for etrax didn't support multi awb per order
|
|
94
|
+
const marketplaceOrderShippingItems = marketplaceOrderItems[0].marketplaceOrderShippingItems;
|
|
95
|
+
const marketplaceOrderShipping = marketplaceOrderShippingItems[0].marketplaceOrderShipping;
|
|
96
|
+
const lmd = await tx.getRepository(integration_lmd_1.LastMileDelivery).findOne({
|
|
97
|
+
where: {
|
|
98
|
+
domain,
|
|
99
|
+
platform: 'eTrax'
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
//Get which transporter to use
|
|
103
|
+
const marketplaceTransporter = await tx.getRepository(integration_marketplace_1.MarketplaceTransporter).findOne({
|
|
104
|
+
where: { marketplaceStore: marketplaceOrder.marketplaceStore },
|
|
105
|
+
relations: ['pickupTransporter', 'deliveryTransporter']
|
|
106
|
+
});
|
|
107
|
+
const resp = await integration_lmd_1.LastMileAPI.createShipmentRequest(lmd, {
|
|
108
|
+
orderNo: marketplaceOrder.orderNo,
|
|
109
|
+
clientId: lmd.clientId,
|
|
110
|
+
clientType: lmd.clientType,
|
|
111
|
+
clientName: lmd.clientName,
|
|
112
|
+
transporterId: marketplaceTransporter.pickupTransporter.transporterId,
|
|
113
|
+
pickupName: warehouseContactPoint.name,
|
|
114
|
+
pickupAddress1: warehouseContactPoint.address,
|
|
115
|
+
pickupAddress2: warehouseContactPoint.address2,
|
|
116
|
+
pickupPostcode: warehouseContactPoint.postCode,
|
|
117
|
+
pickupState: warehouseContactPoint.state,
|
|
118
|
+
pickupCity: warehouseContactPoint.city,
|
|
119
|
+
pickupPhone: warehouseContactPoint.phone,
|
|
120
|
+
pickupEmail: warehouseContactPoint.email,
|
|
121
|
+
name: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.attentionTo) ? marketplaceOrderShipping.attentionTo.trim() : '',
|
|
122
|
+
address1: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.address1) ? marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.address1.trim() : '-',
|
|
123
|
+
address2: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.address2) ? marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.address2.trim() : '-',
|
|
124
|
+
postCode: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.postCode) ? marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.postCode.trim() : '',
|
|
125
|
+
city: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.city) ? marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.city.trim() : '',
|
|
126
|
+
state: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.state) ? marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.state.trim() : '',
|
|
127
|
+
phone: marketplaceOrderShipping.phone1 || '',
|
|
128
|
+
email: marketplaceOrderShipping.email || '',
|
|
129
|
+
attentionTo: marketplaceOrderShipping.attentionTo,
|
|
130
|
+
quantity: marketplaceOrderItems.length
|
|
131
|
+
});
|
|
132
|
+
const delay = (ms) => {
|
|
133
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
134
|
+
};
|
|
135
|
+
if (resp.Status === 'SUCCESS') {
|
|
136
|
+
//Success
|
|
137
|
+
let awbObtained = false;
|
|
138
|
+
let retry = 0;
|
|
139
|
+
while (!awbObtained) {
|
|
140
|
+
const marketplaceOrder2 = await tx.getRepository(marketplace_base_1.MarketplaceOrder).findOne({
|
|
141
|
+
where: { releaseOrderId: releaseGood.id },
|
|
142
|
+
relations: [
|
|
143
|
+
'marketplaceStore',
|
|
144
|
+
'marketplaceOrderItems',
|
|
145
|
+
'marketplaceOrderItems.marketplaceOrderShippingItems',
|
|
146
|
+
'marketplaceOrderItems.marketplaceOrderShippingItems.marketplaceOrderShipping'
|
|
147
|
+
]
|
|
148
|
+
});
|
|
149
|
+
const orderShipping = marketplaceOrder2.marketplaceOrderItems[0].marketplaceOrderShippingItems[0].marketplaceOrderShipping;
|
|
150
|
+
if (orderShipping === null || orderShipping === void 0 ? void 0 : orderShipping.airwayBill) {
|
|
151
|
+
awbObtained = true;
|
|
101
152
|
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
.findOne({
|
|
107
|
-
where: { marketplaceStore: marketplaceOrder.marketplaceStore },
|
|
108
|
-
relations: ['pickupTransporter', 'deliveryTransporter']
|
|
109
|
-
});
|
|
110
|
-
const resp = await integration_lmd_1.LastMileAPI.createShipmentRequest(lmd, {
|
|
111
|
-
orderNo: marketplaceOrder.orderNo,
|
|
112
|
-
clientId: lmd.clientId,
|
|
113
|
-
clientType: lmd.clientType,
|
|
114
|
-
clientName: lmd.clientName,
|
|
115
|
-
transporterId: marketplaceTransporter.pickupTransporter.transporterId,
|
|
116
|
-
pickupName: warehouseContactPoint.name,
|
|
117
|
-
pickupAddress1: warehouseContactPoint.address,
|
|
118
|
-
pickupAddress2: warehouseContactPoint.address2,
|
|
119
|
-
pickupPostcode: warehouseContactPoint.postCode,
|
|
120
|
-
pickupState: warehouseContactPoint.state,
|
|
121
|
-
pickupCity: warehouseContactPoint.city,
|
|
122
|
-
pickupPhone: warehouseContactPoint.phone,
|
|
123
|
-
pickupEmail: warehouseContactPoint.email,
|
|
124
|
-
name: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.attentionTo) ? marketplaceOrderShipping.attentionTo.trim() : '',
|
|
125
|
-
address1: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.address1) ? marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.address1.trim() : '-',
|
|
126
|
-
address2: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.address2) ? marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.address2.trim() : '-',
|
|
127
|
-
postCode: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.postCode) ? marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.postCode.trim() : '',
|
|
128
|
-
city: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.city) ? marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.city.trim() : '',
|
|
129
|
-
state: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.state) ? marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.state.trim() : '',
|
|
130
|
-
phone: marketplaceOrderShipping.phone1 || '',
|
|
131
|
-
email: marketplaceOrderShipping.email || '',
|
|
132
|
-
attentionTo: marketplaceOrderShipping.attentionTo,
|
|
133
|
-
quantity: marketplaceOrderItems.length
|
|
134
|
-
});
|
|
135
|
-
const delay = (ms) => {
|
|
136
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
137
|
-
};
|
|
138
|
-
if (resp.Status === 'SUCCESS') {
|
|
139
|
-
//Success
|
|
140
|
-
let awbObtained = false;
|
|
141
|
-
let retry = 0;
|
|
142
|
-
while (!awbObtained) {
|
|
143
|
-
const marketplaceOrder2 = await tx.getRepository(marketplace_base_1.MarketplaceOrder).findOne({
|
|
144
|
-
where: { releaseOrderId: releaseGood.id },
|
|
145
|
-
relations: [
|
|
146
|
-
'marketplaceStore',
|
|
147
|
-
'marketplaceOrderItems',
|
|
148
|
-
'marketplaceOrderItems.marketplaceOrderShippingItems',
|
|
149
|
-
'marketplaceOrderItems.marketplaceOrderShippingItems.marketplaceOrderShipping'
|
|
150
|
-
]
|
|
151
|
-
});
|
|
152
|
-
const orderShipping = marketplaceOrder2.marketplaceOrderItems[0].marketplaceOrderShippingItems[0].marketplaceOrderShipping;
|
|
153
|
-
if (orderShipping === null || orderShipping === void 0 ? void 0 : orderShipping.airwayBill) {
|
|
154
|
-
awbObtained = true;
|
|
155
|
-
}
|
|
156
|
-
await delay(5000);
|
|
157
|
-
//Timeout after 15sec
|
|
158
|
-
if (++retry > 3) {
|
|
159
|
-
break;
|
|
160
|
-
}
|
|
153
|
+
await delay(5000);
|
|
154
|
+
//Timeout after 15sec
|
|
155
|
+
if (++retry > 3) {
|
|
156
|
+
break;
|
|
161
157
|
}
|
|
162
158
|
}
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
159
|
+
}
|
|
160
|
+
else {
|
|
161
|
+
throw resp;
|
|
162
|
+
//Failed
|
|
167
163
|
}
|
|
168
164
|
}
|
|
169
165
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"complete-picking.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/picking/complete-picking.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"complete-picking.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/picking/complete-picking.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.1.
|
|
3
|
+
"version": "4.1.13",
|
|
4
4
|
"main": "dist-server/index.js",
|
|
5
5
|
"browser": "client/index.js",
|
|
6
6
|
"things-factory": true,
|
|
@@ -24,21 +24,21 @@
|
|
|
24
24
|
"migration:create": "node ../../node_modules/typeorm/cli.js migration:create -d ./server/migrations"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@things-factory/auth-base": "^4.1.
|
|
28
|
-
"@things-factory/biz-base": "^4.1.
|
|
29
|
-
"@things-factory/document-template-base": "^4.1.
|
|
30
|
-
"@things-factory/id-rule-base": "^4.1.
|
|
31
|
-
"@things-factory/integration-lmd": "^4.1.
|
|
32
|
-
"@things-factory/integration-marketplace": "^4.1.
|
|
33
|
-
"@things-factory/integration-sellercraft": "^4.1.
|
|
34
|
-
"@things-factory/integration-sftp": "^4.1.
|
|
35
|
-
"@things-factory/marketplace-base": "^4.1.
|
|
36
|
-
"@things-factory/notification": "^4.1.
|
|
37
|
-
"@things-factory/sales-base": "^4.1.
|
|
38
|
-
"@things-factory/setting-base": "^4.1.
|
|
39
|
-
"@things-factory/shell": "^4.1.
|
|
40
|
-
"@things-factory/transport-base": "^4.1.
|
|
41
|
-
"@things-factory/warehouse-base": "^4.1.
|
|
27
|
+
"@things-factory/auth-base": "^4.1.13",
|
|
28
|
+
"@things-factory/biz-base": "^4.1.13",
|
|
29
|
+
"@things-factory/document-template-base": "^4.1.13",
|
|
30
|
+
"@things-factory/id-rule-base": "^4.1.13",
|
|
31
|
+
"@things-factory/integration-lmd": "^4.1.13",
|
|
32
|
+
"@things-factory/integration-marketplace": "^4.1.13",
|
|
33
|
+
"@things-factory/integration-sellercraft": "^4.1.13",
|
|
34
|
+
"@things-factory/integration-sftp": "^4.1.13",
|
|
35
|
+
"@things-factory/marketplace-base": "^4.1.13",
|
|
36
|
+
"@things-factory/notification": "^4.1.13",
|
|
37
|
+
"@things-factory/sales-base": "^4.1.13",
|
|
38
|
+
"@things-factory/setting-base": "^4.1.13",
|
|
39
|
+
"@things-factory/shell": "^4.1.13",
|
|
40
|
+
"@things-factory/transport-base": "^4.1.13",
|
|
41
|
+
"@things-factory/warehouse-base": "^4.1.13"
|
|
42
42
|
},
|
|
43
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "adbf93d0eddd05d209543ed0d08e3aeaab2968b5"
|
|
44
44
|
}
|
|
@@ -68,7 +68,7 @@ export class SellercraftController extends WorksheetController {
|
|
|
68
68
|
batchId: orderProduct.batchId,
|
|
69
69
|
productName: product.name,
|
|
70
70
|
gtin: defaultProductDetail.gtin,
|
|
71
|
-
forceCreateProduct:
|
|
71
|
+
forceCreateProduct: true,
|
|
72
72
|
expiryTime: 0,
|
|
73
73
|
weight: defaultProductDetail.nettWeight < 1 ? 1 : defaultProductDetail.nettWeight,
|
|
74
74
|
packageDimension: {
|
|
@@ -119,7 +119,7 @@ export class SellercraftController extends WorksheetController {
|
|
|
119
119
|
receivedQty: orderInventory.returnQty * packingSize,
|
|
120
120
|
uom: 'EA',
|
|
121
121
|
batchId: orderInventory.batchId,
|
|
122
|
-
forceCreateProduct:
|
|
122
|
+
forceCreateProduct: true,
|
|
123
123
|
expiryTime: 0,
|
|
124
124
|
weight: defaultProductDetail.nettWeight < 1 ? 1 : defaultProductDetail.nettWeight,
|
|
125
125
|
packageDimension: {
|
|
@@ -216,12 +216,10 @@ export class SellercraftController extends WorksheetController {
|
|
|
216
216
|
packageId: releaseGood.packageId
|
|
217
217
|
}
|
|
218
218
|
|
|
219
|
-
const {
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
dropoffAddress
|
|
224
|
-
} = await SellercraftAPI.initiateOrderShipment(sellercraft, { ...orderInformation })
|
|
219
|
+
const { handOverType, pickupTime, pickupAddress, dropoffAddress } = await SellercraftAPI.initiateOrderShipment(
|
|
220
|
+
sellercraft,
|
|
221
|
+
{ ...orderInformation }
|
|
222
|
+
)
|
|
225
223
|
|
|
226
224
|
releaseGood.handoverType = handOverType
|
|
227
225
|
if (pickupAddress) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EntityManager } from 'typeorm'
|
|
1
|
+
import { EntityManager, getManager } from 'typeorm'
|
|
2
2
|
|
|
3
3
|
import { User } from '@things-factory/auth-base'
|
|
4
4
|
import { OrderInventory } from '@things-factory/sales-base'
|
|
@@ -14,7 +14,9 @@ export const generateMultipleReleaseGoodWorksheetResolver = {
|
|
|
14
14
|
const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state
|
|
15
15
|
|
|
16
16
|
for (let idx = 0; idx < releaseGoodNos.length; idx++) {
|
|
17
|
-
await
|
|
17
|
+
await getManager().transaction(async txMgr => {
|
|
18
|
+
await generatePickingWorksheet(txMgr, domain, user, releaseGoodNos[idx])
|
|
19
|
+
});
|
|
18
20
|
}
|
|
19
21
|
|
|
20
22
|
return true
|
package/server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.ts
CHANGED
|
@@ -1,12 +1,19 @@
|
|
|
1
1
|
import { EntityManager } from 'typeorm'
|
|
2
2
|
|
|
3
3
|
import { User } from '@things-factory/auth-base'
|
|
4
|
-
import { OrderInventory } from '@things-factory/sales-base'
|
|
4
|
+
import { ORDER_INVENTORY_STATUS, ORDER_STATUS, OrderInventory, ReleaseGood } from '@things-factory/sales-base'
|
|
5
5
|
import { Domain } from '@things-factory/shell'
|
|
6
|
+
import { PartnerSetting, Setting } from '@things-factory/setting-base'
|
|
6
7
|
|
|
7
8
|
import { PickingWorksheetController } from '../../../../controllers/'
|
|
8
9
|
import { Worksheet, WorksheetDetail } from '../../../../entities'
|
|
9
10
|
|
|
11
|
+
import {
|
|
12
|
+
Inventory,
|
|
13
|
+
InventoryUtil,
|
|
14
|
+
INVENTORY_TRANSACTION_TYPE
|
|
15
|
+
} from '@things-factory/warehouse-base'
|
|
16
|
+
|
|
10
17
|
export const generateReleaseGoodWorksheetResolver = {
|
|
11
18
|
async generateReleaseGoodWorksheet(_: any, { releaseGoodNo }, context: any) {
|
|
12
19
|
const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state
|
|
@@ -20,8 +27,68 @@ export async function generatePickingWorksheet(
|
|
|
20
27
|
user: User,
|
|
21
28
|
releaseGoodNo: string
|
|
22
29
|
): Promise<Worksheet> {
|
|
23
|
-
|
|
24
|
-
|
|
30
|
+
try {
|
|
31
|
+
const worksheetController: PickingWorksheetController = new PickingWorksheetController(tx, domain, user)
|
|
32
|
+
|
|
33
|
+
let releaseGood: ReleaseGood = await worksheetController.findRefOrder(
|
|
34
|
+
ReleaseGood,
|
|
35
|
+
{
|
|
36
|
+
domain: domain,
|
|
37
|
+
name: releaseGoodNo,
|
|
38
|
+
status: ORDER_STATUS.PENDING_WORKSHEET
|
|
39
|
+
}
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
let worksheet: Worksheet = new Worksheet()
|
|
43
|
+
|
|
44
|
+
const directReleaseOrder: Setting = await tx.getRepository(Setting).findOne({
|
|
45
|
+
where: { domain, category: 'id-rule', name: 'enable-direct-b2c-release-order' }
|
|
46
|
+
})
|
|
47
|
+
|
|
48
|
+
if (releaseGood.type == 'b2c' && directReleaseOrder && directReleaseOrder.value.toLowerCase() == 'true') {
|
|
49
|
+
const inventoryUtil = new InventoryUtil(tx, domain, user)
|
|
50
|
+
|
|
51
|
+
let orderInventories: OrderInventory[] = await tx.getRepository(OrderInventory).find({
|
|
52
|
+
where: { domain, releaseGood },
|
|
53
|
+
relations: ['inventory']
|
|
54
|
+
})
|
|
55
|
+
|
|
56
|
+
for (let idx = 0; idx < orderInventories.length; idx++) {
|
|
57
|
+
let orderInventory = orderInventories[idx]
|
|
58
|
+
if (orderInventory.releaseQty <= 0 || (orderInventory.uomValue != null && orderInventory.uomValue <= 0)) {
|
|
59
|
+
throw new Error(`Invalid data for ${releaseGoodNo}. Please contact support.`);
|
|
60
|
+
}
|
|
61
|
+
orderInventory.uomValue = orderInventory.uomValue > 0 ? orderInventory.uomValue : 0
|
|
62
|
+
|
|
63
|
+
let inventory: Inventory = await tx.getRepository(Inventory).findOne({ where: { id: orderInventory.inventory.id } })
|
|
64
|
+
|
|
65
|
+
await inventoryUtil.transactionInventory(
|
|
66
|
+
{
|
|
67
|
+
id: inventory.id,
|
|
68
|
+
qty: inventory.qty - orderInventory.releaseQty,
|
|
69
|
+
uomValue: Math.round((inventory.uomValue - orderInventory.releaseUomValue) * 100) / 100,
|
|
70
|
+
lockedQty: inventory.lockedQty - orderInventory.releaseQty,
|
|
71
|
+
lockedUomValue: Math.round((inventory.lockedUomValue - orderInventory.releaseUomValue) * 100) / 100
|
|
72
|
+
},
|
|
73
|
+
releaseGood,
|
|
74
|
+
- orderInventory.releaseQty,
|
|
75
|
+
- orderInventory.releaseUomValue,
|
|
76
|
+
INVENTORY_TRANSACTION_TYPE.DIRECT_DEDUCTION
|
|
77
|
+
)
|
|
78
|
+
|
|
79
|
+
await tx.getRepository(OrderInventory).save({ id: orderInventory.id, status: ORDER_INVENTORY_STATUS.TERMINATED })
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
await tx.getRepository(ReleaseGood).save({ id: releaseGood.id, status: ORDER_STATUS.DONE })
|
|
83
|
+
|
|
84
|
+
} else {
|
|
85
|
+
worksheet = await worksheetController.generatePickingWorksheet(releaseGoodNo)
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
return worksheet
|
|
89
|
+
} catch (error) {
|
|
90
|
+
return new Worksheet()
|
|
91
|
+
}
|
|
25
92
|
}
|
|
26
93
|
|
|
27
94
|
/**
|
|
@@ -100,116 +100,114 @@ export async function completePicking(
|
|
|
100
100
|
|
|
101
101
|
releaseGood = await sellercraftCtrl.initiateOrderShipment(sellercraft, releaseGood)
|
|
102
102
|
await sellercraftCtrl.initiateOrderDocument(sellercraft, releaseGood)
|
|
103
|
-
}
|
|
104
|
-
const companyDomain: Domain = releaseGood.bizplace.company.domain
|
|
105
|
-
let marketplaceOrder: MarketplaceOrder = await tx.getRepository(MarketplaceOrder).findOne({
|
|
106
|
-
where: { orderNo: releaseGood.refNo, domain: companyDomain },
|
|
107
|
-
relations: [
|
|
108
|
-
'marketplaceStore',
|
|
109
|
-
'marketplaceOrderItems',
|
|
110
|
-
'marketplaceOrderItems.marketplaceOrderShippingItems',
|
|
111
|
-
'marketplaceOrderItems.marketplaceOrderShippingItems.marketplaceOrderShipping'
|
|
112
|
-
]
|
|
113
|
-
})
|
|
103
|
+
}
|
|
114
104
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
105
|
+
const companyDomain: Domain = releaseGood.bizplace.company.domain
|
|
106
|
+
let marketplaceOrder: MarketplaceOrder = await tx.getRepository(MarketplaceOrder).findOne({
|
|
107
|
+
where: { orderNo: releaseGood.refNo, domain: companyDomain },
|
|
108
|
+
relations: [
|
|
109
|
+
'marketplaceStore',
|
|
110
|
+
'marketplaceOrderItems',
|
|
111
|
+
'marketplaceOrderItems.marketplaceOrderShippingItems',
|
|
112
|
+
'marketplaceOrderItems.marketplaceOrderShippingItems.marketplaceOrderShipping'
|
|
113
|
+
]
|
|
114
|
+
})
|
|
118
115
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
}
|
|
116
|
+
if (!sellercraft && marketplaceOrder) {
|
|
117
|
+
const marketplaceStore: MarketplaceStore = marketplaceOrder.marketplaceStore
|
|
118
|
+
let eTraxOption: boolean
|
|
123
119
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
// if eTrax option is true
|
|
129
|
-
if (eTraxOption) {
|
|
130
|
-
const marketplaceOrderItems: MarketplaceOrderItem[] = marketplaceOrder.marketplaceOrderItems
|
|
131
|
-
|
|
132
|
-
// access every marketplaceOrderItems for shipping information you need
|
|
133
|
-
// trigger the controller from integration-lmd that trigger the API, build the parameters needed
|
|
134
|
-
// for etrax didn't support multi awb per order
|
|
135
|
-
const marketplaceOrderShippingItems: MarketplaceOrderShippingItem[] =
|
|
136
|
-
marketplaceOrderItems[0].marketplaceOrderShippingItems
|
|
137
|
-
const marketplaceOrderShipping: MarketplaceOrderShipping =
|
|
138
|
-
marketplaceOrderShippingItems[0].marketplaceOrderShipping
|
|
139
|
-
const lmd: LastMileDelivery = await tx.getRepository(LastMileDelivery).findOne({
|
|
140
|
-
where: {
|
|
141
|
-
domain,
|
|
142
|
-
platform: 'eTrax'
|
|
143
|
-
}
|
|
144
|
-
})
|
|
145
|
-
|
|
146
|
-
//Get which transporter to use
|
|
147
|
-
const marketplaceTransporter: MarketplaceTransporter = await tx
|
|
148
|
-
.getRepository(MarketplaceTransporter)
|
|
149
|
-
.findOne({
|
|
150
|
-
where: { marketplaceStore: marketplaceOrder.marketplaceStore },
|
|
151
|
-
relations: ['pickupTransporter', 'deliveryTransporter']
|
|
152
|
-
})
|
|
120
|
+
if (marketplaceStore.isAutoUpdateShipment) {
|
|
121
|
+
const ecommerceCtrl: EcommerceController = new EcommerceController(tx, domain, user)
|
|
122
|
+
await ecommerceCtrl.createOrderComment(marketplaceStore, marketplaceOrder, ORDER_STATUS.PACKING)
|
|
123
|
+
}
|
|
153
124
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
state: marketplaceOrderShipping?.state ? marketplaceOrderShipping?.state.trim() : '',
|
|
174
|
-
phone: marketplaceOrderShipping.phone1 || '',
|
|
175
|
-
email: marketplaceOrderShipping.email || '',
|
|
176
|
-
attentionTo: marketplaceOrderShipping.attentionTo,
|
|
177
|
-
quantity: marketplaceOrderItems.length
|
|
178
|
-
})
|
|
179
|
-
|
|
180
|
-
const delay = (ms: number) => {
|
|
181
|
-
return new Promise(resolve => setTimeout(resolve, ms))
|
|
125
|
+
if (!marketplaceOrder)
|
|
126
|
+
throw new Error('Failed to find ecommerce order, kindly contact our support team regarding this issue')
|
|
127
|
+
eTraxOption = marketplaceOrder?.marketplaceStore.eTrax
|
|
128
|
+
|
|
129
|
+
// if eTrax option is true
|
|
130
|
+
if (eTraxOption) {
|
|
131
|
+
const marketplaceOrderItems: MarketplaceOrderItem[] = marketplaceOrder.marketplaceOrderItems
|
|
132
|
+
|
|
133
|
+
// access every marketplaceOrderItems for shipping information you need
|
|
134
|
+
// trigger the controller from integration-lmd that trigger the API, build the parameters needed
|
|
135
|
+
// for etrax didn't support multi awb per order
|
|
136
|
+
const marketplaceOrderShippingItems: MarketplaceOrderShippingItem[] =
|
|
137
|
+
marketplaceOrderItems[0].marketplaceOrderShippingItems
|
|
138
|
+
const marketplaceOrderShipping: MarketplaceOrderShipping =
|
|
139
|
+
marketplaceOrderShippingItems[0].marketplaceOrderShipping
|
|
140
|
+
const lmd: LastMileDelivery = await tx.getRepository(LastMileDelivery).findOne({
|
|
141
|
+
where: {
|
|
142
|
+
domain,
|
|
143
|
+
platform: 'eTrax'
|
|
182
144
|
}
|
|
145
|
+
})
|
|
183
146
|
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
147
|
+
//Get which transporter to use
|
|
148
|
+
const marketplaceTransporter: MarketplaceTransporter = await tx.getRepository(MarketplaceTransporter).findOne({
|
|
149
|
+
where: { marketplaceStore: marketplaceOrder.marketplaceStore },
|
|
150
|
+
relations: ['pickupTransporter', 'deliveryTransporter']
|
|
151
|
+
})
|
|
152
|
+
|
|
153
|
+
const resp = await LastMileAPI.createShipmentRequest(lmd, {
|
|
154
|
+
orderNo: marketplaceOrder.orderNo,
|
|
155
|
+
clientId: lmd.clientId,
|
|
156
|
+
clientType: lmd.clientType,
|
|
157
|
+
clientName: lmd.clientName,
|
|
158
|
+
transporterId: marketplaceTransporter.pickupTransporter.transporterId,
|
|
159
|
+
pickupName: warehouseContactPoint.name,
|
|
160
|
+
pickupAddress1: warehouseContactPoint.address,
|
|
161
|
+
pickupAddress2: warehouseContactPoint.address2,
|
|
162
|
+
pickupPostcode: warehouseContactPoint.postCode,
|
|
163
|
+
pickupState: warehouseContactPoint.state,
|
|
164
|
+
pickupCity: warehouseContactPoint.city,
|
|
165
|
+
pickupPhone: warehouseContactPoint.phone,
|
|
166
|
+
pickupEmail: warehouseContactPoint.email,
|
|
167
|
+
name: marketplaceOrderShipping?.attentionTo ? marketplaceOrderShipping.attentionTo.trim() : '',
|
|
168
|
+
address1: marketplaceOrderShipping?.address1 ? marketplaceOrderShipping?.address1.trim() : '-',
|
|
169
|
+
address2: marketplaceOrderShipping?.address2 ? marketplaceOrderShipping?.address2.trim() : '-',
|
|
170
|
+
postCode: marketplaceOrderShipping?.postCode ? marketplaceOrderShipping?.postCode.trim() : '',
|
|
171
|
+
city: marketplaceOrderShipping?.city ? marketplaceOrderShipping?.city.trim() : '',
|
|
172
|
+
state: marketplaceOrderShipping?.state ? marketplaceOrderShipping?.state.trim() : '',
|
|
173
|
+
phone: marketplaceOrderShipping.phone1 || '',
|
|
174
|
+
email: marketplaceOrderShipping.email || '',
|
|
175
|
+
attentionTo: marketplaceOrderShipping.attentionTo,
|
|
176
|
+
quantity: marketplaceOrderItems.length
|
|
177
|
+
})
|
|
178
|
+
|
|
179
|
+
const delay = (ms: number) => {
|
|
180
|
+
return new Promise(resolve => setTimeout(resolve, ms))
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
if (resp.Status === 'SUCCESS') {
|
|
184
|
+
//Success
|
|
185
|
+
let awbObtained = false
|
|
186
|
+
let retry = 0
|
|
187
|
+
while (!awbObtained) {
|
|
188
|
+
const marketplaceOrder2: MarketplaceOrder = await tx.getRepository(MarketplaceOrder).findOne({
|
|
189
|
+
where: { releaseOrderId: releaseGood.id },
|
|
190
|
+
relations: [
|
|
191
|
+
'marketplaceStore',
|
|
192
|
+
'marketplaceOrderItems',
|
|
193
|
+
'marketplaceOrderItems.marketplaceOrderShippingItems',
|
|
194
|
+
'marketplaceOrderItems.marketplaceOrderShippingItems.marketplaceOrderShipping'
|
|
195
|
+
]
|
|
196
|
+
})
|
|
197
|
+
const orderShipping =
|
|
198
|
+
marketplaceOrder2.marketplaceOrderItems[0].marketplaceOrderShippingItems[0].marketplaceOrderShipping
|
|
199
|
+
if (orderShipping?.airwayBill) {
|
|
200
|
+
awbObtained = true
|
|
201
|
+
}
|
|
202
|
+
await delay(5000)
|
|
203
|
+
//Timeout after 15sec
|
|
204
|
+
if (++retry > 3) {
|
|
205
|
+
break
|
|
208
206
|
}
|
|
209
|
-
} else {
|
|
210
|
-
throw resp
|
|
211
|
-
//Failed
|
|
212
207
|
}
|
|
208
|
+
} else {
|
|
209
|
+
throw resp
|
|
210
|
+
//Failed
|
|
213
211
|
}
|
|
214
212
|
}
|
|
215
213
|
}
|