@things-factory/worksheet-base 4.3.76 → 4.3.79-alpha.0

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 (64) hide show
  1. package/dist-server/controllers/outbound/packing-worksheet-controller.js +14 -2
  2. package/dist-server/controllers/outbound/packing-worksheet-controller.js.map +1 -1
  3. package/dist-server/controllers/outbound/picking-worksheet-controller.js +6 -9
  4. package/dist-server/controllers/outbound/picking-worksheet-controller.js.map +1 -1
  5. package/dist-server/controllers/worksheet-controller.js +14 -1
  6. package/dist-server/controllers/worksheet-controller.js.map +1 -1
  7. package/dist-server/graphql/resolvers/worksheet/confirm-cancellation-release-order.js +12 -0
  8. package/dist-server/graphql/resolvers/worksheet/confirm-cancellation-release-order.js.map +1 -1
  9. package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-multiple-release-good-worksheet.js +3 -3
  10. package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-multiple-release-good-worksheet.js.map +1 -1
  11. package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.js +4 -4
  12. package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.js.map +1 -1
  13. package/dist-server/graphql/resolvers/worksheet/loading/complete-loading.js +67 -28
  14. package/dist-server/graphql/resolvers/worksheet/loading/complete-loading.js.map +1 -1
  15. package/dist-server/graphql/resolvers/worksheet/packing/activate-packing.js +23 -8
  16. package/dist-server/graphql/resolvers/worksheet/packing/activate-packing.js.map +1 -1
  17. package/dist-server/graphql/resolvers/worksheet/packing/complete-packing.js +30 -7
  18. package/dist-server/graphql/resolvers/worksheet/packing/complete-packing.js.map +1 -1
  19. package/dist-server/graphql/resolvers/worksheet/packing/packing.js +23 -8
  20. package/dist-server/graphql/resolvers/worksheet/packing/packing.js.map +1 -1
  21. package/dist-server/graphql/resolvers/worksheet/packing/scan-product-packing.js +25 -8
  22. package/dist-server/graphql/resolvers/worksheet/packing/scan-product-packing.js.map +1 -1
  23. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js +112 -22
  24. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js.map +1 -1
  25. package/dist-server/graphql/resolvers/worksheet/pending-cancellation-release-order.js +87 -79
  26. package/dist-server/graphql/resolvers/worksheet/pending-cancellation-release-order.js.map +1 -1
  27. package/dist-server/graphql/resolvers/worksheet/picking/activate-picking.js +51 -25
  28. package/dist-server/graphql/resolvers/worksheet/picking/activate-picking.js.map +1 -1
  29. package/dist-server/graphql/resolvers/worksheet/picking/complete-batch-picking.js +2 -2
  30. package/dist-server/graphql/resolvers/worksheet/picking/complete-batch-picking.js.map +1 -1
  31. package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js +266 -140
  32. package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js.map +1 -1
  33. package/dist-server/graphql/resolvers/worksheet/putaway/complete-putaway.js +39 -14
  34. package/dist-server/graphql/resolvers/worksheet/putaway/complete-putaway.js.map +1 -1
  35. package/dist-server/graphql/resolvers/worksheet/reject-cancellation-release-order.js +92 -150
  36. package/dist-server/graphql/resolvers/worksheet/reject-cancellation-release-order.js.map +1 -1
  37. package/dist-server/graphql/types/worksheet/index.js +5 -2
  38. package/dist-server/graphql/types/worksheet/index.js.map +1 -1
  39. package/dist-server/graphql/types/worksheet/multiple-release-good-worksheet.js +11 -0
  40. package/dist-server/graphql/types/worksheet/multiple-release-good-worksheet.js.map +1 -0
  41. package/dist-server/utils/worksheet-util.js +3 -1
  42. package/dist-server/utils/worksheet-util.js.map +1 -1
  43. package/package.json +17 -17
  44. package/server/controllers/outbound/packing-worksheet-controller.ts +21 -2
  45. package/server/controllers/outbound/picking-worksheet-controller.ts +7 -11
  46. package/server/controllers/worksheet-controller.ts +25 -2
  47. package/server/graphql/resolvers/worksheet/confirm-cancellation-release-order.ts +13 -0
  48. package/server/graphql/resolvers/worksheet/generate-worksheet/generate-multiple-release-good-worksheet.ts +3 -7
  49. package/server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.ts +5 -4
  50. package/server/graphql/resolvers/worksheet/loading/complete-loading.ts +77 -33
  51. package/server/graphql/resolvers/worksheet/packing/activate-packing.ts +26 -9
  52. package/server/graphql/resolvers/worksheet/packing/complete-packing.ts +34 -9
  53. package/server/graphql/resolvers/worksheet/packing/packing.ts +26 -9
  54. package/server/graphql/resolvers/worksheet/packing/scan-product-packing.ts +28 -9
  55. package/server/graphql/resolvers/worksheet/packing-worksheet.ts +128 -23
  56. package/server/graphql/resolvers/worksheet/pending-cancellation-release-order.ts +99 -94
  57. package/server/graphql/resolvers/worksheet/picking/activate-picking.ts +60 -30
  58. package/server/graphql/resolvers/worksheet/picking/complete-batch-picking.ts +2 -2
  59. package/server/graphql/resolvers/worksheet/picking/complete-picking.ts +288 -149
  60. package/server/graphql/resolvers/worksheet/putaway/complete-putaway.ts +45 -15
  61. package/server/graphql/resolvers/worksheet/reject-cancellation-release-order.ts +98 -213
  62. package/server/graphql/types/worksheet/index.ts +5 -2
  63. package/server/graphql/types/worksheet/multiple-release-good-worksheet.ts +8 -0
  64. package/server/utils/worksheet-util.ts +3 -1
@@ -1,6 +1,7 @@
1
1
  import { EntityManager, In } from 'typeorm'
2
2
  import { User } from '@things-factory/auth-base'
3
3
  import { Domain } from '@things-factory/shell'
4
+ import { logger } from '@things-factory/env'
4
5
  import {
5
6
  ORDER_INVENTORY_STATUS,
6
7
  ORDER_STATUS,
@@ -16,236 +17,120 @@ import { Worksheet, WorksheetDetail } from '../../../entities'
16
17
  export const rejectCancellationReleaseOrder = {
17
18
  async rejectCancellationReleaseOrder(_: any, { name }, context: any) {
18
19
  const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state
19
- let foundRO: ReleaseGood = await tx.getRepository(ReleaseGood).findOne({
20
- where: { domain, name, status: ORDER_STATUS.PENDING_CANCEL },
21
- relations: [
22
- 'bizplace',
23
- 'orderInventories',
24
- 'orderInventories.inventory',
25
- 'orderInventories.inventory.location',
26
- 'orderInventories.deliveryOrder',
27
- 'orderVass'
28
- ]
29
- })
30
20
 
31
- if (!foundRO) throw new Error(`Release order doesn't exists.`)
32
- let targetOIs: OrderInventory[] = foundRO.orderInventories
33
- let foundOVs: OrderVas[] = foundRO.orderVass
34
- let isDeactivatedPicking = false
35
-
36
- foundRO.status = ORDER_STATUS.PENDING_WORKSHEET
37
- // get the worksheet based on RO number
38
- let foundWS: Worksheet[] = await tx.getRepository(Worksheet).find({
39
- where: {
40
- domain,
41
- releaseGood: foundRO
42
- }
43
- })
44
21
 
45
- // check worksheet table if started_at is not null to indicate that the worksheet has been activated
46
- if (foundWS && foundWS?.length) {
47
- foundWS = foundWS.map((ws: Worksheet) => {
48
- if (ws.startedAt && !ws.endedAt) {
49
- return {
50
- ...ws,
51
- status: WORKSHEET_STATUS.EXECUTING,
52
- updater: user
53
- }
54
- }
55
- else if (ws.startedAt && ws.endedAt) {
56
- return {
57
- ...ws,
58
- status: WORKSHEET_STATUS.DONE,
59
- updater: user
60
- }
61
- }
62
- else if (!ws.startedAt && !ws.endedAt && ws.type === WORKSHEET_TYPE.PICKING) {
63
- isDeactivatedPicking = true
64
- return {
65
- ...ws,
66
- status: WORKSHEET_STATUS.DEACTIVATED,
67
- updater: user
68
- }
69
- }
22
+ try {
23
+ // find release order
24
+ let foundRO: ReleaseGood = await tx.getRepository(ReleaseGood).findOne({
25
+ where: { domain, name, status: ORDER_STATUS.PENDING_CANCEL },
26
+ relations: [
27
+ 'bizplace',
28
+ 'orderInventories',
29
+ 'orderInventories.inventory',
30
+ 'orderInventories.inventory.location',
31
+ 'orderInventories.deliveryOrder',
32
+ 'orderVass'
33
+ ]
70
34
  })
71
- await tx.getRepository(Worksheet).save(foundWS)
72
- }
73
-
74
- // check if the worksheet is in Loading stage
75
- const isLoadingStage = foundWS.some((ws: Worksheet) => ws.type === WORKSHEET_TYPE.LOADING)
76
-
77
- // change the order inventory status accordingly
78
- let newOrderInventories: OrderInventory[] = targetOIs.map(
79
- (oi: OrderInventory) => {
80
- if (isLoadingStage && oi.deliveryOrder && oi.status === ORDER_INVENTORY_STATUS.PENDING_REVERSE)
81
- oi.status = ORDER_INVENTORY_STATUS.LOADED
82
-
83
- else if (isLoadingStage && !oi.deliveryOrder && oi.status === ORDER_INVENTORY_STATUS.PENDING_REVERSE)
84
- oi.status = ORDER_INVENTORY_STATUS.LOADING
85
-
86
- else if (!isLoadingStage && oi.inventory && isDeactivatedPicking && oi.status === ORDER_INVENTORY_STATUS.PENDING_CANCEL)
87
- oi.status = ORDER_INVENTORY_STATUS.READY_TO_PICK
88
-
89
- else if (!isLoadingStage && oi.inventory && !isDeactivatedPicking && oi.status === ORDER_INVENTORY_STATUS.PENDING_CANCEL)
90
- oi.status = ORDER_INVENTORY_STATUS.PICKING
91
-
92
- else if (!isLoadingStage && oi.inventory && !isDeactivatedPicking && oi.status === ORDER_INVENTORY_STATUS.PENDING_REVERSE)
93
- oi.status = ORDER_INVENTORY_STATUS.PICKED
94
35
 
95
- else if (!isLoadingStage && !oi.inventory && isDeactivatedPicking && oi.status === ORDER_INVENTORY_STATUS.PENDING_CANCEL)
96
- oi.status = ORDER_INVENTORY_STATUS.PENDING_SPLIT
97
-
98
- return {
99
- ...oi,
100
- updater: user
101
- }
102
- })
103
- await tx.getRepository(OrderInventory).save(newOrderInventories)
104
-
105
- // find the worksheet details based on order inventories
106
- let foundWSD: WorksheetDetail[] = await tx.getRepository(WorksheetDetail).find({
107
- where: {
108
- domain,
109
- targetInventory: In(newOrderInventories.map((oi: OrderInventory) => oi.id))
110
- },
111
- relations: ['targetInventory']
112
- })
113
-
114
- if (foundWSD && foundWSD?.length) {
115
- foundWSD = foundWSD.map((wsd: WorksheetDetail) => {
116
-
117
- //change the worksheet details status accordingly
118
- newOrderInventories.forEach((oi: OrderInventory) => {
119
-
120
- if (wsd.targetInventory?.id === oi.id && wsd.type === WORKSHEET_TYPE.PICKING) {
121
- switch (oi.status) {
122
- case ORDER_INVENTORY_STATUS.READY_TO_PICK:
123
- wsd.status = WORKSHEET_STATUS.DEACTIVATED
124
- break
125
-
126
- case ORDER_INVENTORY_STATUS.PICKING:
127
- wsd.status = WORKSHEET_STATUS.EXECUTING
128
- break
129
-
130
- case ORDER_INVENTORY_STATUS.REPLACED:
131
- wsd.status = WORKSHEET_STATUS.REPLACED
132
- break
133
-
134
- case ORDER_INVENTORY_STATUS.PICKED:
135
- wsd.status = WORKSHEET_STATUS.DONE
136
- break
137
-
138
- case ORDER_INVENTORY_STATUS.LOADING:
139
- wsd.status = WORKSHEET_STATUS.DONE
140
- break
141
-
142
- case ORDER_INVENTORY_STATUS.LOADED:
143
- wsd.status = WORKSHEET_STATUS.DONE
144
- break
145
- }
36
+ if (!foundRO) throw new Error(`Release order doesn't exists.`)
37
+
38
+ let targetOIs: OrderInventory[] = foundRO.orderInventories
39
+
40
+ // perform update on all order inventories and worksheet
41
+ let worksheetDetails = await Promise.all(targetOIs.map(async (orderInventory) => {
42
+ let existingWorksheetDetail: WorksheetDetail = await tx.getRepository(WorksheetDetail).createQueryBuilder('wd')
43
+ .innerJoinAndSelect('wd.worksheet', 'ws')
44
+ .where('wd.target_inventory_id = :orderInventoryId', { orderInventoryId: orderInventory.id })
45
+ .orderBy('ws.created_at', 'DESC')
46
+ .addOrderBy('wd.name')
47
+ .getOne()
48
+
49
+ if (existingWorksheetDetail) {
50
+ const startedAt = existingWorksheetDetail.worksheet.startedAt
51
+ const wdType = existingWorksheetDetail.worksheet.type
52
+ let wdStatus, oiStatus, roStatus, wStatus
53
+ switch (wdType) {
54
+ case 'PICKING':
55
+ case 'BATCH_PICKING':
56
+ wdStatus = !startedAt ? WORKSHEET_STATUS.DEACTIVATED : orderInventory.pickedQty == orderInventory.releaseQty ? WORKSHEET_STATUS.DONE : WORKSHEET_STATUS.EXECUTING
57
+ oiStatus = !startedAt ? ORDER_INVENTORY_STATUS.READY_TO_PICK : orderInventory.pickedQty == orderInventory.releaseQty ? ORDER_INVENTORY_STATUS.PICKED : ORDER_INVENTORY_STATUS.PICKING
58
+ roStatus = !startedAt ? ORDER_INVENTORY_STATUS.READY_TO_PICK : ORDER_INVENTORY_STATUS.PICKING
59
+ break;
60
+ case 'PACKING':
61
+ wdStatus = !startedAt ? WORKSHEET_STATUS.DEACTIVATED : orderInventory.packedQty == orderInventory.releaseQty ? WORKSHEET_STATUS.DONE : WORKSHEET_STATUS.EXECUTING
62
+ oiStatus = !startedAt ? ORDER_INVENTORY_STATUS.READY_TO_PACK : orderInventory.packedQty == orderInventory.releaseQty ? ORDER_INVENTORY_STATUS.PACKED : ORDER_INVENTORY_STATUS.PACKING
63
+ roStatus = !startedAt ? ORDER_INVENTORY_STATUS.READY_TO_PACK : ORDER_INVENTORY_STATUS.PACKING
64
+ break;
65
+ case 'SORTING':
66
+ wdStatus = !startedAt ? WORKSHEET_STATUS.DEACTIVATED : orderInventory.sortedQty == orderInventory.releaseQty ? WORKSHEET_STATUS.DONE : WORKSHEET_STATUS.EXECUTING
67
+ oiStatus = !startedAt ? ORDER_INVENTORY_STATUS.READY_TO_SORT : orderInventory.sortedQty == orderInventory.releaseQty ? ORDER_INVENTORY_STATUS.PICKED : ORDER_INVENTORY_STATUS.SORTING
68
+ roStatus = !startedAt ? ORDER_INVENTORY_STATUS.READY_TO_SORT : ORDER_INVENTORY_STATUS.SORTING
69
+ break;
70
+ case 'LOADING':
71
+ wdStatus = !startedAt ? WORKSHEET_STATUS.DEACTIVATED : orderInventory?.deliveryOrder ? WORKSHEET_STATUS.DONE : WORKSHEET_STATUS.EXECUTING
72
+ oiStatus = !startedAt ? ORDER_INVENTORY_STATUS.READY_TO_LOAD : orderInventory?.deliveryOrder ? ORDER_INVENTORY_STATUS.LOADED : ORDER_INVENTORY_STATUS.LOADING
73
+ roStatus = !startedAt ? ORDER_INVENTORY_STATUS.READY_TO_LOAD : ORDER_INVENTORY_STATUS.LOADING
74
+ break;
75
+ default:
76
+ break;
146
77
  }
147
78
 
148
- else if (wsd.targetInventory?.id === oi.id && wsd.type === WORKSHEET_TYPE.LOADING) {
149
- switch (oi.status) {
150
- case ORDER_INVENTORY_STATUS.LOADING:
151
- wsd.status = WORKSHEET_STATUS.EXECUTING
152
- break
79
+ wStatus = !startedAt ? WORKSHEET_STATUS.DEACTIVATED : WORKSHEET_STATUS.EXECUTING
153
80
 
154
- case ORDER_INVENTORY_STATUS.LOADED:
155
- wsd.status = WORKSHEET_STATUS.DONE
156
- break
157
- }
158
- }
159
- })
81
+ await tx.getRepository(WorksheetDetail).update({ id: existingWorksheetDetail.id }, { status: wdStatus, updatedAt: new Date(), updater: user })
82
+ await tx.getRepository(OrderInventory).update({ id: orderInventory.id }, { status: oiStatus, updatedAt: new Date(), updater: user })
160
83
 
161
- return {
162
- ...wsd,
163
- updater: user
84
+ return { worksheet: existingWorksheetDetail.worksheet, wStatus, roStatus }
85
+ } else {
86
+ await tx.getRepository(OrderInventory).update({ id: orderInventory.id }, { status: ORDER_INVENTORY_STATUS.PENDING_WORKSHEET, updatedAt: new Date(), updater: user })
87
+ return { worksheet: null, wStatus: null, roStatus: ORDER_STATUS.PENDING_WORKSHEET }
164
88
  }
165
- })
166
-
167
- await tx.getRepository(WorksheetDetail).save(foundWSD)
168
- }
89
+ }))
169
90
 
170
- if (foundOVs && foundOVs?.length) {
171
-
172
- // update status of order vass to accordingly
173
- foundOVs = foundOVs.map((orderVas: OrderVas) => {
174
- if (!isLoadingStage)
175
- orderVas.status = ORDER_VAS_STATUS.READY_TO_PROCESS
176
-
177
- else
178
- orderVas.status = ORDER_VAS_STATUS.COMPLETED
179
-
180
- return {
181
- ...orderVas,
91
+ if (worksheetDetails[0].worksheet) {
92
+ await tx.getRepository(Worksheet).update({ id: worksheetDetails[0].worksheet.id }, {
93
+ status: worksheetDetails[0].wStatus,
94
+ updatedAt: new Date(),
182
95
  updater: user
183
- }
184
- })
185
-
186
- await tx.getRepository(OrderVas).save(foundOVs)
187
- }
188
-
189
- // find DO and change status to previous status
190
- let foundDO: DeliveryOrder[] = await tx.getRepository(DeliveryOrder).find({
191
- where: { domain, releaseGood: foundRO, status: ORDER_STATUS.PENDING_CANCEL },
192
- relations: ['transportVehicle']
193
- })
96
+ })
97
+ }
194
98
 
195
- if (foundDO && foundDO?.length) {
196
- foundDO = foundDO.map((deliveryOrder: DeliveryOrder) => {
197
- return {
198
- ...deliveryOrder,
199
- status: ORDER_STATUS.READY_TO_DISPATCH,
200
- updater: user
201
- }
99
+ await tx.getRepository(ReleaseGood).update({ id: foundRO.id }, {
100
+ status: worksheetDetails[0].roStatus,
101
+ updatedAt: new Date(),
102
+ updater: user
202
103
  })
203
- await tx.getRepository(DeliveryOrder).save(foundDO)
204
- }
205
-
206
- const isLoadingRO = foundWS.some((ws: Worksheet) =>
207
- ws.type === WORKSHEET_TYPE.LOADING &&
208
- ws.status === WORKSHEET_STATUS.EXECUTING
209
- )
210
-
211
- if (isLoadingRO)
212
- foundRO.status = ORDER_STATUS.LOADING
213
104
 
214
- else {
215
- var isReadyToLoadRO = foundWS.some((ws: Worksheet) =>
216
- ws.type === WORKSHEET_TYPE.LOADING &&
217
- ws.status === WORKSHEET_STATUS.DEACTIVATED
218
- )
219
- }
220
-
221
- if (isReadyToLoadRO)
222
- foundRO.status = ORDER_STATUS.READY_TO_LOAD
105
+ // reverse DO status
106
+ await reverseDO(foundRO, context)
223
107
 
224
- else {
225
- var isPickingRO = foundWS.some((ws: Worksheet) =>
226
- ws.type === WORKSHEET_TYPE.PICKING &&
227
- ws.status === WORKSHEET_STATUS.EXECUTING
228
- )
108
+ return
109
+ } catch (error) {
110
+ logger.error(`reject-cancellation-release-order[rejectCancellationReleaseOrder]:(data:${JSON.stringify({ name, tx, domain, user })}) ${error}`)
111
+ throw new Error('Something went wrong. Please contact support.')
229
112
  }
113
+ }
114
+ }
230
115
 
231
- if (isPickingRO)
232
- foundRO.status = ORDER_STATUS.PICKING
233
-
234
- else {
235
- var isReadyToPickRO = foundWS.some((ws: Worksheet) =>
236
- ws.type === WORKSHEET_TYPE.PICKING &&
237
- ws.status === WORKSHEET_STATUS.DEACTIVATED
238
- )
239
- }
240
-
241
- if (isReadyToPickRO)
242
- foundRO.status = ORDER_STATUS.READY_TO_PICK
243
-
244
- await tx.getRepository(ReleaseGood).save({
245
- ...foundRO,
246
- updater: user
116
+ async function reverseDO(releaseGood: ReleaseGood, context: any) {
117
+ const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state
118
+
119
+ // find DO and change status to previous status
120
+ let foundDO: DeliveryOrder[] = await tx.getRepository(DeliveryOrder).find({
121
+ where: { domain, releaseGood, status: ORDER_STATUS.PENDING_CANCEL },
122
+ relations: ['transportVehicle']
123
+ })
124
+ if (foundDO && foundDO?.length) {
125
+ foundDO = foundDO.map((deliveryOrder: DeliveryOrder) => {
126
+ return {
127
+ ...deliveryOrder,
128
+ status: ORDER_STATUS.READY_TO_DISPATCH,
129
+ updater: user
130
+ }
247
131
  })
248
132
 
249
- return
133
+ await tx.getRepository(DeliveryOrder).save(foundDO)
250
134
  }
251
- }
135
+
136
+ }
@@ -25,6 +25,7 @@ import { WorksheetList } from './worksheet-list'
25
25
  import { WorksheetPatch } from './worksheet-patch'
26
26
  import { WorksheetWithPagination } from './worksheet-with-pagination'
27
27
  import { GenerateBatchPickInfo } from './batch-pick-worksheet-info'
28
+ import { MultipleReleaseGoodWorksheet } from './multiple-release-good-worksheet'
28
29
 
29
30
  export const Mutation = /* GraphQL */ `
30
31
  createWorksheet (
@@ -62,10 +63,11 @@ export const Mutation = /* GraphQL */ `
62
63
 
63
64
  generateReleaseGoodWorksheet (
64
65
  releaseGoodNo: String!
66
+ currentStatus: String
65
67
  ): ReleaseGoodWorksheet @privilege(category: "worksheet_control", privilege: "mutation") @transaction
66
68
 
67
69
  generateMultipleReleaseGoodWorksheet (
68
- releaseGoodNos: [String!]
70
+ releaseGoods: [MultipleReleaseGoodWorksheet!]
69
71
  ): Boolean @privilege(category: "worksheet_control", privilege: "mutation") @transaction
70
72
 
71
73
  fetchSellercraftDocument (
@@ -743,5 +745,6 @@ export const Types = /* GraphQL */[
743
745
  MyPickingAssignmentStatus,
744
746
  FindReleaseOrdersByTaskNo,
745
747
  DeliveryOrderRO,
746
- GenerateBatchPickInfo
748
+ GenerateBatchPickInfo,
749
+ MultipleReleaseGoodWorksheet
747
750
  ]
@@ -0,0 +1,8 @@
1
+ import { gql } from 'apollo-server-koa'
2
+
3
+ export const MultipleReleaseGoodWorksheet = gql`
4
+ input MultipleReleaseGoodWorksheet {
5
+ name: String
6
+ status: String
7
+ }
8
+ `
@@ -41,7 +41,9 @@ export async function fetchExecutingWorksheet(
41
41
  } else if (worksheet.status === WORKSHEET_STATUS.DONE) {
42
42
  throw new Error(`Worksheet is completed already`)
43
43
  } else if (worksheet.status === WORKSHEET_STATUS.DEACTIVATED) {
44
- throw new Error(`Worksheet is not activated yet`)
44
+ //@oscarchuaweiwen-fsd this function is being used in quite some place, for packing worksheet you have handled the status DEACTIVATED, but for loading worksheet it's not being handled
45
+ //won't there be issue if it doesn't throw error for places that didnt handle the status DEACTIVATED?
46
+ return worksheet
45
47
  } else {
46
48
  throw new Error(`Current worksheet status (${worksheet.status}) is not proper to execute it.`)
47
49
  }