From 503b0f75da4dc62fc4d8bf0565b4e2ce0cb2def8 Mon Sep 17 00:00:00 2001 From: "vluk@2fi-solutions.com.hk" Date: Mon, 2 Feb 2026 15:19:32 +0800 Subject: [PATCH] no message --- .../modules/master/service/ItemsService.kt | 16 ++++++------- .../service/ProductionScheduleService.kt | 23 ++++++++++--------- 2 files changed, 20 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/ffii/fpsms/modules/master/service/ItemsService.kt b/src/main/java/com/ffii/fpsms/modules/master/service/ItemsService.kt index f5d0dc4..928403e 100644 --- a/src/main/java/com/ffii/fpsms/modules/master/service/ItemsService.kt +++ b/src/main/java/com/ffii/fpsms/modules/master/service/ItemsService.kt @@ -531,14 +531,14 @@ open class ItemsService( this.qcCategory = qcCategory m18Id = request.m18Id ?: this.m18Id m18LastModifyDate = request.m18LastModifyDate ?: this.m18LastModifyDate - store_id = request.store_id - warehouse = request.warehouse - area = request.area - slot = request.slot - LocationCode = request.LocationCode - isEgg = request.isEgg ?: false - isFee = request.isFee ?: false - isBag = request.isBag ?: false + //store_id = request.store_id + //warehouse = request.warehouse + //area = request.area + //slot = request.slot + //LocationCode = request.LocationCode + //isEgg = request.isEgg ?: false + //isFee = request.isFee ?: false + //isBag = request.isBag ?: false } logger.info("saving item: $item") val savedItem = itemsRepository.saveAndFlush(item) diff --git a/src/main/java/com/ffii/fpsms/modules/master/service/ProductionScheduleService.kt b/src/main/java/com/ffii/fpsms/modules/master/service/ProductionScheduleService.kt index c94b1eb..e230125 100644 --- a/src/main/java/com/ffii/fpsms/modules/master/service/ProductionScheduleService.kt +++ b/src/main/java/com/ffii/fpsms/modules/master/service/ProductionScheduleService.kt @@ -1790,7 +1790,7 @@ open class ProductionScheduleService( itm.id AS materialId, itm.code AS matCode, itm.name AS matName, - bm.uomName AS uom, + uomP.udfudesc AS uom, ceil((iv.onHandQty * (itsm.ratioN / itsm.ratioD)) * (itum.ratioD / itum.ratioN)) as onHandQty, ceil((iv.unavailableQty * (itsm.ratioN / itsm.ratioD)) * (itum.ratioD / itum.ratioN)) as unavailableQty, COALESCE(( @@ -1798,7 +1798,7 @@ open class ProductionScheduleService( FROM purchase_order_line pol JOIN purchase_order po ON pol.purchaseOrderId = po.id WHERE pol.itemId = itm.id - AND DATE(po.estimatedArrivalDate) >= CURDATE() + AND DATE(po.estimatedArrivalDate) >= :fromDate AND po.completeDate IS NULL ), 0) AS purchasedQty, DATE(ps.produceAt) AS produceDate, @@ -1810,10 +1810,11 @@ open class ProductionScheduleService( JOIN bom_material bm ON bom.id = bm.bomId JOIN items itm ON bm.itemId = itm.id JOIN item_uom itum ON itm.id = itum.itemId and itum.purchaseUnit = 1 + join uom_conversion uomP on item.uomId = uomP.id JOIN item_uom itsm ON itm.id = itsm.itemId and itsm.stockUnit = 1 LEFT JOIN inventory iv ON itm.id = iv.itemId - WHERE DATE(ps.produceAt) >= DATE_ADD(CURDATE(), INTERVAL 1 DAY) - AND DATE(ps.produceAt) < DATE_ADD(CURDATE(), INTERVAL 8 DAY) + WHERE DATE(ps.produceAt) >= DATE_ADD(:fromDate, INTERVAL 1 DAY) + AND DATE(ps.produceAt) < DATE_ADD(:fromDate, INTERVAL 8 DAY) AND ps.id = ( SELECT ps2.id FROM production_schedule ps2 @@ -1837,13 +1838,13 @@ open class ProductionScheduleService( (onHandQty + purchasedQty) AS grossAvailable, -- Dynamic columns for next 7 days - COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(CURDATE(), INTERVAL 1 DAY) THEN qtyNeeded END), 0) AS day1, - COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(CURDATE(), INTERVAL 2 DAY) THEN qtyNeeded END), 0) AS day2, - COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(CURDATE(), INTERVAL 3 DAY) THEN qtyNeeded END), 0) AS day3, - COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(CURDATE(), INTERVAL 4 DAY) THEN qtyNeeded END), 0) AS day4, - COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(CURDATE(), INTERVAL 5 DAY) THEN qtyNeeded END), 0) AS day5, - COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(CURDATE(), INTERVAL 6 DAY) THEN qtyNeeded END), 0) AS day6, - COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(CURDATE(), INTERVAL 7 DAY) THEN qtyNeeded END), 0) AS day7, + COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(:fromDate, INTERVAL 1 DAY) THEN qtyNeeded END), 0) AS day1, + COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(:fromDate, INTERVAL 2 DAY) THEN qtyNeeded END), 0) AS day2, + COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(:fromDate, INTERVAL 3 DAY) THEN qtyNeeded END), 0) AS day3, + COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(:fromDate, INTERVAL 4 DAY) THEN qtyNeeded END), 0) AS day4, + COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(:fromDate, INTERVAL 5 DAY) THEN qtyNeeded END), 0) AS day5, + COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(:fromDate, INTERVAL 6 DAY) THEN qtyNeeded END), 0) AS day6, + COALESCE(MAX(CASE WHEN produceDate = DATE_ADD(:fromDate, INTERVAL 7 DAY) THEN qtyNeeded END), 0) AS day7, -- Total and net COALESCE(SUM(qtyNeeded), 0) AS totalNeed7Days,