|
@@ -4926,7 +4926,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
List<ApsProcessOperationProcessEquDo> notNeedUnLockList = new LinkedList<>();
|
|
|
|
|
|
//调度之前的连续开始,需要推导后续连续去清除需要解锁的明细
|
|
|
- List<ApsProcessOperationProcessEquDo> cleanNeedUnLockList = new LinkedList<>();
|
|
|
+// List<ApsProcessOperationProcessEquDo> cleanNeedUnLockList = new LinkedList<>();
|
|
|
//后道工序在当前工序之前,并且不参与排程,则需要将后道工序和其所有的后道工序都不解锁
|
|
|
List<ApsProcessOperationProcessEquDo> cleanNeedUnLockList2 = new LinkedList<>();
|
|
|
|
|
@@ -4984,19 +4984,19 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
boolean isConnect = isConnectProcess(nowProcess, previousProcess, processOperationEquDoList, apsProcessOperationProcessEquDo, previousEqu);
|
|
|
//如果连续
|
|
|
if (isConnect) {
|
|
|
- //如果连续的上一道在重排开始时间之前,不解锁,并且不解锁后道与其连续的
|
|
|
- if (previousEqu.getPlanstartdate().before(chongpaiStartDate)) {
|
|
|
- cleanNeedUnLockList.add(previousEqu);
|
|
|
- previousprocessesid = previousEqu.getPreviousprocessesids();
|
|
|
- nowProcess = previousProcess;
|
|
|
- canUnLock = false;
|
|
|
- continue;
|
|
|
- }
|
|
|
+// //如果连续的上一道在重排开始时间之前,不解锁,并且不解锁后道与其连续的
|
|
|
+// if (previousEqu.getPlanstartdate().before(chongpaiStartDate)) {
|
|
|
+// cleanNeedUnLockList.add(previousEqu);
|
|
|
+// previousprocessesid = previousEqu.getPreviousprocessesids();
|
|
|
+// nowProcess = previousProcess;
|
|
|
+// canUnLock = false;
|
|
|
+// continue;
|
|
|
+// }
|
|
|
needUnLockList.add(previousEqu);
|
|
|
if (ObjectUtil.isNotEmpty(previousEqu.getPreviousprocessesids())) {
|
|
|
previousprocessesid = previousEqu.getPreviousprocessesids();
|
|
|
nowProcess = previousProcess;
|
|
|
- canUnLock = false;
|
|
|
+// canUnLock = false;
|
|
|
} else {
|
|
|
break;
|
|
|
}
|
|
@@ -5027,13 +5027,13 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
getNextProcess(apsProcessOperationProcessEquDo.getNextprocessesids(), nowProcess, needScheduleList, needScheduleIdList, allProcessEquList, allProcessEquIdList, needUnLockList, allProcessList, cleanNeedUnLockList2);
|
|
|
}
|
|
|
}
|
|
|
- //查询需要清除的明细及其后续 连续的明细
|
|
|
- for (ApsProcessOperationProcessEquDo apsProcessOperationProcessEquDo : cleanNeedUnLockList) {
|
|
|
- if (ObjectUtil.isNotEmpty(apsProcessOperationProcessEquDo.getNextprocessesids())) {
|
|
|
- notNeedUnLockList.add(apsProcessOperationProcessEquDo);
|
|
|
- getCleanNextProcess(apsProcessOperationProcessEquDo, apsProcessOperationProcessEquDo.getNextprocessesids(), allProcessEquList, allProcessEquIdList, notNeedUnLockList, allProcessList, processOperationEquDoList);
|
|
|
- }
|
|
|
- }
|
|
|
+// //查询需要清除的明细及其后续 连续的明细
|
|
|
+// for (ApsProcessOperationProcessEquDo apsProcessOperationProcessEquDo : cleanNeedUnLockList) {
|
|
|
+// if (ObjectUtil.isNotEmpty(apsProcessOperationProcessEquDo.getNextprocessesids())) {
|
|
|
+// notNeedUnLockList.add(apsProcessOperationProcessEquDo);
|
|
|
+// getCleanNextProcess(apsProcessOperationProcessEquDo, apsProcessOperationProcessEquDo.getNextprocessesids(), allProcessEquList, allProcessEquIdList, notNeedUnLockList, allProcessList, processOperationEquDoList);
|
|
|
+// }
|
|
|
+// }
|
|
|
//清除记录的所有后道工序
|
|
|
for (ApsProcessOperationProcessEquDo apsProcessOperationProcessEquDo : cleanNeedUnLockList2) {
|
|
|
if (ObjectUtil.isNotEmpty(apsProcessOperationProcessEquDo.getNextprocessesids())) {
|
|
@@ -5090,8 +5090,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
ApsProcessOperationProcessEquDo previousEqu) {
|
|
|
//如果本道工序和前道工序 的工序类型相同,并且最小等待时间为空/0,并且可选设备和辊相同 ,并且本道工序开始时间和前道工序结束时间差<11分钟,加入待解锁集合
|
|
|
if (nowProcess.getProcess().equals(previousProcess.getProcess())
|
|
|
- && (nowProcess.getMinflowwaitmin() == null || nowProcess.getMinflowwaitmin().intValue() == 0)
|
|
|
- && DateUtil.between(previousEqu.getPlanenddate(), nowEqu.getPlanstartdate(), DateUnit.MINUTE) < 11) {
|
|
|
+ && (nowProcess.getMinflowwaitmin() == null || nowProcess.getMinflowwaitmin().intValue() == 0)) {
|
|
|
//对比确认是否存在相同的设备和辊
|
|
|
boolean have = false;
|
|
|
//查询当前工序作业的可选设备
|