Преглед на файлове

rename trucklancecode

item_tracing
tommy преди 1 седмица
родител
ревизия
e36db52938
променени са 1 файла, в които са добавени 4 реда и са изтрити 43 реда
  1. +4
    -43
      src/main/java/com/ffii/fpsms/modules/pickOrder/service/TruckLaneRenameService.kt

+ 4
- 43
src/main/java/com/ffii/fpsms/modules/pickOrder/service/TruckLaneRenameService.kt Целия файл

@@ -71,20 +71,11 @@ open class TruckLaneRenameService(

val oldTimeLabel = describeTimes(sourceRows.map { it.departureTime })
val casings = sourceRows.map { it.truckLanceCode?.trim().orEmpty() }.filter { it.isNotEmpty() }.distinct()
// Existing delivery tickets (pending / released / assigned / completed) keep the old name.
// Later releases copy the new master name at insert time.
var scheduleCount = 0
var ticketCount = 0
for (casing in casings) {
scheduleCount += applyOpenScheduleRename(casing, newCode, floor, remarkKey)
val params = ticketParams(casing, floor, remarkKey).toMutableMap()
params["newCode"] = newCode
ticketCount += jdbcDao.executeUpdate(
updateTicketSql(DOPO_UPDATE_SQL, req.departureTimeChanged),
withTime(params, newTime),
)
jdbcDao.executeUpdate(
updateTicketSql(PICK_UPDATE_SQL, req.departureTimeChanged),
withTime(params, newTime),
)
}
for (row in sourceRows) {
row.truckLanceCode = newCode
@@ -99,12 +90,12 @@ open class TruckLaneRenameService(
log.remark = remarkKey.ifEmpty { null }
log.oldDepartureTime = oldTimeLabel
log.newDepartureTime = if (req.departureTimeChanged) newTime.toString() else oldTimeLabel
log.ticketCount = ticketCount
log.ticketCount = 0
renameLogRepository.save(log)

return RenameTruckLaneResponse(
truckLanceCode = newCode,
ticketCount = ticketCount,
ticketCount = 0,
scheduleLineCount = scheduleCount,
)
}
@@ -196,18 +187,6 @@ open class TruckLaneRenameService(
}
}

private fun withTime(params: MutableMap<String, Any?>, time: LocalTime?): Map<String, Any?> {
if (time != null) params["newTime"] = time.toString()
return params
}

private fun updateTicketSql(base: String, withTime: Boolean): String {
if (!withTime) return base
return base.replace("SET colCode = :newCode", "SET colCode = :newCode, colTime = :newTime")
.replace("SET TruckLanceCode = :newCode", "SET TruckLanceCode = :newCode, truck_departure_time = :newTime")
.replace("SET truckLanceCode = :newCode", "SET truckLanceCode = :newCode, truckDepartureTime = :newTime")
}

private fun ticketParams(code: String, floor: String, remarkKey: String): Map<String, Any?> = mapOf(
"oldCode" to code,
"floor" to floor,
@@ -273,24 +252,6 @@ open class TruckLaneRenameService(
AND ${FLOOR_MATCH.replace("storeCol", "storeId")}
""".trimIndent()

private val DOPO_UPDATE_SQL = """
UPDATE delivery_order_pick_order
SET truckLanceCode = :newCode, version = version + 1
WHERE deleted = 0
AND ticketStatus IN ('pending', 'released')
AND TRIM(truckLanceCode) = :oldCode
AND ${FLOOR_MATCH.replace("storeCol", "storeId")}
""".trimIndent()

private val PICK_UPDATE_SQL = """
UPDATE do_pick_order
SET TruckLanceCode = :newCode, version = version + 1
WHERE deleted = 0
AND ticket_status IN ('pending', 'released')
AND TRIM(TruckLanceCode) = :oldCode
AND ${FLOOR_MATCH.replace("storeCol", "store_id")}
""".trimIndent()

private val OPEN_SCHEDULE_COUNT_SQL = """
SELECT COUNT(*) AS cnt
FROM truck_lane_schedule_line l


Зареждане…
Отказ
Запис