|
|
@@ -10,6 +10,7 @@ import com.sckw.core.common.enums.enums.DictTypeEnum;
|
|
|
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.LoadingTypeEnum;
|
|
|
import com.sckw.core.utils.CollectionUtils;
|
|
|
@@ -663,11 +664,54 @@ public class ForkliftOrderService {
|
|
|
forkliftWaybillOrder.setForkliftAcceptTime(new Date());
|
|
|
forkliftWaybillOrderRepository.updateById(forkliftWaybillOrder);
|
|
|
|
|
|
+ //修改司机状态
|
|
|
+ updateWaybillOrder(forkliftWaybillOrder);
|
|
|
+
|
|
|
// 创建司机日志记录
|
|
|
creatWaybillOrderNode(param, forkliftWaybillOrder);
|
|
|
log.info("铲车接单成功,订单ID:{}", forkliftWaybillOrder.getWOrderId());
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 修改司机状态
|
|
|
+ * @param forkliftWaybillOrder
|
|
|
+ */
|
|
|
+ private void updateWaybillOrder(KwtForkliftWaybillOrder forkliftWaybillOrder) {
|
|
|
+ // 修改运单状态
|
|
|
+ updateWaybillStatus(forkliftWaybillOrder);
|
|
|
+
|
|
|
+ // 修改子运单状态
|
|
|
+ updateWaybillSubtaskStatus(forkliftWaybillOrder);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 修改运单状态
|
|
|
+ * @param forkliftWaybillOrder
|
|
|
+ */
|
|
|
+ private void updateWaybillStatus(KwtForkliftWaybillOrder forkliftWaybillOrder) {
|
|
|
+ KwtWaybillOrder waybillOrder = waybillOrderRepository.getById(forkliftWaybillOrder.getWOrderId());
|
|
|
+ if (waybillOrder == null) {
|
|
|
+ throw new BusinessPlatfromException(ErrorCodeEnum.FORKLIFT_ORDER_NOT_FOUND, "当前运单数据不存在!");
|
|
|
+ }
|
|
|
+
|
|
|
+ waybillOrder.setStatus(CarWaybillV1Enum.REFUSE_TRAFFIC.getCode());
|
|
|
+ waybillOrderRepository.updateById(waybillOrder);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 修改子运单状态
|
|
|
+ * @param forkliftWaybillOrder
|
|
|
+ */
|
|
|
+ private void updateWaybillSubtaskStatus(KwtForkliftWaybillOrder forkliftWaybillOrder) {
|
|
|
+ KwtWaybillOrderSubtask waybillSubtask = waybillOrderSubtaskRepository.queryByWOrderId(forkliftWaybillOrder.getWOrderId());
|
|
|
+ if (waybillSubtask == null) {
|
|
|
+ throw new BusinessPlatfromException(ErrorCodeEnum.WAYBILL_ORDER_SUB_NOT_FOUND, "未找到关联的子运单!");
|
|
|
+ }
|
|
|
+ waybillSubtask.setStatus(CarWaybillV1Enum.REFUSE_TRAFFIC.getCode());
|
|
|
+ waybillOrderSubtaskRepository.updateById(waybillSubtask);
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 创建日子轨迹记录
|
|
|
* @param param
|