Browse Source

过磅流程优化

donglang 3 weeks ago
parent
commit
252f34e663

+ 1 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/app/GatekeeperOrderService.java

@@ -556,6 +556,7 @@ public class GatekeeperOrderService {
         StatisticsWaybillResp resp = new StatisticsWaybillResp();
         StatisticsWaybillResp resp = new StatisticsWaybillResp();
 
 
         LambdaQueryWrapper<KwtGatekeeperWaybillOrder> wrapper = Wrappers.<KwtGatekeeperWaybillOrder>lambdaQuery()
         LambdaQueryWrapper<KwtGatekeeperWaybillOrder> wrapper = Wrappers.<KwtGatekeeperWaybillOrder>lambdaQuery()
+                .eq(KwtGatekeeperWaybillOrder::getEntId, param.getEntId())
                 .orderByDesc(KwtGatekeeperWaybillOrder::getCreateTime);
                 .orderByDesc(KwtGatekeeperWaybillOrder::getCreateTime);
 
 
         //查询门卫订单
         //查询门卫订单

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

@@ -1614,6 +1614,19 @@ public class WaybillOrderService {
         if (param.getWeighAmount() == null) {
         if (param.getWeighAmount() == null) {
             throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "称重重量不能为空!");
             throw new BusinessPlatfromException(ErrorCodeEnum.PARAM_ERROR, "称重重量不能为空!");
         }
         }
+        // 1.装货过磅
+        comeIntoHandler(param);
+
+        // 2.卸货过磅
+        unloadingWeighHnadler(param);
+    }
+
+    /**
+     * 装货过磅
+     * @param param
+     */
+    private void comeIntoHandler(WaybillOrderCmeIntoWeighParam param) {
+
         // 定义运单可以过磅的状态集合
         // 定义运单可以过磅的状态集合
         List<Integer> FORBIDDEN_STATUSES = Arrays.asList(
         List<Integer> FORBIDDEN_STATUSES = Arrays.asList(
                 CarWaybillV1Enum.PENDING_VEHICLE.getCode(),
                 CarWaybillV1Enum.PENDING_VEHICLE.getCode(),
@@ -1633,6 +1646,32 @@ public class WaybillOrderService {
         comeIntoHandler.handler(param);
         comeIntoHandler.handler(param);
     }
     }
 
 
+    /**
+     * 卸货过磅
+     * @param param
+     */
+    private void unloadingWeighHnadler(WaybillOrderCmeIntoWeighParam param) {
+        WaybillOrderUnloadingWeighParam unloadingWeighParam = new WaybillOrderUnloadingWeighParam();
+        unloadingWeighParam.setTruckNo(param.getTruckNo());
+        unloadingWeighParam.setWeighAmount(param.getWeighAmount());
+        unloadingWeighParam.setWeighbridgeId(param.getWeighbridgeId());
+        unloadingWeighParam.setWeighbridgeName(param.getWeighbridgeName());
+        unloadingWeighParam.setWeighUrl(param.getWeighUrl());
+
+        // 定义运单可以卸货过磅的状态集合
+        List<Integer> FORBIDDEN_STATUSES = Arrays.asList(
+                CarWaybillV1Enum.WAIT_LOADING.getCode(),
+                CarWaybillV1Enum.UNLOADING_POINT.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, "当前车辆没有可以卸货过磅称重状态的运单");
+        }
+        unloadingWeighParam.setWaybillOrderId(wbOrderByTruckNo.get(0).getId());
+        unloadingWeighHandler.handler(unloadingWeighParam);
+    }
+
+
     /**
     /**
      * 已装货 -手动推推送数据
      * 已装货 -手动推推送数据
      * @param param
      * @param param