|
@@ -286,10 +286,10 @@ public class ComeIntoHandler extends AbstractWaybillOrderHandler<WaybillOrderCme
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 1. 铲车司机接单
|
|
// 1. 铲车司机接单
|
|
|
- createForkliftWaybillOrder(forkliftWaybillOrder);
|
|
|
|
|
|
|
+ createForkliftWaybillOrder(waybillOrder, forkliftWaybillOrder);
|
|
|
|
|
|
|
|
// 2. 铲车司机完成装载
|
|
// 2. 铲车司机完成装载
|
|
|
- loadingCompleted(forkliftWaybillOrder);
|
|
|
|
|
|
|
+ loadingCompleted(waybillOrder, forkliftWaybillOrder);
|
|
|
|
|
|
|
|
waybillOrder.setIsAutoCompleteLoading(Boolean.TRUE);
|
|
waybillOrder.setIsAutoCompleteLoading(Boolean.TRUE);
|
|
|
}
|
|
}
|
|
@@ -298,7 +298,7 @@ public class ComeIntoHandler extends AbstractWaybillOrderHandler<WaybillOrderCme
|
|
|
* 铲车司机接单
|
|
* 铲车司机接单
|
|
|
* @param forkliftWaybillOrder
|
|
* @param forkliftWaybillOrder
|
|
|
*/
|
|
*/
|
|
|
- public void createForkliftWaybillOrder(KwtForkliftWaybillOrder forkliftWaybillOrder) {
|
|
|
|
|
|
|
+ public void createForkliftWaybillOrder(KwtWaybillOrder waybillOrder, KwtForkliftWaybillOrder forkliftWaybillOrder) {
|
|
|
log.info("[自动接单]铲车订单接单,铲车订单id:{}", JSON.toJSONString(forkliftWaybillOrder.getId()));
|
|
log.info("[自动接单]铲车订单接单,铲车订单id:{}", JSON.toJSONString(forkliftWaybillOrder.getId()));
|
|
|
if (!ForkliftStatusEnum.PENDING_ORDERS.getCode().equals(forkliftWaybillOrder.getStatus())) {
|
|
if (!ForkliftStatusEnum.PENDING_ORDERS.getCode().equals(forkliftWaybillOrder.getStatus())) {
|
|
|
throw new BusinessPlatfromException(ErrorCodeEnum.FORKLIFT_ORDER_STATUS_ERROR, "当前铲车订单状态异常,不能接单!");
|
|
throw new BusinessPlatfromException(ErrorCodeEnum.FORKLIFT_ORDER_STATUS_ERROR, "当前铲车订单状态异常,不能接单!");
|
|
@@ -306,33 +306,24 @@ public class ComeIntoHandler extends AbstractWaybillOrderHandler<WaybillOrderCme
|
|
|
|
|
|
|
|
forkliftWaybillOrder.setStatus(ForkliftStatusEnum.ORDER_TAKING.getCode());
|
|
forkliftWaybillOrder.setStatus(ForkliftStatusEnum.ORDER_TAKING.getCode());
|
|
|
forkliftWaybillOrder.setDriverId(defaultDriverId);
|
|
forkliftWaybillOrder.setDriverId(defaultDriverId);
|
|
|
- forkliftWaybillOrder.setDriverPhone(defaultDriverName);
|
|
|
|
|
- forkliftWaybillOrder.setDriverName(defaultDriverPhone);
|
|
|
|
|
|
|
+ forkliftWaybillOrder.setDriverPhone(defaultDriverPhone);
|
|
|
|
|
+ forkliftWaybillOrder.setDriverName(defaultDriverName);
|
|
|
forkliftWaybillOrder.setForkliftAcceptTime(new Date());
|
|
forkliftWaybillOrder.setForkliftAcceptTime(new Date());
|
|
|
forkliftWaybillOrderRepository.updateById(forkliftWaybillOrder);
|
|
forkliftWaybillOrderRepository.updateById(forkliftWaybillOrder);
|
|
|
|
|
|
|
|
- log.info("[自动接单]铲车接单成功,铲车订单ID:{}", forkliftWaybillOrder.getWOrderId());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- /**
|
|
|
|
|
- * 修改司机状态
|
|
|
|
|
- * @param forkliftWaybillOrder
|
|
|
|
|
- */
|
|
|
|
|
- private void updateWaybillOrder(KwtForkliftWaybillOrder forkliftWaybillOrder, CarWaybillV1Enum waybillV1Enum) {
|
|
|
|
|
- // 修改运单状态
|
|
|
|
|
- updateWaybillStatus(forkliftWaybillOrder, waybillV1Enum);
|
|
|
|
|
|
|
+ // 创建自动节点铲车节点轨迹
|
|
|
|
|
+ String remark = "装载员[" + defaultDriverName + "]已接单,装载单号[" + forkliftWaybillOrder.getFOrderNo() + "]";
|
|
|
|
|
+ creatWaybillOrderNode(waybillOrder, forkliftWaybillOrder, CarWaybillV1Enum.REFUSE_TRAFFIC, remark);
|
|
|
|
|
|
|
|
- // 修改子运单状态
|
|
|
|
|
- updateWaybillSubtaskStatus(forkliftWaybillOrder, waybillV1Enum);
|
|
|
|
|
|
|
+ log.info("[自动接单]铲车接单成功,铲车订单ID:{}", forkliftWaybillOrder.getWOrderId());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
/**
|
|
/**
|
|
|
* 装载完成
|
|
* 装载完成
|
|
|
* @param forkliftWaybillOrder
|
|
* @param forkliftWaybillOrder
|
|
|
* @return
|
|
* @return
|
|
|
*/
|
|
*/
|
|
|
- public void loadingCompleted(KwtForkliftWaybillOrder forkliftWaybillOrder) {
|
|
|
|
|
|
|
+ public void loadingCompleted(KwtWaybillOrder waybillOrder, KwtForkliftWaybillOrder forkliftWaybillOrder) {
|
|
|
log.info("[自动接单]铲车司机装载完成, 铲车订单id:{}", JSON.toJSONString(forkliftWaybillOrder.getId()));
|
|
log.info("[自动接单]铲车司机装载完成, 铲车订单id:{}", JSON.toJSONString(forkliftWaybillOrder.getId()));
|
|
|
if (!ForkliftStatusEnum.ORDER_TAKING.getCode().equals(forkliftWaybillOrder.getStatus())) {
|
|
if (!ForkliftStatusEnum.ORDER_TAKING.getCode().equals(forkliftWaybillOrder.getStatus())) {
|
|
|
throw new BusinessPlatfromException(ErrorCodeEnum.FORKLIFT_ORDER_STATUS_ERROR, "当前铲车订单状态异常,不能装载完成!");
|
|
throw new BusinessPlatfromException(ErrorCodeEnum.FORKLIFT_ORDER_STATUS_ERROR, "当前铲车订单状态异常,不能装载完成!");
|
|
@@ -344,9 +335,25 @@ public class ComeIntoHandler extends AbstractWaybillOrderHandler<WaybillOrderCme
|
|
|
|
|
|
|
|
//更新司机运单状态:已装货
|
|
//更新司机运单状态:已装货
|
|
|
updateWaybillOrder(forkliftWaybillOrder, CarWaybillV1Enum.EXIT_COMPLETED);
|
|
updateWaybillOrder(forkliftWaybillOrder, CarWaybillV1Enum.EXIT_COMPLETED);
|
|
|
|
|
+
|
|
|
|
|
+ //创建自动装载完成节点轨迹
|
|
|
|
|
+ String remark = "装载员[" + forkliftWaybillOrder.getDriverName() + "]已完成装载,装载单号[" + forkliftWaybillOrder.getFOrderNo() + "]";
|
|
|
|
|
+ creatWaybillOrderNode(waybillOrder, forkliftWaybillOrder, CarWaybillV1Enum.EXIT_COMPLETED, remark);
|
|
|
log.info("[自动接单]铲车装载成功,铲车订单ID:{}", forkliftWaybillOrder.getWOrderId());
|
|
log.info("[自动接单]铲车装载成功,铲车订单ID:{}", forkliftWaybillOrder.getWOrderId());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 修改司机状态
|
|
|
|
|
+ * @param forkliftWaybillOrder
|
|
|
|
|
+ */
|
|
|
|
|
+ private void updateWaybillOrder(KwtForkliftWaybillOrder forkliftWaybillOrder, CarWaybillV1Enum waybillV1Enum) {
|
|
|
|
|
+ // 修改运单状态
|
|
|
|
|
+ updateWaybillStatus(forkliftWaybillOrder, waybillV1Enum);
|
|
|
|
|
+
|
|
|
|
|
+ // 修改子运单状态
|
|
|
|
|
+ updateWaybillSubtaskStatus(forkliftWaybillOrder, waybillV1Enum);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 修改运单状态
|
|
* 修改运单状态
|
|
@@ -375,6 +382,31 @@ public class ComeIntoHandler extends AbstractWaybillOrderHandler<WaybillOrderCme
|
|
|
waybillOrderSubtaskRepository.updateById(waybillSubtask);
|
|
waybillOrderSubtaskRepository.updateById(waybillSubtask);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 创建日子轨迹记录
|
|
|
|
|
+ * @param forkliftWaybillOrder
|
|
|
|
|
+ * @return
|
|
|
|
|
+ */
|
|
|
|
|
+ public void creatWaybillOrderNode(KwtWaybillOrder waybillOrder, KwtForkliftWaybillOrder forkliftWaybillOrder,
|
|
|
|
|
+ CarWaybillV1Enum CarWaybillV1Enum, String remark) {
|
|
|
|
|
+ log.info("[自动接单]铲车接单-节点轨迹入参参数:{}", JSON.toJSONString(forkliftWaybillOrder));
|
|
|
|
|
+ // 查询子运单
|
|
|
|
|
+ KwtWaybillOrderSubtask subtask = waybillOrderSubtaskRepository.queryByWOrderId(waybillOrder.getId());
|
|
|
|
|
+ if (subtask == null) {
|
|
|
|
|
+ throw new BusinessPlatfromException(ErrorCodeEnum.WAYBILL_ORDER_SUB_NOT_FOUND, "未找到关联的子运单!");
|
|
|
|
|
+ }
|
|
|
|
|
+ KwtWaybillOrderNode node = new KwtWaybillOrderNode();
|
|
|
|
|
+ node.setWOrderId(forkliftWaybillOrder.getWOrderId());
|
|
|
|
|
+ node.setWSubtaskId(subtask.getId());
|
|
|
|
|
+ node.setOrderStatus(CarWaybillV1Enum.getCode());
|
|
|
|
|
+ node.setTruckNo(waybillOrder.getTruckNo());
|
|
|
|
|
+ node.setTruckId(waybillOrder.getTruckId());
|
|
|
|
|
+ node.setDriverId(waybillOrder.getDriverId());
|
|
|
|
|
+ node.setDriverName(waybillOrder.getDriverName());
|
|
|
|
|
+ node.setRemark(remark);
|
|
|
|
|
+ waybillOrderNodeRepository.save(node);
|
|
|
|
|
+ log.info("[[自动接单]铲车接单记录节点轨迹成功,节点ID:{}", node.getId());
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 第二次过磅逻辑
|
|
* 第二次过磅逻辑
|