@things-factory/worksheet-base 4.3.80-alpha.5 → 4.3.83

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 (94) hide show
  1. package/dist-server/controllers/inbound/unloading-worksheet-controller.js +49 -49
  2. package/dist-server/controllers/inbound/unloading-worksheet-controller.js.map +1 -1
  3. package/dist-server/controllers/inspect/cycle-count-worksheet-controller.js +4 -2
  4. package/dist-server/controllers/inspect/cycle-count-worksheet-controller.js.map +1 -1
  5. package/dist-server/controllers/outbound/loading-worksheet-controller.js +4 -10
  6. package/dist-server/controllers/outbound/loading-worksheet-controller.js.map +1 -1
  7. package/dist-server/controllers/outbound/packing-worksheet-controller.js +20 -22
  8. package/dist-server/controllers/outbound/packing-worksheet-controller.js.map +1 -1
  9. package/dist-server/controllers/outbound/picking-worksheet-controller.js +151 -71
  10. package/dist-server/controllers/outbound/picking-worksheet-controller.js.map +1 -1
  11. package/dist-server/controllers/outbound/sorting-worksheet-controller.js +14 -12
  12. package/dist-server/controllers/outbound/sorting-worksheet-controller.js.map +1 -1
  13. package/dist-server/controllers/vas/vas-worksheet-controller.js +2 -1
  14. package/dist-server/controllers/vas/vas-worksheet-controller.js.map +1 -1
  15. package/dist-server/controllers/worksheet-controller.js +37 -2
  16. package/dist-server/controllers/worksheet-controller.js.map +1 -1
  17. package/dist-server/entities/worksheet-detail.js +2 -1
  18. package/dist-server/entities/worksheet-detail.js.map +1 -1
  19. package/dist-server/graphql/resolvers/worksheet/batch-picking-worksheet.js +0 -6
  20. package/dist-server/graphql/resolvers/worksheet/batch-picking-worksheet.js.map +1 -1
  21. package/dist-server/graphql/resolvers/worksheet/confirm-cancellation-release-order.js +2 -1
  22. package/dist-server/graphql/resolvers/worksheet/confirm-cancellation-release-order.js.map +1 -1
  23. package/dist-server/graphql/resolvers/worksheet/cycle-count-adjustment.js +6 -6
  24. package/dist-server/graphql/resolvers/worksheet/cycle-count-adjustment.js.map +1 -1
  25. package/dist-server/graphql/resolvers/worksheet/inventories-by-pallet.js +1 -2
  26. package/dist-server/graphql/resolvers/worksheet/inventories-by-pallet.js.map +1 -1
  27. package/dist-server/graphql/resolvers/worksheet/loading/complete-loading.js +28 -67
  28. package/dist-server/graphql/resolvers/worksheet/loading/complete-loading.js.map +1 -1
  29. package/dist-server/graphql/resolvers/worksheet/packing/activate-packing.js +8 -23
  30. package/dist-server/graphql/resolvers/worksheet/packing/activate-packing.js.map +1 -1
  31. package/dist-server/graphql/resolvers/worksheet/packing/complete-packing.js +7 -30
  32. package/dist-server/graphql/resolvers/worksheet/packing/complete-packing.js.map +1 -1
  33. package/dist-server/graphql/resolvers/worksheet/packing/packing.js +8 -23
  34. package/dist-server/graphql/resolvers/worksheet/packing/packing.js.map +1 -1
  35. package/dist-server/graphql/resolvers/worksheet/packing/scan-product-packing.js +8 -25
  36. package/dist-server/graphql/resolvers/worksheet/packing/scan-product-packing.js.map +1 -1
  37. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js +12 -59
  38. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js.map +1 -1
  39. package/dist-server/graphql/resolvers/worksheet/picking/activate-picking.js +25 -51
  40. package/dist-server/graphql/resolvers/worksheet/picking/activate-picking.js.map +1 -1
  41. package/dist-server/graphql/resolvers/worksheet/picking/complete-batch-picking.js +2 -2
  42. package/dist-server/graphql/resolvers/worksheet/picking/complete-batch-picking.js.map +1 -1
  43. package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js +118 -262
  44. package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js.map +1 -1
  45. package/dist-server/graphql/resolvers/worksheet/picking/scan-product-picking.js +4 -7
  46. package/dist-server/graphql/resolvers/worksheet/picking/scan-product-picking.js.map +1 -1
  47. package/dist-server/graphql/resolvers/worksheet/picking-worksheet.js +2 -3
  48. package/dist-server/graphql/resolvers/worksheet/picking-worksheet.js.map +1 -1
  49. package/dist-server/graphql/resolvers/worksheet/proceed-extra-products.js +4 -6
  50. package/dist-server/graphql/resolvers/worksheet/proceed-extra-products.js.map +1 -1
  51. package/dist-server/graphql/resolvers/worksheet/putaway/complete-putaway.js +14 -39
  52. package/dist-server/graphql/resolvers/worksheet/putaway/complete-putaway.js.map +1 -1
  53. package/dist-server/graphql/resolvers/worksheet/transfer.js +9 -9
  54. package/dist-server/graphql/resolvers/worksheet/transfer.js.map +1 -1
  55. package/dist-server/graphql/resolvers/worksheet/vas-transactions/common-utils.js +17 -17
  56. package/dist-server/graphql/resolvers/worksheet/vas-transactions/common-utils.js.map +1 -1
  57. package/dist-server/graphql/resolvers/worksheet-detail/regenerate-release-good-worksheet-details.js +4 -4
  58. package/dist-server/graphql/resolvers/worksheet-detail/regenerate-release-good-worksheet-details.js.map +1 -1
  59. package/dist-server/graphql/types/worksheet-detail/index.js +0 -1
  60. package/dist-server/graphql/types/worksheet-detail/index.js.map +1 -1
  61. package/dist-server/utils/inventory-util.js +98 -1
  62. package/dist-server/utils/inventory-util.js.map +1 -1
  63. package/package.json +17 -17
  64. package/server/controllers/inbound/unloading-worksheet-controller.ts +70 -49
  65. package/server/controllers/inspect/cycle-count-worksheet-controller.ts +4 -2
  66. package/server/controllers/outbound/loading-worksheet-controller.ts +3 -9
  67. package/server/controllers/outbound/packing-worksheet-controller.ts +31 -23
  68. package/server/controllers/outbound/picking-worksheet-controller.ts +212 -85
  69. package/server/controllers/outbound/sorting-worksheet-controller.ts +12 -12
  70. package/server/controllers/vas/vas-worksheet-controller.ts +2 -2
  71. package/server/controllers/worksheet-controller.ts +49 -5
  72. package/server/entities/worksheet-detail.ts +5 -0
  73. package/server/graphql/resolvers/worksheet/batch-picking-worksheet.ts +0 -6
  74. package/server/graphql/resolvers/worksheet/confirm-cancellation-release-order.ts +2 -1
  75. package/server/graphql/resolvers/worksheet/cycle-count-adjustment.ts +2 -2
  76. package/server/graphql/resolvers/worksheet/inventories-by-pallet.ts +1 -3
  77. package/server/graphql/resolvers/worksheet/loading/complete-loading.ts +33 -77
  78. package/server/graphql/resolvers/worksheet/packing/activate-packing.ts +9 -26
  79. package/server/graphql/resolvers/worksheet/packing/complete-packing.ts +9 -34
  80. package/server/graphql/resolvers/worksheet/packing/packing.ts +9 -26
  81. package/server/graphql/resolvers/worksheet/packing/scan-product-packing.ts +9 -28
  82. package/server/graphql/resolvers/worksheet/packing-worksheet.ts +13 -68
  83. package/server/graphql/resolvers/worksheet/picking/activate-picking.ts +30 -60
  84. package/server/graphql/resolvers/worksheet/picking/complete-batch-picking.ts +2 -2
  85. package/server/graphql/resolvers/worksheet/picking/complete-picking.ts +130 -288
  86. package/server/graphql/resolvers/worksheet/picking/scan-product-picking.ts +10 -30
  87. package/server/graphql/resolvers/worksheet/picking-worksheet.ts +2 -3
  88. package/server/graphql/resolvers/worksheet/proceed-extra-products.ts +4 -5
  89. package/server/graphql/resolvers/worksheet/putaway/complete-putaway.ts +15 -45
  90. package/server/graphql/resolvers/worksheet/transfer.ts +16 -18
  91. package/server/graphql/resolvers/worksheet/vas-transactions/common-utils.ts +2 -3
  92. package/server/graphql/resolvers/worksheet-detail/regenerate-release-good-worksheet-details.ts +1 -4
  93. package/server/graphql/types/worksheet-detail/index.ts +0 -1
  94. package/server/utils/inventory-util.ts +126 -1
@@ -6,6 +6,7 @@ const sales_base_1 = require("@things-factory/sales-base");
6
6
  const warehouse_base_1 = require("@things-factory/warehouse-base");
7
7
  const constants_1 = require("../../constants");
8
8
  const entities_1 = require("../../entities");
9
+ const utils_1 = require("../../utils");
9
10
  const vas_worksheet_controller_1 = require("../vas/vas-worksheet-controller");
10
11
  class LoadingWorksheetController extends vas_worksheet_controller_1.VasWorksheetController {
11
12
  async generateLoadingWorksheet(releaseGoodNo, targetInventories) {
@@ -55,13 +56,7 @@ class LoadingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
55
56
  for (let i = 0; i < worksheetDetails.length; i++) {
56
57
  const loadedQty = worksheetDetails[i].loadedQty;
57
58
  const toteName = worksheetDetails[i].toteName;
58
- let worksheetDetail = await this.findExecutableWorksheetDetailByName(worksheetDetails[i].name, constants_1.WORKSHEET_TYPE.LOADING, [
59
- 'worksheet',
60
- 'targetInventory',
61
- 'targetInventory.inventory',
62
- 'targetInventory.product',
63
- 'targetInventory.productDetail'
64
- ]);
59
+ let worksheetDetail = await this.findExecutableWorksheetDetailByName(worksheetDetails[i].name, constants_1.WORKSHEET_TYPE.LOADING, ['worksheet', 'targetInventory', 'targetInventory.inventory', 'targetInventory.product']);
65
60
  const worksheet = worksheetDetail.worksheet;
66
61
  let targetInventory = worksheetDetail.targetInventory;
67
62
  const pickedQty = targetInventory.releaseQty;
@@ -110,7 +105,6 @@ class LoadingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
110
105
  newTargetInventory.releaseQty = remainQty;
111
106
  newTargetInventory.releaseUomValue = remainUomValue;
112
107
  newTargetInventory.product = targetInventory.product;
113
- newTargetInventory.productDetail = targetInventory.productDetail;
114
108
  newTargetInventory.packingType = targetInventory.packingType;
115
109
  newTargetInventory.batchId = targetInventory.batchId;
116
110
  newTargetInventory.creator = this.user;
@@ -149,7 +143,7 @@ class LoadingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
149
143
  worksheetDetails[i].name = worksheetDetailName;
150
144
  }
151
145
  worksheetDetails[i].targetInventory = targetInventory;
152
- await (0, warehouse_base_1.generateInventoryHistory)(inventory, releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.LOADING, 0, 0, this.user, this.trxMgr);
146
+ await (0, utils_1.generateInventoryHistory)(inventory, releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.LOADING, 0, 0, this.user, this.trxMgr);
153
147
  }
154
148
  return worksheetDetails;
155
149
  }
@@ -223,7 +217,7 @@ class LoadingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
223
217
  }
224
218
  // Create inventory history
225
219
  let inventory = undoTargetOrderInventory.inventory;
226
- await (0, warehouse_base_1.generateInventoryHistory)(inventory, releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.UNDO_LOADING, 0, 0, this.user);
220
+ await (0, utils_1.generateInventoryHistory)(inventory, releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.UNDO_LOADING, 0, 0, this.user);
227
221
  }
228
222
  // Compare total inventories length and undo target inventories length
229
223
  // to check whether there's more order inventories
@@ -1 +1 @@
1
- {"version":3,"file":"loading-worksheet-controller.js","sourceRoot":"","sources":["../../../server/controllers/outbound/loading-worksheet-controller.ts"],"names":[],"mappings":";;;AAAA,qCAAwC;AAGxC,2DAUmC;AACnC,mEAAmI;AAEnI,+CAAkE;AAClE,6CAA2D;AAC3D,8EAAwE;AAExE,MAAa,0BAA2B,SAAQ,iDAAsB;IACpE,KAAK,CAAC,wBAAwB,CAC5B,aAAqB,EACrB,iBAA4C;QAE5C,MAAM,WAAW,GAAgB,MAAM,IAAI,CAAC,YAAY,CACtD,wBAAW,EACX,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,EAC5C,CAAC,UAAU,CAAC,CACb,CAAA;QACD,OAAO,MAAM,IAAI,CAAC,iBAAiB,CACjC,0BAAc,CAAC,OAAO,EACtB,WAAW,EACX,iBAAiB,EACjB,yBAAY,CAAC,OAAO,EACpB,mCAAsB,CAAC,OAAO,CAC/B,CAAA;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,aAAqB,EACrB,iBAA4C,EAC5C,SAAoB;QAEpB,MAAM,WAAW,GAAgB,MAAM,IAAI,CAAC,YAAY,CACtD,wBAAW,EACX,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,EAC5C,CAAC,UAAU,CAAC,CACb,CAAA;QACD,OAAO,MAAM,IAAI,CAAC,eAAe,CAC/B,0BAAc,CAAC,OAAO,EACtB,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,yBAAY,CAAC,OAAO,EACpB,mCAAsB,CAAC,OAAO,CAC/B,CAAA;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,uBAAmD;QAC5F,MAAM,SAAS,GAAc,MAAM,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,0BAAc,CAAC,OAAO,EAAE;YACpG,aAAa;YACb,kBAAkB;YAClB,kCAAkC;SACnC,CAAC,CAAA;QAEF,IAAI,WAAW,GAAgB,SAAS,CAAC,WAAW,CAAA;QACpD,MAAM,iBAAiB,GAAW,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,oBAAS,CAAC,CAAC,KAAK,CAAC;YACjF,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,WAAW;gBACX,IAAI,EAAE,0BAAc,CAAC,GAAG;gBACxB,MAAM,EAAE,IAAA,aAAG,EAAC,IAAA,eAAK,EAAC,4BAAgB,CAAC,IAAI,CAAC,CAAC;aAC1C;SACF,CAAC,CAAA;QACF,IAAI,iBAAiB;YAAE,OAAM;QAE7B,MAAM,gBAAgB,GAAsB,SAAS,CAAC,gBAAgB,CAAA;QACtE,IAAI,iBAAiB,GAAqB,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAoB,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;QAE7G,iBAAiB,GAAG,iBAAiB;aAClC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,eAAe,CAAC,MAAM,IAAI,mCAAsB,CAAC,MAAM,CAAC;aAClF,GAAG,CAAC,CAAC,eAA+B,EAAE,EAAE;YACvC,eAAe,CAAC,MAAM,GAAG,mCAAsB,CAAC,OAAO,CAAA;YACvD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;YACnC,OAAO,eAAe,CAAA;QACxB,CAAC,CAAC,CAAA;QAEJ,WAAW,CAAC,MAAM,GAAG,yBAAY,CAAC,OAAO,CAAA;QACzC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;QAC/B,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;QAEtC,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAA;QAClF,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,uBAAuB,CAAC,CAAA;IAC3F,CAAC;IAED,KAAK,CAAC,OAAO,CACX,aAAqB,EACrB,gBAA2F;QAE3F,MAAM,WAAW,GAAgB,MAAM,IAAI,CAAC,YAAY,CACtD,wBAAW,EACX,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,EAC5C,CAAC,UAAU,CAAC,CACb,CAAA;QACD,MAAM,QAAQ,GAAa,WAAW,CAAC,QAAQ,CAAA;QAE/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAChD,MAAM,SAAS,GAAW,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YACvD,MAAM,QAAQ,GAAW,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;YACrD,IAAI,eAAe,GAAG,MAAM,IAAI,CAAC,mCAAmC,CAClE,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,EACxB,0BAAc,CAAC,OAAO,EACtB;gBACE,WAAW;gBACX,iBAAiB;gBACjB,2BAA2B;gBAC3B,yBAAyB;gBACzB,+BAA+B;aAChC,CACF,CAAA;YAED,MAAM,SAAS,GAAc,eAAe,CAAC,SAAS,CAAA;YACtD,IAAI,eAAe,GAAmB,eAAe,CAAC,eAAe,CAAA;YACrE,MAAM,SAAS,GAAW,eAAe,CAAC,UAAU,CAAA;YACpD,IAAI,SAAS,GAAc,eAAe,CAAC,SAAS,CAAA;YAEpD,eAAe,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAA;YACrC,eAAe,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAA;YAExC,IAAI,QAAQ,GAAa,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YAC5F,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC5C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC7B,eAAe,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;aAC9C;YAED,IAAI,SAAS,GAAG,SAAS,EAAE;gBACzB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,MAAM,EAAE,yCAAyC,CAAC,CAAC,CAAA;aACjH;iBAAM,IAAI,SAAS,IAAI,SAAS,EAAE;gBACjC,4CAA4C;gBAC5C,eAAe,CAAC,MAAM,GAAG,4BAAgB,CAAC,IAAI,CAAA;gBAC9C,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBACnC,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;gBAEtE,mCAAmC;gBACnC,eAAe,CAAC,MAAM,GAAG,mCAAsB,CAAC,MAAM,CAAA;gBACtD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBACnC,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAA;aACjD;iBAAM,IAAI,SAAS,GAAG,SAAS,EAAE;gBAChC,MAAM,SAAS,GAAW,SAAS,GAAG,SAAS,CAAA;gBAC/C,MAAM,cAAc,GAAW,UAAU,CACvC,CAAC,CAAC,eAAe,CAAC,eAAe,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CACvE,CAAA;gBACD,MAAM,cAAc,GAAW,UAAU,CAAC,CAAC,eAAe,CAAC,eAAe,GAAG,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;gBAExG,eAAe,CAAC,MAAM,GAAG,mCAAsB,CAAC,MAAM,CAAA;gBACtD,eAAe,CAAC,UAAU,GAAG,SAAS,CAAA;gBACtC,eAAe,CAAC,eAAe,GAAG,cAAc,CAAA;gBAChD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBACnC,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAA;gBAEhD,eAAe,CAAC,MAAM,GAAG,4BAAgB,CAAC,IAAI,CAAA;gBAC9C,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBACnC,eAAe,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;gBAExF,4CAA4C;gBAC5C,IAAI,kBAAkB,GAAmB,IAAI,2BAAc,EAAE,CAAA;gBAC7D,kBAAkB,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;gBACvC,kBAAkB,CAAC,QAAQ,GAAG,QAAQ,CAAA;gBACtC,kBAAkB,CAAC,IAAI,GAAG,6BAAgB,CAAC,cAAc,EAAE,CAAA;gBAC3D,kBAAkB,CAAC,WAAW,GAAG,WAAW,CAAA;gBAC5C,kBAAkB,CAAC,SAAS,GAAG,SAAS,CAAA;gBACxC,kBAAkB,CAAC,IAAI,GAAG,wBAAW,CAAC,gBAAgB,CAAA;gBACtD,kBAAkB,CAAC,MAAM,GAAG,mCAAsB,CAAC,OAAO,CAAA;gBAC1D,kBAAkB,CAAC,UAAU,GAAG,SAAS,CAAA;gBACzC,kBAAkB,CAAC,eAAe,GAAG,cAAc,CAAA;gBACnD,kBAAkB,CAAC,OAAO,GAAG,eAAe,CAAC,OAAO,CAAA;gBACpD,kBAAkB,CAAC,aAAa,GAAG,eAAe,CAAC,aAAa,CAAA;gBAChE,kBAAkB,CAAC,WAAW,GAAG,eAAe,CAAC,WAAW,CAAA;gBAC5D,kBAAkB,CAAC,OAAO,GAAG,eAAe,CAAC,OAAO,CAAA;gBACpD,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBACtC,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBACtC,kBAAkB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,2BAAc,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;gBAE7F,IAAI,QAAQ,EAAE;oBACZ,IAAI,cAAc,GAAG,MAAM,IAAI,CAAC,MAAM;yBACnC,aAAa,CAAC,sBAAS,CAAC;yBACxB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;oBAEtD,IAAI,mBAAmB,GAAG,MAAM,IAAI,CAAC,MAAM;yBACxC,aAAa,CAAC,0BAAa,CAAC;yBAC5B,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;oBAE1D,IAAI,qBAAqB,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAAkB,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;oBAEnF,MAAM,IAAI,CAAC,MAAM;yBACd,aAAa,CAAC,0BAAa,CAAC;yBAC5B,MAAM,CAAC,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,qBAAqB,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAA;oBAEpF,IAAI,kBAAkB,GAAkB,MAAM,IAAI,CAAC,MAAM;yBACtD,aAAa,CAAC,0BAAa,CAAC;yBAC5B,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,kBAAkB,CAAC,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAA;oBAE3G,MAAM,IAAI,CAAC,MAAM;yBACd,aAAa,CAAC,0BAAa,CAAC;yBAC5B,MAAM,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,eAAe,CAAC,EAAE,EAAE,CAAC,CAAA;iBACjF;gBAED,IAAI,kBAAkB,GAAQ,MAAM,IAAI,CAAC,sBAAsB,CAC7D,SAAS,EACT,0BAAc,CAAC,OAAO,EACtB,CAAC,kBAAkB,CAAC,EACpB;oBACE,MAAM,EAAE,4BAAgB,CAAC,SAAS;iBACnC,CACF,CAAA;gBAED,IAAI,mBAAmB,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBAClD,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;oBAC/C,IAAI,MAAM,CAAC,IAAI,IAAI,mBAAmB,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,eAAe,CAAA,EAAE;wBAClE,uCACK,MAAM,KACT,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,IACjC;qBACF;yBAAM;wBACL,OAAO,MAAM,CAAA;qBACd;gBACH,CAAC,CAAC,CAAA;gBAEF,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,mBAAmB,CAAA;aAC/C;YAED,gBAAgB,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,eAAe,CAAA;YAErD,MAAM,IAAA,yCAAwB,EAC5B,SAAS,EACT,WAAW,EACX,2CAA0B,CAAC,OAAO,EAClC,CAAC,EACD,CAAC,EACD,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,MAAM,CACZ,CAAA;SACF;QAED,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,aAAqC,EAAE,SAAmB;QAC1E,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,0BAAa,EAAE,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE;YACpG,aAAa;SACd,CAAC,CAAA;QAEF,MAAM,WAAW,GAAgB,aAAa,CAAC,WAAW,CAAA;QAE1D,MAAM,iBAAiB,GAAqB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,2BAAc,CAAC,CAAC,IAAI,CAAC;YAC/F,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,mCAAsB,CAAC,MAAM,EAAE;YACpF,SAAS,EAAE,CAAC,WAAW,CAAC;SACzB,CAAC,CAAA;QACF,2DAA2D;QAC3D,IAAI,0BAA0B,GAAqB,iBAAiB,CAAC,MAAM,CACzE,CAAC,eAA+B,EAAE,EAAE,CAClC,eAAe,CAAC,MAAM,KAAK,mCAAsB,CAAC,MAAM;YACxD,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,CACzD,CAAA;QAED,uEAAuE;QACvE,KAAK,IAAI,wBAAwB,IAAI,0BAA0B,EAAE;YAC/D,wBAAwB,CAAC,aAAa,GAAG,IAAI,CAAA;YAC7C,wBAAwB,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;YAE5C,wBAAwB,CAAC,QAAQ,GAAG,IAAI,CAAA;YACxC,wBAAwB,CAAC,YAAY,GAAG,IAAI,CAAA;YAC5C,wBAAwB,CAAC,QAAQ,GAAG,IAAI,CAAA;YAExC,IAAI,mBAAmB,GAAmB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,2BAAc,CAAC,CAAC,OAAO,CAAC;gBAChG,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,EAAE,EAAE,IAAA,aAAG,EAAC,IAAA,eAAK,EAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;oBAC3C,WAAW;oBACX,MAAM,EAAE,mCAAsB,CAAC,OAAO;oBACtC,SAAS,EAAE,wBAAwB,CAAC,SAAS;iBAC9C;aACF,CAAC,CAAA;YAEF,IAAI,iBAAiB,GAAkB,MAAM,IAAI,CAAC,MAAM;iBACrD,aAAa,CAAC,0BAAa,CAAC;iBAC5B,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,wBAAwB,EAAE,EAAE,CAAC,CAAA;YAEnE,IAAI,mBAAmB,EAAE;gBACvB,mCAAmC;gBACnC,oDAAoD;gBACpD,mBAAmB,CAAC,UAAU,IAAI,wBAAwB,CAAC,UAAU,CAAA;gBACrE,mBAAmB,CAAC,eAAe,IAAI,wBAAwB,CAAC,eAAe,CAAA;gBAC/E,mBAAmB,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBACvC,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAA;gBAEpD,+BAA+B;gBAC/B,IAAI,iBAAiB,EAAE;oBACrB,iBAAiB,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,EAAE,CAAA;oBAC3D,iBAAiB,CAAC,cAAc,GAAG,mBAAmB,CAAA;oBACtD,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAa,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;iBACvE;gBAED,wCAAwC;gBACxC,wBAAwB,CAAC,MAAM,GAAG,mCAAsB,CAAC,UAAU,CAAA;gBACnE,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAA;gBAEzD,0BAA0B;gBAC1B,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,MAAM,CAAC;oBACtD,eAAe,EAAE,wBAAwB;oBACzC,IAAI,EAAE,0BAAc,CAAC,OAAO;oBAC5B,MAAM,EAAE,4BAAgB,CAAC,IAAI;iBAC9B,CAAC,CAAA;aACH;iBAAM;gBACL,+BAA+B;gBAC/B,wBAAwB,CAAC,MAAM,GAAG,mCAAsB,CAAC,OAAO,CAAA;gBAChE,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAA;gBAEzD,6CAA6C;gBAC7C,IAAI,yBAAyB,GAAoB,MAAM,IAAI,CAAC,mBAAmB,CAAC;oBAC9E,eAAe,EAAE,wBAAwB;oBACzC,IAAI,EAAE,0BAAc,CAAC,OAAO;oBAC5B,MAAM,EAAE,4BAAgB,CAAC,IAAI;iBAC9B,CAAC,CAAA;gBACF,yBAAyB,CAAC,MAAM,GAAG,4BAAgB,CAAC,SAAS,CAAA;gBAC7D,yBAAyB,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;aACjF;YAED,2BAA2B;YAC3B,IAAI,SAAS,GAAc,wBAAwB,CAAC,SAAS,CAAA;YAC7D,MAAM,IAAA,yCAAwB,EAAC,SAAS,EAAE,WAAW,EAAE,2CAA0B,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;SACjH;QAED,sEAAsE;QACtE,kDAAkD;QAClD,0CAA0C;QAC1C,IAAI,iBAAiB,CAAC,MAAM,KAAK,0BAA0B,CAAC,MAAM,EAAE;YAClE,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAa,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;SACxE;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,aAAqB;QACzC,MAAM,WAAW,GAAgB,MAAM,IAAI,CAAC,YAAY,CAAC,wBAAW,EAAE;YACpE,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,yBAAY,CAAC,OAAO;SAC7B,CAAC,CAAA;QAEF,MAAM,YAAY,GAAG,MAAM,CACzB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,sBAAS,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CACjG,CAAC,GAAG,CAAC,CAAC,MAAiB,EAAE,EAAE,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,CAAA;QAE5C,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,qBAAI,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,YAAY,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,4BAAW,CAAC,UAAU,EAAE,CAAC,CAAA;QAE1G,MAAM,SAAS,GAAc,MAAM,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,0BAAc,CAAC,OAAO,EAAE;YACnG,kBAAkB;YAClB,kCAAkC;SACnC,CAAC,CAAA;QACF,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,4BAAgB,CAAC,SAAS,EAAE,CAAC,CAAA;QAE3E,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,yBAAY,CAAC,IAAI,CAAC,CAAA;IACnE,CAAC;CACF;AAxVD,gEAwVC"}
1
+ {"version":3,"file":"loading-worksheet-controller.js","sourceRoot":"","sources":["../../../server/controllers/outbound/loading-worksheet-controller.ts"],"names":[],"mappings":"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"}
@@ -64,14 +64,12 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
64
64
  'targetInventory.releaseGood',
65
65
  'targetInventory.inventory',
66
66
  'targetInventory.inventory.location',
67
- 'targetInventory.product',
68
- 'targetInventory.productDetail'
67
+ 'targetInventory.product'
69
68
  ]);
70
- let targetInventory = worksheetDetail.targetInventory;
71
- let inventory = targetInventory.inventory;
72
69
  const releaseGood = worksheetDetail.targetInventory.releaseGood;
70
+ let targetInventory = worksheetDetail.targetInventory;
73
71
  const product = targetInventory.product;
74
- const productDetail = targetInventory.productDetail;
72
+ let inventory = targetInventory.inventory;
75
73
  const pickedQty = targetInventory.releaseQty;
76
74
  if (packedQty > pickedQty) {
77
75
  throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('pack', `packed quantity can't exceed release qty`));
@@ -83,7 +81,8 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
83
81
  throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('packing', `require serial number`));
84
82
  }
85
83
  let foundSerialNumber = await this.trxMgr.getRepository(warehouse_base_1.InventoryItem).findOne({
86
- where: { domain: this.domain, serialNumber: serialNumber, productDetail }
84
+ where: { domain: this.domain, serialNumber: serialNumber, product },
85
+ relations: ['product', 'inventory']
87
86
  });
88
87
  if (foundSerialNumber) {
89
88
  if (foundSerialNumber.outboundOrderId) {
@@ -105,7 +104,6 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
105
104
  inventoryItem.source = warehouse_base_1.INVENTORY_ITEM_SOURCE.OUTBOUND;
106
105
  inventoryItem.outboundOrderId = releaseGood.id;
107
106
  inventoryItem.product = product;
108
- inventoryItem.productDetail = productDetail;
109
107
  inventoryItem.inventory = inventory;
110
108
  inventoryItem.domain = this.domain;
111
109
  foundSerialNumber = await this.trxMgr.getRepository(warehouse_base_1.InventoryItem).save(inventoryItem);
@@ -144,26 +142,27 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
144
142
  'targetInventory.inventory.product',
145
143
  'targetInventory.inventory.product.productDetails',
146
144
  'targetInventory.inventory.product.productDetails.childProductDetail',
147
- 'targetInventory.inventory.location',
148
- 'targetInventory.productDetail'
145
+ 'targetInventory.inventory.location'
149
146
  ]);
147
+ const releaseGood = worksheetDetail.targetInventory.releaseGood;
148
+ const product = worksheetDetail.targetInventory.inventory.product;
149
+ const filterProductDetails = product === null || product === void 0 ? void 0 : product.productDetails.filter(detail => !detail.deletedAt);
150
150
  let targetInventory = worksheetDetail.targetInventory;
151
151
  let inventory = targetInventory.inventory;
152
152
  let packedQty = 1;
153
153
  let pickedQty = targetInventory.releaseQty;
154
- const releaseGood = targetInventory.releaseGood;
155
- const product = targetInventory.inventory.product;
156
- const productDetail = targetInventory.productDetail;
157
154
  // search for matching product barcode
158
- const filterProductDetails = product === null || product === void 0 ? void 0 : product.productDetails.filter(detail => !detail.deletedAt);
159
- const scannedProductDetail = filterProductDetails.find(detail => detail.gtin == productBarcode);
160
- if (!scannedProductDetail)
155
+ const productDetail = product === null || product === void 0 ? void 0 : product.productDetails.filter(detail => !detail.deletedAt).find(detail => detail.gtin === productBarcode &&
156
+ detail.packingType === inventory.packingType &&
157
+ detail.packingSize === inventory.packingSize);
158
+ if (!productDetail && !(product === null || product === void 0 ? void 0 : product.isRequireSerialNumberScanningOutbound)) {
159
+ let roProductDetail = product === null || product === void 0 ? void 0 : product.productDetails.find((parentDetail) => parentDetail.packingType === inventory.packingType && parentDetail.packingSize == inventory.packingSize);
160
+ roProductDetail.product = product;
161
+ let childQty = await this.getChildQty(filterProductDetails, productBarcode, roProductDetail);
162
+ packedQty *= childQty;
163
+ }
164
+ else if (!productDetail) {
161
165
  throw new Error(this.ERROR_MSG.FIND.NO_RESULT(productBarcode));
162
- // case for scanning parent packing type, packing size
163
- // when scannedProductDetail id is not the same as productDetail id, then it's not child gtin, proceed to get child qty
164
- if (scannedProductDetail.id !== productDetail.id && !(product === null || product === void 0 ? void 0 : product.isRequireSerialNumberScanningOutbound)) {
165
- let childQty = await this.getChildQty(filterProductDetails, productBarcode, productDetail, scannedProductDetail);
166
- pickedQty *= childQty;
167
166
  }
168
167
  if (packedQty + targetInventory.packedQty > pickedQty) {
169
168
  throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('picking', `over release`));
@@ -176,7 +175,7 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
176
175
  }
177
176
  let foundSerialNumber = await this.trxMgr
178
177
  .getRepository(warehouse_base_1.InventoryItem)
179
- .findOne({ where: { domain: this.domain, serialNumber: serialNumber, productDetail } });
178
+ .findOne({ where: { domain: this.domain, serialNumber: serialNumber, product } });
180
179
  if (foundSerialNumber) {
181
180
  if (foundSerialNumber.inventoryId !== inventory.id) {
182
181
  throw new Error('Serial Number scanned is in another inventory');
@@ -200,7 +199,6 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
200
199
  inventoryItem.outboundOrderId = releaseGood.id;
201
200
  inventoryItem.source = warehouse_base_1.INVENTORY_ITEM_SOURCE.OUTBOUND;
202
201
  inventoryItem.product = product;
203
- inventoryItem.productDetail = productDetail;
204
202
  inventoryItem.inventory = inventory;
205
203
  inventoryItem.domain = this.domain;
206
204
  await this.trxMgr.getRepository(warehouse_base_1.InventoryItem).save(inventoryItem);
@@ -1 +1 @@
1
- {"version":3,"file":"packing-worksheet-controller.js","sourceRoot":"","sources":["../../../server/controllers/outbound/packing-worksheet-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"packing-worksheet-controller.js","sourceRoot":"","sources":["../../../server/controllers/outbound/packing-worksheet-controller.ts"],"names":[],"mappings":"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"}
@@ -288,57 +288,52 @@ class PickingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
288
288
  status: sales_base_1.ORDER_INVENTORY_STATUS.COMPLETE_SPLIT
289
289
  }, { status: sales_base_1.ORDER_INVENTORY_STATUS.PENDING_SPLIT, updater: this.user, updatedAt: new Date() });
290
290
  }
291
- async scanProductPicking(worksheetDetailName, worksheetType, productBarcode, cartonId, binLocation, serialNumber, toteNo, pickingQty) {
291
+ async scanProductPicking(worksheetDetailName, worksheetType, productBarcode, cartonId, binLocation, serialNumber, toteNo, pickedQty = 1) {
292
+ var _a, _b, _c, _d, _e;
292
293
  try {
293
- let worksheetDetail = await this.findExecutableWorksheetDetailByName(worksheetDetailName, worksheetType, [
294
- 'worksheet',
295
- 'worksheet.bizplace',
296
- 'targetInventory',
297
- 'targetInventory.releaseGood',
298
- 'targetInventory.inventory',
299
- 'targetInventory.product',
300
- 'targetInventory.orderProduct',
301
- 'targetInventory.product.productDetails',
302
- 'targetInventory.product.productDetails.product',
303
- 'targetInventory.product.productDetails.childProductDetail',
304
- 'targetInventory.productDetail'
305
- ]);
294
+ //find existing worksheet detail
295
+ let worksheetDetail = await this.trxMgr
296
+ .getRepository(entities_1.WorksheetDetail)
297
+ .createQueryBuilder('wd')
298
+ .innerJoinAndSelect('wd.worksheet', 'ws')
299
+ .innerJoinAndSelect('ws.bizplace', 'bz')
300
+ .innerJoinAndSelect('wd.targetInventory', 'oi')
301
+ .innerJoinAndSelect('oi.releaseGood', 'rg')
302
+ .innerJoinAndSelect('oi.inventory', 'inv')
303
+ .leftJoinAndSelect('oi.orderProduct', 'op')
304
+ .innerJoinAndSelect('oi.product', 'prd')
305
+ .leftJoinAndSelect('prd.productDetails', 'pd', 'pd.product_id = oi.product_id AND pd.deleted_at is null AND pd.packing_type = oi.packing_type AND pd.packing_size = oi.packing_size AND pd.uom = oi.uom')
306
+ .where('wd.name = :name', { name: worksheetDetailName })
307
+ .andWhere('wd.domain_id = :domainId', { domainId: this.domain.id })
308
+ .andWhere('wd.type = :type', { type: worksheetType })
309
+ .andWhere('wd.status = :status', { status: constants_1.WORKSHEET_STATUS.EXECUTING })
310
+ .andWhere('inv.carton_id = :cartonId', { cartonId: cartonId })
311
+ .getOne();
312
+ //validation to check matching worksheet detail based on name
313
+ if (!worksheetDetail || !worksheetDetail.targetInventory)
314
+ throw new Error(this.ERROR_MSG.FIND.NO_RESULT(worksheetDetailName));
315
+ //validation to prevent duplicated picking
316
+ if (((_a = worksheetDetail === null || worksheetDetail === void 0 ? void 0 : worksheetDetail.targetInventory) === null || _a === void 0 ? void 0 : _a.status) != sales_base_1.ORDER_INVENTORY_STATUS.PICKING)
317
+ throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('picking', `is done`));
318
+ let matchingProduct = await this.getDirectQty(Object.assign(Object.assign({}, (_c = (_b = worksheetDetail === null || worksheetDetail === void 0 ? void 0 : worksheetDetail.targetInventory) === null || _b === void 0 ? void 0 : _b.product) === null || _c === void 0 ? void 0 : _c.productDetails[0]), { product: (_d = worksheetDetail === null || worksheetDetail === void 0 ? void 0 : worksheetDetail.targetInventory) === null || _d === void 0 ? void 0 : _d.product }), productBarcode, pickedQty);
319
+ //validate matching product details based on scanned barcode
320
+ if (!matchingProduct)
321
+ throw new Error(this.ERROR_MSG.FIND.NO_RESULT(productBarcode));
322
+ pickedQty = matchingProduct.qty;
323
+ let pickedUomValue = matchingProduct.uomValue;
324
+ //validation to prevent over release
325
+ if (!(worksheetDetail === null || worksheetDetail === void 0 ? void 0 : worksheetDetail.targetInventory) ||
326
+ (worksheetDetail === null || worksheetDetail === void 0 ? void 0 : worksheetDetail.targetInventory.inventory.qty) < 1 ||
327
+ pickedQty + (((_e = worksheetDetail.targetInventory) === null || _e === void 0 ? void 0 : _e.pickedQty) || 0) > worksheetDetail.targetInventory.releaseQty)
328
+ throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('picking', `over release`));
306
329
  const releaseGood = worksheetDetail.targetInventory.releaseGood;
307
330
  let targetInventory = worksheetDetail.targetInventory;
308
331
  let targetProduct = targetInventory.orderProduct;
309
- const product = targetInventory.product;
310
- const productDetail = targetInventory.productDetail;
311
332
  let inventory = targetInventory.inventory;
312
333
  let bizplace = worksheetDetail.worksheet.bizplace;
313
- //validation to prevent duplicated picking
314
- let oiValidate = await this.trxMgr.getRepository(sales_base_1.OrderInventory).findOne({
315
- where: { domain: this.domain, id: targetInventory.id, status: sales_base_1.ORDER_INVENTORY_STATUS.PICKING }
316
- });
317
- if (!oiValidate)
318
- throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('picking', `is done`));
319
- //validation to prevent over release
320
- if (inventory.qty <= 0)
321
- throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('picking', `over release`));
322
- if (inventory.cartonId !== cartonId)
323
- throw new Error(this.ERROR_MSG.VALIDITY.UNEXPECTED_FIELD_VALUE('Carton ID', cartonId, inventory.cartonId));
324
- let pickedQty = pickingQty ? pickingQty : 1;
325
- const releaseQty = targetInventory.releaseQty;
334
+ const product = targetInventory.product;
326
335
  targetInventory = await this.checkAndSetBinPicking(targetInventory, binLocation);
327
- // search for matching product barcode
328
- const productDetails = product === null || product === void 0 ? void 0 : product.productDetails.filter(detail => !detail.deletedAt);
329
- // scannedProductDetail can be child or gtin
330
- const scannedProductDetail = productDetails.find(detail => detail.gtin == productBarcode);
331
- if (!scannedProductDetail)
332
- throw new Error(this.ERROR_MSG.FIND.NO_RESULT(productBarcode));
333
- // case for scanning parent packing type, packing size
334
- // when scannedProductDetail id is not the same as productDetail id, then it's not child gtin, proceed to get child qty
335
- if (scannedProductDetail.id !== productDetail.id && !(product === null || product === void 0 ? void 0 : product.isRequireSerialNumberScanningOutbound)) {
336
- let childQty = await this.getChildQty(productDetails, productBarcode, productDetail, scannedProductDetail);
337
- pickedQty *= childQty;
338
- }
339
- if (pickedQty + targetInventory.pickedQty > releaseQty) {
340
- throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('picking', `over release`));
341
- }
336
+ // for required outbound serial number scanning
342
337
  if (product === null || product === void 0 ? void 0 : product.isRequireSerialNumberScanningOutbound) {
343
338
  if (!serialNumber || serialNumber == '') {
344
339
  throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('picking', `require serial number`));
@@ -378,16 +373,104 @@ class PickingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
378
373
  inventoryItem.outboundOrderId = releaseGood.id;
379
374
  inventoryItem.source = warehouse_base_1.INVENTORY_ITEM_SOURCE.OUTBOUND;
380
375
  inventoryItem.product = product;
381
- inventoryItem.productDetail = productDetail;
382
376
  inventoryItem.inventory = inventory;
383
377
  inventoryItem.domain = this.domain;
384
378
  await this.trxMgr.getRepository(warehouse_base_1.InventoryItem).save(inventoryItem);
385
379
  }
386
380
  }
381
+ // for tote scanning
387
382
  if (toteNo) {
388
383
  await this.toteScanning(toteNo, targetProduct, targetInventory, pickedQty, releaseGood, bizplace);
389
384
  }
390
- await this.updatePickingTransaction(releaseGood, targetInventory, worksheetDetail, inventory, pickedQty);
385
+ // temporarily override with separate logic to handle transaction to speed up function
386
+ // await this.updatePickingTransaction(releaseGood, targetInventory, worksheetDetail, inventory, pickedQty)
387
+ const releaseQty = targetInventory.releaseQty;
388
+ targetInventory.pickedQty = ((targetInventory === null || targetInventory === void 0 ? void 0 : targetInventory.pickedQty) || 0) + pickedQty;
389
+ let updateOiObj = {
390
+ pickedQty: () => `"picked_qty" + ${pickedQty}`,
391
+ updatedAt: new Date(),
392
+ updater: this.user,
393
+ pickedBy: this.user.name,
394
+ pickedByUser: this.user,
395
+ pickedAt: new Date()
396
+ };
397
+ if (targetInventory.pickedQty == releaseQty) {
398
+ updateOiObj['status'] = sales_base_1.ORDER_INVENTORY_STATUS.PICKED;
399
+ }
400
+ await this.trxMgr
401
+ .getRepository(sales_base_1.OrderInventory)
402
+ .createQueryBuilder()
403
+ .update(sales_base_1.OrderInventory)
404
+ .set(updateOiObj)
405
+ .where({ id: targetInventory.id })
406
+ .andWhere(`picked_qty + :pickedQty <= release_qty`, { pickedQty })
407
+ .execute();
408
+ if (targetInventory.pickedQty == releaseQty) {
409
+ //update worksheet details only when line item picking complete
410
+ await this.trxMgr
411
+ .getRepository(entities_1.WorksheetDetail)
412
+ .createQueryBuilder()
413
+ .update(entities_1.WorksheetDetail)
414
+ .set({
415
+ status: constants_1.WORKSHEET_STATUS.DONE,
416
+ updater: this.user,
417
+ updatedAt: new Date()
418
+ })
419
+ .where('id = :id', { id: worksheetDetail.id })
420
+ .execute();
421
+ (0, typeorm_1.getConnection)().transaction(async (tx) => {
422
+ let releaseUomValue = Math.round((pickedUomValue / pickedQty) * releaseQty * 100) / 100;
423
+ let updateInvObj = {
424
+ qty: () => `"qty" - ${releaseQty}`,
425
+ lockedQty: () => `"locked_qty" - ${releaseQty}`,
426
+ uomValue: () => `"uom_value" - ${releaseUomValue}`,
427
+ lockedUomValue: () => `"locked_uom_value" - ${releaseUomValue}`,
428
+ updater: this.user,
429
+ updatedAt: new Date()
430
+ };
431
+ let remainingQty = await tx
432
+ .getRepository(warehouse_base_1.Inventory)
433
+ .createQueryBuilder()
434
+ .update(warehouse_base_1.Inventory)
435
+ .set(updateInvObj)
436
+ .where('id = :id', { id: targetInventory.inventory.id })
437
+ .returning(['qty'])
438
+ .execute()
439
+ .then(dt => {
440
+ return dt.raw[0].qty;
441
+ });
442
+ await (0, utils_1.generateInventoryHistory)(inventory, releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.PICKING, -releaseQty, -releaseUomValue, this.user, tx);
443
+ let inventoryItems = await tx
444
+ .getRepository(warehouse_base_1.InventoryItem)
445
+ .find({ where: { outboundOrderId: releaseGood.id } });
446
+ if (inventoryItems.length > 0) {
447
+ inventoryItems.forEach((itm) => {
448
+ itm.status = warehouse_base_1.INVENTORY_STATUS.PICKED;
449
+ itm.updater = this.user;
450
+ });
451
+ await tx.getRepository(warehouse_base_1.InventoryItem).save(inventoryItems);
452
+ }
453
+ if (remainingQty === 0) {
454
+ await tx
455
+ .getRepository(warehouse_base_1.Inventory)
456
+ .createQueryBuilder()
457
+ .update(warehouse_base_1.Inventory)
458
+ .set({ status: warehouse_base_1.INVENTORY_STATUS.TERMINATED })
459
+ .where('id = :id', { id: targetInventory.inventory.id })
460
+ .execute();
461
+ await (0, utils_1.generateInventoryHistory)(inventory, releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.TERMINATED, 0, 0, this.user, tx);
462
+ }
463
+ });
464
+ }
465
+ // return worksheet details
466
+ worksheetDetail = await this.trxMgr
467
+ .getRepository(entities_1.WorksheetDetail)
468
+ .createQueryBuilder('wd')
469
+ .innerJoin('wd.targetInventory', 'oi')
470
+ .innerJoinAndSelect('oi.releaseGood', 'rg')
471
+ .where('wd.id = :id', { id: worksheetDetail.id })
472
+ .getOne();
473
+ return worksheetDetail;
391
474
  }
392
475
  catch (error) {
393
476
  throw error;
@@ -403,13 +486,11 @@ class PickingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
403
486
  'targetInventory.orderProduct',
404
487
  'targetInventory.inventory',
405
488
  'targetInventory.inventory.location',
406
- 'targetInventory.product',
407
- 'targetInventory.productDetail'
489
+ 'targetInventory.product'
408
490
  ]);
409
491
  const releaseGood = worksheetDetail.targetInventory.releaseGood;
410
492
  let targetInventory = worksheetDetail.targetInventory;
411
493
  const product = targetInventory.product;
412
- const productDetail = targetInventory.productDetail;
413
494
  let inventory = targetInventory.inventory;
414
495
  let targetProduct = targetInventory.orderProduct;
415
496
  let bizplace = worksheetDetail.worksheet.bizplace;
@@ -435,12 +516,12 @@ class PickingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
435
516
  }
436
517
  });
437
518
  let foundSerialNumber = await this.trxMgr.getRepository(warehouse_base_1.InventoryItem).findOne({
438
- where: { domain: this.domain, serialNumber: serialNumber, productDetail },
439
- relations: ['product', 'productDetail', 'inventory']
519
+ where: { domain: this.domain, serialNumber: serialNumber, product },
520
+ relations: ['product', 'inventory']
440
521
  });
441
522
  let scannedPalletIdInventory = await this.trxMgr
442
523
  .getRepository(warehouse_base_1.Inventory)
443
- .findOne({ where: { domain: this.domain, palletId }, relations: ['productDetail'] });
524
+ .findOne({ where: { domain: this.domain, palletId }, relations: ['product'] });
444
525
  if (foundSerialNumber) {
445
526
  if (foundSerialNumber.outboundOrderId) {
446
527
  let releaseGood = await this.trxMgr
@@ -464,7 +545,6 @@ class PickingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
464
545
  inventoryItem.source = warehouse_base_1.INVENTORY_ITEM_SOURCE.OUTBOUND;
465
546
  inventoryItem.outboundOrderId = releaseGood.id;
466
547
  inventoryItem.product = product;
467
- inventoryItem.productDetail = productDetail;
468
548
  inventoryItem.inventory = scannedPalletIdInventory;
469
549
  inventoryItem.domain = this.domain;
470
550
  foundSerialNumber = await this.trxMgr.getRepository(warehouse_base_1.InventoryItem).save(inventoryItem);
@@ -482,9 +562,10 @@ class PickingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
482
562
  await this.serialNumberReplacementForExistingOrderInv(existingOrderInv, targetInventory, worksheetDetail, foundSerialNumber);
483
563
  }
484
564
  else if (scannedPalletIdInventory.batchId == inventory.batchId &&
485
- scannedPalletIdInventory.productDetail.id == productDetail.id) {
565
+ scannedPalletIdInventory.product.id == product.id &&
566
+ scannedPalletIdInventory.product.packingType == product.packingType) {
486
567
  //if replacement order inventory does not exist
487
- await this.serialNumberReplacement(targetInventory, scannedPalletIdInventory, releaseGood, product, productDetail, worksheetDetail, foundSerialNumber);
568
+ await this.serialNumberReplacement(targetInventory, scannedPalletIdInventory, releaseGood, product, worksheetDetail, foundSerialNumber);
488
569
  }
489
570
  else {
490
571
  throw new Error(this.ERROR_MSG.VALIDITY.UNEXPECTED_FIELD_VALUE('Pallet ID', palletId, inventory.palletId));
@@ -608,17 +689,15 @@ class PickingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
608
689
  'worksheetDetails.targetInventory.releaseGood',
609
690
  'worksheetDetails.targetInventory.inventory',
610
691
  'worksheetDetails.targetInventory.inventory.location',
611
- 'worksheetDetails.targetInventory.productDetail',
612
- 'worksheetDetails.targetInventory.productDetail.product',
692
+ 'worksheetDetails.targetInventory.product',
613
693
  'worksheetDetails.targetInventory.product.productDetails',
614
694
  'worksheetDetails.targetInventory.product.productDetails.childProductDetail'
615
695
  ]
616
696
  });
617
697
  const worksheetDetails = worksheet.worksheetDetails;
618
- const productDetail = worksheetDetails
698
+ const product = worksheetDetails
619
699
  .map((wsd) => wsd.targetInventory.product)
620
- .find((productDetail) => productDetail.id === inventory.productDetail.id);
621
- const product = productDetail.product;
700
+ .find((product) => product.id === inventory.product.id);
622
701
  const batchId = inventory.batchId;
623
702
  const packingType = inventory.packingType;
624
703
  const packingSize = inventory.packingSize;
@@ -631,14 +710,16 @@ class PickingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
631
710
  targetInventory.product.id === product.id);
632
711
  // search for matching product barcode
633
712
  const productDetails = product === null || product === void 0 ? void 0 : product.productDetails.filter(detail => !detail.deletedAt);
634
- // scannedProductDetail can be child or gtin
635
- const scannedProductDetail = productDetails.find(detail => detail.gtin == productBarcode);
636
- if (!scannedProductDetail)
637
- throw new Error(this.ERROR_MSG.FIND.NO_RESULT(productBarcode));
713
+ const isMatchingBarcode = productDetails.map(detail => detail.gtin).includes(productBarcode);
714
+ if (!isMatchingBarcode)
715
+ throw new Error(this.ERROR_MSG.FIND.NO_RESULT(`GTIN (${productBarcode})`));
638
716
  // case for scanning parent packing type, packing size
639
- // when scannedProductDetail id is not the same as productDetail id, then it's not child gtin, proceed to get child qty
640
- if (scannedProductDetail.id !== productDetail.id) {
641
- let childQty = await this.getChildQty(productDetails, productBarcode, productDetail, scannedProductDetail);
717
+ const foundProductDetail = productDetails.find((detail) => detail.gtin === productBarcode && detail.packingType === packingType && detail.packingSize == packingSize);
718
+ if (!foundProductDetail) {
719
+ const roProductDetail = productDetails.find((parentDetail) => parentDetail.packingType === packingType && parentDetail.packingSize == packingSize);
720
+ if (!roProductDetail)
721
+ throw new Error(this.ERROR_MSG.FIND.NO_RESULT(`Packing Type ( ${packingType}) or Packing Size (${packingSize})`));
722
+ let childQty = await this.getChildQty(productDetails, productBarcode, roProductDetail);
642
723
  pickedQty *= childQty;
643
724
  }
644
725
  const sumOfReleaseQty = targetInventories
@@ -816,7 +897,7 @@ class PickingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
816
897
  async updatePickingTransaction(releaseGood, orderInventory, worksheetDetail, inventory, pickedQty) {
817
898
  var _a;
818
899
  const releaseQty = orderInventory.releaseQty;
819
- orderInventory.pickedQty = Boolean(orderInventory === null || orderInventory === void 0 ? void 0 : orderInventory.pickedQty) ? orderInventory.pickedQty + pickedQty : pickedQty;
900
+ orderInventory.pickedQty = ((orderInventory === null || orderInventory === void 0 ? void 0 : orderInventory.pickedQty) || 0) + pickedQty;
820
901
  if (orderInventory.pickedQty == releaseQty) {
821
902
  const leftQty = inventory.qty - releaseQty;
822
903
  if (leftQty < 0) {
@@ -924,7 +1005,7 @@ class PickingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
924
1005
  }
925
1006
  catch (e) { }
926
1007
  }
927
- async serialNumberReplacement(targetInventory, scannedPalletIdInventory, releaseGood, product, productDetail, worksheetDetail, foundSerialNumber) {
1008
+ async serialNumberReplacement(targetInventory, scannedPalletIdInventory, releaseGood, product, worksheetDetail, foundSerialNumber) {
928
1009
  try {
929
1010
  //1. create new inventory, new order inventory, update old inventory, old order inventory quantity
930
1011
  let newInventory = await this.trxMgr
@@ -968,8 +1049,7 @@ class PickingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
968
1049
  var { id } = _a, targetInventory = __rest(_a, ["id"]);
969
1050
  return targetInventory;
970
1051
  })(targetInventory);
971
- let newOrderInventory = await this.trxMgr.getRepository(sales_base_1.OrderInventory).save(Object.assign(Object.assign({}, newTargetInventory), { domain: this.domain, name: sales_base_1.OrderNoGenerator.orderInventory(), releaseGood, releaseQty: newOrderInventoryReleaseQty, releaseUomValue: newOrderInventoryReleaseUomValue, pickedQty: 1, product,
972
- productDetail, inventory: scannedPalletIdInventory, creator: this.user, updater: this.user }));
1052
+ let newOrderInventory = await this.trxMgr.getRepository(sales_base_1.OrderInventory).save(Object.assign(Object.assign({}, newTargetInventory), { domain: this.domain, name: sales_base_1.OrderNoGenerator.orderInventory(), releaseGood, releaseQty: newOrderInventoryReleaseQty, releaseUomValue: newOrderInventoryReleaseUomValue, pickedQty: 1, product, inventory: scannedPalletIdInventory, creator: this.user, updater: this.user }));
973
1053
  oldInventory = await this.trxMgr.getRepository(warehouse_base_1.Inventory).save(Object.assign(Object.assign({}, oldInventory), { updater: this.user }));
974
1054
  foundSerialNumber = await this.trxMgr
975
1055
  .getRepository(warehouse_base_1.InventoryItem)