소스 검색

UPDATE CODE FOR ENSON (DO MARK COMPLETED)

production
kelvin.yau 1 개월 전
부모
커밋
d4dc79d6fa
1개의 변경된 파일31개의 추가작업 그리고 1개의 파일을 삭제
  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 파일 보기

@@ -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>) {


불러오는 중...
취소
저장