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

update do sort by new warehouse order

master
CANCERYS\kw093 преди 2 седмици
родител
ревизия
edc5f7104d
променени са 1 файла, в които са добавени 38 реда и са изтрити 17 реда
  1. +38
    -17
      src/main/java/com/ffii/fpsms/modules/pickOrder/service/PickOrderService.kt

+ 38
- 17
src/main/java/com/ffii/fpsms/modules/pickOrder/service/PickOrderService.kt Целия файл

@@ -3941,19 +3941,27 @@ ORDER BY
// 按 router index 排序
allPickOrderLines.sortWith(compareBy(
{ line ->
val lots = line["lots"] as? List<Map<String, Any?>>
val firstLot = lots?.firstOrNull()
val router = firstLot?.get("router") as? Map<String, Any?>
val indexValue = router?.get("index")
// 修复:支持字符串和数字两种格式
when (indexValue) {
is Number -> indexValue.toInt()
is String -> indexValue.toIntOrNull() ?: 999999
else -> 999999
{ line ->
val lots = line["lots"] as? List<Map<String, Any?>>
val firstLot = lots?.firstOrNull()
val router = firstLot?.get("router") as? Map<String, Any?>
val indexValue = router?.get("index")
// 修复:支持字符串和数字两种格式,新格式为 "store_id-number" (如 "2F-004")
when (indexValue) {
is Number -> indexValue.toInt()
is String -> {
// 提取数字部分:格式为 "store_id-number",取 "-" 后的数字
val parts = indexValue.split("-")
if (parts.size > 1) {
parts.last().toIntOrNull() ?: 999999
} else {
indexValue.toIntOrNull() ?: 999999
}
}
else -> 999999
}
))
}
))
// 构建 FG 信息
val fgInfo = mapOf(
@@ -4298,13 +4306,26 @@ println("DEBUG sol polIds in linesResults: " + linesResults.mapNotNull { it["sto
}
// 合并到总列表
allPickOrderLines.sortWith(compareBy(
{ line ->
val lots = line["lots"] as? List<Map<String, Any?>>
val firstLot = lots?.firstOrNull()
val router = firstLot?.get("router") as? Map<String, Any?>
(router?.get("index") as? Number)?.toInt() ?: 999999
{ line ->
val lots = line["lots"] as? List<Map<String, Any?>>
val firstLot = lots?.firstOrNull()
val router = firstLot?.get("router") as? Map<String, Any?>
val indexValue = router?.get("index")
when (indexValue) {
is Number -> indexValue.toInt()
is String -> {
// 提取数字部分:格式为 "store_id-number",取 "-" 后的数字
val parts = indexValue.split("-")
if (parts.size > 1) {
parts.last().toIntOrNull() ?: 999999
} else {
indexValue.toIntOrNull() ?: 999999
}
}
))
else -> 999999
}
}
))
// 构建 FG 信息


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