|
@@ -1656,10 +1656,12 @@ public class ApsServiceImpl implements ApsService {
|
|
|
&& !nextProcesses.get(0).getProcessType().equals("中退") && !nextProcesses.get(0).getProcessType().equals("小卷成退")
|
|
|
// && nextProcesses.get(0).getPreviousProcessesIds() != null && nextProcesses.get(0).getPreviousProcessesIds().size()>0
|
|
|
){
|
|
|
+ // 判断是否存在锁定工序
|
|
|
+ List<ProductionProcesses> lockpps = nextProcesses.stream().filter(v -> v.getIfLock()).collect(Collectors.toList());
|
|
|
// 分卷工序
|
|
|
if(("是".equals(nextProcesses.get(0).getIssubsection()) && nextProcesses.get(0).getNextProcesses() != null && nextProcesses.get(0).getNextProcesses().size()>0
|
|
|
&& !nextProcesses.get(0).getNextProcesses().get(0).getProcessType().equals("小卷成退"))
|
|
|
- || nextProcesses.get(0).getIfLock()){
|
|
|
+ || (lockpps != null && lockpps.size()>0)){
|
|
|
for (ProductionProcesses nextProcess : nextProcesses) {
|
|
|
List<ProductionProcesses> pres = new ArrayList<>();
|
|
|
List<String> preids = new ArrayList<>();
|
|
@@ -1679,6 +1681,15 @@ public class ApsServiceImpl implements ApsService {
|
|
|
hasMerge.addAll(proids);
|
|
|
}
|
|
|
}
|
|
|
+ // 判断合并后待排程的列表是否存在当前作业明细,不存在则新增
|
|
|
+ if(nextProcesses != null && nextProcesses.size()>0){
|
|
|
+ for (ProductionProcesses nextProcess : nextProcesses) {
|
|
|
+ List<ProductionProcesses> pps = mergeprocesses.stream().filter(v -> v.getId().equals(nextProcess.getId())).collect(Collectors.toList());
|
|
|
+ if(pps == null || pps.size() == 0){
|
|
|
+ mergeprocesses.add(nextProcess);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}else{
|
|
|
List<ProductionProcesses> mergePres = new ArrayList<>();
|
|
|
mergePres.addAll(nextProcesses);
|
|
@@ -1760,12 +1771,18 @@ public class ApsServiceImpl implements ApsService {
|
|
|
private void thPreProMerge(ProductionProcesses thps,List<ProductionProcesses> notMergeProces,List<ProductionProcesses> mergeprocesses
|
|
|
,Map<String,List<ProductionProcesses>> bsProceses,List<String> hasMerge,Map<String,ProductionProcesses> allProMap,List<ProductionProcesses> thNexts){
|
|
|
List<ProductionProcesses> previousProcesses = thps.getPreviousProcesses();
|
|
|
+
|
|
|
+ List<ProductionProcesses> pretestids = previousProcesses.stream().filter(v -> v.getId().equals("f24555b13a0349938e9fd72814c66199")).collect(Collectors.toList());
|
|
|
+ if(pretestids != null && pretestids.size()>0){
|
|
|
+ int a = 1;
|
|
|
+ }
|
|
|
if(previousProcesses != null && previousProcesses.size()>0){
|
|
|
// 铸轧、退火、和第一道工序不合并
|
|
|
if(!previousProcesses.get(0).getProcessType().equals("铸轧") && !previousProcesses.get(0).getProcessType().equals("成退")
|
|
|
&& !previousProcesses.get(0).getProcessType().equals("中退") && !previousProcesses.get(0).getProcessType().equals("小卷成退")
|
|
|
// && previousProcesses.get(0).getPreviousProcessesIds() != null && previousProcesses.get(0).getPreviousProcessesIds().size()>0
|
|
|
){
|
|
|
+ //判断是否存在小卷成退其它的工序
|
|
|
boolean hasnotxjct = false;
|
|
|
if(previousProcesses.get(0).getNextProcesses() != null && previousProcesses.get(0).getNextProcesses().size()>0){
|
|
|
for (ProductionProcesses nextProcess : previousProcesses.get(0).getNextProcesses()) {
|
|
@@ -1775,8 +1792,10 @@ public class ApsServiceImpl implements ApsService {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ // 判断是否存在锁定工序
|
|
|
+ List<ProductionProcesses> lockpps = previousProcesses.stream().filter(v -> v.getIfLock()).collect(Collectors.toList());
|
|
|
// 分卷工序
|
|
|
- if(("是".equals(previousProcesses.get(0).getIssubsection()) && hasnotxjct) || previousProcesses.get(0).getIfLock()){
|
|
|
+ if(("是".equals(previousProcesses.get(0).getIssubsection()) && hasnotxjct) || (lockpps != null && lockpps.size()>0)){
|
|
|
for (ProductionProcesses preProcess : previousProcesses) {
|
|
|
List<ProductionProcesses> nexts = new ArrayList<>();
|
|
|
if(preProcess.getNextProcesses().size()>1){
|
|
@@ -1804,6 +1823,15 @@ public class ApsServiceImpl implements ApsService {
|
|
|
hasMerge.addAll(proids);
|
|
|
}
|
|
|
}
|
|
|
+ // 判断合并后待排程的列表是否存在当前作业明细,不存在则新增
|
|
|
+ if(previousProcesses != null && previousProcesses.size()>0){
|
|
|
+ for (ProductionProcesses previousProcess : previousProcesses) {
|
|
|
+ List<ProductionProcesses> pps = mergeprocesses.stream().filter(v -> v.getId().equals(previousProcess.getId())).collect(Collectors.toList());
|
|
|
+ if(pps == null || pps.size() == 0){
|
|
|
+ mergeprocesses.add(previousProcess);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}else{
|
|
|
List<ProductionProcesses> mergePres = new ArrayList<>();
|
|
|
mergePres.addAll(previousProcesses);
|