|
@@ -73,7 +73,6 @@ public class BusinessServiceImpl implements IBusinessService {
|
|
|
|
|
|
BaseLocationInfo locationFrom = null;
|
|
|
BaseLocationInfo locationTo = null;
|
|
|
-
|
|
|
//查询所属流程
|
|
|
FlowConfigHeaderVO flowConfigHeaderVO = flowConfigHeaderService.selectFlowConfigHeaderById(agvCallDTO.getId());
|
|
|
AsnSoStrategy asnSoStrategy = asnSoStrategyMapper.selectAsnSoStrategy();
|
|
@@ -81,15 +80,24 @@ public class BusinessServiceImpl implements IBusinessService {
|
|
|
log.info("-----------指令查询不到对应的流程:" + JSON.toJSONString(agvCallDTOList));
|
|
|
return AjaxResult.error("指令查询不到对应的流程");
|
|
|
}
|
|
|
- List<BaseLocationInfo> locationFromList = this.convertLocation(agvCallDTO.getLocationFrom(), agvCallDTO.getWarehouseId());
|
|
|
- List<BaseLocationInfo> locationToList = this.convertLocation(agvCallDTO.getLocationTo(), agvCallDTO.getWarehouseId());
|
|
|
+ String paramLocationFrom = agvCallDTO.getLocationFrom();
|
|
|
+ String paramLocationTo = agvCallDTO.getLocationTo();
|
|
|
+ if (StringUtils.isEmpty(paramLocationFrom)) {
|
|
|
+ paramLocationFrom = flowConfigHeaderVO.getLocationFrom();
|
|
|
+ }
|
|
|
+ if(StringUtils.isEmpty(paramLocationTo)) {
|
|
|
+ paramLocationTo = flowConfigHeaderVO.getLocationTo();
|
|
|
+ }
|
|
|
+
|
|
|
+ List<BaseLocationInfo> locationFromList = this.convertLocation(paramLocationFrom, agvCallDTO.getWarehouseId());
|
|
|
+ List<BaseLocationInfo> locationToList = this.convertLocation(paramLocationTo, agvCallDTO.getWarehouseId());
|
|
|
|
|
|
if (flowConfigHeaderVO.getFlowType().equals("ASN")) {
|
|
|
locationFrom = this.zoneLocationAllocation(locationFromList, "locationFrom", "ASN", asnSoStrategy, agvCallDTO);
|
|
|
locationTo = this.zoneLocationAllocation(locationToList, "locationTo", "ASN", asnSoStrategy, agvCallDTO);
|
|
|
//2.初始化库存
|
|
|
for (AgvCallDTO agvCall : agvCallDTOList) {
|
|
|
- invLotLocIdService.initInv(agvCallDTO.getLocationFrom(), agvCall.getSku(), Constant.CUSTOMER_ID, agvCall.getQty(), agvCall.getLotattDTO());
|
|
|
+ invLotLocIdService.initInv(locationFrom.getId().toString(), agvCall.getSku(), Constant.CUSTOMER_ID, agvCall.getQty(), agvCall.getLotattDTO());
|
|
|
}
|
|
|
} else if (flowConfigHeaderVO.getFlowType().equals("SO")) {
|
|
|
locationFrom = this.zoneLocationAllocation(locationFromList, "locationFrom", "SO", asnSoStrategy, agvCallDTO);
|