|
|
|
@ -76,23 +76,23 @@ public class YieldOrderCraftServiceImpl extends BaseServiceImpl<YieldOrderCraftM |
|
|
|
.eq(YieldOrderCraft::getYoId, yoId) |
|
|
|
.eq(YieldOrderCraft::getYoId, yoId) |
|
|
|
.eq(YieldOrderCraft::getIsDeleted, CommonConstant.DELETE_FALSE).orderByAsc(YieldOrderCraft::getProcessNo); |
|
|
|
.eq(YieldOrderCraft::getIsDeleted, CommonConstant.DELETE_FALSE).orderByAsc(YieldOrderCraft::getProcessNo); |
|
|
|
List<YieldOrderCraft> craftList = baseMapper.selectList(queryWrapper); |
|
|
|
List<YieldOrderCraft> craftList = baseMapper.selectList(queryWrapper); |
|
|
|
craftList.stream().forEach(item ->{ |
|
|
|
craftList.stream().forEach(item -> { |
|
|
|
BsProcessSetEntity processSet = processSetService.getById(item.getPpsId()); |
|
|
|
BsProcessSetEntity processSet = processSetService.getById(item.getPpsId()); |
|
|
|
if(processSet != null){ |
|
|
|
if (processSet != null) { |
|
|
|
item.setProcessCode(processSet.getCode()); |
|
|
|
item.setProcessCode(processSet.getCode()); |
|
|
|
item.setProcessName(processSet.getName()); |
|
|
|
item.setProcessName(processSet.getName()); |
|
|
|
} |
|
|
|
} |
|
|
|
if(item.getIsOutsource()){ |
|
|
|
if (item.getIsOutsource()) { |
|
|
|
if(null != item.getOcId()){ |
|
|
|
if (null != item.getOcId()) { |
|
|
|
Oem oem = oemService.getById(item.getOcId()); |
|
|
|
Oem oem = oemService.getById(item.getOcId()); |
|
|
|
if(null != oem){ |
|
|
|
if (null != oem) { |
|
|
|
item.setWorkCenterName(oem.getOcName()); |
|
|
|
item.setWorkCenterName(oem.getOcName()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
}else { |
|
|
|
} else { |
|
|
|
if(null != item.getWorkCenterId()){ |
|
|
|
if (null != item.getWorkCenterId()) { |
|
|
|
WorkCenter workCenter = workCenterService.getById(item.getWorkCenterId()); |
|
|
|
WorkCenter workCenter = workCenterService.getById(item.getWorkCenterId()); |
|
|
|
if(null != workCenter){ |
|
|
|
if (null != workCenter) { |
|
|
|
item.setWorkCenterName(workCenter.getWcName()); |
|
|
|
item.setWorkCenterName(workCenter.getWcName()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
@ -111,7 +111,7 @@ public class YieldOrderCraftServiceImpl extends BaseServiceImpl<YieldOrderCraftM |
|
|
|
public void automaticDispatch(List<YieldOrderCraft> yieldOrderCraftList, YieldOrder yieldOrder, Boolean factor, Boolean rxlSpace) throws Exception { |
|
|
|
public void automaticDispatch(List<YieldOrderCraft> yieldOrderCraftList, YieldOrder yieldOrder, Boolean factor, Boolean rxlSpace) throws Exception { |
|
|
|
// 组装key为工艺能力的作业计划map
|
|
|
|
// 组装key为工艺能力的作业计划map
|
|
|
|
Map<Long, List<YieldOrderCraft>> craftAbilityMap = yieldOrderCraftList.stream() |
|
|
|
Map<Long, List<YieldOrderCraft>> craftAbilityMap = yieldOrderCraftList.stream() |
|
|
|
.collect(Collectors.groupingBy(YieldOrderCraft::getCaId,LinkedHashMap::new,Collectors.toList())); |
|
|
|
.collect(Collectors.groupingBy(YieldOrderCraft::getCaId, LinkedHashMap::new, Collectors.toList())); |
|
|
|
//作业计划map工艺能力key集合
|
|
|
|
//作业计划map工艺能力key集合
|
|
|
|
Set<Long> craftKeys = craftAbilityMap.keySet(); |
|
|
|
Set<Long> craftKeys = craftAbilityMap.keySet(); |
|
|
|
//获取到认定的主工艺能力(默认第一个工艺能力为主工艺能力)
|
|
|
|
//获取到认定的主工艺能力(默认第一个工艺能力为主工艺能力)
|
|
|
|
@ -299,7 +299,7 @@ public class YieldOrderCraftServiceImpl extends BaseServiceImpl<YieldOrderCraftM |
|
|
|
throw new ServiceException("自动分派失败,未找到合适的班组或者供应商!"); |
|
|
|
throw new ServiceException("自动分派失败,未找到合适的班组或者供应商!"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if(workCenter != null){ |
|
|
|
if (workCenter != null) { |
|
|
|
yieldOrder.setWorkCenterId(workCenter.getId()); |
|
|
|
yieldOrder.setWorkCenterId(workCenter.getId()); |
|
|
|
yieldOrderMapper.updateById(yieldOrder); |
|
|
|
yieldOrderMapper.updateById(yieldOrder); |
|
|
|
} |
|
|
|
} |
|
|
|
@ -307,6 +307,35 @@ public class YieldOrderCraftServiceImpl extends BaseServiceImpl<YieldOrderCraftM |
|
|
|
this.saveOrUpdateBatch(dispatchCraftList); |
|
|
|
this.saveOrUpdateBatch(dispatchCraftList); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
|
|
public List<YieldOrderCraft> listByYoIdAndNo(Long id, String orders) { |
|
|
|
|
|
|
|
List<YieldOrderCraft> craftList = this.list(Wrappers.lambdaQuery(YieldOrderCraft.class).eq(YieldOrderCraft::getYoId, id) |
|
|
|
|
|
|
|
.gt(YieldOrderCraft::getProcessNo, orders).orderByAsc(YieldOrderCraft::getProcessNo)); |
|
|
|
|
|
|
|
craftList.forEach(item -> { |
|
|
|
|
|
|
|
BsProcessSetEntity processSet = processSetService.getById(item.getPpsId()); |
|
|
|
|
|
|
|
if (processSet != null) { |
|
|
|
|
|
|
|
item.setProcessCode(processSet.getCode()); |
|
|
|
|
|
|
|
item.setProcessName(processSet.getName()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (item.getIsOutsource()) { |
|
|
|
|
|
|
|
if (null != item.getOcId()) { |
|
|
|
|
|
|
|
Oem oem = oemService.getById(item.getOcId()); |
|
|
|
|
|
|
|
if (null != oem) { |
|
|
|
|
|
|
|
item.setWorkCenterName(oem.getOcName()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
if (null != item.getWorkCenterId()) { |
|
|
|
|
|
|
|
WorkCenter workCenter = workCenterService.getById(item.getWorkCenterId()); |
|
|
|
|
|
|
|
if (null != workCenter) { |
|
|
|
|
|
|
|
item.setWorkCenterName(workCenter.getWcName()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
return craftList; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* @param hostCaId 主工艺能力 |
|
|
|
* @param hostCaId 主工艺能力 |
|
|
|
* @param wcMap 拥有主工艺能力的作业中心 |
|
|
|
* @param wcMap 拥有主工艺能力的作业中心 |
|
|
|
@ -438,16 +467,16 @@ public class YieldOrderCraftServiceImpl extends BaseServiceImpl<YieldOrderCraftM |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
WorkCenter workCenter = null; |
|
|
|
WorkCenter workCenter = null; |
|
|
|
if(orderCraft.getCaId().equals(craftAbilityId)){ |
|
|
|
if (orderCraft.getCaId().equals(craftAbilityId)) { |
|
|
|
workCenter = workCenterMap.get(workCenterId); |
|
|
|
workCenter = workCenterMap.get(workCenterId); |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
workCenter = workCenterService.getOne(Wrappers.<WorkCenter>lambdaQuery().apply("INSTR(',' || CRAFT_ABILITY_ID || ',', ',' || {0} || ',') > 0", orderCraft.getCaId())); |
|
|
|
workCenter = workCenterService.getOne(Wrappers.<WorkCenter>lambdaQuery().apply("INSTR(',' || CRAFT_ABILITY_ID || ',', ',' || {0} || ',') > 0", orderCraft.getCaId())); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if(centerId != null){ |
|
|
|
if (centerId != null) { |
|
|
|
orderCraft.setWorkCenterId(centerId); |
|
|
|
orderCraft.setWorkCenterId(centerId); |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
if(workCenter == null){ |
|
|
|
if (workCenter == null) { |
|
|
|
throw new ServiceException("工艺" + orderCraft.getCaId() + "未查询到对应作业中心"); |
|
|
|
throw new ServiceException("工艺" + orderCraft.getCaId() + "未查询到对应作业中心"); |
|
|
|
} |
|
|
|
} |
|
|
|
orderCraft.setWorkCenterId(workCenter.getId()); |
|
|
|
orderCraft.setWorkCenterId(workCenter.getId()); |
|
|
|
|