Procházet zdrojové kódy

655称重过磅轨优化

donglang před 5 dny
rodič
revize
1f3696b56b

+ 9 - 6
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/app/GatekeeperOrderService.java

@@ -13,6 +13,7 @@ import com.sckw.core.common.enums.enums.ErrorCodeEnum;
 import com.sckw.core.exception.BusinessPlatfromException;
 import com.sckw.core.model.constant.Global;
 import com.sckw.core.model.enums.CarWaybillV1Enum;
+import com.sckw.core.model.enums.ForkliftStatusEnum;
 import com.sckw.core.model.enums.GatekeeperStatusEnum;
 import com.sckw.core.model.enums.GatekeeperTypeEnum;
 import com.sckw.core.utils.CollectionUtils;
@@ -31,10 +32,7 @@ import com.sckw.system.api.model.dto.res.KwsUserResDto;
 import com.sckw.transport.model.*;
 import com.sckw.transport.model.enuma.WeighbridgeTypeEnum;
 import com.sckw.transport.model.param.forklift.reponse.GatekeeperOrderResp;
-import com.sckw.transport.model.param.forklift.request.GatekeeperOrderIsPassParam;
-import com.sckw.transport.model.param.forklift.request.GatekeeperOrderPassParam;
-import com.sckw.transport.model.param.forklift.request.GatekeeperOrderPassReasonParam;
-import com.sckw.transport.model.param.forklift.request.GatekeeperOrderQueryParam;
+import com.sckw.transport.model.param.forklift.request.*;
 import com.sckw.transport.model.vo.StatisticsWaybillResp;
 import com.sckw.transport.repository.*;
 import lombok.RequiredArgsConstructor;
@@ -66,7 +64,7 @@ public class GatekeeperOrderService {
 
 
     private final KwtGatekeeperWaybillOrderRepository gatekeeperWaybillOrderRepository;
-
+    private final KwtForkliftWaybillOrderRepository forkliftWaybillOrderRepository;
     private final KwtWaybillOrderRepository waybillOrderRepository;
     private final KwtWaybillOrderSubtaskRepository waybillOrderSubtaskRepository;
     private final KwtWaybillOrderTicketRepository waybillOrderTicketRepository;
@@ -1259,7 +1257,12 @@ public class GatekeeperOrderService {
             }
             KwtGatekeeperWaybillOrder gatekeeperWaybillOrder = gatekeeperWaybillOrders.get(0);
 
-            // 定义运单可以可放行的状态集合
+            //不考虑司机还在榜上未抬杆,铲车司机就接单情况
+            KwtForkliftWaybillOrder forklift = forkliftWaybillOrderRepository.queryForkliftWaybillOrderByWOrderId(waybillOrder.getId());
+            if (forklift != null && !Objects.equals(forklift.getStatus(), ForkliftStatusEnum.COMPLETED.getCode())) {
+                return Boolean.FALSE;
+            }
+
             Boolean result = Objects.equals(gatekeeperWaybillOrder.getStatus(), GatekeeperStatusEnum.IN_YARD.getCode()) ? Boolean.TRUE : Boolean.FALSE;
             log.info("后续过磅,校验出场是否可放行完成,抬杆结果:{}, 运单:{}", JSON.toJSONString(result), JSON.toJSONString(waybillOrder));
             return result;