|
@@ -288,7 +288,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
// 工序作业明细ID
|
|
|
List<String> detailIds = changingWiresVos.stream().map(ChangingWiresVo::getId).collect(Collectors.toList());
|
|
|
SysUserVo nowWorkUser = CXCommonUtils.getCurrentUser();
|
|
|
- for (String equId:detailIds){
|
|
|
+ for (String equId : detailIds) {
|
|
|
if (changeWiresLock.containsKey(equId)) {
|
|
|
log.error("该作业明细已被:{}其他操作员换线", changeWiresLock.get(equId));
|
|
|
return R.error("该作业明细已被其他操作员换线");
|
|
@@ -399,13 +399,13 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
* 临时计算待加工料卷批次号数量
|
|
|
* 如果剩余待开工卷数<待加工料卷批次号数量,则表示有多余的批次号,去掉待加工料卷批次号最后多余的{待加工料卷批次号数量-剩余待开工卷数}个批次号,给拆分的新的作业明细
|
|
|
*/
|
|
|
- Integer newPlanProcessRall = processEqus.getPlanprocessrall()-(processEqus.getPlanprocessrall()-processEqus.getStartingroll()-processEqus.getCancelroll());
|
|
|
- Integer leaveWaitWorkRoll = newPlanProcessRall-processEqus.getStartingroll()-processEqus.getCancelroll();
|
|
|
- Integer leaveWaitJobRoll = newPlanProcessRall-processEqus.getReportroll()-processEqus.getCancelroll();
|
|
|
+ Integer newPlanProcessRall = processEqus.getPlanprocessrall() - (processEqus.getPlanprocessrall() - processEqus.getStartingroll() - processEqus.getCancelroll());
|
|
|
+ Integer leaveWaitWorkRoll = newPlanProcessRall - processEqus.getStartingroll() - processEqus.getCancelroll();
|
|
|
+ Integer leaveWaitJobRoll = newPlanProcessRall - processEqus.getReportroll() - processEqus.getCancelroll();
|
|
|
processEqus.setLeavewaitworkroll(leaveWaitWorkRoll);
|
|
|
processEqus.setLeavewaitjobroll(leaveWaitJobRoll);
|
|
|
List<String> newBachMaterProcess = new ArrayList<>();
|
|
|
- if (ObjectUtil.isNotEmpty(processEqus.getBachmaterialprocess())){
|
|
|
+ if (ObjectUtil.isNotEmpty(processEqus.getBachmaterialprocess())) {
|
|
|
String[] bachMaterialProcessArr = processEqus.getBachmaterialprocess().split(",");
|
|
|
if (leaveWaitWorkRoll < bachMaterialProcessArr.length) {
|
|
|
List<String> newBach = new ArrayList<>();
|
|
@@ -413,7 +413,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
for (String mater : bachMaterialProcessArr) {
|
|
|
if (oldBach.size() < leaveWaitWorkRoll) {
|
|
|
oldBach.add(mater);
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
newBach.add(mater);
|
|
|
}
|
|
|
}
|
|
@@ -464,7 +464,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
newProcessEqu.setCancelroll(0);
|
|
|
newProcessEqu.setLeavewaitworkroll(newProcessEqu.getPlanprocessrall());
|
|
|
newProcessEqu.setLeavewaitjobroll(newProcessEqu.getPlanprocessrall());
|
|
|
- if (ObjectUtil.isNotEmpty(newBachMaterProcess)){
|
|
|
+ if (ObjectUtil.isNotEmpty(newBachMaterProcess)) {
|
|
|
newProcessEqu.setBachmaterialprocess(String.join(",", newBachMaterProcess));
|
|
|
}
|
|
|
affectedIdList.add(newProcessEqu.getId());
|
|
@@ -520,10 +520,10 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
* 如果剩余待报工卷数=0,则完工状态=已完工
|
|
|
* 如果剩余待报工卷数>0,则完工状态=未完工
|
|
|
*/
|
|
|
- if (leaveWaitJobRoll>0){
|
|
|
+ if (leaveWaitJobRoll > 0) {
|
|
|
processEqus.setClosestatus("未完工");
|
|
|
- }else {
|
|
|
- if (leaveWaitJobRoll==0){
|
|
|
+ } else {
|
|
|
+ if (leaveWaitJobRoll == 0) {
|
|
|
processEqus.setClosestatus("已完工");
|
|
|
}
|
|
|
}
|
|
@@ -551,7 +551,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
updateConflictVoList.forEach(data -> {
|
|
|
ApsProcessOperationProcessEquDo apsProcessOperationProcessEquDo = data.getApsProcessOperationProcessEquDo();
|
|
|
affectedIdList.addAll(checkProcessingTimeConflict(apsProcessOperationProcessEquDo,
|
|
|
- data.getOldPlanStartdate(), data.getOldPlanEnddate(), data.getOldEquId(), data.getCurrentProcessWay(),returnAboutIds));
|
|
|
+ data.getOldPlanStartdate(), data.getOldPlanEnddate(), data.getOldEquId(), data.getCurrentProcessWay(), returnAboutIds));
|
|
|
// 判断是否存在设备不可用
|
|
|
inspectionEquipmentIsAvailable(apsProcessOperationProcessEquDo,
|
|
|
apsProcessOperationProcessEquDo.getProcessdeviceid(),
|
|
@@ -559,7 +559,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
apsProcessOperationProcessEquDo.getPlanenddate());
|
|
|
});
|
|
|
}
|
|
|
- List<String> aboutIds= affectedIdList.stream().distinct().collect(Collectors.toList());
|
|
|
+ List<String> aboutIds = affectedIdList.stream().distinct().collect(Collectors.toList());
|
|
|
blankIds.forEach(data -> {
|
|
|
// 更新坯料交货期
|
|
|
aboutIds.addAll(apsBlankOrderService.updateBlankDeliveryDate(null, data));
|
|
@@ -567,8 +567,8 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
|
|
|
// 重新获取甘特图数据并返回前段
|
|
|
return R.ok(ganttService.getListById(aboutIds));
|
|
|
- }finally {
|
|
|
- for (String equId:detailIds){
|
|
|
+ } finally {
|
|
|
+ for (String equId : detailIds) {
|
|
|
changeWiresLock.remove(equId);
|
|
|
}
|
|
|
}
|
|
@@ -641,14 +641,14 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
log.error("无法通过ID:{}获取到坯料计划", processEquDo.getBlankid());
|
|
|
throw new CustomException("无法获取到坯料计划信息");
|
|
|
}
|
|
|
- if ("合并加工".equals(operationDo.getProcessway())){
|
|
|
- if (Arrays.asList(COMPLETED, PROCESSING,TO_BE_STARTED).contains(operationDo.getProcessstatus())) {
|
|
|
+ if ("合并加工".equals(operationDo.getProcessway())) {
|
|
|
+ if (Arrays.asList(COMPLETED, PROCESSING, TO_BE_STARTED).contains(operationDo.getProcessstatus())) {
|
|
|
log.error("该作业已发布,不能调整开工时间");
|
|
|
throw new CustomException("该作业已发布,不能调整开工时间");
|
|
|
}
|
|
|
- }else {
|
|
|
- if (!"20".equals(operationDo.getProcessstatus())){
|
|
|
- if (Arrays.asList(JOBSTATUS_TO_BE_END, JOBSTATUS_TO_BE_STARTING,JOBSTATUS_TO_BE_START).contains(processEquDo.getWorkstatus())) {
|
|
|
+ } else {
|
|
|
+ if (!"20".equals(operationDo.getProcessstatus())) {
|
|
|
+ if (Arrays.asList(JOBSTATUS_TO_BE_END, JOBSTATUS_TO_BE_STARTING, JOBSTATUS_TO_BE_START).contains(processEquDo.getWorkstatus())) {
|
|
|
log.error("该作业已发布,不能调整开工时间");
|
|
|
throw new CustomException("该作业已发布,不能调整开工时间");
|
|
|
}
|
|
@@ -682,7 +682,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
updateConflictVos.forEach(data -> {
|
|
|
ApsProcessOperationProcessEquDo apsProcessOperationProcessEquDo = data.getApsProcessOperationProcessEquDo();
|
|
|
affectedIdList.addAll(checkProcessingTimeConflict(apsProcessOperationProcessEquDo,
|
|
|
- data.getOldPlanStartdate(), data.getOldPlanEnddate(), data.getOldEquId(), data.getCurrentProcessWay(),returnAboutIds));
|
|
|
+ data.getOldPlanStartdate(), data.getOldPlanEnddate(), data.getOldEquId(), data.getCurrentProcessWay(), returnAboutIds));
|
|
|
// 判断是否存在设备不可用
|
|
|
inspectionEquipmentIsAvailable(apsProcessOperationProcessEquDo,
|
|
|
apsProcessOperationProcessEquDo.getProcessdeviceid(),
|
|
@@ -695,7 +695,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
// });
|
|
|
// // 返回受影响的数据
|
|
|
// return R.ok(this.ganttService.getListById(affectedIdList.stream().distinct().collect(Collectors.toList())));
|
|
|
- List<String> aboutIds= affectedIdList.stream().distinct().collect(Collectors.toList());
|
|
|
+ List<String> aboutIds = affectedIdList.stream().distinct().collect(Collectors.toList());
|
|
|
blankIdSet.forEach(data -> {
|
|
|
// 更新坯料交货期
|
|
|
aboutIds.addAll(apsBlankOrderService.updateBlankDeliveryDate(null, data));
|
|
@@ -736,22 +736,22 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
if (apsProcessOperationDo == null) {
|
|
|
log.error("根据ID:{} 获取工序作业失败", apsProcessOperationProcessEquDo.getProcessid());
|
|
|
}
|
|
|
- if (apsProcessOperationDo!= null&&"合并加工".equals(apsProcessOperationDo.getProcessway())){
|
|
|
+ if (apsProcessOperationDo != null && "合并加工".equals(apsProcessOperationDo.getProcessway())) {
|
|
|
if (Arrays.asList(COMPLETED, PROCESSING).contains(apsProcessOperationDo.getProcessstatus())) {
|
|
|
log.error("已开工的作业不可修改");
|
|
|
return R.error("已开工的作业不可修改");
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
if (!JOBSTATUS_TO_BE_START.equals(apsProcessOperationProcessEquDo.getWorkstatus())) {
|
|
|
log.error("已开工的作业不可修改");
|
|
|
return R.error("已开工的作业不可修改");
|
|
|
}
|
|
|
}
|
|
|
- if (apsProcessOperationDo!= null&&"合并加工".equals(apsProcessOperationDo.getProcessway())){
|
|
|
+ if (apsProcessOperationDo != null && "合并加工".equals(apsProcessOperationDo.getProcessway())) {
|
|
|
List<ApsProcessOperationProcessEquDo> changeApsProcessEquList = apsProcessOperationProcessEquService.list(new LambdaQueryWrapper<ApsProcessOperationProcessEquDo>()
|
|
|
.eq(ApsProcessOperationProcessEquDo::getProcessdeviceid, apsProcessOperationProcessEquDo.getProcessdeviceid())
|
|
|
- .eq(ApsProcessOperationProcessEquDo::getPlanstartdate,apsProcessOperationProcessEquDo.getPlanstartdate())
|
|
|
- .eq(ApsProcessOperationProcessEquDo::getProcessid,apsProcessOperationDo.getId()));
|
|
|
+ .eq(ApsProcessOperationProcessEquDo::getPlanstartdate, apsProcessOperationProcessEquDo.getPlanstartdate())
|
|
|
+ .eq(ApsProcessOperationProcessEquDo::getProcessid, apsProcessOperationDo.getId()));
|
|
|
changeApsProcessEquList.forEach(info -> {
|
|
|
// 更新开工时间 jobDetailsVo
|
|
|
String equId = jobDetailsVo.getEquId();
|
|
@@ -774,22 +774,22 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
});
|
|
|
//避免合并加工时,找到除去本身之外同一计划开工日期同一设备‘更新时间’更改之后存在冲突的工序作业明细
|
|
|
this.updateBatchById(changeApsProcessEquList);
|
|
|
- changeApsProcessEquList.forEach(detail->{
|
|
|
+ changeApsProcessEquList.forEach(detail -> {
|
|
|
//当工序作业为合并加工时处理工序作业明细冲突
|
|
|
String oldEquId = apsProcessOperationProcessEquDo.getProcessdeviceid();
|
|
|
Date oldPlanstartdate = apsProcessOperationProcessEquDo.getPlanstartdate();
|
|
|
Date oldPlanenddate = apsProcessOperationProcessEquDo.getPlanenddate();
|
|
|
// 增加受影响的工序作业信息
|
|
|
affectedIdList.addAll(checkProcessingTimeConflict(detail, oldPlanstartdate,
|
|
|
- oldPlanenddate, oldEquId, apsProcessOperationDo.getProcessway(),new ArrayList<>()));
|
|
|
+ oldPlanenddate, oldEquId, apsProcessOperationDo.getProcessway(), new ArrayList<>()));
|
|
|
// 判断是否存在设备不可用
|
|
|
inspectionEquipmentIsAvailable(detail, detail.getProcessdeviceid()
|
|
|
, detail.getPlanstartdate(), detail.getPlanenddate());
|
|
|
- if (!detail.getId().equals(apsProcessOperationProcessEquDo.getId())){
|
|
|
+ if (!detail.getId().equals(apsProcessOperationProcessEquDo.getId())) {
|
|
|
mergeWorkerIdList.add(detail.getId());
|
|
|
}
|
|
|
});
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
// 更新开工时间 jobDetailsVo
|
|
|
String equId = jobDetailsVo.getEquId();
|
|
|
String equName = jobDetailsVo.getEquName();
|
|
@@ -813,7 +813,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
jobDetailsVo.getPlanStartTime().getTime() - oldPlanstartdate.getTime()));
|
|
|
// 增加受影响的工序作业信息
|
|
|
affectedIdList.addAll(checkProcessingTimeConflict(apsProcessOperationProcessEquDo, oldPlanstartdate,
|
|
|
- oldPlanenddate, oldEquId, apsProcessOperationDo.getProcessway(),new ArrayList<>()));
|
|
|
+ oldPlanenddate, oldEquId, apsProcessOperationDo.getProcessway(), new ArrayList<>()));
|
|
|
}
|
|
|
this.updateById(apsProcessOperationProcessEquDo);
|
|
|
// 判断是否存在设备不可用
|
|
@@ -825,9 +825,9 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
// affectedIdList.addAll(jobDetailsVo.getReturnAboutIds());
|
|
|
// return R.ok(this.ganttService.getListById(affectedIdList));
|
|
|
affectedIdList.addAll(jobDetailsVo.getReturnAboutIds());
|
|
|
- List<String> aboutIds= affectedIdList.stream().distinct().collect(Collectors.toList());
|
|
|
+ List<String> aboutIds = affectedIdList.stream().distinct().collect(Collectors.toList());
|
|
|
aboutIds.addAll(apsBlankOrderService.updateBlankDeliveryDate(null, apsProcessOperationDo.getBlankid()));
|
|
|
- if (!mergeWorkerIdList.isEmpty()){
|
|
|
+ if (!mergeWorkerIdList.isEmpty()) {
|
|
|
aboutIds.addAll(mergeWorkerIdList);
|
|
|
}
|
|
|
return R.ok(ganttService.getListById(aboutIds));
|
|
@@ -855,7 +855,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
throw new CustomException("参数异常,工序作业明细ID为空");
|
|
|
}
|
|
|
SysUserVo nowWorkUser = CXCommonUtils.getCurrentUser();
|
|
|
- for (String equId:ids){
|
|
|
+ for (String equId : ids) {
|
|
|
if (splitLock.containsKey(equId)) {
|
|
|
log.error("该作业明细已被:{}其他操作员拆分", splitLock.get(equId));
|
|
|
throw new CustomException("该作业明细已被其他操作员拆分");
|
|
@@ -967,7 +967,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
// 增加受影响的工序作业信息
|
|
|
affectedIdList.addAll(checkProcessingTimeConflict(newDo, currentProcessEquDo.getPlanstartdate(),
|
|
|
currentProcessEquDo.getPlanenddate(), currentProcessEquDo.getProcessdeviceid(),
|
|
|
- currentProcessOperationDo.getProcessway(),new ArrayList<>()));
|
|
|
+ currentProcessOperationDo.getProcessway(), new ArrayList<>()));
|
|
|
} else {
|
|
|
/**************************原数据逻辑处理***********************************/
|
|
|
ApsProcessOperationProcessEquDo oldDo = new ApsProcessOperationProcessEquDo();
|
|
@@ -1009,19 +1009,19 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
* 临时计算待加工料卷批次号数量
|
|
|
* 如果剩余待开工卷数<待加工料卷批次号数量,则表示有多余的批次号,去掉待加工料卷批次号最后多余的{待加工料卷批次号数量-剩余待开工卷数}个批次号,给拆分的新的作业明细
|
|
|
*/
|
|
|
- Integer leaveWaitWorkRoll = oldDo.getPlanprocessrall()-currentProcessEquDo.getStartingroll()-currentProcessEquDo.getCancelroll();
|
|
|
- Integer leaveWaitJobRoll = oldDo.getPlanprocessrall()-currentProcessEquDo.getReportroll()-currentProcessEquDo.getCancelroll();
|
|
|
+ Integer leaveWaitWorkRoll = oldDo.getPlanprocessrall() - currentProcessEquDo.getStartingroll() - currentProcessEquDo.getCancelroll();
|
|
|
+ Integer leaveWaitJobRoll = oldDo.getPlanprocessrall() - currentProcessEquDo.getReportroll() - currentProcessEquDo.getCancelroll();
|
|
|
oldDo.setLeavewaitworkroll(leaveWaitWorkRoll);
|
|
|
oldDo.setLeavewaitjobroll(leaveWaitJobRoll);
|
|
|
- if (leaveWaitJobRoll>0){
|
|
|
+ if (leaveWaitJobRoll > 0) {
|
|
|
oldDo.setClosestatus("未完工");
|
|
|
- }else {
|
|
|
- if (leaveWaitJobRoll==0){
|
|
|
+ } else {
|
|
|
+ if (leaveWaitJobRoll == 0) {
|
|
|
oldDo.setClosestatus("已完工");
|
|
|
}
|
|
|
}
|
|
|
List<String> newBachMaterProcess = new ArrayList<>();
|
|
|
- if (ObjectUtil.isNotEmpty(currentProcessEquDo.getBachmaterialprocess())){
|
|
|
+ if (ObjectUtil.isNotEmpty(currentProcessEquDo.getBachmaterialprocess())) {
|
|
|
String[] bachMaterialProcessArr = currentProcessEquDo.getBachmaterialprocess().split(",");
|
|
|
if (leaveWaitWorkRoll < bachMaterialProcessArr.length) {
|
|
|
List<String> newBach = new ArrayList<>();
|
|
@@ -1029,7 +1029,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
for (String mater : bachMaterialProcessArr) {
|
|
|
if (oldBach.size() < leaveWaitWorkRoll) {
|
|
|
oldBach.add(mater);
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
newBach.add(mater);
|
|
|
}
|
|
|
}
|
|
@@ -1075,7 +1075,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
newDo.setCancelroll(0);
|
|
|
newDo.setLeavewaitworkroll(splitQty);
|
|
|
newDo.setLeavewaitjobroll(splitQty);
|
|
|
- if (ObjectUtil.isNotEmpty(newBachMaterProcess)){
|
|
|
+ if (ObjectUtil.isNotEmpty(newBachMaterProcess)) {
|
|
|
newDo.setBachmaterialprocess(String.join(",", newBachMaterProcess));
|
|
|
}
|
|
|
newDo.setWorkstatus(JOBSTATUS_TO_BE_START);
|
|
@@ -1089,7 +1089,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
// 增加受影响的工序作业信息
|
|
|
affectedIdList.addAll(checkProcessingTimeConflict(newDo, newDo.getPlanstartdate(),
|
|
|
newDo.getPlanenddate(), newDo.getProcessdeviceid(),
|
|
|
- currentProcessOperationDo.getProcessway(),new ArrayList<>()));
|
|
|
+ currentProcessOperationDo.getProcessway(), new ArrayList<>()));
|
|
|
this.save(newDo);
|
|
|
newDataList.add(newDo);
|
|
|
}
|
|
@@ -1100,7 +1100,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
inspectionEquipmentIsAvailable(newDo, newDo.getProcessdeviceid()
|
|
|
, newDo.getPlanstartdate(), newDo.getPlanenddate());
|
|
|
});
|
|
|
- List<String> aboutIds= affectedIdList.stream().distinct().collect(Collectors.toList());
|
|
|
+ List<String> aboutIds = affectedIdList.stream().distinct().collect(Collectors.toList());
|
|
|
apsProcessOperationDos.forEach(data -> {
|
|
|
// 更新坯料交货期
|
|
|
aboutIds.addAll(apsBlankOrderService.updateBlankDeliveryDate(null, data.getBlankid()));
|
|
@@ -1118,8 +1118,8 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
.set(ApsProcessOperationProcessEquDo::getNextprocessesids, strAppendListConvertStr(apsProcessOperationProcessEquDo.getNextprocessesids(), collect1)));
|
|
|
});
|
|
|
return R.ok(this.ganttService.getListById(aboutIds));
|
|
|
- }finally {
|
|
|
- for (String equId:ids){
|
|
|
+ } finally {
|
|
|
+ for (String equId : ids) {
|
|
|
splitLock.remove(equId);
|
|
|
}
|
|
|
}
|
|
@@ -1161,9 +1161,9 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
* 如果生产状态=待发布,则排程状态=待发布
|
|
|
* 如果生产状态=待开工或加工中或已完工,则排程状态=已发布
|
|
|
*/
|
|
|
- if (two.getProductionStatus().equals(TO_BE_SCHEDULED)) {
|
|
|
+ if (two.getMinProductionStatus().equals(TO_BE_SCHEDULED)) {
|
|
|
blankOrderDo.setSchedulingstatus(SaveConstans.SchedulingStatus.TO_BE_SCHEDULED);
|
|
|
- } else if (two.getProductionStatus().equals(TO_BE_PUBLISHED)) {
|
|
|
+ } else if (two.getMinProductionStatus().equals(TO_BE_PUBLISHED)) {
|
|
|
blankOrderDo.setSchedulingstatus(SaveConstans.SchedulingStatus.TO_BE_PUBLISHED);
|
|
|
} else {
|
|
|
blankOrderDo.setSchedulingstatus(SaveConstans.SchedulingStatus.PUBLISHED);
|
|
@@ -1338,19 +1338,19 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
* 更新设备或者时间之后 更新冲突描述
|
|
|
*
|
|
|
* @param aboutProcessEquList 工序作业明细影响到的工序作业明细数据
|
|
|
- * @param removeConflictsDesc 需要被删除的冲突描述
|
|
|
+ * @param removeConflictsDesc 需要被删除的冲突描述
|
|
|
*/
|
|
|
public void updateProcessEquAboutBeforeAddConflictsDesc(List<ApsProcessOperationProcessEquDo> aboutProcessEquList,
|
|
|
- String removeConflictsDesc, String processway,
|
|
|
- Date newPlanStartDate,
|
|
|
- Date newOldEndDate,
|
|
|
- String aboutId) {
|
|
|
+ String removeConflictsDesc, String processway,
|
|
|
+ Date newPlanStartDate,
|
|
|
+ Date newOldEndDate,
|
|
|
+ String aboutId) {
|
|
|
if (aboutProcessEquList.isEmpty()) {
|
|
|
return;
|
|
|
}
|
|
|
//删除之前受影响的工序作业明细的‘与加工设备其他作业加工时间重叠’冲突
|
|
|
aboutProcessEquList.forEach(info -> {
|
|
|
- if (StringUtils.isNotBlank(info.getConflictdes())&&info.getConflictdes().contains(removeConflictsDesc)){
|
|
|
+ if (StringUtils.isNotBlank(info.getConflictdes()) && info.getConflictdes().contains(removeConflictsDesc)) {
|
|
|
if (PROCESS_WAY_MERGE.equals(processway)) {
|
|
|
info.setConflictdes(removeConflictsDesc(info.getConflictdes(), removeConflictsDesc));
|
|
|
info.setHasconflict(StringUtils.isBlank(info.getConflictdes()) &&
|
|
@@ -1384,7 +1384,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
* @param conflictsDesc 冲突描述
|
|
|
*/
|
|
|
public void updateProcessEquAfterAddConflictsDesc(List<ApsProcessOperationProcessEquDo> afterTheUpdateConflictId,
|
|
|
- String conflictsDesc,String aboutId) {
|
|
|
+ String conflictsDesc, String aboutId) {
|
|
|
if (afterTheUpdateConflictId.isEmpty()) {
|
|
|
return;
|
|
|
}
|
|
@@ -1394,7 +1394,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
info.setHasconflict(StringUtils.isBlank(info.getConflictdes()) && StringUtils.isBlank(info.getSoftconflictdes()) ?
|
|
|
LOCKMARK_N : LOCKMARK_Y);
|
|
|
info.setModifydate(new Date());
|
|
|
- apsConflictLogService.recordLog(info.getId(),aboutId, EQ_TIME_CROSS, 1, null);
|
|
|
+ apsConflictLogService.recordLog(info.getId(), aboutId, EQ_TIME_CROSS, 1, null);
|
|
|
});
|
|
|
this.updateBatchById(afterTheUpdateConflictId);
|
|
|
}
|
|
@@ -1426,18 +1426,18 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
String equId, Date startDate, Date endDate) {
|
|
|
// 查询当前设备是否存在不可以用设备的停机时间为空的数据
|
|
|
List<ApsEquipmentCalendarDo> nullSdTimeList = apsEquipmentCalendarService.list(new LambdaQueryWrapper<ApsEquipmentCalendarDo>()
|
|
|
- .eq(ApsEquipmentCalendarDo::getProcessdeviceid, equId)
|
|
|
- .isNull(ApsEquipmentCalendarDo::getSdendtime));
|
|
|
+ .eq(ApsEquipmentCalendarDo::getProcessdeviceid, equId)
|
|
|
+ .isNull(ApsEquipmentCalendarDo::getSdendtime));
|
|
|
List<ApsEquipmentCalendarDo> list = new ArrayList<>();
|
|
|
//注意不可用结束时间为空,表示后面一直不可用
|
|
|
- if (nullSdTimeList.isEmpty()){
|
|
|
+ if (nullSdTimeList.isEmpty()) {
|
|
|
// 查询当前设备当前时间段是否存在不可用设备
|
|
|
list = apsEquipmentCalendarService.list(new LambdaQueryWrapper<ApsEquipmentCalendarDo>()
|
|
|
- .eq(ApsEquipmentCalendarDo::getProcessdeviceid, equId)
|
|
|
- .and(wapper -> wapper.apply("{0} BETWEEN sdstarttime AND sdendtime", startDate)
|
|
|
- .or()
|
|
|
- .apply("{0} BETWEEN sdstarttime AND sdendtime", endDate)));
|
|
|
- }else {
|
|
|
+ .eq(ApsEquipmentCalendarDo::getProcessdeviceid, equId)
|
|
|
+ .and(wapper -> wapper.apply("{0} BETWEEN sdstarttime AND sdendtime", startDate)
|
|
|
+ .or()
|
|
|
+ .apply("{0} BETWEEN sdstarttime AND sdendtime", endDate)));
|
|
|
+ } else {
|
|
|
list = apsEquipmentCalendarService.list(new LambdaQueryWrapper<ApsEquipmentCalendarDo>()
|
|
|
.eq(ApsEquipmentCalendarDo::getProcessdeviceid, equId)
|
|
|
.and(wapper -> wapper.apply("sdstarttime<={0}", startDate)
|
|
@@ -1473,7 +1473,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
*/
|
|
|
public List<String> checkProcessingTimeConflict(ApsProcessOperationProcessEquDo apsProcessOperationProcessEquDo,
|
|
|
Date oldPlanstartdate, Date oldPlanenddate,
|
|
|
- String oldEquId, String currentProcessWay,List<String> returnAboutIds) {
|
|
|
+ String oldEquId, String currentProcessWay, List<String> returnAboutIds) {
|
|
|
// 受影响的工序作业Id
|
|
|
List<String> affectedIdList = new ArrayList<>();
|
|
|
// 获取更新之前的存在冲突的工序作业
|
|
@@ -1486,7 +1486,7 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
log.info("参数当前工序作业加工方式:{}", currentProcessWay);
|
|
|
log.info("获取更新之前的存在冲突的工序作业结果:{}", beforeUpdatingConflictId);
|
|
|
List<ApsProcessOperationProcessEquDo> aboutProcessEquList = new ArrayList<>();
|
|
|
- if (!returnAboutIds.isEmpty()){
|
|
|
+ if (!returnAboutIds.isEmpty()) {
|
|
|
aboutProcessEquList = (List<ApsProcessOperationProcessEquDo>) apsProcessOperationProcessEquService.listByIds(returnAboutIds);
|
|
|
}
|
|
|
if (!beforeUpdatingConflictId.isEmpty()) {
|
|
@@ -1494,8 +1494,8 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
updateProcessEquBeforeAddConflictsDesc(beforeUpdatingConflictId, EQ_TIME_CROSS, currentProcessWay,
|
|
|
apsProcessOperationProcessEquDo.getPlanstartdate(),
|
|
|
apsProcessOperationProcessEquDo.getPlanenddate(), apsProcessOperationProcessEquDo.getId());
|
|
|
- if (!aboutProcessEquList.isEmpty()){
|
|
|
- updateProcessEquAboutBeforeAddConflictsDesc(aboutProcessEquList,EQ_TIME_CROSS, currentProcessWay,
|
|
|
+ if (!aboutProcessEquList.isEmpty()) {
|
|
|
+ updateProcessEquAboutBeforeAddConflictsDesc(aboutProcessEquList, EQ_TIME_CROSS, currentProcessWay,
|
|
|
apsProcessOperationProcessEquDo.getPlanstartdate(),
|
|
|
apsProcessOperationProcessEquDo.getPlanenddate(), apsProcessOperationProcessEquDo.getId());
|
|
|
}
|
|
@@ -1520,11 +1520,11 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
apsProcessOperationProcessEquDo.setConflictdes(newConflictsDesc);
|
|
|
apsConflictLogService.recordLog(apsProcessOperationProcessEquDo.getId(),
|
|
|
afterTheUpdateConflictId.stream().map(ApsProcessOperationProcessEquDo::getId).collect(Collectors.joining(",")), EQ_TIME_CROSS, 1, null);
|
|
|
- updateProcessEquAfterAddConflictsDesc(afterTheUpdateConflictId, EQ_TIME_CROSS,apsProcessOperationProcessEquDo.getId());
|
|
|
+ updateProcessEquAfterAddConflictsDesc(afterTheUpdateConflictId, EQ_TIME_CROSS, apsProcessOperationProcessEquDo.getId());
|
|
|
} else {
|
|
|
// 去掉工序作业的冲突
|
|
|
String newConflictsDesc = removeConflictsDesc(apsProcessOperationProcessEquDo.getConflictdes(), EQ_TIME_CROSS);
|
|
|
- apsConflictLogService.recordLog(apsProcessOperationProcessEquDo.getId(),"", EQ_TIME_CROSS, 2, null);
|
|
|
+ apsConflictLogService.recordLog(apsProcessOperationProcessEquDo.getId(), "", EQ_TIME_CROSS, 2, null);
|
|
|
apsProcessOperationProcessEquDo.setConflictdes(newConflictsDesc);
|
|
|
apsProcessOperationProcessEquDo.setHasconflict(StringUtils.isBlank(apsProcessOperationProcessEquDo.getConflictdes()) &&
|
|
|
StringUtils.isBlank(apsProcessOperationProcessEquDo.getSoftconflictdes()) ?
|
|
@@ -1535,11 +1535,11 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
.set(ApsProcessOperationProcessEquDo::getHasconflict, apsProcessOperationProcessEquDo.getHasconflict())
|
|
|
.set(BaseDo::getModifydate, new Date())
|
|
|
);
|
|
|
- if (!aboutProcessEquList.isEmpty()){
|
|
|
- aboutProcessEquList.forEach(e->{
|
|
|
- if (StringUtils.isNotBlank(e.getConflictdes())&&e.getConflictdes().contains(EQ_TIME_CROSS)){
|
|
|
+ if (!aboutProcessEquList.isEmpty()) {
|
|
|
+ aboutProcessEquList.forEach(e -> {
|
|
|
+ if (StringUtils.isNotBlank(e.getConflictdes()) && e.getConflictdes().contains(EQ_TIME_CROSS)) {
|
|
|
String afterConflictdes = removeConflictsDesc(e.getConflictdes(), EQ_TIME_CROSS);
|
|
|
- apsConflictLogService.recordLog(e.getId(),"", EQ_TIME_CROSS, 2, null);
|
|
|
+ apsConflictLogService.recordLog(e.getId(), "", EQ_TIME_CROSS, 2, null);
|
|
|
e.setConflictdes(afterConflictdes);
|
|
|
e.setHasconflict(StringUtils.isBlank(e.getConflictdes()) &&
|
|
|
StringUtils.isBlank(e.getSoftconflictdes()) ?
|
|
@@ -1574,8 +1574,6 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
|
|
|
|