@things-factory/worksheet-base 4.3.144 → 4.3.146

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.
Files changed (34) hide show
  1. package/dist-server/controllers/ecommerce/ecommerce-controller.js +48 -0
  2. package/dist-server/controllers/ecommerce/ecommerce-controller.js.map +1 -1
  3. package/dist-server/controllers/ecommerce/sellercraft-controller.js +82 -31
  4. package/dist-server/controllers/ecommerce/sellercraft-controller.js.map +1 -1
  5. package/dist-server/controllers/outbound/packing-worksheet-controller.js +265 -189
  6. package/dist-server/controllers/outbound/packing-worksheet-controller.js.map +1 -1
  7. package/dist-server/graphql/resolvers/worksheet/packing/complete-packing.js +4 -4
  8. package/dist-server/graphql/resolvers/worksheet/packing/complete-packing.js.map +1 -1
  9. package/dist-server/graphql/resolvers/worksheet/packing/packing.js +6 -7
  10. package/dist-server/graphql/resolvers/worksheet/packing/packing.js.map +1 -1
  11. package/dist-server/graphql/resolvers/worksheet/packing/scan-product-packing.js +4 -4
  12. package/dist-server/graphql/resolvers/worksheet/packing/scan-product-packing.js.map +1 -1
  13. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js +84 -38
  14. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js.map +1 -1
  15. package/dist-server/graphql/resolvers/worksheet/picking/complete-batch-picking.js +44 -9
  16. package/dist-server/graphql/resolvers/worksheet/picking/complete-batch-picking.js.map +1 -1
  17. package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js +41 -11
  18. package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js.map +1 -1
  19. package/dist-server/graphql/types/worksheet/index.js +6 -5
  20. package/dist-server/graphql/types/worksheet/index.js.map +1 -1
  21. package/dist-server/graphql/types/worksheet/worksheet-info.js +2 -0
  22. package/dist-server/graphql/types/worksheet/worksheet-info.js.map +1 -1
  23. package/package.json +18 -18
  24. package/server/controllers/ecommerce/ecommerce-controller.ts +52 -1
  25. package/server/controllers/ecommerce/sellercraft-controller.ts +119 -46
  26. package/server/controllers/outbound/packing-worksheet-controller.ts +314 -211
  27. package/server/graphql/resolvers/worksheet/packing/complete-packing.ts +5 -4
  28. package/server/graphql/resolvers/worksheet/packing/packing.ts +6 -8
  29. package/server/graphql/resolvers/worksheet/packing/scan-product-packing.ts +6 -9
  30. package/server/graphql/resolvers/worksheet/packing-worksheet.ts +124 -42
  31. package/server/graphql/resolvers/worksheet/picking/complete-batch-picking.ts +59 -11
  32. package/server/graphql/resolvers/worksheet/picking/complete-picking.ts +47 -12
  33. package/server/graphql/types/worksheet/index.ts +6 -5
  34. package/server/graphql/types/worksheet/worksheet-info.ts +2 -0
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Types = exports.Query = exports.Mutation = void 0;
4
- const sellercraft_document_1 = require("./sellercraft-document");
5
4
  const arrival_notice_worksheet_1 = require("./arrival-notice-worksheet");
5
+ const batch_pick_worksheet_info_1 = require("./batch-pick-worksheet-info");
6
6
  const contact_point_info_1 = require("./contact-point-info");
7
7
  const cycle_count_worksheet_1 = require("./cycle-count-worksheet");
8
8
  const delivery_info_1 = require("./delivery-info");
@@ -14,12 +14,14 @@ const find_release_orders_by_task_no_1 = require("./find-release-orders-by-task-
14
14
  const goods_delivery_note_1 = require("./goods-delivery-note");
15
15
  const inventory_check_worksheet_1 = require("./inventory-check-worksheet");
16
16
  const loaded_worksheet_detail_1 = require("./loaded-worksheet-detail");
17
+ const multiple_release_good_worksheet_1 = require("./multiple-release-good-worksheet");
17
18
  const my_picking_assignment_status_1 = require("./my-picking-assignment-status");
18
19
  const new_worksheet_1 = require("./new-worksheet");
19
20
  const picking_assignment_status_1 = require("./picking-assignment-status");
20
21
  const product_approval_1 = require("./product-approval");
21
22
  const release_good_worksheet_1 = require("./release-good-worksheet");
22
23
  const return_order_worksheet_1 = require("./return-order-worksheet");
24
+ const sellercraft_document_1 = require("./sellercraft-document");
23
25
  const vas_order_worksheet_1 = require("./vas-order-worksheet");
24
26
  const worksheet_1 = require("./worksheet");
25
27
  const worksheet_detail_info_1 = require("./worksheet-detail-info");
@@ -27,8 +29,6 @@ const worksheet_info_1 = require("./worksheet-info");
27
29
  const worksheet_list_1 = require("./worksheet-list");
28
30
  const worksheet_patch_1 = require("./worksheet-patch");
29
31
  const worksheet_with_pagination_1 = require("./worksheet-with-pagination");
30
- const batch_pick_worksheet_info_1 = require("./batch-pick-worksheet-info");
31
- const multiple_release_good_worksheet_1 = require("./multiple-release-good-worksheet");
32
32
  exports.Mutation = `
33
33
  createWorksheet (
34
34
  worksheet: NewWorksheet!
@@ -357,13 +357,13 @@ exports.Mutation = `
357
357
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
358
358
 
359
359
  packing (
360
- worksheetDetailName: String!
360
+ orderPackageItemId: String!
361
361
  releaseQty: Int!
362
362
  serialNumber: String
363
363
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
364
364
 
365
365
  scanProductPacking (
366
- worksheetDetailName: String!
366
+ orderPackageItemId: String!
367
367
  productBarcode: String!
368
368
  serialNumber: String
369
369
  ): ExecutingWorksheet @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
@@ -440,6 +440,7 @@ exports.Mutation = `
440
440
 
441
441
  completePacking (
442
442
  releaseGoodNo: String!
443
+ orderPackageId: String!
443
444
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
444
445
 
445
446
  completeBatchPicking (
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/index.ts"],"names":[],"mappings":";;;AAAA,iEAA4D;AAC5D,yEAAmE;AACnE,6DAAuD;AACvD,mEAA6D;AAC7D,mDAA8C;AAC9C,+DAAyD;AACzD,2DAAqD;AACrD,6DAAwD;AACxD,+DAA0D;AAC1D,qFAA4E;AAC5E,+DAAyD;AACzD,2EAAqE;AACrE,uEAAiE;AACjE,iFAA0E;AAC1E,mDAA8C;AAC9C,2EAAqE;AACrE,yDAAoD;AACpD,qEAA+D;AAC/D,qEAA+D;AAC/D,+DAAyD;AACzD,2CAAuC;AACvC,mEAA6D;AAC7D,qDAAgD;AAChD,qDAAgD;AAChD,uDAAkD;AAClD,2EAAqE;AACrE,2EAAmE;AACnE,uFAAgF;AAEnE,QAAA,QAAQ,GAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgiBrC,CAAA;AAEY,QAAA,KAAK,GAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgJlC,CAAA;AAEY,QAAA,KAAK,GAAiB;IACjC,qBAAS;IACT,0CAAmB;IACnB,4BAAY;IACZ,gCAAc;IACd,8BAAa;IACb,iDAAsB;IACtB,6CAAoB;IACpB,2CAAmB;IACnB,6CAAoB;IACpB,mDAAuB;IACvB,uCAAiB;IACjB,uCAAiB;IACjB,qCAAgB;IAChB,uCAAiB;IACjB,8BAAa;IACb,4BAAY;IACZ,sCAAiB;IACjB,2CAAmB;IACnB,wCAAkB;IAClB,+CAAqB;IACrB,kCAAe;IACf,mDAAuB;IACvB,mDAAuB;IACvB,wDAAyB;IACzB,0DAAyB;IACzB,mCAAe;IACf,iDAAqB;IACrB,8DAA4B;CAC7B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/index.ts"],"names":[],"mappings":";;;AAAA,yEAAmE;AACnE,2EAAmE;AACnE,6DAAuD;AACvD,mEAA6D;AAC7D,mDAA8C;AAC9C,+DAAyD;AACzD,2DAAqD;AACrD,6DAAwD;AACxD,+DAA0D;AAC1D,qFAA4E;AAC5E,+DAAyD;AACzD,2EAAqE;AACrE,uEAAiE;AACjE,uFAAgF;AAChF,iFAA0E;AAC1E,mDAA8C;AAC9C,2EAAqE;AACrE,yDAAoD;AACpD,qEAA+D;AAC/D,qEAA+D;AAC/D,iEAA4D;AAC5D,+DAAyD;AACzD,2CAAuC;AACvC,mEAA6D;AAC7D,qDAAgD;AAChD,qDAAgD;AAChD,uDAAkD;AAClD,2EAAqE;AAExD,QAAA,QAAQ,GAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiiBrC,CAAA;AAEY,QAAA,KAAK,GAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgJlC,CAAA;AAEY,QAAA,KAAK,GAAiB;IACjC,qBAAS;IACT,0CAAmB;IACnB,4BAAY;IACZ,gCAAc;IACd,8BAAa;IACb,iDAAsB;IACtB,6CAAoB;IACpB,2CAAmB;IACnB,6CAAoB;IACpB,mDAAuB;IACvB,uCAAiB;IACjB,uCAAiB;IACjB,qCAAgB;IAChB,uCAAiB;IACjB,8BAAa;IACb,4BAAY;IACZ,sCAAiB;IACjB,2CAAmB;IACnB,wCAAkB;IAClB,+CAAqB;IACrB,kCAAe;IACf,mDAAuB;IACvB,mDAAuB;IACvB,wDAAyB;IACzB,0DAAyB;IACzB,mCAAe;IACf,iDAAqB;IACrB,8DAA4B;CAC7B,CAAA"}
@@ -31,6 +31,8 @@ exports.WorksheetInfo = (0, apollo_server_koa_1.gql) `
31
31
  refNo3: String
32
32
  looseItem: String
33
33
  orderVas: [WorksheetDetail]
34
+ orderPackage: OrderPackage
35
+ orderPackages: [OrderPackage]
34
36
  }
35
37
  `;
36
38
  //# sourceMappingURL=worksheet-info.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worksheet-info.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/worksheet-info.ts"],"names":[],"mappings":";;;AAAA,yDAAuC;AAE1B,QAAA,aAAa,GAAG,IAAA,uBAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8B/B,CAAA"}
1
+ {"version":3,"file":"worksheet-info.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/worksheet-info.ts"],"names":[],"mappings":";;;AAAA,yDAAuC;AAE1B,QAAA,aAAa,GAAG,IAAA,uBAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgC/B,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/worksheet-base",
3
- "version": "4.3.144",
3
+ "version": "4.3.146",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -23,22 +23,22 @@
23
23
  "migration:create": "node ../../node_modules/typeorm/cli.js migration:create -d ./server/migrations"
24
24
  },
25
25
  "dependencies": {
26
- "@things-factory/auth-base": "^4.3.142",
27
- "@things-factory/biz-base": "^4.3.142",
28
- "@things-factory/document-template-base": "^4.3.142",
29
- "@things-factory/id-rule-base": "^4.3.142",
30
- "@things-factory/integration-accounting": "^4.3.143",
31
- "@things-factory/integration-lmd": "^4.3.142",
32
- "@things-factory/integration-marketplace": "^4.3.142",
33
- "@things-factory/integration-sellercraft": "^4.3.142",
34
- "@things-factory/integration-sftp": "^4.3.142",
35
- "@things-factory/marketplace-base": "^4.3.143",
36
- "@things-factory/notification": "^4.3.142",
37
- "@things-factory/sales-base": "^4.3.144",
38
- "@things-factory/setting-base": "^4.3.142",
39
- "@things-factory/shell": "^4.3.142",
40
- "@things-factory/transport-base": "^4.3.142",
41
- "@things-factory/warehouse-base": "^4.3.143"
26
+ "@things-factory/auth-base": "^4.3.146",
27
+ "@things-factory/biz-base": "^4.3.146",
28
+ "@things-factory/document-template-base": "^4.3.146",
29
+ "@things-factory/id-rule-base": "^4.3.146",
30
+ "@things-factory/integration-accounting": "^4.3.146",
31
+ "@things-factory/integration-lmd": "^4.3.146",
32
+ "@things-factory/integration-marketplace": "^4.3.146",
33
+ "@things-factory/integration-sellercraft": "^4.3.146",
34
+ "@things-factory/integration-sftp": "^4.3.146",
35
+ "@things-factory/marketplace-base": "^4.3.146",
36
+ "@things-factory/notification": "^4.3.146",
37
+ "@things-factory/sales-base": "^4.3.146",
38
+ "@things-factory/setting-base": "^4.3.146",
39
+ "@things-factory/shell": "^4.3.146",
40
+ "@things-factory/transport-base": "^4.3.146",
41
+ "@things-factory/warehouse-base": "^4.3.146"
42
42
  },
43
- "gitHead": "b1dad936b814c685e1ed3255dd144b69b27640e3"
43
+ "gitHead": "919fc314fca9647235fb02b8837e5c42813455bb"
44
44
  }
@@ -6,7 +6,7 @@ import {
6
6
  MarketplaceOrderShippingItem,
7
7
  MarketplaceProductVariation
8
8
  } from '@things-factory/marketplace-base'
9
- import { ReleaseGood } from '@things-factory/sales-base'
9
+ import { ORDER_STATUS, OrderNoGenerator, OrderPackage, OrderPackageItem, ReleaseGood } from '@things-factory/sales-base'
10
10
  import { Domain } from '@things-factory/shell'
11
11
  import { getProductBundleInventory, Inventory, INVENTORY_STATUS, LOCATION_TYPE } from '@things-factory/warehouse-base'
12
12
 
@@ -212,4 +212,55 @@ export class EcommerceController extends WorksheetController {
212
212
  status: marketplaceOrder.status
213
213
  })
214
214
  }
215
+
216
+ async createOrderPackage(tx, marketplaceOrder, companyDomain, marketplaceStore, releaseGood) {
217
+ let marketplaceOrderShipping: MarketplaceOrderShipping
218
+ if (marketplaceOrder.isSplitted) {
219
+ marketplaceOrderShipping = await tx.getRepository(MarketplaceOrderShipping).findOne({
220
+ where: { domain: companyDomain, marketplaceStore, subOrderNoRef: releaseGood.refNo2 }
221
+ })
222
+ } else {
223
+ marketplaceOrderShipping = await tx.getRepository(MarketplaceOrderShipping).findOne({
224
+ where: { domain: companyDomain, marketplaceStore, orderNoRef: releaseGood.refNo }
225
+ })
226
+ }
227
+
228
+ const trackingNo: string = marketplaceOrderShipping.ownTrackingNo
229
+ ? marketplaceOrderShipping.ownTrackingNo
230
+ : marketplaceOrderShipping.trackingNo
231
+ const shippingProvider: string = marketplaceOrderShipping.ownTransporter
232
+ ? marketplaceOrderShipping.ownTransporter
233
+ : marketplaceOrderShipping.transporter
234
+
235
+ const orderPackage: OrderPackage = {
236
+ name: OrderNoGenerator.orderPackage(),
237
+ packageId: null,
238
+ trackingNo,
239
+ transporter: shippingProvider,
240
+ airwayBill: marketplaceOrderShipping.airwayBill,
241
+ status: ORDER_STATUS.PROCESSING,
242
+ releaseGood,
243
+ domain: releaseGood.domain,
244
+ bizplace: releaseGood.bizplace,
245
+ creator: releaseGood.creator,
246
+ updater: releaseGood.updater
247
+ }
248
+
249
+ let savedOrderPackage: OrderPackage = await tx.getRepository(OrderPackage).save(orderPackage)
250
+ const orderPackageItems: OrderPackageItem[] = releaseGood.orderProducts.map(op => {
251
+ return {
252
+ name: OrderNoGenerator.orderPackageItem(),
253
+ orderProduct: op,
254
+ status: ORDER_STATUS.PROCESSING,
255
+ releaseQty: op.releaseQty,
256
+ orderPackage: savedOrderPackage,
257
+ domain: releaseGood.domain,
258
+ bizplace: releaseGood.bizplace,
259
+ creator: releaseGood.creator,
260
+ updater: releaseGood.updater
261
+ }
262
+ })
263
+
264
+ await tx.getRepository(OrderPackageItem).save(orderPackageItems)
265
+ }
215
266
  }
@@ -3,7 +3,11 @@ import { Sellercraft, SellercraftAPI } from '@things-factory/integration-sellerc
3
3
  import { Product, ProductDetail } from '@things-factory/product-base'
4
4
  import {
5
5
  ArrivalNotice,
6
+ ORDER_STATUS,
6
7
  OrderInventory,
8
+ OrderNoGenerator,
9
+ OrderPackage,
10
+ OrderPackageItem,
7
11
  OrderProduct,
8
12
  PurchaseOrder,
9
13
  ReleaseGood,
@@ -38,13 +42,55 @@ export class SellercraftController extends WorksheetController {
38
42
  orderId: releaseGood.refNo2,
39
43
  sellercraftOPs
40
44
  }
41
- const packageId: string = await SellercraftAPI.packMarketplaceOrder(sellercraft, {
45
+ const orderPack: any = await SellercraftAPI.packMarketplaceOrder(sellercraft, {
42
46
  ...orderInformation,
43
47
  context: { state: { domain: this?.domain, user: this?.user } }
44
48
  })
45
49
 
46
- releaseGood.packageId = packageId
47
- releaseGood.updater = this.user
50
+ if (orderPack?.packages) {
51
+ const packages: any[] = orderPack.packages
52
+
53
+ await this.trxMgr
54
+ .getRepository(ReleaseGood)
55
+ .update({ id: releaseGood.id }, { packageId: packages[0].packageId, updatedAt: new Date() })
56
+
57
+ await Promise.all(
58
+ packages.map(async pkg => {
59
+ const items = pkg.items
60
+ const orderPackage: OrderPackage = {
61
+ name: OrderNoGenerator.orderPackage(),
62
+ packageId: pkg.packageId,
63
+ status: ORDER_STATUS.PROCESSING,
64
+ releaseGood,
65
+ domain: releaseGood.domain,
66
+ bizplace: releaseGood.bizplace,
67
+ creator: releaseGood.creator,
68
+ updater: releaseGood.updater
69
+ }
70
+
71
+ let savedOrderPackage: OrderPackage = await this.trxMgr.getRepository(OrderPackage).save(orderPackage)
72
+
73
+ const orderPackageItems: OrderPackageItem[] = items.map(itm => {
74
+ const { sku, qty } = itm
75
+ const matchedOrderProduct: OrderProduct = orderProducts.find(op => op.product.sku == sku)
76
+
77
+ return {
78
+ name: OrderNoGenerator.orderPackageItem(),
79
+ orderProduct: matchedOrderProduct,
80
+ status: ORDER_STATUS.PROCESSING,
81
+ releaseQty: qty,
82
+ orderPackage: savedOrderPackage,
83
+ domain: releaseGood.domain,
84
+ bizplace: releaseGood.bizplace,
85
+ creator: releaseGood.creator,
86
+ updater: releaseGood.updater
87
+ }
88
+ })
89
+
90
+ await this.trxMgr.getRepository(OrderPackageItem).save(orderPackageItems)
91
+ })
92
+ )
93
+ }
48
94
  }
49
95
 
50
96
  return releaseGood
@@ -268,18 +314,28 @@ export class SellercraftController extends WorksheetController {
268
314
  : false
269
315
 
270
316
  if (!disableInitiateOrderShipment) {
271
- if (!releaseGood?.packageId) throw new Error('Order package id is not found')
317
+ let orderPackages: OrderPackage[] = await this.trxMgr
318
+ .getRepository(OrderPackage)
319
+ .find({ where: { releaseGood, bizplace: releaseGood.bizplace } })
320
+
321
+ if (orderPackages?.length) {
322
+ await Promise.all(
323
+ orderPackages.map(async op => {
324
+ if (!op?.packageId) throw new Error('Order package id is not found')
325
+
326
+ const orderInformation: any = {
327
+ accountId: sellercraft.accountId,
328
+ orderId: releaseGood.refNo2,
329
+ packageId: op.packageId
330
+ }
272
331
 
273
- const orderInformation: any = {
274
- accountId: sellercraft.accountId,
275
- orderId: releaseGood.refNo2,
276
- packageId: releaseGood.packageId
332
+ await SellercraftAPI.initiateOrderShipment(sellercraft, {
333
+ ...orderInformation,
334
+ context: { state: { domain: this?.domain, user: this?.user } }
335
+ })
336
+ })
337
+ )
277
338
  }
278
-
279
- await SellercraftAPI.initiateOrderShipment(sellercraft, {
280
- ...orderInformation,
281
- context: { state: { domain: this?.domain, user: this?.user } }
282
- })
283
339
  }
284
340
  }
285
341
 
@@ -310,46 +366,63 @@ export class SellercraftController extends WorksheetController {
310
366
  try {
311
367
  let sellercraftSetting: any = sellercraft.sellercraftSetting
312
368
  let disableFetchOrderDocument: boolean =
313
- sellercraftSetting?.disableFetchOrderDocument && sellercraftSetting?.disableFetchOrderDocument == 1 ? true : false
369
+ sellercraftSetting?.disableFetchOrderDocument && sellercraftSetting?.disableFetchOrderDocument == 1
370
+ ? true
371
+ : false
314
372
 
315
373
  if (!disableFetchOrderDocument) {
316
- const orderInformation: any = {
317
- accountId: sellercraft.accountId,
318
- orderId: releaseGood.refNo2,
319
- packageId: releaseGood.packageId
374
+ let orderPackages: OrderPackage[] = await this.trxMgr
375
+ .getRepository(OrderPackage)
376
+ .find({ where: { releaseGood, bizplace: releaseGood.bizplace } })
377
+
378
+ if (orderPackages?.length) {
379
+ await Promise.all(
380
+ orderPackages.map(async op => {
381
+ if (!op?.packageId) throw new Error('Order package id is not found')
382
+
383
+ const orderInformation: any = {
384
+ accountId: sellercraft.accountId,
385
+ orderId: releaseGood.refNo2,
386
+ packageId: op.packageId
387
+ }
388
+
389
+ const {
390
+ documents,
391
+ trackingNo,
392
+ transporter
393
+ }: { documents: any[]; trackingNo: string; transporter: string } =
394
+ await SellercraftAPI.fetchOrderDocument(sellercraft, {
395
+ ...orderInformation,
396
+ context: { state: { domain: this?.domain, user: this?.user } }
397
+ })
398
+
399
+ let updateInfo: any
400
+ if (documents?.length) {
401
+ documents.map(document => {
402
+ if (document.type === 'invoice') {
403
+ updateInfo = { ...updateInfo, invoice: document.download_url }
404
+ } else if (document.type === 'airway_bill') {
405
+ updateInfo = { ...updateInfo, airwayBill: document.download_url }
406
+ }
407
+ })
408
+
409
+ updateInfo = {
410
+ ...updateInfo,
411
+ trackingNo: trackingNo,
412
+ transporter: transporter,
413
+ updater: this.user
414
+ }
415
+
416
+ await this.trxMgr.getRepository(OrderPackage).update({ id: op.id }, { ...updateInfo })
417
+ }
418
+ })
419
+ )
320
420
  }
321
- const { documents, trackingNo, transporter }: { documents: any[]; trackingNo: string; transporter: string } =
322
- await SellercraftAPI.fetchOrderDocument(sellercraft, {
323
- ...orderInformation,
324
- context: { state: { domain: this?.domain, user: this?.user } }
325
- })
326
421
 
327
- let updateInfo: any
328
- if (documents?.length) {
329
- documents.map(document => {
330
- if (document.type === 'invoice') {
331
- updateInfo = { ...updateInfo, invoice: document.download_url }
332
- } else if (document.type === 'airway_bill') {
333
- updateInfo = { ...updateInfo, airwayBill: document.download_url }
334
- }
335
- })
336
-
337
- updateInfo = {
338
- ...updateInfo,
339
- trackingNo: trackingNo,
340
- transporter: transporter,
341
- updater: this.user
342
- }
343
-
344
- // releaseGood = await this.trxMgr.getRepository(ReleaseGood).save(releaseGood)
345
-
346
- await this.trxMgr.getRepository(ReleaseGood).update({ id: releaseGood.id }, { ...updateInfo })
347
- releaseGood = await this.trxMgr.getRepository(ReleaseGood).findOne({ id: releaseGood.id })
348
- }
422
+ releaseGood = await this.trxMgr.getRepository(ReleaseGood).findOne({ id: releaseGood.id })
349
423
  }
350
424
 
351
425
  return releaseGood
352
-
353
426
  } catch (error) {
354
427
  throw error
355
428
  }