|
@@ -688,7 +688,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
// 排程计划工序任务集合
|
|
|
List<ProductionProcesses> processesList = new ArrayList<>();
|
|
|
// 坯料计划ID和所属工序作业ID对应关系
|
|
|
- Map<String,List<String>> blankProcessIds = new HashMap<>();
|
|
|
+ Map<String, List<String>> blankProcessIds = new HashMap<>();
|
|
|
// 待合并生产的订单工序
|
|
|
List<ApsProcessOperationVo> processOperationMs = new ArrayList<>();
|
|
|
if (apsBlankOrders != null && apsBlankOrders.size() > 0) {
|
|
@@ -701,7 +701,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
List<ApsProcessOperationDo> operationDos = apsProcessOperationService.list(new LambdaQueryWrapper<ApsProcessOperationDo>()
|
|
|
.eq(ApsProcessOperationDo::getBlankid, apsBlankOrderVo.getId()));
|
|
|
// 锁定的合并工序缓存
|
|
|
- Map<String,ProductionProcesses> lockHbPp = new HashMap<>();
|
|
|
+ Map<String, ProductionProcesses> lockHbPp = new HashMap<>();
|
|
|
// 转换工序模型数据
|
|
|
for (ApsProcessOperationDo operationDo : operationDos) {
|
|
|
processIdss.add(operationDo.getId());
|
|
@@ -804,8 +804,8 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
// 设备日历不可用时间段
|
|
|
List<ApsEquipmentCalendarDo> equipmentCalendarDos = apsEquipmentCalendarService.list(
|
|
|
new LambdaQueryWrapper<ApsEquipmentCalendarDo>().ge(ApsEquipmentCalendarDo::getSdstarttime, productionScheduleVo.getApsPlanStartDate())
|
|
|
- .eq(ApsEquipmentCalendarDo::getProcessdeviceid,equipment.getBsEquipmentId()));
|
|
|
- if(equipmentCalendarDos != null && equipmentCalendarDos.size()>0){
|
|
|
+ .eq(ApsEquipmentCalendarDo::getProcessdeviceid, equipment.getBsEquipmentId()));
|
|
|
+ if (equipmentCalendarDos != null && equipmentCalendarDos.size() > 0) {
|
|
|
for (ApsEquipmentCalendarDo equipmentCalendarDo : equipmentCalendarDos) {
|
|
|
EquipmentRunTime er = new EquipmentRunTime();
|
|
|
er.setStartRunTime(equipmentCalendarDo.getSdstarttime().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
|
|
@@ -824,14 +824,14 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
|
|
|
if (SaveConstans.ProcessWay.PROCESS_WAY_MERGE.equals(productprocess)) {
|
|
|
// 锁定的作业
|
|
|
- if(LOCKMARK_Y.equals(operationDo.getLockmark())){
|
|
|
+ if (LOCKMARK_Y.equals(operationDo.getLockmark())) {
|
|
|
// List<ApsProcessOperationProcessEquDo> popes = processOperationProcessEquService.list(new LambdaQueryWrapper<ApsProcessOperationProcessEquDo>()
|
|
|
// .eq(ApsProcessOperationProcessEquDo::getProcessid, operationDo.getId()));
|
|
|
List<ApsProcessOperationProcessEquDo> popes = apsBlankOrderDao.getGroupProcessOperationProcessEqus(operationDo.getId());
|
|
|
- if(popes != null && popes.size()>0){
|
|
|
+ if (popes != null && popes.size() > 0) {
|
|
|
for (ApsProcessOperationProcessEquDo pope : popes) {
|
|
|
// 已存在的合并工序则添加上下道工序
|
|
|
- if(lockHbPp.containsKey(pope.getProcessdeviceid())){
|
|
|
+ if (lockHbPp.containsKey(pope.getProcessdeviceid())) {
|
|
|
ProductionProcesses processes1 = lockHbPp.get(pope.getProcessdeviceid());
|
|
|
// 上道工序
|
|
|
if (StringUtils.isNotBlank(operationDo.getPreviousprocessid())) {
|
|
@@ -849,7 +849,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
}
|
|
|
}
|
|
|
// 不存在此合并工序则新增一个合并作业
|
|
|
- else{
|
|
|
+ else {
|
|
|
ProductionProcesses processeshb = new ProductionProcesses();
|
|
|
// 模型ID
|
|
|
processeshb.setId(SecurityUtil.getUUID());
|
|
@@ -889,12 +889,12 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
processes.setNextProcessesIds(nexts);
|
|
|
}
|
|
|
|
|
|
- lockHbPp.put(pope.getProcessdeviceid(),processes);
|
|
|
+ lockHbPp.put(pope.getProcessdeviceid(), processes);
|
|
|
processesList.add(processes);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
// 合并生产工序
|
|
|
ApsProcessOperationVo processOperationVo = new ApsProcessOperationVo();
|
|
|
BeanUtil.copyProperties(operationDo, processOperationVo);
|
|
@@ -951,10 +951,10 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
processes.setPrepressworkmin(operationDo.getPrepressworkmin() == null ? null : operationDo.getPrepressworkmin().intValue());
|
|
|
processes.setCutfinishmin(operationDo.getCutfinishmin() == null ? null : operationDo.getCutfinishmin().intValue());
|
|
|
// 锁定的作业加上锁定标识
|
|
|
- if(LOCKMARK_Y.equals(operationDo.getLockmark())){
|
|
|
+ if (LOCKMARK_Y.equals(operationDo.getLockmark())) {
|
|
|
ApsProcessOperationProcessEquDo processEquServiceOne = processOperationProcessEquService.getOne(new LambdaQueryWrapper<ApsProcessOperationProcessEquDo>()
|
|
|
.eq(ApsProcessOperationProcessEquDo::getProcessid, operationDo.getId()));
|
|
|
- if(processEquServiceOne != null){
|
|
|
+ if (processEquServiceOne != null) {
|
|
|
processes.setIfLock(true);
|
|
|
processes.setEquipmentId(processEquServiceOne.getProcessdeviceid());
|
|
|
List<String> opeqs = new ArrayList<>();
|
|
@@ -968,7 +968,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- blankProcessIds.put(apsBlankOrderVo.getId(),processIdss);
|
|
|
+ blankProcessIds.put(apsBlankOrderVo.getId(), processIdss);
|
|
|
}
|
|
|
}
|
|
|
// 合并生产工序
|
|
@@ -1436,11 +1436,11 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
haveProductDetail = true;
|
|
|
|
|
|
if (apsProductDetailDo.getInputmaterialdescription().equals(apsProcessOutputProductDo.getProductname())) {
|
|
|
- //如果输出单卷重<单卷重(起)或 输出单卷重>单卷重(止),错误提示:输出成品:{订单产品} 输出单卷重不符合订单要求
|
|
|
- if (apsProcessOutputProductDo.getOutputonerollweigth().compareTo(apsProductDetailDo.getSinglerollweightstart()) < 0
|
|
|
- || apsProcessOutputProductDo.getOutputonerollweigth().compareTo(apsProductDetailDo.getSinglerollweightend()) > 0) {
|
|
|
- return R.error("输出成品:" + apsProcessOutputProductDo.getProductname() + " 输出单卷重不符合订单要求");
|
|
|
- }
|
|
|
+// //如果输出单卷重<单卷重(起)或 输出单卷重>单卷重(止),错误提示:输出成品:{订单产品} 输出单卷重不符合订单要求
|
|
|
+//// if (apsProcessOutputProductDo.getOutputonerollweigth().compareTo(apsProductDetailDo.getSinglerollweightstart()) < 0
|
|
|
+//// || apsProcessOutputProductDo.getOutputonerollweigth().compareTo(apsProductDetailDo.getSinglerollweightend()) > 0) {
|
|
|
+//// return R.error("输出成品:" + apsProcessOutputProductDo.getProductname() + " 输出单卷重不符合订单要求");
|
|
|
+//// }
|
|
|
} else {//如果对应订单产品明细的订单产品字段值不等于输出成品的订单产品字段值,错误提示:输出成品:{订单产品} 对应订单产品已修改或已删除,请重新选择订单产品
|
|
|
return R.error("输出成品:" + apsProcessOutputProductDo.getProductname() + " 对应订单产品已修改或已删除,请重新选择订单产品");
|
|
|
}
|
|
@@ -1474,10 +1474,19 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
if (apsBlankOrderDo.getNumberunit().equals(SaveConstans.CountUnit.TON)) {
|
|
|
blankWeight = apsBlankOrderDo.getSinglerollweight().multiply(new BigDecimal(1000));
|
|
|
}
|
|
|
+ //校验 输出单卷重 必须小于等于坯料单卷重,必须大于等于单卷重(起),必须小于等于单卷重(止)
|
|
|
//输出单卷重>坯料单卷重
|
|
|
if (outputWeight.compareTo(blankWeight) > 0) {
|
|
|
return R.error("输出成品:" + apsProcessOutputProductDo.getProductname() + " 输出单卷重不能超过坯料单卷重");
|
|
|
}
|
|
|
+ //输出单卷重<单卷重(起)
|
|
|
+ if (apsProcessOutputProductDo.getOutputonerollweigth().compareTo(apsProcessOutputProductDo.getOnerollweigthstart()) < 0) {
|
|
|
+ return R.error("输出成品:" + apsProcessOutputProductDo.getProductname() + " 输出单卷重必须大于等于单卷重(起)");
|
|
|
+ }
|
|
|
+ //输出单卷重>单卷重(止)
|
|
|
+ if (apsProcessOutputProductDo.getOutputonerollweigth().compareTo(apsProcessOutputProductDo.getOnerollweigthend()) > 0) {
|
|
|
+ return R.error("输出成品:" + apsProcessOutputProductDo.getProductname() + " 输出单卷重必须小于等于单卷重(止)");
|
|
|
+ }
|
|
|
} else {//不存在对应的产品明细
|
|
|
return R.error("输出成品:" + apsProcessOutputProductDo.getProductname() + " 对应订单产品已修改或已删除,请重新选择订单产品");
|
|
|
}
|
|
@@ -1643,11 +1652,11 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
haveProductDetail = true;
|
|
|
|
|
|
if (apsProductDetailDo.getInputmaterialdescription().equals(apsProcessOutputProductDo.getProductname())) {
|
|
|
- //如果输出单卷重<单卷重(起)或 输出单卷重>单卷重(止),错误提示:输出成品:{订单产品} 输出单卷重不符合订单要求
|
|
|
- if (apsProcessOutputProductDo.getOutputonerollweigth().compareTo(apsProductDetailDo.getSinglerollweightstart()) < 0
|
|
|
- || apsProcessOutputProductDo.getOutputonerollweigth().compareTo(apsProductDetailDo.getSinglerollweightend()) > 0) {
|
|
|
- return R.error("第" + j + "个坯料计划 输出成品:" + apsProcessOutputProductDo.getProductname() + " 输出单卷重不符合订单要求");
|
|
|
- }
|
|
|
+// //如果输出单卷重<单卷重(起)或 输出单卷重>单卷重(止),错误提示:输出成品:{订单产品} 输出单卷重不符合订单要求
|
|
|
+// if (apsProcessOutputProductDo.getOutputonerollweigth().compareTo(apsProductDetailDo.getSinglerollweightstart()) < 0
|
|
|
+// || apsProcessOutputProductDo.getOutputonerollweigth().compareTo(apsProductDetailDo.getSinglerollweightend()) > 0) {
|
|
|
+// return R.error("第" + j + "个坯料计划 输出成品:" + apsProcessOutputProductDo.getProductname() + " 输出单卷重不符合订单要求");
|
|
|
+// }
|
|
|
} else {//如果对应订单产品明细的订单产品字段值不等于输出成品的订单产品字段值,错误提示:输出成品:{订单产品} 对应订单产品已修改或已删除,请重新选择订单产品
|
|
|
return R.error("第" + j + "个坯料计划 输出成品:" + apsProcessOutputProductDo.getProductname() + " 对应订单产品已修改或已删除,请重新选择订单产品");
|
|
|
}
|