@things-factory/worksheet-base 5.0.0-alpha.26 → 5.0.0-alpha.29

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 (87) hide show
  1. package/dist-server/controllers/inbound/unloading-worksheet-controller.js +2 -0
  2. package/dist-server/controllers/inbound/unloading-worksheet-controller.js.map +1 -1
  3. package/dist-server/controllers/outbound/packing-worksheet-controller.js +166 -8
  4. package/dist-server/controllers/outbound/packing-worksheet-controller.js.map +1 -1
  5. package/dist-server/controllers/outbound/picking-worksheet-controller.js +57 -32
  6. package/dist-server/controllers/outbound/picking-worksheet-controller.js.map +1 -1
  7. package/dist-server/controllers/outbound/returning-worksheet-controller.js +7 -1
  8. package/dist-server/controllers/outbound/returning-worksheet-controller.js.map +1 -1
  9. package/dist-server/controllers/outbound/sorting-worksheet-controller.js +110 -3
  10. package/dist-server/controllers/outbound/sorting-worksheet-controller.js.map +1 -1
  11. package/dist-server/controllers/render-grn.js +27 -3
  12. package/dist-server/controllers/render-grn.js.map +1 -1
  13. package/dist-server/controllers/render-orientage-do.js.map +1 -1
  14. package/dist-server/controllers/render-orientage-grn.js +1 -0
  15. package/dist-server/controllers/render-orientage-grn.js.map +1 -1
  16. package/dist-server/controllers/render-ro-do.js +65 -1
  17. package/dist-server/controllers/render-ro-do.js.map +1 -1
  18. package/dist-server/controllers/worksheet-controller.js +2 -1
  19. package/dist-server/controllers/worksheet-controller.js.map +1 -1
  20. package/dist-server/graphql/resolvers/worksheet/find-release-orders-by-task-no.js +30 -1
  21. package/dist-server/graphql/resolvers/worksheet/find-release-orders-by-task-no.js.map +1 -1
  22. package/dist-server/graphql/resolvers/worksheet/inventories-by-pallet.js +3 -0
  23. package/dist-server/graphql/resolvers/worksheet/inventories-by-pallet.js.map +1 -1
  24. package/dist-server/graphql/resolvers/worksheet/packing/index.js +2 -1
  25. package/dist-server/graphql/resolvers/worksheet/packing/index.js.map +1 -1
  26. package/dist-server/graphql/resolvers/worksheet/packing/packing.js +4 -4
  27. package/dist-server/graphql/resolvers/worksheet/packing/packing.js.map +1 -1
  28. package/dist-server/graphql/resolvers/worksheet/packing/scan-product-packing.js +4 -4
  29. package/dist-server/graphql/resolvers/worksheet/packing/scan-product-packing.js.map +1 -1
  30. package/dist-server/graphql/resolvers/worksheet/packing/undo-serial-number-packing.js +15 -0
  31. package/dist-server/graphql/resolvers/worksheet/packing/undo-serial-number-packing.js.map +1 -0
  32. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js +152 -133
  33. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js.map +1 -1
  34. package/dist-server/graphql/resolvers/worksheet/picking/assign-picking-worker.js +13 -10
  35. package/dist-server/graphql/resolvers/worksheet/picking/assign-picking-worker.js.map +1 -1
  36. package/dist-server/graphql/resolvers/worksheet/picking/picking-assignment-status-by-user.js +4 -7
  37. package/dist-server/graphql/resolvers/worksheet/picking/picking-assignment-status-by-user.js.map +1 -1
  38. package/dist-server/graphql/resolvers/worksheet/sorting/scan-product-sorting.js +4 -4
  39. package/dist-server/graphql/resolvers/worksheet/sorting/scan-product-sorting.js.map +1 -1
  40. package/dist-server/graphql/resolvers/worksheet/sorting/sorting-product.js +4 -4
  41. package/dist-server/graphql/resolvers/worksheet/sorting/sorting-product.js.map +1 -1
  42. package/dist-server/graphql/resolvers/worksheet/sorting-worksheet.js +6 -0
  43. package/dist-server/graphql/resolvers/worksheet/sorting-worksheet.js.map +1 -1
  44. package/dist-server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details-by-bulk.js +4 -5
  45. package/dist-server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details-by-bulk.js.map +1 -1
  46. package/dist-server/graphql/resolvers/worksheet-detail/generate-picking-worksheet-details.js +4 -2
  47. package/dist-server/graphql/resolvers/worksheet-detail/generate-picking-worksheet-details.js.map +1 -1
  48. package/dist-server/graphql/types/worksheet/find-release-orders-by-task-no.js +11 -0
  49. package/dist-server/graphql/types/worksheet/find-release-orders-by-task-no.js.map +1 -0
  50. package/dist-server/graphql/types/worksheet/index.js +14 -4
  51. package/dist-server/graphql/types/worksheet/index.js.map +1 -1
  52. package/dist-server/graphql/types/worksheet/worksheet-detail-info.js +2 -0
  53. package/dist-server/graphql/types/worksheet/worksheet-detail-info.js.map +1 -1
  54. package/dist-server/graphql/types/worksheet-detail/index.js +0 -2
  55. package/dist-server/graphql/types/worksheet-detail/index.js.map +1 -1
  56. package/dist-server/utils/inventory-util.js +14 -25
  57. package/dist-server/utils/inventory-util.js.map +1 -1
  58. package/package.json +17 -17
  59. package/server/controllers/inbound/unloading-worksheet-controller.ts +2 -0
  60. package/server/controllers/outbound/packing-worksheet-controller.ts +217 -11
  61. package/server/controllers/outbound/picking-worksheet-controller.ts +66 -34
  62. package/server/controllers/outbound/returning-worksheet-controller.ts +7 -1
  63. package/server/controllers/outbound/sorting-worksheet-controller.ts +149 -4
  64. package/server/controllers/render-grn.ts +39 -5
  65. package/server/controllers/render-orientage-do.ts +11 -11
  66. package/server/controllers/render-orientage-grn.ts +12 -11
  67. package/server/controllers/render-ro-do.ts +93 -8
  68. package/server/controllers/worksheet-controller.ts +2 -1
  69. package/server/graphql/resolvers/worksheet/find-release-orders-by-task-no.ts +35 -2
  70. package/server/graphql/resolvers/worksheet/inventories-by-pallet.ts +2 -0
  71. package/server/graphql/resolvers/worksheet/packing/index.ts +3 -1
  72. package/server/graphql/resolvers/worksheet/packing/packing.ts +5 -4
  73. package/server/graphql/resolvers/worksheet/packing/scan-product-packing.ts +9 -4
  74. package/server/graphql/resolvers/worksheet/packing/undo-serial-number-packing.ts +24 -0
  75. package/server/graphql/resolvers/worksheet/packing-worksheet.ts +166 -144
  76. package/server/graphql/resolvers/worksheet/picking/assign-picking-worker.ts +15 -11
  77. package/server/graphql/resolvers/worksheet/picking/picking-assignment-status-by-user.ts +5 -7
  78. package/server/graphql/resolvers/worksheet/sorting/scan-product-sorting.ts +5 -4
  79. package/server/graphql/resolvers/worksheet/sorting/sorting-product.ts +5 -4
  80. package/server/graphql/resolvers/worksheet/sorting-worksheet.ts +6 -0
  81. package/server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details-by-bulk.ts +10 -12
  82. package/server/graphql/resolvers/worksheet-detail/generate-picking-worksheet-details.ts +4 -2
  83. package/server/graphql/types/worksheet/find-release-orders-by-task-no.ts +8 -0
  84. package/server/graphql/types/worksheet/index.ts +14 -4
  85. package/server/graphql/types/worksheet/worksheet-detail-info.ts +2 -0
  86. package/server/graphql/types/worksheet-detail/index.ts +0 -2
  87. package/server/utils/inventory-util.ts +15 -23
@@ -20,7 +20,7 @@ import { WorksheetNoGenerator } from '../../../utils'
20
20
  export const generatePickingWorksheetDetailsResolver = {
21
21
  async generatePickingWorksheetDetails(
22
22
  _: any,
23
- { bizplaceId, selectedItems, pickingStrategy, worksheetNo, locationSortingRules },
23
+ { bizplaceId, selectedItems, worksheetNo, locationSortingRules },
24
24
  context: any
25
25
  ): Promise<Boolean> {
26
26
  const { tx, user, domain }: { tx: EntityManager; user: User; domain: Domain } = context.state
@@ -54,7 +54,6 @@ export const generatePickingWorksheetDetailsResolver = {
54
54
  bizplaceId,
55
55
  worksheetId,
56
56
  selectedItems,
57
- pickingStrategy,
58
57
  locationSortingRules,
59
58
  tx
60
59
  )
@@ -162,6 +161,9 @@ function _composeWorksheetDetails(
162
161
 
163
162
  while (compReleaseQty < record.releaseQty) {
164
163
  const inv = inventories[idx]
164
+
165
+ if (!inv) break
166
+
165
167
  let releaseQty: number = 0
166
168
  let releaseUomValue: number = 0
167
169
 
@@ -0,0 +1,8 @@
1
+ import { gql } from 'apollo-server-koa'
2
+
3
+ export const FindReleaseOrdersByTaskNo = gql`
4
+ type FindReleaseOrdersByTaskNo {
5
+ taskNo: String
6
+ releaseGoods: [ReleaseGood]
7
+ }
8
+ `
@@ -22,6 +22,7 @@ import { WorksheetInfo } from './worksheet-info'
22
22
  import { WorksheetList } from './worksheet-list'
23
23
  import { WorksheetPatch } from './worksheet-patch'
24
24
  import { WorksheetWithPagination } from './worksheet-with-pagination'
25
+ import { FindReleaseOrdersByTaskNo } from './find-release-orders-by-task-no'
25
26
 
26
27
  export const Mutation = /* GraphQL */ `
27
28
  createWorksheet (
@@ -164,6 +165,11 @@ export const Mutation = /* GraphQL */ `
164
165
  worksheetNo: [String!]!
165
166
  ): [Worksheet] @privilege(category: "worksheet_control", privilege: "mutation") @transaction
166
167
 
168
+ undoSerialNumberPacking (
169
+ worksheetDetailName: String!
170
+ inventoryItemId: String!
171
+ ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
172
+
167
173
  activateBatchPicking (
168
174
  worksheetNo: String!
169
175
  ): Worksheet @privilege(category: "worksheet_control", privilege: "mutation") @transaction
@@ -323,22 +329,26 @@ export const Mutation = /* GraphQL */ `
323
329
  releaseGoodNo: String!
324
330
  productId: String!
325
331
  sortingQty: Float!
332
+ serialNumber: String
326
333
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
327
334
 
328
335
  scanProductSorting (
329
336
  taskNo: String!
330
337
  releaseGoodNo: String!
331
338
  productBarcode: String!
339
+ serialNumber: String
332
340
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
333
341
 
334
342
  packing (
335
343
  worksheetDetailName: String!
336
344
  releaseQty: Int!
345
+ serialNumber: String
337
346
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
338
347
 
339
348
  scanProductPacking (
340
349
  worksheetDetailName: String!
341
350
  productBarcode: String!
351
+ serialNumber: String
342
352
  ): Boolean @privilege(category: "worksheet_execute", privilege: "mutation") @transaction
343
353
 
344
354
  batchPicking (
@@ -530,7 +540,7 @@ export const Mutation = /* GraphQL */ `
530
540
  ): Boolean @privilege(category: "worksheet_control", privilege: "mutation") @transaction
531
541
 
532
542
  assignPickingWorker (
533
- worksheetId: String!
543
+ worksheetId: [String]!
534
544
  userId: String!
535
545
  ): Boolean @privilege(category: "worksheet_control", privilege: "mutation") @transaction
536
546
 
@@ -671,7 +681,6 @@ export const Query = /* GraphQL */ `
671
681
  ): [Inventory] @privilege(category: "worksheet", privilege: "query")
672
682
 
673
683
  pickingAssignmentStatusByUsers(
674
- bizplaceId: String!
675
684
  name: String
676
685
  email: String
677
686
  ): [PickingAssignmentStatus] @privilege(category: "worksheet", privilege: "query")
@@ -680,7 +689,7 @@ export const Query = /* GraphQL */ `
680
689
 
681
690
  recommendPutawayLocation(worksheetDetailName: String!, optCnt: Int): [Location] @privilege(category: "worksheet", privilege: "query")
682
691
 
683
- findReleaseOrdersByTaskNo(taskNo: String!): [ReleaseGood] @privilege(category: "worksheet", privilege: "query") @transaction
692
+ findReleaseOrdersByTaskNo(taskNo: String!): FindReleaseOrdersByTaskNo @privilege(category: "worksheet", privilege: "query") @transaction
684
693
  `
685
694
 
686
695
  export const Types = /* GraphQL */ [
@@ -707,5 +716,6 @@ export const Types = /* GraphQL */ [
707
716
  ProductApproval,
708
717
  WorksheetWithPagination,
709
718
  PickingAssignmentStatus,
710
- MyPickingAssignmentStatus
719
+ MyPickingAssignmentStatus,
720
+ FindReleaseOrdersByTaskNo
711
721
  ]
@@ -60,5 +60,7 @@ export const WorksheetDetailInfo = gql`
60
60
  actualQty: Int
61
61
  actualUomValue: Float
62
62
  manufactureDate: String
63
+ binRemarks: String
64
+ isRequireSerialNumberScanningOutbound: Boolean
63
65
  }
64
66
  `
@@ -41,13 +41,11 @@ export const Mutation = /* GraphQL */ `
41
41
  bizplaceId: String
42
42
  locationSortingRules: [Sorting]
43
43
  selectedItems: [OrderInventoryPatch]!
44
- pickingStrategy: String!
45
44
  ): Boolean @transaction
46
45
 
47
46
  generatePickingWorksheetDetails(
48
47
  bizplaceId: String!
49
48
  selectedItems: [OrderInventoryPatch]!
50
- pickingStrategy: String!
51
49
  worksheetNo: String!
52
50
  locationSortingRules: [Sorting]
53
51
  ): Boolean @transaction
@@ -265,7 +265,9 @@ export async function inventoriesByStrategy(
265
265
  .andWhere('"INV"."packing_size" = :packingSize')
266
266
  .andWhere('"INV"."uom" = :uom')
267
267
  .andWhere('"INV"."status" = :status', { status: 'STORED' })
268
- .andWhere('"LOC"."type" NOT IN (:...locationTypes)', { locationTypes: [LOCATION_TYPE.QUARANTINE, LOCATION_TYPE.RESERVE] })
268
+ .andWhere('"LOC"."type" NOT IN (:...locationTypes)', {
269
+ locationTypes: [LOCATION_TYPE.QUARANTINE, LOCATION_TYPE.RESERVE]
270
+ })
269
271
  .setParameters({
270
272
  domainId: domain.id,
271
273
  productId,
@@ -289,12 +291,7 @@ export async function inventoriesByStrategy(
289
291
  qb.orderBy('"INV"."created_at"', 'ASC')
290
292
  if (locationSortingRules) {
291
293
  for (const key in locationSortingRules) {
292
- if (locIdx === 0) {
293
- qb.addOrderBy(`LOC.${key}`, locationSortingRules[key])
294
- } else {
295
- qb.addOrderBy(`LOC.${key}`, locationSortingRules[key])
296
- }
297
- ++locIdx
294
+ qb.addOrderBy(`LOC.${key}`, locationSortingRules[key])
298
295
  }
299
296
  }
300
297
  break
@@ -303,12 +300,7 @@ export async function inventoriesByStrategy(
303
300
  qb.orderBy('"INV"."created_at"', 'DESC')
304
301
  if (locationSortingRules) {
305
302
  for (const key in locationSortingRules) {
306
- if (locIdx === 0) {
307
- qb.addOrderBy(`LOC.${key}`, locationSortingRules[key])
308
- } else {
309
- qb.addOrderBy(`LOC.${key}`, locationSortingRules[key])
310
- }
311
- ++locIdx
303
+ qb.addOrderBy(`LOC.${key}`, locationSortingRules[key])
312
304
  }
313
305
  }
314
306
  break
@@ -317,12 +309,16 @@ export async function inventoriesByStrategy(
317
309
  qb.orderBy('"INV"."expiration_date"', 'ASC')
318
310
  if (locationSortingRules) {
319
311
  for (const key in locationSortingRules) {
320
- if (locIdx === 0) {
321
- qb.addOrderBy(`LOC.${key}`, locationSortingRules[key])
322
- } else {
323
- qb.addOrderBy(`LOC.${key}`, locationSortingRules[key])
324
- }
325
- ++locIdx
312
+ qb.addOrderBy(`LOC.${key}`, locationSortingRules[key])
313
+ }
314
+ }
315
+ break
316
+
317
+ case 'FMFO':
318
+ qb.orderBy('"INV"."manufacture_date"', 'ASC')
319
+ if (locationSortingRules) {
320
+ for (const key in locationSortingRules) {
321
+ qb.addOrderBy(`LOC.${key}`, locationSortingRules[key])
326
322
  }
327
323
  }
328
324
  break
@@ -338,10 +334,6 @@ export async function inventoriesByStrategy(
338
334
  ++locIdx
339
335
  }
340
336
  } else qb.orderBy('"LOC"."name"', 'DESC')
341
- break
342
- default:
343
- qb.orderBy('"INV"."created_at"', 'ASC')
344
-
345
337
  break
346
338
  }
347
339