@things-factory/worksheet-base 8.0.97 → 8.0.98

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/worksheet-base",
3
- "version": "8.0.97",
3
+ "version": "8.0.98",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -40,5 +40,5 @@
40
40
  "@things-factory/transport-base": "^8.0.97",
41
41
  "@things-factory/warehouse-base": "^8.0.97"
42
42
  },
43
- "gitHead": "5d03c18493fb5e9d58e56bf893b51a9d682b8823"
43
+ "gitHead": "4b84be96f0d941aa559abab5b3a5f540bac3c74f"
44
44
  }
@@ -90,6 +90,17 @@ export class PutawayWorksheetController extends VasWorksheetController {
90
90
  targetInventory = await this.trxMgr.getRepository(OrderInventory).save(targetInventory)
91
91
  }
92
92
 
93
+ // 적치 취소(undo putaway) 등으로 이미 이 재고의 적치 상세가 있으면 중복 생성하지 않는다.
94
+ // (취소된 팔레트가 이후 부분하차 완료 시 UNLOADED 재고로 다시 잡혀 같은 LOT이 2줄 생기는 문제 방지)
95
+ const existingWsdCnt: number = await this.trxMgr.getRepository(WorksheetDetail).count({
96
+ where: {
97
+ domain: { id: this.domain.id },
98
+ worksheet: { id: worksheet.id },
99
+ targetInventory: { id: targetInventory.id }
100
+ }
101
+ })
102
+ if (existingWsdCnt) continue
103
+
93
104
  const newWorksheetDetails: WorksheetDetail[] = await this.createWorksheetDetails(
94
105
  worksheet,
95
106
  WORKSHEET_TYPE.PUTAWAY,
@@ -388,7 +399,9 @@ export class PutawayWorksheetController extends VasWorksheetController {
388
399
  where: { domain: { id: this.domain.id }, name: worksheetDetail.fromLocation.name }
389
400
  })
390
401
  inventory.location = bufferLocation
391
- inventory.status = INVENTORY_STATUS.UNLOADED
402
+ // 적치 상세가 EXECUTING으로 살아있으므로 UNLOADED가 아닌 PUTTING_AWAY로 되돌린다.
403
+ // UNLOADED로 두면 이후 부분하차 완료 시 새 하차 재고로 잡혀 적치 상세가 중복 생성된다.
404
+ inventory.status = INVENTORY_STATUS.PUTTING_AWAY
392
405
  await this.transactionInventory(inventory, arrivalNotice, 0, 0, INVENTORY_TRANSACTION_TYPE.UNDO_PUTAWAY)
393
406
 
394
407
  targetInventory.status = ORDER_PRODUCT_STATUS.PUTTING_AWAY
@@ -424,7 +437,7 @@ export class PutawayWorksheetController extends VasWorksheetController {
424
437
  where: { domain: { id: this.domain.id }, name: worksheetDetail.fromLocation.name }
425
438
  })
426
439
  inventory.location = bufferLocation
427
- inventory.status = INVENTORY_STATUS.UNLOADED
440
+ inventory.status = INVENTORY_STATUS.PUTTING_AWAY // undoPallet과 동일 사유
428
441
  await this.transactionInventory(inventory, arrivalNotice, 0, 0, INVENTORY_TRANSACTION_TYPE.UNDO_PUTAWAY)
429
442
 
430
443
  targetInventory.status = ORDER_PRODUCT_STATUS.PUTTING_AWAY