fix(firstleg): enforce PDA task warehouse scope
This commit is contained in:
@@ -49,6 +49,7 @@ public interface LoadingPickTaskMapper extends BaseMapper<LoadingPickTaskEntity>
|
||||
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 booking.container_no = #{containerNo} AND booking.record_status = 'ACTIVE'
|
||||
AND booking.warehouse_id = #{warehouseId}
|
||||
AND task.task_status = 'LOADING'
|
||||
LIMIT 1
|
||||
""")
|
||||
@@ -58,12 +59,14 @@ public interface LoadingPickTaskMapper extends BaseMapper<LoadingPickTaskEntity>
|
||||
@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.record_status='ACTIVE' "
|
||||
+ "AND booking.warehouse_id=#{warehouseId} "
|
||||
+ "AND booking.cabinet_no=#{cabinetNo} 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 booking.record_status='ACTIVE' "
|
||||
+ "AND booking.warehouse_id=#{warehouseId} "
|
||||
+ "AND task.loading_plan_id=#{loadingPlanId} LIMIT 1")
|
||||
LoadingPickTaskEntity selectLoadingByPlan(@Param("loadingPlanId") long loadingPlanId, @Param("warehouseId") long warehouseId);
|
||||
|
||||
|
||||
+4
-1
@@ -15,10 +15,13 @@ class LoadingPickStableLookupContractTest {
|
||||
String legacy = LoadingPickTaskMapper.class.getMethod("selectLoadingByContainerAndAccount", String.class, long.class)
|
||||
.getAnnotation(Select.class).value()[0];
|
||||
assertThat(cabinet).contains("booking.cabinet_no=#{cabinetNo}", "booking.record_status='ACTIVE'")
|
||||
.contains("booking.warehouse_id=#{warehouseId}")
|
||||
.doesNotContain("task.container_no");
|
||||
assertThat(plan).contains("task.loading_plan_id=#{loadingPlanId}", "booking.record_status='ACTIVE'")
|
||||
.contains("booking.warehouse_id=#{warehouseId}")
|
||||
.doesNotContain("task.container_no");
|
||||
assertThat(legacy).contains("booking.container_no = #{containerNo}",
|
||||
"booking.record_status = 'ACTIVE'").doesNotContain("task.container_no =");
|
||||
"booking.record_status = 'ACTIVE'", "booking.warehouse_id = #{warehouseId}")
|
||||
.doesNotContain("task.container_no =");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user