@things-factory/worksheet-base 4.3.387 → 4.3.390

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 (28) hide show
  1. package/dist-server/controllers/ecommerce/ecommerce-controller.js +4 -2
  2. package/dist-server/controllers/ecommerce/ecommerce-controller.js.map +1 -1
  3. package/dist-server/controllers/ecommerce/sellercraft-controller.js +2 -1
  4. package/dist-server/controllers/ecommerce/sellercraft-controller.js.map +1 -1
  5. package/dist-server/controllers/inspect/cycle-count-worksheet-controller.js +164 -38
  6. package/dist-server/controllers/inspect/cycle-count-worksheet-controller.js.map +1 -1
  7. package/dist-server/graphql/resolvers/worksheet/cycle-count-adjustment.js +35 -5
  8. package/dist-server/graphql/resolvers/worksheet/cycle-count-adjustment.js.map +1 -1
  9. package/dist-server/graphql/resolvers/worksheet/cycle-count-worksheet-for-carton.js +3 -1
  10. package/dist-server/graphql/resolvers/worksheet/cycle-count-worksheet-for-carton.js.map +1 -1
  11. package/dist-server/graphql/resolvers/worksheet/cycle-count-worksheet-for-pallet.js +8 -2
  12. package/dist-server/graphql/resolvers/worksheet/cycle-count-worksheet-for-pallet.js.map +1 -1
  13. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js +6 -18
  14. package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js.map +1 -1
  15. package/dist-server/graphql/types/worksheet/worksheet-detail-info.js +1 -0
  16. package/dist-server/graphql/types/worksheet/worksheet-detail-info.js.map +1 -1
  17. package/dist-server/utils/lmd-util.js +1 -1
  18. package/dist-server/utils/lmd-util.js.map +1 -1
  19. package/package.json +9 -9
  20. package/server/controllers/ecommerce/ecommerce-controller.ts +3 -2
  21. package/server/controllers/ecommerce/sellercraft-controller.ts +2 -1
  22. package/server/controllers/inspect/cycle-count-worksheet-controller.ts +245 -57
  23. package/server/graphql/resolvers/worksheet/cycle-count-adjustment.ts +47 -6
  24. package/server/graphql/resolvers/worksheet/cycle-count-worksheet-for-carton.ts +6 -1
  25. package/server/graphql/resolvers/worksheet/cycle-count-worksheet-for-pallet.ts +11 -2
  26. package/server/graphql/resolvers/worksheet/packing-worksheet.ts +6 -19
  27. package/server/graphql/types/worksheet/worksheet-detail-info.ts +1 -0
  28. package/server/utils/lmd-util.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"lmd-util.js","sourceRoot":"","sources":["../../server/utils/lmd-util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lmd-util.js","sourceRoot":"","sources":["../../server/utils/lmd-util.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/worksheet-base",
3
- "version": "4.3.387",
3
+ "version": "4.3.390",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -29,21 +29,21 @@
29
29
  "@things-factory/id-rule-base": "^4.3.381",
30
30
  "@things-factory/integration-accounting": "^4.3.383",
31
31
  "@things-factory/integration-base": "^4.3.381",
32
- "@things-factory/integration-lmd": "^4.3.381",
33
- "@things-factory/integration-marketplace": "^4.3.381",
34
- "@things-factory/integration-powrup": "^4.3.381",
35
- "@things-factory/integration-sellercraft": "^4.3.381",
32
+ "@things-factory/integration-lmd": "^4.3.390",
33
+ "@things-factory/integration-marketplace": "^4.3.390",
34
+ "@things-factory/integration-powrup": "^4.3.390",
35
+ "@things-factory/integration-sellercraft": "^4.3.390",
36
36
  "@things-factory/integration-sftp": "^4.3.381",
37
- "@things-factory/marketplace-base": "^4.3.383",
37
+ "@things-factory/marketplace-base": "^4.3.390",
38
38
  "@things-factory/notification": "^4.3.381",
39
- "@things-factory/sales-base": "^4.3.387",
39
+ "@things-factory/sales-base": "^4.3.390",
40
40
  "@things-factory/setting-base": "^4.3.381",
41
41
  "@things-factory/shell": "^4.3.381",
42
42
  "@things-factory/transport-base": "^4.3.381",
43
- "@things-factory/warehouse-base": "^4.3.384",
43
+ "@things-factory/warehouse-base": "^4.3.390",
44
44
  "jspdf": "2.5.1",
45
45
  "puppeteer": "21.0.3",
46
46
  "uuid": "^9.0.0"
47
47
  },
48
- "gitHead": "a0ec10d77ded47f46f7da01810086129b2a9adb9"
48
+ "gitHead": "6b9a443621a365d9e9562e21fed4182e4727f7a9"
49
49
  }
@@ -195,7 +195,7 @@ export class EcommerceController extends WorksheetController {
195
195
  }
196
196
 
197
197
  if (ownTrackingNo) {
198
- let platform = releaseGood.lastMileDelivery.platform
198
+ let platform = releaseGood.lastMileDelivery?.platform
199
199
  marketplaceOrderShipping.ownTrackingNo = ownTrackingNo
200
200
  marketplaceOrderShipping.ownTransporter = platform
201
201
  await this.trxMgr
@@ -293,7 +293,8 @@ export class EcommerceController extends WorksheetController {
293
293
  domain: releaseGood.domain,
294
294
  bizplace: releaseGood.bizplace,
295
295
  creator: releaseGood.creator,
296
- updater: releaseGood.updater
296
+ updater: releaseGood.updater,
297
+ productDetail: op?.productDetail
297
298
  }
298
299
  })
299
300
 
@@ -104,7 +104,8 @@ export class SellercraftController extends WorksheetController {
104
104
  domain: releaseGood.domain,
105
105
  bizplace: releaseGood.bizplace,
106
106
  creator: releaseGood.creator,
107
- updater: releaseGood.updater
107
+ updater: releaseGood.updater,
108
+ productDetail: matchedOrderProduct?.productDetail
108
109
  }
109
110
  })
110
111
 
@@ -18,6 +18,7 @@ import { WORKSHEET_STATUS, WORKSHEET_TYPE } from '../../constants'
18
18
  import { Worksheet, WorksheetDetail } from '../../entities'
19
19
  import { WorksheetNoGenerator } from '../../utils'
20
20
  import { WorksheetController } from '../worksheet-controller'
21
+ import { cycleCountAdjustment } from '../../graphql/resolvers/worksheet/cycle-count-adjustment'
21
22
 
22
23
  export class CycleCountWorksheetController extends WorksheetController {
23
24
  private async createCycleCountWorksheet(
@@ -265,6 +266,16 @@ export class CycleCountWorksheetController extends WorksheetController {
265
266
  })
266
267
 
267
268
  if (notDoneCount === 0) {
269
+ if (currentCycleCountWorksheet.checkCount != 1) {
270
+ await cycleCountAdjustment(
271
+ this.trxMgr,
272
+ this.domain,
273
+ this.user,
274
+ currentCycleCountWorksheet.name,
275
+ existingInventoryCheck.name
276
+ )
277
+ }
278
+
268
279
  // Step 11: Update status of existing InventoryCheck
269
280
  existingInventoryCheck.status = ORDER_STATUS.INSPECTING
270
281
  existingInventoryCheck.updater = this.user
@@ -282,11 +293,134 @@ export class CycleCountWorksheetController extends WorksheetController {
282
293
 
283
294
  return nextRoundWorksheet
284
295
  } catch (error) {
285
- console.error('An error occurred while creating the next round cycle count worksheet:', error)
286
296
  throw new Error('Failed to create next round cycle count worksheet')
287
297
  }
288
298
  }
289
299
 
300
+ private async sameCycleCountWorksheet(
301
+ customerId: string,
302
+ existingInventoryCheck: InventoryCheck,
303
+ executionDate: string,
304
+ executingWorksheet: Worksheet,
305
+ notTallyWorksheet: Worksheet,
306
+ inventoryCheckItemIds: string[]
307
+ ): Promise<Worksheet> {
308
+ try {
309
+ // Step 1: Fetch current InventoryCheckItems
310
+ const currentInventoryCheckItems: InventoryCheckItem[] = await this.trxMgr
311
+ .getRepository(InventoryCheckItem)
312
+ .findByIds(inventoryCheckItemIds)
313
+
314
+ // Step 2: Create new InventoryCheckItems based on the current ones
315
+ const continuedInventoryCheckItems = currentInventoryCheckItems.map(currentItem => {
316
+ let newItem: InventoryCheckItem = new InventoryCheckItem()
317
+
318
+ Object.assign(newItem, currentItem)
319
+ newItem.id = undefined
320
+ newItem.domain = this.domain
321
+ newItem.bizplace = customerId
322
+ newItem.inventoryCheck = currentItem.inventoryCheckId
323
+ newItem.status = INVENTORY_CHECK_ITEM_STATUS.INSPECTING
324
+ newItem.name = OrderNoGenerator.inventoryCheckItem()
325
+ newItem.originQty = currentItem.inspectedQty || currentItem.originQty
326
+ newItem.originUomValue = currentItem.inspectedUomValue || currentItem.originUomValue
327
+ newItem.originBatchNo = currentItem.inspectedBatchNo || currentItem.originBatchNo
328
+ newItem.originLocation = currentItem.inspectedLocationId || currentItem.originLocationId
329
+ newItem.inspectedQty = null
330
+ newItem.inspectedUomValue = null
331
+ newItem.inspectedBatchNo = null
332
+ newItem.inspectedLocationId = null
333
+ newItem.countNo = currentItem.countNo + 1
334
+ newItem.inventory = currentItem.inventoryId
335
+ newItem.product = currentItem.productId
336
+ newItem.productDetail = currentItem.productDetailId
337
+ newItem.creator = this.user
338
+ newItem.updater = this.user
339
+
340
+ return newItem
341
+ })
342
+
343
+ // Step 3: Save the new InventoryCheckItems
344
+ await this.trxMgr.getRepository(InventoryCheckItem).save(continuedInventoryCheckItems, { chunk: 500 })
345
+
346
+ // Step 4: Create new Worksheet Details based on new InventoryCheckItems
347
+ let continuedWorksheetDetails = continuedInventoryCheckItems.map(newItem => {
348
+ let detail: WorksheetDetail = new WorksheetDetail()
349
+
350
+ detail.domain = this.domain
351
+ detail.bizplace = customerId
352
+ detail.worksheet = executingWorksheet
353
+ detail.name = WorksheetNoGenerator.cycleCountDetail()
354
+ detail.targetInventoryCheckItem = newItem
355
+ detail.type = WORKSHEET_TYPE.CYCLE_COUNT
356
+ detail.status = WORKSHEET_STATUS.EXECUTING
357
+ detail.creator = this.user
358
+ detail.updater = this.user
359
+
360
+ return detail
361
+ })
362
+
363
+ // Step 5: Save the new Worksheet Details
364
+ await this.trxMgr.getRepository(WorksheetDetail).save(continuedWorksheetDetails, { chunk: 500 })
365
+
366
+ // Step 6: Mark the selected inventory as TERMINATED
367
+ currentInventoryCheckItems.forEach(item => {
368
+ item.status = INVENTORY_CHECK_ITEM_STATUS.TERMINATED
369
+ item.updater = this.user
370
+ })
371
+ await this.trxMgr.getRepository(InventoryCheckItem).save(currentInventoryCheckItems)
372
+
373
+ // Step 7: Directly update the worksheet details
374
+ await this.trxMgr
375
+ .getRepository(WorksheetDetail)
376
+ .createQueryBuilder()
377
+ .update(WorksheetDetail)
378
+ .set({
379
+ status: WORKSHEET_STATUS.DONE,
380
+ updater: this.user
381
+ })
382
+ .where('targetInventoryCheckItem IN (:...ids)', { ids: currentInventoryCheckItems.map(item => item.id) })
383
+ .execute()
384
+
385
+ // Check if any record is not DONE
386
+ const notDoneCount = await this.trxMgr.getRepository(WorksheetDetail).count({
387
+ where: {
388
+ worksheet: notTallyWorksheet,
389
+ status: Not(Equal(WORKSHEET_STATUS.DONE))
390
+ }
391
+ })
392
+
393
+ if (notDoneCount === 0) {
394
+ if (notTallyWorksheet.checkCount != 1) {
395
+ await cycleCountAdjustment(
396
+ this.trxMgr,
397
+ this.domain,
398
+ this.user,
399
+ notTallyWorksheet.name,
400
+ existingInventoryCheck.name
401
+ )
402
+ }
403
+ // Step 11: Update status of existing InventoryCheck
404
+ existingInventoryCheck.status = ORDER_STATUS.INSPECTING
405
+ existingInventoryCheck.updater = this.user
406
+ await this.trxMgr.getRepository(InventoryCheck).save(existingInventoryCheck)
407
+
408
+ // Step 12: Mark the current worksheet as DONE
409
+ notTallyWorksheet.status = WORKSHEET_STATUS.DONE
410
+ notTallyWorksheet.updater = this.user
411
+ await this.trxMgr.getRepository(Worksheet).save(notTallyWorksheet)
412
+ }
413
+
414
+ existingInventoryCheck.executionDate = executionDate
415
+ existingInventoryCheck.updater = this.user
416
+ await this.trxMgr.getRepository(InventoryCheck).save(existingInventoryCheck)
417
+
418
+ return executingWorksheet // Return the same executing worksheet
419
+ } catch (error) {
420
+ throw new Error('Failed to use same cycle count worksheet')
421
+ }
422
+ }
423
+
290
424
  async generateCycleCountWorksheet(
291
425
  executionDate: string,
292
426
  customerId: string,
@@ -307,7 +441,7 @@ export class CycleCountWorksheetController extends WorksheetController {
307
441
  })
308
442
 
309
443
  const worksheetRepository = this.trxMgr.getRepository(Worksheet)
310
- const foundCycleCountWorksheet: Worksheet | undefined = await worksheetRepository.findOne({
444
+ const foundCycleCountWorksheets: Worksheet[] = await worksheetRepository.find({
311
445
  where: {
312
446
  domain: this.domain,
313
447
  bizplace: customerBizplace,
@@ -320,16 +454,39 @@ export class CycleCountWorksheetController extends WorksheetController {
320
454
  relations: ['worksheetDetails', 'worksheetDetails.targetInventoryCheckItem', 'inventoryCheck']
321
455
  })
322
456
 
323
- if (inventoryCheckItemIds.length) {
324
- return await this.createNextRoundCycleCountWorksheet(
325
- customerId,
326
- foundInventoryCheck,
327
- executionDate,
328
- foundCycleCountWorksheet,
329
- inventoryCheckItemIds
457
+ const worksheetStatuses = foundCycleCountWorksheets.map(worksheet => worksheet.status)
458
+
459
+ if (foundCycleCountWorksheets.length >= 1 && inventoryCheckItemIds.length) {
460
+ const executingWorksheet = foundCycleCountWorksheets.find(
461
+ worksheet => worksheet.status === WORKSHEET_STATUS.EXECUTING
462
+ )
463
+ const notTallyWorksheet = foundCycleCountWorksheets.find(
464
+ worksheet => worksheet.status === WORKSHEET_STATUS.NOT_TALLY
330
465
  )
466
+
467
+ if (
468
+ worksheetStatuses.includes(WORKSHEET_STATUS.EXECUTING) &&
469
+ worksheetStatuses.includes(WORKSHEET_STATUS.NOT_TALLY)
470
+ ) {
471
+ return await this.sameCycleCountWorksheet(
472
+ customerId,
473
+ foundInventoryCheck,
474
+ executionDate,
475
+ executingWorksheet,
476
+ notTallyWorksheet,
477
+ inventoryCheckItemIds
478
+ )
479
+ } else if (worksheetStatuses.includes(WORKSHEET_STATUS.NOT_TALLY)) {
480
+ return await this.createNextRoundCycleCountWorksheet(
481
+ customerId,
482
+ foundInventoryCheck,
483
+ executionDate,
484
+ notTallyWorksheet,
485
+ inventoryCheckItemIds
486
+ )
487
+ }
331
488
  } else {
332
- if (foundCycleCountWorksheet) {
489
+ if (foundCycleCountWorksheets.length >= 1) {
333
490
  throw new Error('Unfinished cycle count worksheet exists.')
334
491
  }
335
492
  return await this.createCycleCountWorksheet(
@@ -364,7 +521,7 @@ export class CycleCountWorksheetController extends WorksheetController {
364
521
  })
365
522
 
366
523
  const worksheetRepository = this.trxMgr.getRepository(Worksheet)
367
- const foundCycleCountWorksheet: Worksheet | undefined = await worksheetRepository.findOne({
524
+ const foundCycleCountWorksheets: Worksheet[] = await worksheetRepository.find({
368
525
  where: {
369
526
  domain: this.domain,
370
527
  bizplace: customerBizplace,
@@ -377,6 +534,8 @@ export class CycleCountWorksheetController extends WorksheetController {
377
534
  relations: ['worksheetDetails', 'worksheetDetails.targetInventoryCheckItem', 'inventoryCheck']
378
535
  })
379
536
 
537
+ const worksheetStatuses = foundCycleCountWorksheets.map(worksheet => worksheet.status)
538
+
380
539
  const qb = this.trxMgr.getRepository(InventoryCheckItem).createQueryBuilder('inventoryCheckItem')
381
540
  qb.innerJoinAndSelect('inventoryCheckItem.inventory', 'inventory')
382
541
  .innerJoinAndSelect('inventoryCheckItem.productDetail', 'productDetail')
@@ -395,13 +554,31 @@ export class CycleCountWorksheetController extends WorksheetController {
395
554
  const inventoryCheckItems: InventoryCheckItem[] = await qb.getMany()
396
555
 
397
556
  const inventoryCheckItemIds = inventoryCheckItems.map(item => item.id)
557
+ const executingWorksheet = foundCycleCountWorksheets.find(
558
+ worksheet => worksheet.status === WORKSHEET_STATUS.EXECUTING
559
+ )
560
+ const notTallyWorksheet = foundCycleCountWorksheets.find(
561
+ worksheet => worksheet.status === WORKSHEET_STATUS.NOT_TALLY
562
+ )
398
563
 
399
- if (inventoryCheckItemIds.length) {
564
+ if (
565
+ worksheetStatuses.includes(WORKSHEET_STATUS.EXECUTING) &&
566
+ worksheetStatuses.includes(WORKSHEET_STATUS.NOT_TALLY)
567
+ ) {
568
+ return await this.sameCycleCountWorksheet(
569
+ customerId,
570
+ foundInventoryCheck,
571
+ executionDate,
572
+ executingWorksheet,
573
+ notTallyWorksheet,
574
+ inventoryCheckItemIds
575
+ )
576
+ } else if (worksheetStatuses.includes(WORKSHEET_STATUS.NOT_TALLY)) {
400
577
  return await this.createNextRoundCycleCountWorksheet(
401
578
  customerId,
402
579
  foundInventoryCheck,
403
580
  executionDate,
404
- foundCycleCountWorksheet,
581
+ notTallyWorksheet,
405
582
  inventoryCheckItemIds
406
583
  )
407
584
  }
@@ -461,8 +638,9 @@ export class CycleCountWorksheetController extends WorksheetController {
461
638
  const {
462
639
  originBatchNo,
463
640
  originQty,
464
- originUomValue
465
- }: { originBatchNo: string; originQty: number; originUomValue: number } = targetInventoryCheckItem
641
+ originUomValue,
642
+ originLocationId
643
+ }: { originBatchNo: string; originQty: number; originUomValue: number, originLocationId: string } = targetInventoryCheckItem
466
644
 
467
645
  const isChanged: boolean =
468
646
  originBatchNo !== inspectedBatchNo || originQty !== inspectedQty || originUomValue !== inspectedUomValue
@@ -478,7 +656,7 @@ export class CycleCountWorksheetController extends WorksheetController {
478
656
  targetInventoryCheckItem.inspectedBatchNo = inspectedBatchNo
479
657
  targetInventoryCheckItem.inspectedQty = inspectedQty
480
658
  targetInventoryCheckItem.inspectedUomValue = inspectedUomValue
481
- targetInventoryCheckItem.inspectedLocation = targetInventoryCheckItem.inventory.location
659
+ targetInventoryCheckItem.inspectedLocation = originLocationId
482
660
  targetInventoryCheckItem.status = targetInventoryCheckItemStatus
483
661
  targetInventoryCheckItem.updater = this.user
484
662
  await this.updateOrderTargets([targetInventoryCheckItem])
@@ -1079,57 +1257,67 @@ export class CycleCountWorksheetController extends WorksheetController {
1079
1257
  this.checkRecordValidity(worksheet, { status: WORKSHEET_STATUS.EXECUTING })
1080
1258
 
1081
1259
  const worksheetDetails: WorksheetDetail[] = worksheet.worksheetDetails
1260
+ const doneWorksheetDetails = worksheetDetails.filter(wsd => wsd.status === 'DONE')
1082
1261
  const targetInventoryCheckItems: InventoryCheckItem[] = worksheetDetails.map(
1083
1262
  (wsd: WorksheetDetail) => wsd.targetInventoryCheckItem
1084
1263
  )
1264
+ if (doneWorksheetDetails.length === worksheetDetails.length && worksheet.checkCount != 1) {
1265
+ await cycleCountAdjustment(this.trxMgr, this.domain, this.user, worksheet.name, inventoryCheck.name)
1085
1266
 
1086
- const {
1087
- tallyTargetInventoryCheckItems,
1088
- notTallyTargetInventoryCheckItems
1089
- }: {
1090
- tallyTargetInventoryCheckItems: InventoryCheckItem[]
1091
- notTallyTargetInventoryCheckItems: InventoryCheckItem[]
1092
- } = targetInventoryCheckItems.reduce(
1093
- (result, targetInventoryCheckItem: InventoryCheckItem) => {
1094
- if (targetInventoryCheckItem.status !== INVENTORY_CHECK_ITEM_STATUS.INSPECTED) {
1095
- result.notTallyTargetInventoryCheckItems.push(targetInventoryCheckItem)
1096
- } else {
1097
- result.tallyTargetInventoryCheckItems.push(targetInventoryCheckItem)
1267
+ worksheet = await this.trxMgr.getRepository(Worksheet).findOne({
1268
+ domain: this.domain,
1269
+ type: In([WORKSHEET_TYPE.CYCLE_COUNT, WORKSHEET_TYPE.CYCLE_COUNT_RECHECK]),
1270
+ inventoryCheck
1271
+ })
1272
+ } else {
1273
+ const {
1274
+ tallyTargetInventoryCheckItems,
1275
+ notTallyTargetInventoryCheckItems
1276
+ }: {
1277
+ tallyTargetInventoryCheckItems: InventoryCheckItem[]
1278
+ notTallyTargetInventoryCheckItems: InventoryCheckItem[]
1279
+ } = targetInventoryCheckItems.reduce(
1280
+ (result, targetInventoryCheckItem: InventoryCheckItem) => {
1281
+ if (targetInventoryCheckItem.status !== INVENTORY_CHECK_ITEM_STATUS.INSPECTED) {
1282
+ result.notTallyTargetInventoryCheckItems.push(targetInventoryCheckItem)
1283
+ } else {
1284
+ result.tallyTargetInventoryCheckItems.push(targetInventoryCheckItem)
1285
+ }
1286
+
1287
+ return result
1288
+ },
1289
+ {
1290
+ tallyTargetInventoryCheckItems: [],
1291
+ notTallyTargetInventoryCheckItems: []
1098
1292
  }
1293
+ )
1099
1294
 
1100
- return result
1101
- },
1102
- {
1103
- tallyTargetInventoryCheckItems: [],
1104
- notTallyTargetInventoryCheckItems: []
1105
- }
1106
- )
1107
-
1108
- const tallyInventories: Inventory[] = tallyTargetInventoryCheckItems.map(
1109
- targetInventoryCheckItem => targetInventoryCheckItem.inventory
1110
- )
1111
- tallyTargetInventoryCheckItems.forEach((targetInventoryCheckItem: InventoryCheckItem) => {
1112
- targetInventoryCheckItem.status = INVENTORY_CHECK_ITEM_STATUS.TERMINATED
1113
- targetInventoryCheckItem.updater = this.user
1114
- })
1115
- await this.trxMgr.getRepository(InventoryCheckItem).save(tallyTargetInventoryCheckItems, { chunk: 500 })
1295
+ const tallyInventories: Inventory[] = tallyTargetInventoryCheckItems.map(
1296
+ targetInventoryCheckItem => targetInventoryCheckItem.inventory
1297
+ )
1298
+ tallyTargetInventoryCheckItems.forEach((targetInventoryCheckItem: InventoryCheckItem) => {
1299
+ targetInventoryCheckItem.status = INVENTORY_CHECK_ITEM_STATUS.TERMINATED
1300
+ targetInventoryCheckItem.updater = this.user
1301
+ })
1302
+ await this.trxMgr.getRepository(InventoryCheckItem).save(tallyTargetInventoryCheckItems, { chunk: 500 })
1116
1303
 
1117
- await this.trxMgr.getRepository(Inventory).save(tallyInventories, { chunk: 500 })
1304
+ await this.trxMgr.getRepository(Inventory).save(tallyInventories, { chunk: 500 })
1118
1305
 
1119
- if (notTallyTargetInventoryCheckItems.length) {
1120
- worksheet.status = WORKSHEET_STATUS.NOT_TALLY
1121
- inventoryCheck.status = ORDER_STATUS.PENDING_REVIEW
1122
- } else {
1123
- worksheet.status = WORKSHEET_STATUS.DONE
1124
- inventoryCheck.status = ORDER_STATUS.DONE
1125
- }
1306
+ if (notTallyTargetInventoryCheckItems.length) {
1307
+ worksheet.status = WORKSHEET_STATUS.NOT_TALLY
1308
+ inventoryCheck.status = ORDER_STATUS.PENDING_REVIEW
1309
+ } else {
1310
+ worksheet.status = WORKSHEET_STATUS.DONE
1311
+ inventoryCheck.status = ORDER_STATUS.DONE
1312
+ }
1126
1313
 
1127
- worksheet.endedAt = new Date()
1128
- worksheet.updater = this.user
1129
- await this.trxMgr.getRepository(Worksheet).save(worksheet)
1314
+ worksheet.endedAt = new Date()
1315
+ worksheet.updater = this.user
1316
+ await this.trxMgr.getRepository(Worksheet).save(worksheet)
1130
1317
 
1131
- inventoryCheck.updater = this.user
1132
- await this.trxMgr.getRepository(InventoryCheck).save(inventoryCheck)
1318
+ inventoryCheck.updater = this.user
1319
+ await this.trxMgr.getRepository(InventoryCheck).save(inventoryCheck)
1320
+ }
1133
1321
 
1134
1322
  return worksheet
1135
1323
  }
@@ -1,4 +1,4 @@
1
- import { EntityManager, In } from 'typeorm'
1
+ import { EntityManager, In, Not } from 'typeorm'
2
2
 
3
3
  import { Application, ApplicationType, User } from '@things-factory/auth-base'
4
4
  import { Sellercraft, SellercraftStatus } from '@things-factory/integration-sellercraft'
@@ -52,6 +52,16 @@ export async function cycleCountAdjustment(
52
52
  }
53
53
  })
54
54
 
55
+ const inspectingItems: InventoryCheckItem[] = await tx.getRepository(InventoryCheckItem).find({
56
+ where: {
57
+ inventoryCheck: cycleCount,
58
+ status: 'INSPECTING'
59
+ },
60
+ relations: ['inventory']
61
+ })
62
+
63
+ const inspectingInventoryIds = new Set(inspectingItems.map(item => item.inventory.id))
64
+
55
65
  let worksheet: Worksheet = await tx.getRepository(Worksheet).findOne({
56
66
  where: {
57
67
  domain,
@@ -66,8 +76,7 @@ export async function cycleCountAdjustment(
66
76
  where: {
67
77
  domain,
68
78
  worksheet,
69
- type: In([WORKSHEET_TYPE.CYCLE_COUNT, WORKSHEET_TYPE.CYCLE_COUNT_RECHECK]),
70
- status: WORKSHEET_STATUS.NOT_TALLY
79
+ type: In([WORKSHEET_TYPE.CYCLE_COUNT, WORKSHEET_TYPE.CYCLE_COUNT_RECHECK])
71
80
  },
72
81
  relations: [
73
82
  'targetInventoryCheckItem',
@@ -87,7 +96,29 @@ export async function cycleCountAdjustment(
87
96
  ]
88
97
  })
89
98
 
90
- for (let worksheetDetail of worksheetDetails) {
99
+ // Filter worksheetDetails that meet any of the specified conditions
100
+ const relevantWorksheetDetails = worksheetDetails.filter(worksheetDetail => {
101
+ const checkItem = worksheetDetail.targetInventoryCheckItem
102
+ const inventory = checkItem.inventory
103
+
104
+ // Exclude items that are under inspection elsewhere
105
+ if (inspectingInventoryIds.has(inventory.id)) {
106
+ return false
107
+ }
108
+
109
+ return (
110
+ checkItem.status === ORDER_INVENTORY_STATUS.MISSING ||
111
+ checkItem.inspectedQty === 0 ||
112
+ checkItem.status === INVENTORY_CHECK_ITEM_STATUS.ADDED ||
113
+ inventory.status === 'CC_ADDED' ||
114
+ checkItem.inspectedQty !== inventory.qty ||
115
+ checkItem.inspectedBatchNo !== inventory.batchId ||
116
+ checkItem.inspectedLocation.id !== inventory.location.id ||
117
+ checkItem.inspectedUomValue !== inventory.uomValue
118
+ )
119
+ })
120
+
121
+ for (let worksheetDetail of relevantWorksheetDetails) {
91
122
  const targetInventoryCheckItem: InventoryCheckItem = worksheetDetail.targetInventoryCheckItem
92
123
  let inventory: Inventory = targetInventoryCheckItem.inventory
93
124
 
@@ -176,12 +207,17 @@ export async function cycleCountAdjustment(
176
207
  const powrupController: PowrupController = new PowrupController()
177
208
  powrupController.updateStock([inventory], customerDomain, user, tx)
178
209
  }
179
- } else if (targetInventoryCheckItem.status === INVENTORY_CHECK_ITEM_STATUS.ADDED) {
210
+ } else if (
211
+ targetInventoryCheckItem.status === INVENTORY_CHECK_ITEM_STATUS.ADDED ||
212
+ inventory.status === 'CC_ADDED'
213
+ ) {
180
214
  const inventories: Inventory[] = await tx.getRepository(Inventory).find({
181
215
  where: { id: targetInventoryCheckItem.inventory.id, domain, status: INVENTORY_STATUS.CC_ADDED }
182
216
  })
183
217
 
184
218
  for (let inventory of inventories) {
219
+ inventory.qty = targetInventoryCheckItem.inspectedQty
220
+ inventory.uomValue = targetInventoryCheckItem.inspectedUomValue
185
221
  inventory.status = INVENTORY_STATUS.STORED
186
222
  inventory.creator = user
187
223
  inventory.updater = user
@@ -218,7 +254,12 @@ export async function cycleCountAdjustment(
218
254
  location: targetInventoryCheckItem.inventory.location
219
255
  })
220
256
  }
221
- } else {
257
+ } else if (
258
+ targetInventoryCheckItem.inspectedQty !== inventory.qty ||
259
+ targetInventoryCheckItem.inspectedBatchNo !== inventory.batchId ||
260
+ targetInventoryCheckItem.inspectedLocation.id !== inventory.location.id ||
261
+ targetInventoryCheckItem.inspectedUomValue !== inventory.uomValue
262
+ ) {
222
263
  const prevLocationId: string = inventory.location.id
223
264
 
224
265
  if (targetInventoryCheckItem.inspectedBatchNo !== inventory.batchId) {