Bladeren bron

排程优化-退火合并优化

fangpy 7 maanden geleden
bovenliggende
commit
753fdc42b2

+ 5 - 3
rw-aps-server/src/main/java/com/rongwei/rwapsserver/aps/service/impl/ApsServiceImpl.java

@@ -1029,7 +1029,7 @@ public class ApsServiceImpl implements ApsService {
                 } else if (mergeprocess.getProcessType().equals("铸轧")) {
                     othermergeprocesses.add(mergeprocess);
                 } else {
-                    if("是".equals(mergeprocess.getIssubsection()) || mergeprocess.getIfLock()){
+                    if(("是".equals(mergeprocess.getIssubsection()) && mergeprocess.getNextProcesses() != null && mergeprocess.getNextProcesses().size()>0) || mergeprocess.getIfLock()){
                         othermergeprocesses.add(mergeprocess);
                     }else {
                         /*if(mergeprocess.getPreviousProcessesIds() == null || mergeprocess.getPreviousProcessesIds().size() == 0){
@@ -1086,7 +1086,8 @@ public class ApsServiceImpl implements ApsService {
             for (ProductionProcesses process : processes) {
                 if(!hasMerge.contains(process.getId())){
                     if(!process.getProcessType().equals("铸轧") && !process.getProcessType().equals("成退")
-                            && !process.getProcessType().equals("中退") && !process.getProcessType().equals("小卷成退") && !"是".equals(process.getIssubsection())
+                            && !process.getProcessType().equals("中退") && !process.getProcessType().equals("小卷成退")
+                            && (!"是".equals(process.getIssubsection()) || ("是".equals(process.getIssubsection()) && (process.getNextProcesses() == null || process.getNextProcesses().size() == 0)))
                             && !process.getIfLock() && process.getPreviousProcessesIds() != null && process.getPreviousProcessesIds().size()>0){
                         sypros.add(process);
                     }
@@ -1264,7 +1265,8 @@ public class ApsServiceImpl implements ApsService {
 //                    && nextProcesses.get(0).getPreviousProcessesIds() != null && nextProcesses.get(0).getPreviousProcessesIds().size()>0
             ){
                 // 分卷工序
-                if("是".equals(nextProcesses.get(0).getIssubsection()) || nextProcesses.get(0).getIfLock()){
+                if(("是".equals(nextProcesses.get(0).getIssubsection()) && nextProcesses.get(0).getNextProcesses() != null && nextProcesses.get(0).getNextProcesses().size()>0)
+                        || nextProcesses.get(0).getIfLock()){
                     for (ProductionProcesses nextProcess : nextProcesses) {
                         List<ProductionProcesses> pres = new ArrayList<>();
                         List<String> preids = new ArrayList<>();