|
@@ -809,50 +809,54 @@ public class DdApsServiceImpl implements DdApsService {
|
|
|
}
|
|
|
}
|
|
|
}else{
|
|
|
- getLzBzSeries(rootPro,lzbzMerges,null,null,null,hasMid);
|
|
|
+ getLzBzSeries(rootPro,lzbzMerges,null,null,null,null,hasMid);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
private void getLzBzSeries(ProductionProcesses rootPro,Map<String,List<ProductionProcesses>> lzbzMerges
|
|
|
- ,String seriesKey,String protype,List<String> commonEqus,List<String> hasMid){
|
|
|
+ ,String seriesKey,String protype,List<String> commonEqus,Map<String, String> commonEquGs,List<String> hasMid){
|
|
|
if(!hasMid.contains(rootPro.getId())){
|
|
|
hasMid.add(rootPro.getId());
|
|
|
List<ProductionProcesses> nextProcesses = rootPro.getNextProcesses();
|
|
|
// 冷轧或箔轧前后辊不一样不能合并
|
|
|
- boolean issameg = true;
|
|
|
+ /*boolean issameg = true;
|
|
|
if(nextProcesses != null && nextProcesses.size()>0){
|
|
|
if(rootPro.getProZg() != null && nextProcesses.get(0).getProZg() != null){
|
|
|
if(rootPro.getProZg().equals(nextProcesses.get(0).getProZg())){
|
|
|
issameg = false;
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
+ }*/
|
|
|
// 判断是否可合并
|
|
|
boolean notMerge = true;
|
|
|
// 后端工序只有一个,前道工序有多个不能合并
|
|
|
- if(nextProcesses != null && nextProcesses.size()>0){
|
|
|
- if(nextProcesses.size() == 1 && nextProcesses.get(0).getPreviousProcesses().size()>1){
|
|
|
+ if(rootPro.getPreviousProcesses() != null && rootPro.getPreviousProcesses().size()>0){
|
|
|
+ if(rootPro.getPreviousProcesses().size()>1){
|
|
|
notMerge = false;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if("否".equals(rootPro.getIssubsection()) && ("冷轧".equals(rootPro.getProcessType()) || "箔轧".equals(rootPro.getProcessType()))
|
|
|
- && !rootPro.getIfLock() && issameg && notMerge){
|
|
|
+ && !rootPro.getIfLock()){
|
|
|
// 是否连续冷轧、箔轧
|
|
|
boolean hasSeries = false;
|
|
|
if(StrUtil.isNotBlank(seriesKey) && StrUtil.isNotBlank(protype) && protype.equals(rootPro.getProcessType())
|
|
|
- && (rootPro.getMinWaitTime() == null || rootPro.getMinWaitTime()<=0)){
|
|
|
+ && (rootPro.getMinWaitTime() == null || rootPro.getMinWaitTime()<=0) && notMerge){
|
|
|
if(commonEqus != null && commonEqus.size()>0){
|
|
|
List<String> commonEqusNext = new ArrayList<>();
|
|
|
+ Map<String,String> commonEquGsNext = new HashMap<>();
|
|
|
for (String optionalEquipment : rootPro.getOptionalEquipments()) {
|
|
|
- if(commonEqus.contains(optionalEquipment)){
|
|
|
+ if(commonEqus.contains(optionalEquipment)
|
|
|
+ && commonEquGs.get(optionalEquipment).equals(rootPro.getOptionalEquipmentZg().get(optionalEquipment))){
|
|
|
commonEqusNext.add(optionalEquipment);
|
|
|
+ commonEquGsNext.put(optionalEquipment,commonEquGs.get(optionalEquipment));
|
|
|
}
|
|
|
}
|
|
|
if(commonEqusNext != null && commonEqusNext.size()>0){
|
|
|
hasSeries = true;
|
|
|
lzbzMerges.get(seriesKey).add(rootPro);
|
|
|
commonEqus = commonEqusNext;
|
|
|
+ commonEquGs = commonEquGsNext;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -865,19 +869,22 @@ public class DdApsServiceImpl implements DdApsService {
|
|
|
// 上下道工序共用的可选设备
|
|
|
commonEqus = new ArrayList<>();
|
|
|
commonEqus.addAll(rootPro.getOptionalEquipments());
|
|
|
+ // 共用辊
|
|
|
+ commonEquGs = new HashMap<>();
|
|
|
+ commonEquGs.putAll(rootPro.getOptionalEquipmentZg());
|
|
|
}
|
|
|
for (ProductionProcesses nextProcess : nextProcesses) {
|
|
|
if(hasSeries){
|
|
|
- getLzBzSeries(nextProcess,lzbzMerges,seriesKey,rootPro.getProcessType(),commonEqus,hasMid);
|
|
|
+ getLzBzSeries(nextProcess,lzbzMerges,seriesKey,rootPro.getProcessType(),commonEqus,commonEquGs,hasMid);
|
|
|
}else{
|
|
|
- getLzBzSeries(nextProcess,lzbzMerges,rootPro.getId(),rootPro.getProcessType(),commonEqus,hasMid);
|
|
|
+ getLzBzSeries(nextProcess,lzbzMerges,rootPro.getId(),rootPro.getProcessType(),commonEqus,commonEquGs,hasMid);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}else{
|
|
|
if(nextProcesses != null && nextProcesses.size()>0){
|
|
|
for (ProductionProcesses nextProcess : nextProcesses) {
|
|
|
- getLzBzSeries(nextProcess,lzbzMerges,null,null,null,hasMid);
|
|
|
+ getLzBzSeries(nextProcess,lzbzMerges,null,null,null,null,hasMid);
|
|
|
}
|
|
|
}
|
|
|
}
|