|
@@ -1,6 +1,7 @@
|
|
|
package com.sckw.transport.handler;
|
|
package com.sckw.transport.handler;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.sckw.core.common.enums.enums.DictTypeEnum;
|
|
import com.sckw.core.common.enums.enums.DictTypeEnum;
|
|
|
import com.sckw.core.common.enums.enums.ErrorCodeEnum;
|
|
import com.sckw.core.common.enums.enums.ErrorCodeEnum;
|
|
|
import com.sckw.core.exception.BusinessPlatfromException;
|
|
import com.sckw.core.exception.BusinessPlatfromException;
|
|
@@ -9,12 +10,10 @@ import com.sckw.core.model.enums.ForkliftStatusEnum;
|
|
|
import com.sckw.core.model.enums.LoadingTypeEnum;
|
|
import com.sckw.core.model.enums.LoadingTypeEnum;
|
|
|
import com.sckw.core.utils.CollectionUtils;
|
|
import com.sckw.core.utils.CollectionUtils;
|
|
|
import com.sckw.fleet.api.model.vo.RTruckVo;
|
|
import com.sckw.fleet.api.model.vo.RTruckVo;
|
|
|
|
|
+import com.sckw.order.api.model.OrderUnitInfoDetailVO;
|
|
|
import com.sckw.product.api.model.KwpGoods;
|
|
import com.sckw.product.api.model.KwpGoods;
|
|
|
import com.sckw.system.api.model.dto.res.SysDictResDto;
|
|
import com.sckw.system.api.model.dto.res.SysDictResDto;
|
|
|
-import com.sckw.transport.model.KwtForkliftWaybillOrder;
|
|
|
|
|
-import com.sckw.transport.model.KwtLogisticsOrderGoods;
|
|
|
|
|
-import com.sckw.transport.model.KwtWaybillOrder;
|
|
|
|
|
-import com.sckw.transport.model.KwtWaybillOrderSubtask;
|
|
|
|
|
|
|
+import com.sckw.transport.model.*;
|
|
|
import com.sckw.transport.model.param.WaybillOrderReplenishParam;
|
|
import com.sckw.transport.model.param.WaybillOrderReplenishParam;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
@@ -57,10 +56,12 @@ public class ReplenishHandler extends AbstractWaybillOrderHandler<WaybillOrderRe
|
|
|
private void createForkliftWaybill(KwtWaybillOrder waybillOrder) {
|
|
private void createForkliftWaybill(KwtWaybillOrder waybillOrder) {
|
|
|
try {
|
|
try {
|
|
|
log.debug("开始异步保存铲车司机数据,运单ID:{}", waybillOrder.getId());
|
|
log.debug("开始异步保存铲车司机数据,运单ID:{}", waybillOrder.getId());
|
|
|
|
|
+ //企业id
|
|
|
|
|
+ Long entId = getEntId(waybillOrder);
|
|
|
|
|
|
|
|
KwtForkliftWaybillOrder forklift = new KwtForkliftWaybillOrder();
|
|
KwtForkliftWaybillOrder forklift = new KwtForkliftWaybillOrder();
|
|
|
forklift.setFOrderNo("F" + System.currentTimeMillis());
|
|
forklift.setFOrderNo("F" + System.currentTimeMillis());
|
|
|
- forklift.setEntId(waybillOrder.getEntId());
|
|
|
|
|
|
|
+ forklift.setEntId(entId);
|
|
|
forklift.setWOrderId(waybillOrder.getId());
|
|
forklift.setWOrderId(waybillOrder.getId());
|
|
|
forklift.setLOrderId(waybillOrder.getLOrderId());
|
|
forklift.setLOrderId(waybillOrder.getLOrderId());
|
|
|
|
|
|
|
@@ -103,6 +104,34 @@ public class ReplenishHandler extends AbstractWaybillOrderHandler<WaybillOrderRe
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 获取企业id
|
|
|
|
|
+ * @param waybillOrder
|
|
|
|
|
+ * @return
|
|
|
|
|
+ */
|
|
|
|
|
+ private Long getEntId(KwtWaybillOrder waybillOrder) {
|
|
|
|
|
+ log.info("[创建补货铲车]开始查询企业id,入参参数:{}", JSON.toJSONString(waybillOrder));
|
|
|
|
|
+ Long entId;
|
|
|
|
|
+ KwtLogisticsOrder logOrder = getLogisticsOrder(waybillOrder.getLOrderId());
|
|
|
|
|
+ KwtLogisticsOrderUnit kwtLogisticsOrderUnit = logisticsOrderUnitRepository.queryByLOrderIdAndUnitType(logOrder.getId(), 1);
|
|
|
|
|
+ if (kwtLogisticsOrderUnit == null) {
|
|
|
|
|
+ throw new BusinessPlatfromException(ErrorCodeEnum.LOGISTICS_ORDER_NOT_FOUND, "[接单]物流企业信息数据不存在");
|
|
|
|
|
+ }
|
|
|
|
|
+ // 原矿运输山上、上下门卫企业id
|
|
|
|
|
+ List<Long> mockEntIds = Arrays.asList(538039617157337089L, 538040297439891457L);
|
|
|
|
|
+ if (Objects.equals(1, logOrder.getOrderType()) && mockEntIds.contains(kwtLogisticsOrderUnit.getEntId())) {
|
|
|
|
|
+ entId = mockEntIds.get(0);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ List<OrderUnitInfoDetailVO> unitInfoDetailVOS = tradeOrderInfoService.queryOrderUnitByTradeOrderId(logOrder.getTOrderId());
|
|
|
|
|
+ OrderUnitInfoDetailVO unitInfoDetailVO = unitInfoDetailVOS.stream()
|
|
|
|
|
+ .filter(unit -> Objects.equals(unit.getUnitType(), "2"))
|
|
|
|
|
+ .findFirst().orElse(new OrderUnitInfoDetailVO());
|
|
|
|
|
+ entId = unitInfoDetailVO.getEntId();
|
|
|
|
|
+ }
|
|
|
|
|
+ log.info("[创建补货铲车]查询企业id完成,入参参数:{}", JSON.toJSONString(entId));
|
|
|
|
|
+ return entId;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
protected void calculateAutoDispatchScore(WaybillOrderReplenishParam param, KwtWaybillOrder waybillOrder) {
|
|
protected void calculateAutoDispatchScore(WaybillOrderReplenishParam param, KwtWaybillOrder waybillOrder) {
|
|
|
|
|
|