|
@@ -471,6 +471,8 @@ public class ApsServiceImpl implements ApsService {
|
|
|
List<ApsBlankOrderVo> singleApsList = new ArrayList<>();
|
|
|
|
|
|
List<ProductionScheduleVo> apsProductionSchedules = new ArrayList<>();
|
|
|
+ // 所有已取消的作业明细
|
|
|
+ List<ProductionProcesses> hasCancelsTotal = new ArrayList<>();
|
|
|
// 多卷先排
|
|
|
apsBlankOrders.forEach((bo)->{
|
|
|
try{
|
|
@@ -483,6 +485,12 @@ public class ApsServiceImpl implements ApsService {
|
|
|
productionScheduleVos.add(productionScheduleVo);
|
|
|
dataMap.put(productionScheduleVo.getProductionScheduleId(),v);
|
|
|
// int mergeThNum = mergeThNum(bo, productionScheduleVo);
|
|
|
+ // 去掉已取消的作业
|
|
|
+ List<ProductionProcesses> notCancels = productionScheduleVo.getProcesses().stream().filter(pop -> !pop.isCancel()).collect(Collectors.toList());
|
|
|
+ List<ProductionProcesses> hasCancels = productionScheduleVo.getProcesses().stream().filter(pop -> pop.isCancel()).collect(Collectors.toList());
|
|
|
+ hasCancelsTotal.addAll(hasCancels);
|
|
|
+ productionScheduleVo.setProcesses(notCancels);
|
|
|
+
|
|
|
// 排程计划设备集合
|
|
|
List<Equipment> equipmentList1 = new ArrayList<>();
|
|
|
List<ApsProcessOperationDo> operationDos1 = apsProcessOperationService.list(new LambdaQueryWrapper<ApsProcessOperationDo>()
|
|
@@ -826,6 +834,10 @@ public class ApsServiceImpl implements ApsService {
|
|
|
.orderByAsc(ApsProcessOperationProcessEquDo::getPlanstartdate)
|
|
|
);
|
|
|
}
|
|
|
+ // 过滤设备为空的明细
|
|
|
+ if(processEqus != null && processEqus.size()>0){
|
|
|
+ processEqus = processEqus.stream().filter(v->StringUtils.isNotBlank(v.getProcessdeviceid())).collect(Collectors.toList());
|
|
|
+ }
|
|
|
|
|
|
// 查询当前设备最后一个生产任务、连续生产需要考虑使用
|
|
|
List<ApsProcessOperationProcessEquDo> lastpros = null;
|
|
@@ -846,6 +858,10 @@ public class ApsServiceImpl implements ApsService {
|
|
|
.orderByDesc(ApsProcessOperationProcessEquDo::getPlanstartdate).last(" limit 100")
|
|
|
);
|
|
|
}
|
|
|
+ // 过滤设备为空的明细
|
|
|
+ if(lastpros != null && lastpros.size()>0){
|
|
|
+ lastpros = lastpros.stream().filter(v->StringUtils.isNotBlank(v.getProcessdeviceid())).collect(Collectors.toList());
|
|
|
+ }
|
|
|
|
|
|
BigDecimal hasLbs = null;
|
|
|
if (lastpros != null && lastpros.size() > 0) {
|
|
@@ -1186,6 +1202,10 @@ public class ApsServiceImpl implements ApsService {
|
|
|
processes.setStartTime(processEquDos.get(i).getPlanstartdate().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
|
|
|
processes.setEndTime(processEquDos.get(i).getPlanenddate().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
|
|
|
}
|
|
|
+ // 判断是否已取消
|
|
|
+ if(processEquDos.get(i).getCancelroll() != null && processEquDos.get(i).getCancelroll()>=processEquDos.get(i).getPlanprocessrall()){
|
|
|
+ processes.setCancel(true);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
if(apsBlankOrderVo.getPlanhavematerialdate() != null){
|
|
@@ -1251,6 +1271,10 @@ public class ApsServiceImpl implements ApsService {
|
|
|
processes.setStartTime(processEquDos.get(i).getPlanstartdate().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
|
|
|
processes.setEndTime(processEquDos.get(i).getPlanenddate().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
|
|
|
}
|
|
|
+ // 判断是否已取消
|
|
|
+ if(processEquDos.get(i).getCancelroll() != null && processEquDos.get(i).getCancelroll()>=processEquDos.get(i).getPlanprocessrall()){
|
|
|
+ processes.setCancel(true);
|
|
|
+ }
|
|
|
}
|
|
|
if(apsBlankOrderVo.getPlanhavematerialdate() != null){
|
|
|
// 全局配置
|
|
@@ -1303,6 +1327,10 @@ public class ApsServiceImpl implements ApsService {
|
|
|
processes.setStartTime(processEquDos.get(i).getPlanstartdate().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
|
|
|
processes.setEndTime(processEquDos.get(i).getPlanenddate().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
|
|
|
}
|
|
|
+ // 判断是否已取消
|
|
|
+ if(processEquDos.get(i).getCancelroll() != null && processEquDos.get(i).getCancelroll()>=processEquDos.get(i).getPlanprocessrall()){
|
|
|
+ processes.setCancel(true);
|
|
|
+ }
|
|
|
}
|
|
|
if(apsBlankOrderVo.getPlanhavematerialdate() != null){
|
|
|
// 全局配置
|