From ebfe0481d488d775a4c93ea046a8fd20ce2cd89f Mon Sep 17 00:00:00 2001 From: "vluk@2fi-solutions.com.hk" Date: Sat, 4 Apr 2026 21:58:36 +0800 Subject: [PATCH] fix the 1000 consoCode and code --- .../pickOrder/entity/PickOrderRepository.kt | 29 ++++++++++++++----- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/ffii/fpsms/modules/pickOrder/entity/PickOrderRepository.kt b/src/main/java/com/ffii/fpsms/modules/pickOrder/entity/PickOrderRepository.kt index 9a36c6d..b713061 100644 --- a/src/main/java/com/ffii/fpsms/modules/pickOrder/entity/PickOrderRepository.kt +++ b/src/main/java/com/ffii/fpsms/modules/pickOrder/entity/PickOrderRepository.kt @@ -45,14 +45,27 @@ interface PickOrderRepository : AbstractRepository { pageable: Pageable, ): Page - @Query(""" - select po.consoCode from PickOrder po where po.consoCode like :prefix% order by po.consoCode desc limit 1 - """) - fun findLatestConsoCodeByPrefix(prefix: String): String? - @Query(""" - select po.code from PickOrder po where po.code like :prefix% order by po.code desc limit 1 - """) - fun findLatestCodeByPrefix(prefix: String): String? + @Query( + """ + SELECT po.consoCode FROM pick_order po + WHERE po.consoCode LIKE CONCAT(:prefix, '%') + ORDER BY CAST(SUBSTRING_INDEX(po.consoCode, '-', -1) AS UNSIGNED) DESC + LIMIT 1 + """, + nativeQuery = true, + ) + fun findLatestConsoCodeByPrefix(@Param("prefix") prefix: String): String? + + @Query( + """ + SELECT po.code FROM pick_order po + WHERE po.code LIKE CONCAT(:prefix, '%') + ORDER BY CAST(SUBSTRING_INDEX(po.code, '-', -1) AS UNSIGNED) DESC + LIMIT 1 + """, + nativeQuery = true, + ) + fun findLatestCodeByPrefix(@Param("prefix") prefix: String): String? fun findAllByIdInAndStatus(id: List, status: PickOrderStatus): List fun findAllByIdInAndConsoCodeIsNullAndStatus(id: List, status: PickOrderStatus): List