|
@@ -234,6 +234,9 @@ public class ApsServiceImpl implements ApsService {
|
|
|
if (StringUtils.isNotBlank(operationDo.getCanchoosedeviceid())) {
|
|
|
String[] sbIds = operationDo.getCanchoosedeviceid().split(",");
|
|
|
for (String equIds : sbIds) {
|
|
|
+ if(equIds.equals("0001be252874536843730b100052")){
|
|
|
+ System.out.println(equIds);
|
|
|
+ }
|
|
|
AspCheckItemsDo checkItemsD = eqMaps.get(equIds);
|
|
|
if (checkItemsD != null) {
|
|
|
optionalEquipments.add(equIds);
|
|
@@ -259,28 +262,33 @@ public class ApsServiceImpl implements ApsService {
|
|
|
List<ApsProcessOperationProcessEquDo> processEqus = processOperationProcessEquService.list(new LambdaQueryWrapper<ApsProcessOperationProcessEquDo>()
|
|
|
.eq(ApsProcessOperationProcessEquDo::getProcessdeviceid, equIds)
|
|
|
.notIn(ApsProcessOperationProcessEquDo::getBlankid, blankids)
|
|
|
- .ge(ApsProcessOperationProcessEquDo::getPlanstartdate, productionScheduleVo.getApsPlanStartDate())
|
|
|
+ .ge(ApsProcessOperationProcessEquDo::getPlanenddate, productionScheduleVo.getApsPlanStartDate())
|
|
|
.orderByAsc(ApsProcessOperationProcessEquDo::getPlanstartdate)
|
|
|
);
|
|
|
// 查询当前设备最后一个生产任务、连续生产需要考虑使用
|
|
|
List<ApsProcessOperationProcessEquDo> lastpros = processOperationProcessEquService.list(new LambdaQueryWrapper<ApsProcessOperationProcessEquDo>()
|
|
|
.eq(ApsProcessOperationProcessEquDo::getProcessdeviceid, equIds)
|
|
|
.notIn(ApsProcessOperationProcessEquDo::getBlankid, blankids)
|
|
|
- .gt(ApsProcessOperationProcessEquDo::getPlanstartdate, productionScheduleVo.getApsPlanStartDate())
|
|
|
+ .lt(ApsProcessOperationProcessEquDo::getPlanstartdate, productionScheduleVo.getApsPlanStartDate())
|
|
|
.orderByDesc(ApsProcessOperationProcessEquDo::getPlanstartdate)
|
|
|
);
|
|
|
if (lastpros != null && lastpros.size() > 0) {
|
|
|
ApsProcessOperationProcessEquDo lastpro = lastpros.get(0);
|
|
|
- ApsProcessOperationDo lastop = apsProcessOperationService.getById(lastpro.getProcessid());
|
|
|
- // 输出物料
|
|
|
- List<ApsProcessOperationOutMaterDo> outMaterDos = apsProcessOperationOutMaterService.list(new LambdaQueryWrapper<ApsProcessOperationOutMaterDo>()
|
|
|
- .eq(ApsProcessOperationOutMaterDo::getMainid, lastpro.getProcessid()));
|
|
|
- equipment.setLastProcessType(lastop.getProcess());
|
|
|
- equipment.setLastProcessEndTime(lastpro.getPlanenddate());
|
|
|
- equipment.setLastProcessCutfinishmin(lastop.getCutfinishmin() == null ? null : lastop.getCutfinishmin().intValue());
|
|
|
- // 合金+输入物料+宽度+厚度+输出物料厚度
|
|
|
- equipment.setLastSeriesProduceMark(lastop.getMetal() + "^_^" + lastop.getProducttype() + "^_^" + lastop.getProwidth() + "^_^" + lastop.getThickness() + "^_^" + outMaterDos.get(0).getThickness());
|
|
|
- equipment.setLastProcessCutfinishmin(lastop.getCutfinishmin() == null ? null : lastop.getCutfinishmin().intValue());
|
|
|
+ if(processEqus != null && processEqus.size()>0){
|
|
|
+ List<ApsProcessOperationProcessEquDo> hasLasts = processEqus.stream().filter(v -> v.getId().equals(lastpro.getId())).collect(Collectors.toList());
|
|
|
+ if(hasLasts == null || hasLasts.size() == 0){
|
|
|
+ ApsProcessOperationDo lastop = apsProcessOperationService.getById(lastpro.getProcessid());
|
|
|
+ // 输出物料
|
|
|
+ List<ApsProcessOperationOutMaterDo> outMaterDos = apsProcessOperationOutMaterService.list(new LambdaQueryWrapper<ApsProcessOperationOutMaterDo>()
|
|
|
+ .eq(ApsProcessOperationOutMaterDo::getMainid, lastpro.getProcessid()));
|
|
|
+ equipment.setLastProcessType(lastop.getProcess());
|
|
|
+ equipment.setLastProcessEndTime(lastpro.getPlanenddate());
|
|
|
+ equipment.setLastProcessCutfinishmin(lastop.getCutfinishmin() == null ? null : lastop.getCutfinishmin().intValue());
|
|
|
+ // 合金+输入物料+宽度+厚度+输出物料厚度
|
|
|
+ equipment.setLastSeriesProduceMark(lastop.getMetal() + "^_^" + lastop.getProducttype() + "^_^" + lastop.getProwidth() + "^_^" + lastop.getThickness() + "^_^" + outMaterDos.get(0).getThickness());
|
|
|
+ equipment.setLastProcessCutfinishmin(lastop.getCutfinishmin() == null ? null : lastop.getCutfinishmin().intValue());
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
// 查询相关工序作业
|
|
|
Set<String> processIds = new HashSet<>();
|
|
@@ -466,6 +474,7 @@ public class ApsServiceImpl implements ApsService {
|
|
|
}
|
|
|
// 合金
|
|
|
processes.setVolumeMetal(operationDo.getMetal());
|
|
|
+ processes.setVolumeMetalstate(operationDo.getMetalstate());
|
|
|
// 连续生产标识设置
|
|
|
// 合金+输入物料+宽度+输入物料厚度+输出物料厚度(取第一个冷轧工序使用)
|
|
|
processes.setSeriesProduceMark(operationDo.getMetal() + "^_^" + operationDo.getProducttype() + "^_^" + operationDo.getProwidth() + "^_^" + operationDo.getThickness() + "^_^" + outMaterDos.get(0).getThickness());
|