Эх сурвалжийг харах

Merge remote-tracking branch 'origin/dev_20260131' into dev_20260131_youshen430

donglang 1 сар өмнө
parent
commit
ca88663e1c

+ 26 - 26
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/controller/enterpriseApp/AppWayBillController.java

@@ -273,7 +273,7 @@ public class AppWayBillController {
     }
 
     /**
-     * 到达装货地点-手动推推送数据
+     * 过磅称重1 —— 手动推推送数据
      *
      * @param param
      * @return
@@ -285,31 +285,31 @@ public class AppWayBillController {
         return BaseResult.success();
     }
 
-    /**
-     * 已装货 -手动推推送数据
-     *
-     * @param param
-     * @return
-     */
-    @Operation(summary = "已装货", description = "已装货 -手动推推送数据")
-    @PostMapping("/loading")
-    public BaseResult loading(@RequestBody @Valid WaybillOrderLoadingParam param){
-        waybillOrderService.loading(param);
-        return BaseResult.success();
-    }
-
-    /**
-     * 离场过磅(计算毛重和净重)-手动推推送数据
-     *
-     * @param param
-     * @return
-     */
-    @Operation(summary = "离场过磅", description = "离场过磅(计算毛重和净重)-手动推推送数据")
-    @PostMapping("/leave")
-    public BaseResult leave(@RequestBody @Valid WaybillOrderLeaveMockParam param){
-        waybillOrderService.leave(param);
-        return BaseResult.success();
-    }
+//    /**
+//     * 已装货 -手动推推送数据
+//     *
+//     * @param param
+//     * @return
+//     */
+//    @Operation(summary = "已装货", description = "已装货 -手动推推送数据")
+//    @PostMapping("/loading")
+//    public BaseResult loading(@RequestBody @Valid WaybillOrderLoadingParam param){
+//        waybillOrderService.loading(param);
+//        return BaseResult.success();
+//    }
+
+//    /**
+//     * 离场过磅(计算毛重和净重)-手动推推送数据
+//     *
+//     * @param param
+//     * @return
+//     */
+//    @Operation(summary = "离场过磅", description = "离场过磅(计算毛重和净重)-手动推推送数据")
+//    @PostMapping("/leave")
+//    public BaseResult leave(@RequestBody @Valid WaybillOrderLeaveMockParam param){
+//        waybillOrderService.leave(param);
+//        return BaseResult.success();
+//    }
 
     /**
      * 空载离场

+ 2 - 2
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/handler/AbstractWaybillOrderHandler.java

@@ -125,7 +125,7 @@ public abstract class AbstractWaybillOrderHandler<T extends WaybillOrderProcessP
         if (param == null) {
             throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "参数不能为空");
         }
-        if (!(param instanceof WaybillOrderCancelParam)) {
+        if (!(param instanceof WaybillOrderCancelParam || param instanceof WaybillOrderCmeIntoWeighParam)) {
             if (StringUtils.isBlank(param.getLng()) || StringUtils.isBlank(param.getLat())) {
                 throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "未获取到定位,请重启app后再次操作");
             }
@@ -135,7 +135,7 @@ public abstract class AbstractWaybillOrderHandler<T extends WaybillOrderProcessP
             throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "运单ID不能为空");
         }
         // 过磅校验
-        if (param instanceof WaybillOrderCmeIntoWeighParam || param instanceof WaybillOrderLeaveMockParam) {
+        if (param instanceof WaybillOrderCmeIntoWeighParam) {
             if (param.getWeighbridgeId() == null || param.getWeighbridgeName() == null || param.getWeighUrl() == null) {
                 throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "地磅信息不能为空");
             }

+ 1 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtAcceptCarriageOrderService.java

@@ -3687,7 +3687,7 @@ public class KwtAcceptCarriageOrderService {
         kwtLogisticsOrder.setStartTime(Objects.isNull(orderDTO.getStartTime()) ?
                 null : DateUtil.localDateToLocalDateTimeStart(orderDTO.getStartTime()));
         kwtLogisticsOrder.setEndTime(Objects.isNull(orderDTO.getEndTime()) ?
-                null : orderDTO.getEndTime().atTime(LocalTime.MAX));
+                null : orderDTO.getEndTime().atTime(23, 59, 59));
         BigDecimal decimal = BigDecimal.ZERO ;
         kwtLogisticsOrder.setSubcontractAmount(decimal);
         kwtLogisticsOrder.setEntrustAmount(decimal);

+ 23 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/app/WaybillOrderService.java

@@ -1201,6 +1201,29 @@ public class WaybillOrderService {
      */
     @Transactional(rollbackFor = Exception.class)
     public void comeInto(WaybillOrderCmeIntoWeighParam param) {
+        if (StringUtils.isBlank(param.getTruckNo())){
+            throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "车牌号不能为空!");
+        }
+        if (param.getWeighAmount() == null) {
+            throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "称重重量不能为空!");
+        }
+        // 定义运单可以过磅的状态集合
+        List<Integer> FORBIDDEN_STATUSES = Arrays.asList(
+                CarWaybillV1Enum.PENDING_VEHICLE.getCode(),
+                CarWaybillV1Enum.REFUSE_TRAFFIC.getCode(),
+                CarWaybillV1Enum.EXIT_COMPLETED.getCode(),
+                CarWaybillV1Enum.EMPTY_WAIT_LEAVE.getCode(),
+                CarWaybillV1Enum.WAIT_LEAVE.getCode(),
+                CarWaybillV1Enum.UNLOADING.getCode(),
+                CarWaybillV1Enum.REPLENISHING.getCode(),
+                CarWaybillV1Enum.REPLENISH_FINISH.getCode()
+        );
+        List<KwtWaybillOrder> wbOrderByTruckNo = waybillOrderRepository.findWbOrderByTruckNoAndStatus(param.getTruckNo(), FORBIDDEN_STATUSES);
+        if (CollectionUtils.isEmpty(wbOrderByTruckNo) || wbOrderByTruckNo.size() > 1) {
+            throw new BusinessPlatfromException(ErrorCodeEnum.WAYBILL_ORDER_NOT_FOUND, "当前车辆没有可以称重过磅状态的运单");
+        }
+        param.setWaybillOrderId(wbOrderByTruckNo.get(0).getId());
+
         comeIntoHandler.handler(param);
     }