Procházet zdrojové kódy

UPDATE CODE FOR ENSON (DO MARK COMPLETED)

production
kelvin.yau před 1 měsícem
rodič
revize
d4dc79d6fa
1 změnil soubory, kde provedl 31 přidání a 1 odebrání
  1. +31
    -1
      src/main/java/com/ffii/fpsms/modules/deliveryOrder/service/DoWorkbenchMainService.kt

+ 31
- 1
src/main/java/com/ffii/fpsms/modules/deliveryOrder/service/DoWorkbenchMainService.kt Zobrazit soubor

@@ -1362,8 +1362,9 @@ return MessageResponse(
dop.deliveryNoteCode = CodeGenerator.generateNo(prefix = prefix, midfix = midfix, latestCode = latestCode)
}
deliveryOrderPickOrderRepository.save(dop)
}

}
markDeliveryOrdersCompletedForDeliveryOrderPickOrder(deliveryOrderPickOrderId)
return MessageResponse(
id = dop.id,
code = "SUCCESS",
@@ -2276,6 +2277,35 @@ return MessageResponse(
""".trimIndent(),
mapOf("dopId" to dopId, "deliveryNoteCode" to newDeliveryNoteCode),
)
markDeliveryOrdersCompletedForDeliveryOrderPickOrder(dopId)
}
/**
* When a workbench ticket ([delivery_order_pick_order]) is completed, align linked [delivery_order] headers.
*/
private fun markDeliveryOrdersCompletedForDeliveryOrderPickOrder(dopId: Long) {
if (dopId <= 0L) return
val rows = try {
jdbcDao.queryForList(
"""
SELECT DISTINCT po.doId AS doId
FROM fpsmsdb.pick_order po
WHERE po.deliveryOrderPickOrderId = :dopId
AND po.deleted = 0
AND po.doId IS NOT NULL
""".trimIndent(),
mapOf("dopId" to dopId),
)
} catch (_: Exception) {
emptyList()
}
for (row in rows) {
val doId = (row["doId"] as? Number)?.toLong() ?: continue
val deliveryOrder = deliveryOrderRepository.findByIdAndDeletedIsFalse(doId) ?: continue
if (deliveryOrder.status == DeliveryOrderStatus.COMPLETED) continue
deliveryOrder.status = DeliveryOrderStatus.COMPLETED
deliveryOrder.completeDate = LocalDateTime.now()
deliveryOrderRepository.save(deliveryOrder)
}
}

private fun checkWorkbenchPickOrderLineCompleted(pickOrderLineId: Long, allStockOutLines: List<StockOutLineInfo>) {


Načítá se…
Zrušit
Uložit