|
@@ -353,24 +353,27 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
if (apsProcessOperationProcessEquDo.getPlanprocessrall() - apsProcessOperationProcessEquDo.getReportroll() - apsProcessOperationProcessEquDo.getCancelroll() <= 0) {
|
|
if (apsProcessOperationProcessEquDo.getPlanprocessrall() - apsProcessOperationProcessEquDo.getReportroll() - apsProcessOperationProcessEquDo.getCancelroll() <= 0) {
|
|
return R.error("此作业已全部开工完毕,请刷新列表后重试");
|
|
return R.error("此作业已全部开工完毕,请刷新列表后重试");
|
|
}
|
|
}
|
|
- if (ObjectUtil.isNotEmpty(req.getInputBatchNumber())) {
|
|
|
|
- if (ObjectUtil.isNotEmpty(apsProcessOperationProcessEquDo.getBachmaterialprocess())) {
|
|
|
|
- List<String> list1 = Arrays.asList(req.getInputBatchNumber().split(","));
|
|
|
|
- List<String> list2 = Arrays.asList(apsProcessOperationProcessEquDo.getBachmaterialprocess().split(","));
|
|
|
|
- for (String s : list1) {
|
|
|
|
- if (!list2.contains(s)) {
|
|
|
|
- return R.error("批次号不在待加工料卷批次号中或已被使用,请刷新列表后重试");
|
|
|
|
|
|
+ //查询坯料计划的详情
|
|
|
|
+ ApsBlankOrderDo apsBlankOrderDo = apsBlankOrderService.getById(apsProcessOperationProcessEquDo.getBlankid());
|
|
|
|
+ //如果 不是备料计划 或 不是第一道工序作业明细,则不校验待加工料卷批次号
|
|
|
|
+ if (!apsBlankOrderDo.getPreparematerial().equals("是") || ObjectUtil.isNotEmpty(apsProcessOperationProcessEquDo.getPreviousprocessesids())) {
|
|
|
|
+ if (ObjectUtil.isNotEmpty(req.getInputBatchNumber())) {
|
|
|
|
+ if (ObjectUtil.isNotEmpty(apsProcessOperationProcessEquDo.getBachmaterialprocess())) {
|
|
|
|
+ List<String> list1 = Arrays.asList(req.getInputBatchNumber().split(","));
|
|
|
|
+ List<String> list2 = Arrays.asList(apsProcessOperationProcessEquDo.getBachmaterialprocess().split(","));
|
|
|
|
+ for (String s : list1) {
|
|
|
|
+ if (!list2.contains(s)) {
|
|
|
|
+ return R.error("批次号不在待加工料卷批次号中或已被使用,请刷新列表后重试");
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
+ } else {
|
|
|
|
+ return R.error("批次号不在待加工料卷批次号中或已被使用,请刷新列表后重试");
|
|
}
|
|
}
|
|
- } else {
|
|
|
|
- return R.error("批次号不在待加工料卷批次号中或已被使用,请刷新列表后重试");
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
//查询工序作业的详情
|
|
//查询工序作业的详情
|
|
ApsProcessOperationDo apsProcessOperationDo = apsProcessOperationService.getById(apsProcessOperationProcessEquDo.getProcessid());
|
|
ApsProcessOperationDo apsProcessOperationDo = apsProcessOperationService.getById(apsProcessOperationProcessEquDo.getProcessid());
|
|
- //查询坯料计划的详情
|
|
|
|
- ApsBlankOrderDo apsBlankOrderDo = apsBlankOrderService.getById(apsProcessOperationDo.getBlankid());
|
|
|
|
//查询订单的详情
|
|
//查询订单的详情
|
|
ApsProductionOrderDo apsProductionOrderDo = apsProductionOrderService.getById(apsBlankOrderDo.getProductionorderid());
|
|
ApsProductionOrderDo apsProductionOrderDo = apsProductionOrderService.getById(apsBlankOrderDo.getProductionorderid());
|
|
|
|
|
|
@@ -972,12 +975,12 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
|
|
|
|
//更新作业明细报工料卷批次号,如果输入物料有批次号,报工料卷批次号后面拼接{输入物料批次号}
|
|
//更新作业明细报工料卷批次号,如果输入物料有批次号,报工料卷批次号后面拼接{输入物料批次号}
|
|
String reportBatchNumber = apsProcessOperationProcessEquDo.getReportbatchnumber();
|
|
String reportBatchNumber = apsProcessOperationProcessEquDo.getReportbatchnumber();
|
|
- if (StringUtils.isNotBlank(nowReportRecordsDo.getBatchnumber())){
|
|
|
|
- if (StringUtils.isNotBlank(reportBatchNumber)){
|
|
|
|
- if (!reportBatchNumber.contains(nowReportRecordsDo.getBatchnumber())){
|
|
|
|
- reportBatchNumber = reportBatchNumber+","+nowReportRecordsDo.getBatchnumber();
|
|
|
|
|
|
+ if (StringUtils.isNotBlank(nowReportRecordsDo.getBatchnumber())) {
|
|
|
|
+ if (StringUtils.isNotBlank(reportBatchNumber)) {
|
|
|
|
+ if (!reportBatchNumber.contains(nowReportRecordsDo.getBatchnumber())) {
|
|
|
|
+ reportBatchNumber = reportBatchNumber + "," + nowReportRecordsDo.getBatchnumber();
|
|
}
|
|
}
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
reportBatchNumber = nowReportRecordsDo.getBatchnumber();
|
|
reportBatchNumber = nowReportRecordsDo.getBatchnumber();
|
|
}
|
|
}
|
|
processEquWrapper.set(ApsProcessOperationProcessEquDo::getReportbatchnumber, reportBatchNumber);
|
|
processEquWrapper.set(ApsProcessOperationProcessEquDo::getReportbatchnumber, reportBatchNumber);
|
|
@@ -987,17 +990,17 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
* 如果作业是否坯料工序=是,则更新该作业明细所有后道作业明细的坯料批次号=该作业明细输出物料批次号。
|
|
* 如果作业是否坯料工序=是,则更新该作业明细所有后道作业明细的坯料批次号=该作业明细输出物料批次号。
|
|
* 如果作业是否坯料工序=否,则更新该作业明细所有后道作业明细的坯料批次号=该作业明细输入物料批次号。
|
|
* 如果作业是否坯料工序=否,则更新该作业明细所有后道作业明细的坯料批次号=该作业明细输入物料批次号。
|
|
*/
|
|
*/
|
|
- if (StringUtils.isBlank(apsProcessOperationProcessEquDo.getPreviousprocessesids())){
|
|
|
|
|
|
+ if (StringUtils.isBlank(apsProcessOperationProcessEquDo.getPreviousprocessesids())) {
|
|
//取出当前报工记录的输出物料编号列表
|
|
//取出当前报工记录的输出物料编号列表
|
|
List<String> outputNumbers = apsReportOutputDoList.stream().map(ApsReportOutputDo::getOutputnumber).collect(Collectors.toList());
|
|
List<String> outputNumbers = apsReportOutputDoList.stream().map(ApsReportOutputDo::getOutputnumber).collect(Collectors.toList());
|
|
String outPutNumber = "";
|
|
String outPutNumber = "";
|
|
- if (!outputNumbers.isEmpty()){
|
|
|
|
- outPutNumber = String.join(",",outputNumbers);
|
|
|
|
- if (StringUtils.isNotBlank(apsProcessOperationDo.getIfblankprocess()) && "是".equals(apsProcessOperationDo.getIfblankprocess())){
|
|
|
|
|
|
+ if (!outputNumbers.isEmpty()) {
|
|
|
|
+ outPutNumber = String.join(",", outputNumbers);
|
|
|
|
+ if (StringUtils.isNotBlank(apsProcessOperationDo.getIfblankprocess()) && "是".equals(apsProcessOperationDo.getIfblankprocess())) {
|
|
processEquWrapper.set(ApsProcessOperationProcessEquDo::getBlankbatchnumber, outPutNumber);
|
|
processEquWrapper.set(ApsProcessOperationProcessEquDo::getBlankbatchnumber, outPutNumber);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- updateAfterBlankByBatchAndOutPutNumber(apsProcessOperationDo,nowReportRecordsDo,apsProcessOperationProcessEquDo,outPutNumber);
|
|
|
|
|
|
+ updateAfterBlankByBatchAndOutPutNumber(apsProcessOperationDo, nowReportRecordsDo, apsProcessOperationProcessEquDo, outPutNumber);
|
|
}
|
|
}
|
|
//更新
|
|
//更新
|
|
apsProcessOperationProcessEquService.update(processEquWrapper);
|
|
apsProcessOperationProcessEquService.update(processEquWrapper);
|
|
@@ -1833,25 +1836,26 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
|
|
|
|
/**
|
|
/**
|
|
* 递归所有后道工序作业明细
|
|
* 递归所有后道工序作业明细
|
|
|
|
+ *
|
|
* @param apsProcessOperationDo
|
|
* @param apsProcessOperationDo
|
|
* @param nowReportRecordsDo
|
|
* @param nowReportRecordsDo
|
|
* @param processOperationProcessEquDo
|
|
* @param processOperationProcessEquDo
|
|
*/
|
|
*/
|
|
- private void updateAfterBlankByBatchAndOutPutNumber(ApsProcessOperationDo apsProcessOperationDo,ApsReportRecordsDo nowReportRecordsDo,ApsProcessOperationProcessEquDo processOperationProcessEquDo,String outPutNumber) {
|
|
|
|
|
|
+ private void updateAfterBlankByBatchAndOutPutNumber(ApsProcessOperationDo apsProcessOperationDo, ApsReportRecordsDo nowReportRecordsDo, ApsProcessOperationProcessEquDo processOperationProcessEquDo, String outPutNumber) {
|
|
if (StringUtils.isNotBlank(processOperationProcessEquDo.getNextprocessesids())) {
|
|
if (StringUtils.isNotBlank(processOperationProcessEquDo.getNextprocessesids())) {
|
|
List<ApsProcessOperationProcessEquDo> processOperationProcessEquDos = apsProcessOperationDao.getNextProcessOperationEqusByNextIds(processOperationProcessEquDo.getNextprocessesids().replace(",", "','"));
|
|
List<ApsProcessOperationProcessEquDo> processOperationProcessEquDos = apsProcessOperationDao.getNextProcessOperationEqusByNextIds(processOperationProcessEquDo.getNextprocessesids().replace(",", "','"));
|
|
for (ApsProcessOperationProcessEquDo processOperationEquDo : processOperationProcessEquDos) {
|
|
for (ApsProcessOperationProcessEquDo processOperationEquDo : processOperationProcessEquDos) {
|
|
- if (StringUtils.isNotBlank(apsProcessOperationDo.getIfblankprocess()) && "是".equals(apsProcessOperationDo.getIfblankprocess())){
|
|
|
|
|
|
+ if (StringUtils.isNotBlank(apsProcessOperationDo.getIfblankprocess()) && "是".equals(apsProcessOperationDo.getIfblankprocess())) {
|
|
//是否坯料工序为是则更新该作业明细所有后道作业明细的坯料批次号=该作业明细输出物料批次号。
|
|
//是否坯料工序为是则更新该作业明细所有后道作业明细的坯料批次号=该作业明细输出物料批次号。
|
|
- if (StringUtils.isNotBlank(outPutNumber)){
|
|
|
|
|
|
+ if (StringUtils.isNotBlank(outPutNumber)) {
|
|
processOperationEquDo.setBlankbatchnumber(outPutNumber);
|
|
processOperationEquDo.setBlankbatchnumber(outPutNumber);
|
|
}
|
|
}
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
//是否坯料工序为否则更新该作业明细所有后道作业明细的坯料批次号=该作业明细输入物料批次号。
|
|
//是否坯料工序为否则更新该作业明细所有后道作业明细的坯料批次号=该作业明细输入物料批次号。
|
|
processOperationEquDo.setBlankbatchnumber(nowReportRecordsDo.getBatchnumber());
|
|
processOperationEquDo.setBlankbatchnumber(nowReportRecordsDo.getBatchnumber());
|
|
}
|
|
}
|
|
apsProcessOperationProcessEquService.updateById(processOperationEquDo);
|
|
apsProcessOperationProcessEquService.updateById(processOperationEquDo);
|
|
- updateAfterBlankByBatchAndOutPutNumber(apsProcessOperationDo,nowReportRecordsDo,processOperationEquDo,outPutNumber);
|
|
|
|
|
|
+ updateAfterBlankByBatchAndOutPutNumber(apsProcessOperationDo, nowReportRecordsDo, processOperationEquDo, outPutNumber);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|