From bac46a0f54a58e9501a7ecf5835d77b4655f9aa4 Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Wed, 12 Aug 2026 18:20:11 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8DPDA=E7=A8=B3=E5=AE=9A?= =?UTF-8?q?=E6=9F=9C=E6=AC=A1=E6=9F=A5=E8=AF=A2=E5=A5=91=E7=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PlatformLoadingPdaController.java | 4 +- .../mapper/LoadingPickTaskMapper.java | 10 +++++ .../repository/LoadingPickRepository.java | 6 +++ .../firstleg/service/LoadingPickService.java | 13 ++++++ .../main/resources/openapi/firstleg-v1.yaml | 7 +++ ...tformLoadingPdaControllerContractTest.java | 2 +- ...ormSmartLoadingControllerContractTest.java | 9 +++- .../LoadingPickStableLookupContractTest.java | 21 +++++++++ .../service/LoadingPickServiceTest.java | 44 +++++++++++++++++++ 9 files changed, 113 insertions(+), 3 deletions(-) create mode 100644 firstleg/src/test/java/com/baiyue/firstleg/repository/LoadingPickStableLookupContractTest.java diff --git a/firstleg/src/main/java/com/baiyue/firstleg/controller/PlatformLoadingPdaController.java b/firstleg/src/main/java/com/baiyue/firstleg/controller/PlatformLoadingPdaController.java index 056b9a958..872bbfdf1 100644 --- a/firstleg/src/main/java/com/baiyue/firstleg/controller/PlatformLoadingPdaController.java +++ b/firstleg/src/main/java/com/baiyue/firstleg/controller/PlatformLoadingPdaController.java @@ -46,9 +46,11 @@ public class PlatformLoadingPdaController { @PreAuthorize("hasAuthority('platform:firstleg:pda:view')") public ApiResponse task(@AuthenticationPrincipal AuthenticatedUser user, @RequestParam(required = false) String containerNo, + @RequestParam(required = false) String cabinetNo, + @RequestParam(required = false) Long loadingPlanId, @RequestParam @Positive long warehouseId) { FirstlegScopeGuard.platform(user); - return ApiResponse.success(service.task(containerNo, warehouseId)); + return ApiResponse.success(service.task(containerNo, cabinetNo, loadingPlanId, warehouseId)); } @GetMapping("/tasks/pending") diff --git a/firstleg/src/main/java/com/baiyue/firstleg/mapper/LoadingPickTaskMapper.java b/firstleg/src/main/java/com/baiyue/firstleg/mapper/LoadingPickTaskMapper.java index 391715a89..d41367757 100644 --- a/firstleg/src/main/java/com/baiyue/firstleg/mapper/LoadingPickTaskMapper.java +++ b/firstleg/src/main/java/com/baiyue/firstleg/mapper/LoadingPickTaskMapper.java @@ -31,6 +31,16 @@ public interface LoadingPickTaskMapper extends BaseMapper LoadingPickTaskEntity selectLoadingByContainerAndAccount(@Param("containerNo") String containerNo, @Param("warehouseId") long warehouseId); + @Select("SELECT task.* FROM fl_loading_pick_task task JOIN fl_loading_plan plan ON plan.id=task.loading_plan_id " + + "JOIN fl_container_booking booking ON booking.id=plan.container_booking_id " + + "WHERE task.task_status='LOADING' AND booking.cabinet_no=#{cabinetNo} AND booking.warehouse_id=#{warehouseId} LIMIT 1") + LoadingPickTaskEntity selectLoadingByCabinet(@Param("cabinetNo") String cabinetNo, @Param("warehouseId") long warehouseId); + + @Select("SELECT task.* FROM fl_loading_pick_task task JOIN fl_loading_plan plan ON plan.id=task.loading_plan_id " + + "JOIN fl_container_booking booking ON booking.id=plan.container_booking_id " + + "WHERE task.task_status='LOADING' AND task.loading_plan_id=#{loadingPlanId} AND booking.warehouse_id=#{warehouseId} LIMIT 1") + LoadingPickTaskEntity selectLoadingByPlan(@Param("loadingPlanId") long loadingPlanId, @Param("warehouseId") long warehouseId); + @Select("""