@things-factory/worksheet-base 4.3.0-alpha.0 → 4.3.1

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 (133) hide show
  1. package/dist-server/constants/index.js +1 -5
  2. package/dist-server/constants/index.js.map +1 -1
  3. package/dist-server/controllers/ecommerce/index.js +1 -5
  4. package/dist-server/controllers/ecommerce/index.js.map +1 -1
  5. package/dist-server/controllers/inbound/index.js +1 -5
  6. package/dist-server/controllers/inbound/index.js.map +1 -1
  7. package/dist-server/controllers/inbound/unloading-worksheet-controller.js +9 -3
  8. package/dist-server/controllers/inbound/unloading-worksheet-controller.js.map +1 -1
  9. package/dist-server/controllers/index.js +2 -5
  10. package/dist-server/controllers/index.js.map +1 -1
  11. package/dist-server/controllers/inspect/index.js +1 -5
  12. package/dist-server/controllers/inspect/index.js.map +1 -1
  13. package/dist-server/controllers/outbound/index.js +1 -5
  14. package/dist-server/controllers/outbound/index.js.map +1 -1
  15. package/dist-server/controllers/outbound/loading-worksheet-controller.js +47 -10
  16. package/dist-server/controllers/outbound/loading-worksheet-controller.js.map +1 -1
  17. package/dist-server/controllers/outbound/picking-worksheet-controller.js +142 -5
  18. package/dist-server/controllers/outbound/picking-worksheet-controller.js.map +1 -1
  19. package/dist-server/controllers/outbound/sorting-worksheet-controller.js +116 -20
  20. package/dist-server/controllers/outbound/sorting-worksheet-controller.js.map +1 -1
  21. package/dist-server/controllers/render-fm-grn.js +229 -0
  22. package/dist-server/controllers/render-fm-grn.js.map +1 -0
  23. package/dist-server/controllers/render-grn.js +18 -18
  24. package/dist-server/controllers/vas/index.js +1 -5
  25. package/dist-server/controllers/vas/index.js.map +1 -1
  26. package/dist-server/graphql/index.js +1 -5
  27. package/dist-server/graphql/index.js.map +1 -1
  28. package/dist-server/graphql/resolvers/index.js +1 -5
  29. package/dist-server/graphql/resolvers/index.js.map +1 -1
  30. package/dist-server/graphql/resolvers/worksheet/batch-picking-worksheet.js +14 -1
  31. package/dist-server/graphql/resolvers/worksheet/batch-picking-worksheet.js.map +1 -1
  32. package/dist-server/graphql/resolvers/worksheet/loading/loading.js +3 -10
  33. package/dist-server/graphql/resolvers/worksheet/loading/loading.js.map +1 -1
  34. package/dist-server/graphql/resolvers/worksheet/loading-worksheet.js +55 -21
  35. package/dist-server/graphql/resolvers/worksheet/loading-worksheet.js.map +1 -1
  36. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js +1 -0
  37. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js.map +1 -1
  38. package/dist-server/graphql/resolvers/worksheet/picking/complete-batch-picking.js +1 -1
  39. package/dist-server/graphql/resolvers/worksheet/picking/complete-batch-picking.js.map +1 -1
  40. package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js +8 -6
  41. package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js.map +1 -1
  42. package/dist-server/graphql/resolvers/worksheet/picking/index.js +2 -1
  43. package/dist-server/graphql/resolvers/worksheet/picking/index.js.map +1 -1
  44. package/dist-server/graphql/resolvers/worksheet/picking/picking.js +4 -4
  45. package/dist-server/graphql/resolvers/worksheet/picking/picking.js.map +1 -1
  46. package/dist-server/graphql/resolvers/worksheet/picking/scan-product-picking.js +4 -4
  47. package/dist-server/graphql/resolvers/worksheet/picking/scan-product-picking.js.map +1 -1
  48. package/dist-server/graphql/resolvers/worksheet/picking/seal-tote.js +15 -0
  49. package/dist-server/graphql/resolvers/worksheet/picking/seal-tote.js.map +1 -0
  50. package/dist-server/graphql/resolvers/worksheet/picking-worksheet.js +10 -1
  51. package/dist-server/graphql/resolvers/worksheet/picking-worksheet.js.map +1 -1
  52. package/dist-server/graphql/resolvers/worksheet/sorting/complete-order-sorting.js +11 -6
  53. package/dist-server/graphql/resolvers/worksheet/sorting/complete-order-sorting.js.map +1 -1
  54. package/dist-server/graphql/resolvers/worksheet/sorting/scan-product-sorting.js +4 -4
  55. package/dist-server/graphql/resolvers/worksheet/sorting/scan-product-sorting.js.map +1 -1
  56. package/dist-server/graphql/resolvers/worksheet/sorting/sorting-product.js +4 -4
  57. package/dist-server/graphql/resolvers/worksheet/sorting/sorting-product.js.map +1 -1
  58. package/dist-server/graphql/resolvers/worksheet/vas-transactions/index.js +1 -5
  59. package/dist-server/graphql/resolvers/worksheet/vas-transactions/index.js.map +1 -1
  60. package/dist-server/graphql/resolvers/worksheet/vas-transactions/interfaces/index.js +1 -5
  61. package/dist-server/graphql/resolvers/worksheet/vas-transactions/interfaces/index.js.map +1 -1
  62. package/dist-server/graphql/resolvers/worksheet/vas-transactions/relabeling/index.js +1 -5
  63. package/dist-server/graphql/resolvers/worksheet/vas-transactions/relabeling/index.js.map +1 -1
  64. package/dist-server/graphql/resolvers/worksheet/vas-transactions/repackaging/index.js +1 -5
  65. package/dist-server/graphql/resolvers/worksheet/vas-transactions/repackaging/index.js.map +1 -1
  66. package/dist-server/graphql/resolvers/worksheet/vas-transactions/repalletizing/index.js +1 -5
  67. package/dist-server/graphql/resolvers/worksheet/vas-transactions/repalletizing/index.js.map +1 -1
  68. package/dist-server/graphql/resolvers/worksheet/vas-transactions/unpacking/index.js +1 -5
  69. package/dist-server/graphql/resolvers/worksheet/vas-transactions/unpacking/index.js.map +1 -1
  70. package/dist-server/graphql/resolvers/worksheet/worksheet.js +2 -0
  71. package/dist-server/graphql/resolvers/worksheet/worksheet.js.map +1 -1
  72. package/dist-server/graphql/resolvers/worksheet/worksheets.js +17 -2
  73. package/dist-server/graphql/resolvers/worksheet/worksheets.js.map +1 -1
  74. package/dist-server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details-by-bulk.js +5 -3
  75. package/dist-server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details-by-bulk.js.map +1 -1
  76. package/dist-server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details.js +15 -4
  77. package/dist-server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details.js.map +1 -1
  78. package/dist-server/graphql/resolvers/worksheet-detail/generate-picking-worksheet-details.js +4 -1
  79. package/dist-server/graphql/resolvers/worksheet-detail/generate-picking-worksheet-details.js.map +1 -1
  80. package/dist-server/graphql/resolvers/worksheet-detail/generate-release-good-worksheet-details.js +6 -2
  81. package/dist-server/graphql/resolvers/worksheet-detail/generate-release-good-worksheet-details.js.map +1 -1
  82. package/dist-server/graphql/types/index.js +1 -5
  83. package/dist-server/graphql/types/index.js.map +1 -1
  84. package/dist-server/graphql/types/worksheet/index.js +10 -0
  85. package/dist-server/graphql/types/worksheet/index.js.map +1 -1
  86. package/dist-server/graphql/types/worksheet/loaded-worksheet-detail.js +1 -0
  87. package/dist-server/graphql/types/worksheet/loaded-worksheet-detail.js.map +1 -1
  88. package/dist-server/graphql/types/worksheet/worksheet-detail-info.js +2 -0
  89. package/dist-server/graphql/types/worksheet/worksheet-detail-info.js.map +1 -1
  90. package/dist-server/graphql/types/worksheet/worksheet-info.js +2 -0
  91. package/dist-server/graphql/types/worksheet/worksheet-info.js.map +1 -1
  92. package/dist-server/graphql/types/worksheet/worksheet.js +1 -0
  93. package/dist-server/graphql/types/worksheet/worksheet.js.map +1 -1
  94. package/dist-server/index.js +1 -5
  95. package/dist-server/index.js.map +1 -1
  96. package/dist-server/routes.js +4 -0
  97. package/dist-server/routes.js.map +1 -1
  98. package/dist-server/utils/index.js +1 -5
  99. package/dist-server/utils/index.js.map +1 -1
  100. package/package.json +17 -17
  101. package/server/controllers/inbound/unloading-worksheet-controller.ts +14 -3
  102. package/server/controllers/index.ts +1 -0
  103. package/server/controllers/outbound/loading-worksheet-controller.ts +83 -17
  104. package/server/controllers/outbound/picking-worksheet-controller.ts +178 -7
  105. package/server/controllers/outbound/sorting-worksheet-controller.ts +167 -27
  106. package/server/controllers/render-fm-grn.ts +266 -0
  107. package/server/controllers/render-grn.ts +18 -18
  108. package/server/graphql/resolvers/worksheet/batch-picking-worksheet.ts +14 -0
  109. package/server/graphql/resolvers/worksheet/loading/loading.ts +5 -12
  110. package/server/graphql/resolvers/worksheet/loading-worksheet.ts +66 -13
  111. package/server/graphql/resolvers/worksheet/packing-worksheet.ts +1 -1
  112. package/server/graphql/resolvers/worksheet/picking/complete-batch-picking.ts +1 -1
  113. package/server/graphql/resolvers/worksheet/picking/complete-picking.ts +13 -11
  114. package/server/graphql/resolvers/worksheet/picking/index.ts +3 -1
  115. package/server/graphql/resolvers/worksheet/picking/picking.ts +30 -4
  116. package/server/graphql/resolvers/worksheet/picking/scan-product-picking.ts +7 -4
  117. package/server/graphql/resolvers/worksheet/picking/seal-tote.ts +25 -0
  118. package/server/graphql/resolvers/worksheet/picking-worksheet.ts +13 -2
  119. package/server/graphql/resolvers/worksheet/sorting/complete-order-sorting.ts +13 -9
  120. package/server/graphql/resolvers/worksheet/sorting/scan-product-sorting.ts +5 -4
  121. package/server/graphql/resolvers/worksheet/sorting/sorting-product.ts +5 -4
  122. package/server/graphql/resolvers/worksheet/worksheet.ts +2 -0
  123. package/server/graphql/resolvers/worksheet/worksheets.ts +26 -2
  124. package/server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details-by-bulk.ts +12 -3
  125. package/server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details.ts +22 -7
  126. package/server/graphql/resolvers/worksheet-detail/generate-picking-worksheet-details.ts +6 -2
  127. package/server/graphql/resolvers/worksheet-detail/generate-release-good-worksheet-details.ts +7 -1
  128. package/server/graphql/types/worksheet/index.ts +10 -0
  129. package/server/graphql/types/worksheet/loaded-worksheet-detail.ts +1 -0
  130. package/server/graphql/types/worksheet/worksheet-detail-info.ts +2 -0
  131. package/server/graphql/types/worksheet/worksheet-info.ts +2 -0
  132. package/server/graphql/types/worksheet/worksheet.ts +1 -0
  133. package/server/routes.ts +5 -0
@@ -181,6 +181,12 @@ exports.Mutation = `
181
181
  inventoryItemId: String!
182
182
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
183
183
 
184
+ sealTote (
185
+ sealNo: String!
186
+ toteNo: String!
187
+ orderNo: String!
188
+ ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
189
+
184
190
  unload (
185
191
  worksheetDetailName: String!
186
192
  inventory: InventoryPatch!
@@ -315,6 +321,7 @@ exports.Mutation = `
315
321
  releaseQty: Int!
316
322
  binLocation: String
317
323
  serialNumber: String
324
+ toteNo: String
318
325
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
319
326
 
320
327
  scanProductPicking (
@@ -324,6 +331,7 @@ exports.Mutation = `
324
331
  cartonId: String!
325
332
  binLocation: String
326
333
  serialNumber: String
334
+ toteNo: String
327
335
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
328
336
 
329
337
  sortingProduct (
@@ -332,6 +340,7 @@ exports.Mutation = `
332
340
  productId: String!
333
341
  sortingQty: Float!
334
342
  serialNumber: String
343
+ toteNo: String
335
344
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
336
345
 
337
346
  scanProductSorting (
@@ -339,6 +348,7 @@ exports.Mutation = `
339
348
  releaseGoodNo: String!
340
349
  productBarcode: String!
341
350
  serialNumber: String
351
+ toteNo: String
342
352
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
343
353
 
344
354
  packing (
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/index.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AACzC,yEAAmE;AACnE,6DAAuD;AACvD,mEAA6D;AAC7D,mDAA8C;AAC9C,+DAAyD;AACzD,6DAAwD;AACxD,+DAA0D;AAC1D,+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,qFAA4E;AAE/D,QAAA,QAAQ,GAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+gBrC,CAAA;AAEY,QAAA,KAAK,GAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0IlC,CAAA;AAEY,QAAA,KAAK,GAAiB;IACjC,qBAAS;IACT,uBAAU;IACV,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;CAC1B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/index.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AACzC,yEAAmE;AACnE,6DAAuD;AACvD,mEAA6D;AAC7D,mDAA8C;AAC9C,+DAAyD;AACzD,6DAAwD;AACxD,+DAA0D;AAC1D,+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,qFAA4E;AAE/D,QAAA,QAAQ,GAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyhBrC,CAAA;AAEY,QAAA,KAAK,GAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0IlC,CAAA;AAEY,QAAA,KAAK,GAAiB;IACjC,qBAAS;IACT,uBAAU;IACV,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;CAC1B,CAAA"}
@@ -6,6 +6,7 @@ exports.LoadedWorksheetDetail = (0, apollo_server_koa_1.gql) `
6
6
  input LoadedWorksheetDetail {
7
7
  name: String!
8
8
  loadedQty: Float!
9
+ toteName: String
9
10
  }
10
11
  `;
11
12
  //# sourceMappingURL=loaded-worksheet-detail.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loaded-worksheet-detail.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/loaded-worksheet-detail.ts"],"names":[],"mappings":";;;AAAA,yDAAuC;AAE1B,QAAA,qBAAqB,GAAG,IAAA,uBAAG,EAAA;;;;;CAKvC,CAAA"}
1
+ {"version":3,"file":"loaded-worksheet-detail.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/loaded-worksheet-detail.ts"],"names":[],"mappings":";;;AAAA,yDAAuC;AAE1B,QAAA,qBAAqB,GAAG,IAAA,uBAAG,EAAA;;;;;;CAMvC,CAAA"}
@@ -64,6 +64,8 @@ exports.WorksheetDetailInfo = (0, apollo_server_koa_1.gql) `
64
64
  manufactureDate: String
65
65
  binRemarks: String
66
66
  isRequireSerialNumberScanningOutbound: Boolean
67
+ hasMissingInventoryChanges: Boolean
68
+ toteName: String
67
69
  }
68
70
  `;
69
71
  //# sourceMappingURL=worksheet-detail-info.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worksheet-detail-info.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/worksheet-detail-info.ts"],"names":[],"mappings":";;;AAAA,yDAAuC;AAE1B,QAAA,mBAAmB,GAAG,IAAA,uBAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+DrC,CAAA"}
1
+ {"version":3,"file":"worksheet-detail-info.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/worksheet-detail-info.ts"],"names":[],"mappings":";;;AAAA,yDAAuC;AAE1B,QAAA,mBAAmB,GAAG,IAAA,uBAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiErC,CAAA"}
@@ -14,6 +14,7 @@ exports.WorksheetInfo = (0, apollo_server_koa_1.gql) `
14
14
  bizplace: Bizplace
15
15
  containerNo: String
16
16
  airwayBill: String
17
+ checkedRemarkBy: String
17
18
  invoice: String
18
19
  shippingProvider: String
19
20
  trackingNo: String
@@ -24,6 +25,7 @@ exports.WorksheetInfo = (0, apollo_server_koa_1.gql) `
24
25
  startedAt: String
25
26
  ownCollection: Boolean
26
27
  palletId: String
28
+ status: String
27
29
  refNo: String
28
30
  refNo2: String
29
31
  refNo3: String
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4B/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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8B/B,CAAA"}
@@ -23,6 +23,7 @@ exports.Worksheet = (0, apollo_server_koa_1.gql) `
23
23
  description: String
24
24
  type: String
25
25
  worksheetDetails: [WorksheetDetail]
26
+ orderRemark: Boolean
26
27
  assignee: User
27
28
  status: String
28
29
  startedAt: String
@@ -1 +1 @@
1
- {"version":3,"file":"worksheet.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/worksheet.ts"],"names":[],"mappings":";;;AAAA,yDAAuC;AAE1B,QAAA,SAAS,GAAG,IAAA,uBAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8B3B,CAAA"}
1
+ {"version":3,"file":"worksheet.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/worksheet.ts"],"names":[],"mappings":";;;AAAA,yDAAuC;AAE1B,QAAA,SAAS,GAAG,IAAA,uBAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+B3B,CAAA"}
@@ -1,11 +1,7 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
9
5
  }) : (function(o, m, k, k2) {
10
6
  if (k2 === undefined) k2 = k;
11
7
  o[k2] = m[k];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../server/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oBAAiB;AAEjB,8CAA2B;AAC3B,6CAA0B;AAC1B,4CAAyB;AACzB,mHAAgG;AAChG,+GAA4F;AAC5F,+CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../server/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oBAAiB;AAEjB,8CAA2B;AAC3B,6CAA0B;AAC1B,4CAAyB;AACzB,mHAAgG;AAChG,+GAA4F;AAC5F,+CAA4B"}
@@ -10,6 +10,7 @@ const render_orientage_do_1 = require("./controllers/render-orientage-do");
10
10
  const render_orientage_grn_1 = require("./controllers/render-orientage-grn");
11
11
  const render_ro_do_1 = require("./controllers/render-ro-do");
12
12
  const render_seebuu_grn_1 = require("./controllers/render-seebuu-grn");
13
+ const render_fm_grn_1 = require("./controllers/render-fm-grn");
13
14
  const render_invoices_1 = require("./controllers/render-invoices");
14
15
  const render_po_1 = require("./controllers/render-po");
15
16
  process.on('bootstrap-module-domain-private-route', (app, routes) => {
@@ -37,6 +38,9 @@ process.on('bootstrap-module-domain-private-route', (app, routes) => {
37
38
  routes.get('/view_seebuu_grn/:grnNo', async (context, next) => {
38
39
  context.body = await (0, render_seebuu_grn_1.renderSeebuuGRN)(context.params, context);
39
40
  });
41
+ routes.get('/view_fm_grn/:grnNo/:timezoneOffSet', async (context, next) => {
42
+ context.body = await (0, render_fm_grn_1.renderFmGRN)(context.params, context);
43
+ });
40
44
  routes.get('/view_job_sheet/:ganNo/:timezoneOffSet', async (context, next) => {
41
45
  context.body = await (0, render_job_sheet_1.renderJobSheet)(context.params, context);
42
46
  });
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../server/routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../server/routes.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,7 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
9
5
  }) : (function(o, m, k, k2) {
10
6
  if (k2 === undefined) k2 = k;
11
7
  o[k2] = m[k];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../server/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAgC;AAChC,2DAAwC;AACxC,kDAA+B;AAC/B,mDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../server/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mDAAgC;AAChC,2DAAwC;AACxC,kDAA+B;AAC/B,mDAAgC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/worksheet-base",
3
- "version": "4.3.0-alpha.0",
3
+ "version": "4.3.1",
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.3.0-alpha.0",
28
- "@things-factory/biz-base": "^4.3.0-alpha.0",
29
- "@things-factory/document-template-base": "^4.3.0-alpha.0",
30
- "@things-factory/id-rule-base": "^4.3.0-alpha.0",
31
- "@things-factory/integration-lmd": "^4.3.0-alpha.0",
32
- "@things-factory/integration-marketplace": "^4.3.0-alpha.0",
33
- "@things-factory/integration-sellercraft": "^4.3.0-alpha.0",
34
- "@things-factory/integration-sftp": "^4.3.0-alpha.0",
35
- "@things-factory/marketplace-base": "^4.3.0-alpha.0",
36
- "@things-factory/notification": "^4.3.0-alpha.0",
37
- "@things-factory/sales-base": "^4.3.0-alpha.0",
38
- "@things-factory/setting-base": "^4.3.0-alpha.0",
39
- "@things-factory/shell": "^4.3.0-alpha.0",
40
- "@things-factory/transport-base": "^4.3.0-alpha.0",
41
- "@things-factory/warehouse-base": "^4.3.0-alpha.0"
27
+ "@things-factory/auth-base": "^4.3.1",
28
+ "@things-factory/biz-base": "^4.3.1",
29
+ "@things-factory/document-template-base": "^4.3.1",
30
+ "@things-factory/id-rule-base": "^4.3.1",
31
+ "@things-factory/integration-lmd": "^4.3.1",
32
+ "@things-factory/integration-marketplace": "^4.3.1",
33
+ "@things-factory/integration-sellercraft": "^4.3.1",
34
+ "@things-factory/integration-sftp": "^4.3.1",
35
+ "@things-factory/marketplace-base": "^4.3.1",
36
+ "@things-factory/notification": "^4.3.1",
37
+ "@things-factory/sales-base": "^4.3.1",
38
+ "@things-factory/setting-base": "^4.3.1",
39
+ "@things-factory/shell": "^4.3.1",
40
+ "@things-factory/transport-base": "^4.3.1",
41
+ "@things-factory/warehouse-base": "^4.3.1"
42
42
  },
43
- "gitHead": "6467d1b2a5b2f8abb1bc3982e4651a5742ad4043"
43
+ "gitHead": "0e7bdfc4ae1faad52ba7ff0e9a231d24ed0ab5b5"
44
44
  }
@@ -101,6 +101,10 @@ export class UnloadingWorksheetController extends VasWorksheetController {
101
101
  ]
102
102
  })
103
103
  if (!worksheetDetail) throw new Error(this.ERROR_MSG.FIND.NO_RESULT(worksheetDetailName))
104
+ const targetProduct: OrderProduct = worksheetDetail.targetProduct
105
+
106
+ if (targetProduct.status == ORDER_PRODUCT_STATUS.EDITED)
107
+ throw new Error('this product is pending for changes approval')
104
108
 
105
109
  const bizplace: Bizplace = worksheetDetail.bizplace
106
110
  const companyDomain: Domain = bizplace?.company?.domain
@@ -108,7 +112,6 @@ export class UnloadingWorksheetController extends VasWorksheetController {
108
112
  const arrivalNotice: ArrivalNotice = worksheet.arrivalNotice
109
113
  const returnOrder: ReturnOrder = worksheet.returnOrder
110
114
  const orderId: string = Boolean(arrivalNotice?.id) ? arrivalNotice.id : returnOrder.id
111
- const targetProduct: OrderProduct = worksheetDetail.targetProduct
112
115
  const targetInventory: OrderInventory = worksheetDetail?.targetInventory
113
116
  const originInventory: OrderInventory = targetInventory ? targetInventory.inventory : null
114
117
  const batchId: string = Boolean(arrivalNotice) ? targetProduct.batchId : targetInventory.batchId
@@ -280,11 +283,15 @@ export class UnloadingWorksheetController extends VasWorksheetController {
280
283
  seed: { date: DateGenerator.generateDate() }
281
284
  })
282
285
 
286
+ const targetProduct: OrderProduct = worksheetDetail.targetProduct
287
+
288
+ if (targetProduct.status == ORDER_PRODUCT_STATUS.EDITED)
289
+ throw new Error('this product is pending for changes approval')
290
+
283
291
  const bizplace: Bizplace = worksheetDetail.bizplace
284
292
  const worksheet: Worksheet = worksheetDetail.worksheet
285
293
  const arrivalNotice: ArrivalNotice = worksheet.arrivalNotice
286
294
  const returnOrder: ReturnOrder = worksheet.returnOrder
287
- const targetProduct: OrderProduct = worksheetDetail.targetProduct
288
295
  const targetInventory: OrderInventory = worksheetDetail.targetInventory
289
296
  const product: Product = Boolean(arrivalNotice) ? targetProduct.product : targetInventory.product
290
297
  const packingType: string = Boolean(arrivalNotice) ? targetProduct.packingType : targetInventory.packingType
@@ -463,11 +470,15 @@ export class UnloadingWorksheetController extends VasWorksheetController {
463
470
  seed: { date: DateGenerator.generateDate() }
464
471
  })
465
472
 
473
+ const targetProduct: OrderProduct = worksheetDetail.targetProduct
474
+
475
+ if (targetProduct.status == ORDER_PRODUCT_STATUS.EDITED)
476
+ throw new Error('this product is pending for changes approval')
477
+
466
478
  const bizplace: Bizplace = worksheetDetail.bizplace
467
479
  const worksheet: Worksheet = worksheetDetail.worksheet
468
480
  const arrivalNotice: ArrivalNotice = worksheet.arrivalNotice
469
481
  const returnOrder: ReturnOrder = worksheet.returnOrder
470
- const targetProduct: OrderProduct = worksheetDetail.targetProduct
471
482
  const targetInventory: OrderInventory = worksheetDetail.targetInventory
472
483
  const product: Product = Boolean(arrivalNotice) ? targetProduct.product : targetInventory.product
473
484
  const packingType: string = Boolean(arrivalNotice) ? targetProduct.packingType : targetInventory.packingType
@@ -7,6 +7,7 @@ export * from './render-kimeda-grn'
7
7
  export * from './render-orientage-grn'
8
8
  export * from './render-orientage-do'
9
9
  export * from './render-seebuu-grn'
10
+ export * from './render-fm-grn'
10
11
  export * from './render-manifest'
11
12
  export * from './render-po'
12
13
 
@@ -1,4 +1,4 @@
1
- import { Equal, Not } from 'typeorm'
1
+ import { Equal, Not, In } from 'typeorm'
2
2
 
3
3
  import { Bizplace } from '@things-factory/biz-base'
4
4
  import {
@@ -8,9 +8,11 @@ import {
8
8
  ORDER_TYPES,
9
9
  OrderInventory,
10
10
  OrderNoGenerator,
11
- ReleaseGood
11
+ ReleaseGood,
12
+ OrderToteItem,
13
+ OrderTote
12
14
  } from '@things-factory/sales-base'
13
- import { Inventory, INVENTORY_TRANSACTION_TYPE } from '@things-factory/warehouse-base'
15
+ import { Inventory, INVENTORY_TRANSACTION_TYPE, Tote, TOTE_STATUS } from '@things-factory/warehouse-base'
14
16
 
15
17
  import { WORKSHEET_STATUS, WORKSHEET_TYPE } from '../../constants'
16
18
  import { Worksheet, WorksheetDetail } from '../../entities'
@@ -95,8 +97,8 @@ export class LoadingWorksheetController extends VasWorksheetController {
95
97
 
96
98
  async loading(
97
99
  releaseGoodNo: string,
98
- worksheetDetails: Partial<WorksheetDetail & { loadedQty: number }>[]
99
- ): Promise<void> {
100
+ worksheetDetails: Partial<WorksheetDetail & { loadedQty: number } & { toteName: string }>[]
101
+ ): Promise<any> {
100
102
  const releaseGood: ReleaseGood = await this.findRefOrder(
101
103
  ReleaseGood,
102
104
  { domain: this.domain, name: releaseGoodNo },
@@ -104,14 +106,14 @@ export class LoadingWorksheetController extends VasWorksheetController {
104
106
  )
105
107
  const bizplace: Bizplace = releaseGood.bizplace
106
108
 
107
- for (let worksheetDetail of worksheetDetails) {
108
- const loadedQty: number = worksheetDetail.loadedQty
109
- worksheetDetail = await this.findExecutableWorksheetDetailByName(worksheetDetail.name, WORKSHEET_TYPE.LOADING, [
110
- 'worksheet',
111
- 'targetInventory',
112
- 'targetInventory.inventory',
113
- 'targetInventory.product'
114
- ])
109
+ for (let i = 0; i < worksheetDetails.length; i++) {
110
+ const loadedQty: number = worksheetDetails[i].loadedQty
111
+ const toteName: string = worksheetDetails[i].toteName
112
+ let worksheetDetail = await this.findExecutableWorksheetDetailByName(
113
+ worksheetDetails[i].name,
114
+ WORKSHEET_TYPE.LOADING,
115
+ ['worksheet', 'targetInventory', 'targetInventory.inventory', 'targetInventory.product']
116
+ )
115
117
 
116
118
  const worksheet: Worksheet = worksheetDetail.worksheet
117
119
  let targetInventory: OrderInventory = worksheetDetail.targetInventory
@@ -119,9 +121,9 @@ export class LoadingWorksheetController extends VasWorksheetController {
119
121
  let inventory: Inventory = targetInventory.inventory
120
122
 
121
123
  targetInventory.loadedAt = new Date()
122
- targetInventory.loadedByUser = this.user;
124
+ targetInventory.loadedByUser = this.user
123
125
 
124
- let loadedBy: string[] = targetInventory.loadedBy ? (targetInventory.loadedBy).split(',') : []
126
+ let loadedBy: string[] = targetInventory.loadedBy ? targetInventory.loadedBy.split(',') : []
125
127
  if (!loadedBy.find(x => x == this.user.name)) {
126
128
  loadedBy.push(this.user.name)
127
129
  targetInventory.loadedBy = loadedBy.join(',')
@@ -174,11 +176,56 @@ export class LoadingWorksheetController extends VasWorksheetController {
174
176
  newTargetInventory.updater = this.user
175
177
  newTargetInventory = await this.trxMgr.getRepository(OrderInventory).save(newTargetInventory)
176
178
 
177
- await this.createWorksheetDetails(worksheet, WORKSHEET_TYPE.LOADING, [newTargetInventory], {
178
- status: WORKSHEET_STATUS.EXECUTING
179
+ if (toteName) {
180
+ let foundOrderTote = await this.trxMgr
181
+ .getRepository(OrderTote)
182
+ .findOne({ where: { name: toteName, releaseGood } })
183
+
184
+ let foundOrderToteItems = await this.trxMgr
185
+ .getRepository(OrderToteItem)
186
+ .find({ where: { orderInventory: targetInventory.id } })
187
+
188
+ let foundOrderToteItemIds = foundOrderToteItems.map((itm: OrderToteItem) => itm.id)
189
+
190
+ await this.trxMgr
191
+ .getRepository(OrderToteItem)
192
+ .update({ id: In(foundOrderToteItemIds) }, { orderInventory: newTargetInventory })
193
+
194
+ let foundOrderToteItem: OrderToteItem = await this.trxMgr
195
+ .getRepository(OrderToteItem)
196
+ .findOne({ where: { orderInventory: newTargetInventory.id, orderTote: foundOrderTote, qty: loadedQty } })
197
+
198
+ await this.trxMgr
199
+ .getRepository(OrderToteItem)
200
+ .update({ id: foundOrderToteItem.id }, { orderInventory: targetInventory.id })
201
+ }
202
+
203
+ let newWorksheetDetail: any = await this.createWorksheetDetails(
204
+ worksheet,
205
+ WORKSHEET_TYPE.LOADING,
206
+ [newTargetInventory],
207
+ {
208
+ status: WORKSHEET_STATUS.EXECUTING
209
+ }
210
+ )
211
+
212
+ let worksheetDetailName = worksheetDetails[i].name
213
+ worksheetDetails = worksheetDetails.map(record => {
214
+ if (record.name == worksheetDetailName && !record?.targetInventory) {
215
+ return {
216
+ ...record,
217
+ name: newWorksheetDetail[0].name
218
+ }
219
+ } else {
220
+ return record
221
+ }
179
222
  })
223
+
224
+ worksheetDetails[i].name = worksheetDetailName
180
225
  }
181
226
 
227
+ worksheetDetails[i].targetInventory = targetInventory
228
+
182
229
  await generateInventoryHistory(
183
230
  inventory,
184
231
  releaseGood,
@@ -189,6 +236,8 @@ export class LoadingWorksheetController extends VasWorksheetController {
189
236
  this.trxMgr
190
237
  )
191
238
  }
239
+
240
+ return worksheetDetails
192
241
  }
193
242
 
194
243
  async undoLoading(deliveryOrder: Partial<DeliveryOrder>, palletIds: string[]): Promise<void> {
@@ -228,6 +277,10 @@ export class LoadingWorksheetController extends VasWorksheetController {
228
277
  }
229
278
  })
230
279
 
280
+ let undoOrderToteItem: OrderToteItem = await this.trxMgr
281
+ .getRepository(OrderToteItem)
282
+ .findOne({ where: { orderInventory: undoTargetOrderInventory } })
283
+
231
284
  if (prevTargetInventory) {
232
285
  // If there's prev target inventory
233
286
  // Merge qty and uomValue into prev target inventory
@@ -236,6 +289,13 @@ export class LoadingWorksheetController extends VasWorksheetController {
236
289
  prevTargetInventory.updater = this.user
237
290
  await this.updateOrderTargets([prevTargetInventory])
238
291
 
292
+ //Update order tote item if any
293
+ if (undoOrderToteItem) {
294
+ undoOrderToteItem.orderInventoryId = prevTargetInventory.id
295
+ undoOrderToteItem.orderInventory = prevTargetInventory
296
+ await this.trxMgr.getRepository(OrderToteItem).save(undoOrderToteItem)
297
+ }
298
+
239
299
  // Terminate undo target order inventory
240
300
  undoTargetOrderInventory.status = ORDER_INVENTORY_STATUS.TERMINATED
241
301
  await this.updateOrderTargets([undoTargetOrderInventory])
@@ -282,6 +342,12 @@ export class LoadingWorksheetController extends VasWorksheetController {
282
342
  status: ORDER_STATUS.LOADING
283
343
  })
284
344
 
345
+ const orderToteIds = await (
346
+ await this.trxMgr.getRepository(OrderTote).find({ where: { releaseGood }, relations: ['tote'] })
347
+ ).map((record: OrderTote) => record?.toteId)
348
+
349
+ await this.trxMgr.getRepository(Tote).update({ id: In(orderToteIds) }, { status: TOTE_STATUS.DISPATCHED })
350
+
285
351
  const worksheet: Worksheet = await this.findWorksheetByRefOrder(releaseGood, WORKSHEET_TYPE.LOADING, [
286
352
  'worksheetDetails',
287
353
  'worksheetDetails.targetInventory'