| @@ -29,7 +29,7 @@ open class PickOrderLifecycleService( | |||||
| ) { | ) { | ||||
| private val dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") | private val dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") | ||||
| /** FP-MTMS Version Checklist | Functions Ref. No. 10 | v1.0.1 | 2026-07-14 */ | |||||
| /** FP-MTMS Version Checklist | Functions Ref. No. 11 | v1.0.0 | 2026-07-17 */ | |||||
| open fun getLifecycle(pickOrderId: Long): PickOrderLifecycleResponse? { | open fun getLifecycle(pickOrderId: Long): PickOrderLifecycleResponse? { | ||||
| val po = pickOrderRepository.findById(pickOrderId).orElse(null) ?: return null | val po = pickOrderRepository.findById(pickOrderId).orElse(null) ?: return null | ||||
| @@ -57,7 +57,7 @@ open class PickOrderLifecycleService( | |||||
| ) | ) | ||||
| } | } | ||||
| /** FP-MTMS Version Checklist | Functions Ref. No. 10 | v1.0.1 | 2026-07-14 */ | |||||
| /** FP-MTMS Version Checklist | Functions Ref. No. 11 | v1.0.0 | 2026-07-17 */ | |||||
| open fun getLifecycleByCode(code: String): PickOrderLifecycleResponse? { | open fun getLifecycleByCode(code: String): PickOrderLifecycleResponse? { | ||||
| val po = pickOrderRepository.findByCodeAndDeletedFalse(code) ?: return null | val po = pickOrderRepository.findByCodeAndDeletedFalse(code) ?: return null | ||||
| return po.id?.let { getLifecycle(it) } | return po.id?.let { getLifecycle(it) } | ||||
| @@ -10,7 +10,7 @@ import org.springframework.web.bind.annotation.* | |||||
| class PickOrderLifecycleController( | class PickOrderLifecycleController( | ||||
| private val lifecycleService: PickOrderLifecycleService, | private val lifecycleService: PickOrderLifecycleService, | ||||
| ) { | ) { | ||||
| /** FP-MTMS Version Checklist | Functions Ref. No. 10 | v1.0.1 | 2026-07-14 */ | |||||
| /** FP-MTMS Version Checklist | Functions Ref. No. 11 | v1.0.0 | 2026-07-17 */ | |||||
| @GetMapping("/{id}/lifecycle") | @GetMapping("/{id}/lifecycle") | ||||
| fun getLifecycle(@PathVariable id: Long): ResponseEntity<PickOrderLifecycleResponse> { | fun getLifecycle(@PathVariable id: Long): ResponseEntity<PickOrderLifecycleResponse> { | ||||
| val result = lifecycleService.getLifecycle(id) | val result = lifecycleService.getLifecycle(id) | ||||
| @@ -18,7 +18,7 @@ class PickOrderLifecycleController( | |||||
| else ResponseEntity.notFound().build() | else ResponseEntity.notFound().build() | ||||
| } | } | ||||
| /** FP-MTMS Version Checklist | Functions Ref. No. 10 | v1.0.1 | 2026-07-14 */ | |||||
| /** FP-MTMS Version Checklist | Functions Ref. No. 11 | v1.0.0 | 2026-07-17 */ | |||||
| @GetMapping("/lifecycle/by-code") | @GetMapping("/lifecycle/by-code") | ||||
| fun getLifecycleByCode(@RequestParam code: String): ResponseEntity<PickOrderLifecycleResponse> { | fun getLifecycleByCode(@RequestParam code: String): ResponseEntity<PickOrderLifecycleResponse> { | ||||
| val result = lifecycleService.getLifecycleByCode(code) | val result = lifecycleService.getLifecycleByCode(code) | ||||
| @@ -11,7 +11,7 @@ open class ItemLotTraceService( | |||||
| private val orchestrator: ItemLotTraceOrchestrator, | private val orchestrator: ItemLotTraceOrchestrator, | ||||
| private val itemLotTraceLogService: ItemLotTraceLogService, | private val itemLotTraceLogService: ItemLotTraceLogService, | ||||
| ) { | ) { | ||||
| /** FP-MTMS Version Checklist | Functions Ref. No. 7 | v1.0.0 | 2026-07-14 */ | |||||
| /** FP-MTMS Version Checklist | Functions Ref. No. 10 | v1.0.0 | 2026-07-17 */ | |||||
| open fun trace( | open fun trace( | ||||
| stockInLineId: Long?, | stockInLineId: Long?, | ||||
| inventoryLotLineId: Long?, | inventoryLotLineId: Long?, | ||||
| @@ -38,7 +38,7 @@ open class ItemLotTraceService( | |||||
| } | } | ||||
| /** | /** | ||||
| * FP-MTMS Version Checklist | Functions Ref. No. 7 | v1.0.0 | 2026-07-14 | |||||
| * FP-MTMS Version Checklist | Functions Ref. No. 10 | v1.0.0 | 2026-07-17 | |||||
| * Lazy-load endpoint: returns the full location-scoped trace block for a single inventory lot. | * Lazy-load endpoint: returns the full location-scoped trace block for a single inventory lot. | ||||
| * Lot-level dimensions (BOM, JO prelude, production, byproducts) are excluded — those are only | * Lot-level dimensions (BOM, JO prelude, production, byproducts) are excluded — those are only | ||||
| * available via the main /trace endpoint. | * available via the main /trace endpoint. | ||||
| @@ -154,6 +154,7 @@ class InventoryLotLineController ( | |||||
| fun updateInventoryLotLineQuantities(@RequestBody request: UpdateInventoryLotLineQuantitiesRequest): MessageResponse { | fun updateInventoryLotLineQuantities(@RequestBody request: UpdateInventoryLotLineQuantitiesRequest): MessageResponse { | ||||
| return inventoryLotLineService.updateInventoryLotLineQuantities(request) | return inventoryLotLineService.updateInventoryLotLineQuantities(request) | ||||
| } | } | ||||
| /** FP-MTMS Version Checklist | Functions Ref. No. 10 | v1.0.0 | 2026-07-17 */ | |||||
| @GetMapping("/trace") | @GetMapping("/trace") | ||||
| fun traceLot( | fun traceLot( | ||||
| @RequestParam(required = false) stockInLineId: Long?, | @RequestParam(required = false) stockInLineId: Long?, | ||||
| @@ -166,7 +167,7 @@ class InventoryLotLineController ( | |||||
| } | } | ||||
| /** | /** | ||||
| * FP-MTMS Version Checklist | Functions Ref. No. 7 | v1.0.0 | 2026-07-14 | |||||
| * FP-MTMS Version Checklist | Functions Ref. No. 10 | v1.0.0 | 2026-07-17 | |||||
| * Lazy-load: single location trace for an alternate inventory lot. | * Lazy-load: single location trace for an alternate inventory lot. | ||||
| * Returns location-scoped trace data (movements, origins, QC, outbound, stock take, etc.) | * Returns location-scoped trace data (movements, origins, QC, outbound, stock take, etc.) | ||||
| * without the lot-level fields (BOM, JO prelude, production steps, byproducts). | * without the lot-level fields (BOM, JO prelude, production steps, byproducts). | ||||