|
@@ -95,6 +95,7 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
private SysSerialNumberService sysSerialNumberService;
|
|
private SysSerialNumberService sysSerialNumberService;
|
|
@Autowired
|
|
@Autowired
|
|
private AspCheckItemsService aspCheckItemsService;
|
|
private AspCheckItemsService aspCheckItemsService;
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
@Transactional
|
|
@Transactional
|
|
public R cancelRecord(Map<String, String> req) {
|
|
public R cancelRecord(Map<String, String> req) {
|
|
@@ -515,7 +516,7 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
/**
|
|
/**
|
|
* 新增需求:新增字段保存
|
|
* 新增需求:新增字段保存
|
|
*/
|
|
*/
|
|
- insertReportNew(apsReportRecordsDo,apsProductionOrderDo,apsBlankOrderDo,apsProcessOperationDo,apsProcessOperationProcessEquDo,aspCheckItemsDo);
|
|
|
|
|
|
+ insertReportNew(apsReportRecordsDo, apsProductionOrderDo, apsBlankOrderDo, apsProcessOperationDo, apsProcessOperationProcessEquDo, aspCheckItemsDo);
|
|
|
|
|
|
//=================更新工序作业明细的报工ID、已开工卷数============
|
|
//=================更新工序作业明细的报工ID、已开工卷数============
|
|
//将报工记录ID存入工序作业的设备子表中
|
|
//将报工记录ID存入工序作业的设备子表中
|
|
@@ -1000,13 +1001,13 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
return R.error("该坯料批次号:" + String.join(",", batchNumbers) + " 已经存在");
|
|
return R.error("该坯料批次号:" + String.join(",", batchNumbers) + " 已经存在");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if ("铸轧".equals(apsProcessOperationDo.getProcess())&&"是".equals(apsProcessOperationDo.getIfblankprocess())){
|
|
|
|
- for (ApsReportOutputDo outputDo:apsReportOutputDoList){
|
|
|
|
|
|
+ if ("铸轧".equals(apsProcessOperationDo.getProcess()) && "是".equals(apsProcessOperationDo.getIfblankprocess())) {
|
|
|
|
+ for (ApsReportOutputDo outputDo : apsReportOutputDoList) {
|
|
//后端补充校验:当'铸轧'工序并且'是否坯料工序'为是的时候校验输出物料中序列号必须大于等于批次号后三位
|
|
//后端补充校验:当'铸轧'工序并且'是否坯料工序'为是的时候校验输出物料中序列号必须大于等于批次号后三位
|
|
- if (ObjectUtil.isNotEmpty(outputDo.getOutputnumber())){
|
|
|
|
|
|
+ if (ObjectUtil.isNotEmpty(outputDo.getOutputnumber())) {
|
|
//取出批次号最后三位字符串
|
|
//取出批次号最后三位字符串
|
|
String lastThreeChars = outputDo.getOutputnumber().substring(outputDo.getOutputnumber().length() - 3);
|
|
String lastThreeChars = outputDo.getOutputnumber().substring(outputDo.getOutputnumber().length() - 3);
|
|
- if (outputDo.getSerialnumber()!= null&&outputDo.getSerialnumber()<Long.parseLong(lastThreeChars)){
|
|
|
|
|
|
+ if (outputDo.getSerialnumber() != null && outputDo.getSerialnumber() < Long.parseLong(lastThreeChars)) {
|
|
return R.error("序列号必须大于等于批次号的后三位");
|
|
return R.error("序列号必须大于等于批次号的后三位");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -1281,19 +1282,19 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
}
|
|
}
|
|
|
|
|
|
//===========提交校验================
|
|
//===========提交校验================
|
|
- //如果输出物料中不存在 检验等级 为 待判 的,则直接提交校验
|
|
|
|
|
|
+ //如果输出物料中不存在 检验等级 为 待判 和 不合格 的,则直接提交校验
|
|
//获取当前的输出物料
|
|
//获取当前的输出物料
|
|
List<ApsReportOutputDo> outputDos = apsReportOutputService.list(new QueryWrapper<ApsReportOutputDo>().lambda().eq(ApsReportOutputDo::getMainid, apsReportRecordsDo.getId()));
|
|
List<ApsReportOutputDo> outputDos = apsReportOutputService.list(new QueryWrapper<ApsReportOutputDo>().lambda().eq(ApsReportOutputDo::getMainid, apsReportRecordsDo.getId()));
|
|
- List<ApsReportOutputDo> collect = outputDos.stream().filter(item -> item.getInsepctionlevel().equals(SaveConstans.CheckLevel.WAITING_JUDGMENT)).collect(Collectors.toList());
|
|
|
|
|
|
+ List<ApsReportOutputDo> collect = outputDos.stream().filter(item -> item.getInsepctionlevel().equals(SaveConstans.CheckLevel.WAITING_JUDGMENT) || item.getQualified().equals(SaveConstans.CheckLevel.UNQUALIFIED)).collect(Collectors.toList());
|
|
List<ApsReportOutputDo> qualifiedCollect = outputDos.stream().filter(item -> !item.getInsepctionlevel().equals(SaveConstans.CheckLevel.WAITING_JUDGMENT)).collect(Collectors.toList());
|
|
List<ApsReportOutputDo> qualifiedCollect = outputDos.stream().filter(item -> !item.getInsepctionlevel().equals(SaveConstans.CheckLevel.WAITING_JUDGMENT)).collect(Collectors.toList());
|
|
if (collect.size() > 0) {
|
|
if (collect.size() > 0) {
|
|
/**
|
|
/**
|
|
* 新增需求:提交检验之前需要将检验等级为非待判的检验状态更新为已检验
|
|
* 新增需求:提交检验之前需要将检验等级为非待判的检验状态更新为已检验
|
|
*/
|
|
*/
|
|
- qualifiedCollect.forEach(info->{
|
|
|
|
|
|
+ qualifiedCollect.forEach(info -> {
|
|
info.setCheckstatus("已检验");
|
|
info.setCheckstatus("已检验");
|
|
});
|
|
});
|
|
- if (ObjectUtil.isNotEmpty(qualifiedCollect)){
|
|
|
|
|
|
+ if (ObjectUtil.isNotEmpty(qualifiedCollect)) {
|
|
apsReportOutputService.updateBatchById(qualifiedCollect);
|
|
apsReportOutputService.updateBatchById(qualifiedCollect);
|
|
}
|
|
}
|
|
return R.ok();
|
|
return R.ok();
|
|
@@ -1568,7 +1569,7 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
/**
|
|
/**
|
|
* 新增需求:新增字段保存
|
|
* 新增需求:新增字段保存
|
|
*/
|
|
*/
|
|
- insertReportNew(apsReportRecordsDo,apsProductionOrderDo,apsBlankOrderDo,apsProcessOperationDo,apsProcessOperationProcessEquDo,aspCheckItemsDo);
|
|
|
|
|
|
+ insertReportNew(apsReportRecordsDo, apsProductionOrderDo, apsBlankOrderDo, apsProcessOperationDo, apsProcessOperationProcessEquDo, aspCheckItemsDo);
|
|
|
|
|
|
//============开工时,生成炉号和批次号=============
|
|
//============开工时,生成炉号和批次号=============
|
|
//获取设备/炉 的炉号(每月、每个设备/炉 更新)
|
|
//获取设备/炉 的炉号(每月、每个设备/炉 更新)
|
|
@@ -1969,6 +1970,7 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
/**
|
|
/**
|
|
* 更新合并加工的工序作业明细相关的报工记录下面的报工记录加工参数子表数据
|
|
* 更新合并加工的工序作业明细相关的报工记录下面的报工记录加工参数子表数据
|
|
* 需求变更:前面条件成立的前提下增加查找与当前工序作业炉次号相同的数据
|
|
* 需求变更:前面条件成立的前提下增加查找与当前工序作业炉次号相同的数据
|
|
|
|
+ *
|
|
* @param apsProcessOperationDo
|
|
* @param apsProcessOperationDo
|
|
* @param apsProcessOperationProcessEquDo
|
|
* @param apsProcessOperationProcessEquDo
|
|
* @param processEquId
|
|
* @param processEquId
|
|
@@ -1989,7 +1991,7 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
if (!equIds.isEmpty()) {
|
|
if (!equIds.isEmpty()) {
|
|
List<ApsReportRecordsDo> recordsDos = this.list(new LambdaQueryWrapper<ApsReportRecordsDo>()
|
|
List<ApsReportRecordsDo> recordsDos = this.list(new LambdaQueryWrapper<ApsReportRecordsDo>()
|
|
.eq(ApsReportRecordsDo::getDeleted, "0")
|
|
.eq(ApsReportRecordsDo::getDeleted, "0")
|
|
- .eq(ApsReportRecordsDo::getHeatnumber,heatnumber)
|
|
|
|
|
|
+ .eq(ApsReportRecordsDo::getHeatnumber, heatnumber)
|
|
.in(ApsReportRecordsDo::getProcessequid, equIds)
|
|
.in(ApsReportRecordsDo::getProcessequid, equIds)
|
|
.in(ApsReportRecordsDo::getReportworkstatus, "已开工", "已报工"));
|
|
.in(ApsReportRecordsDo::getReportworkstatus, "已开工", "已报工"));
|
|
recordsDos.forEach(info -> {
|
|
recordsDos.forEach(info -> {
|
|
@@ -2063,9 +2065,9 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
if (index != -1) {
|
|
if (index != -1) {
|
|
//需要判断每条数据在当前月
|
|
//需要判断每条数据在当前月
|
|
if ("铸轧".equals(apsProcessOperationDo.getProcess())) {
|
|
if ("铸轧".equals(apsProcessOperationDo.getProcess())) {
|
|
- if (outputCode.length()>index + nowYear.length()){
|
|
|
|
|
|
+ if (outputCode.length() > index + nowYear.length()) {
|
|
nextChar = String.valueOf(outputCode.charAt(index + nowYear.length()));
|
|
nextChar = String.valueOf(outputCode.charAt(index + nowYear.length()));
|
|
- if (nodeMonthCode.equals(nextChar)){
|
|
|
|
|
|
+ if (nodeMonthCode.equals(nextChar)) {
|
|
//取出批次号最后三位字符串
|
|
//取出批次号最后三位字符串
|
|
String lastThreeChars = outputCode.substring(outputCode.length() - 3);
|
|
String lastThreeChars = outputCode.substring(outputCode.length() - 3);
|
|
//校验序列号大小是否大于等于批次号后三位
|
|
//校验序列号大小是否大于等于批次号后三位
|
|
@@ -2089,7 +2091,7 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
});
|
|
});
|
|
}
|
|
}
|
|
|
|
|
|
- private void insertReportNew(ApsReportRecordsDo apsReportRecordsDo,ApsProductionOrderDo apsProductionOrderDo,ApsBlankOrderDo apsBlankOrderDo,ApsProcessOperationDo apsProcessOperationDo,ApsProcessOperationProcessEquDo apsProcessOperationProcessEquDo,AspCheckItemsDo aspCheckItemsDo) {
|
|
|
|
|
|
+ private void insertReportNew(ApsReportRecordsDo apsReportRecordsDo, ApsProductionOrderDo apsProductionOrderDo, ApsBlankOrderDo apsBlankOrderDo, ApsProcessOperationDo apsProcessOperationDo, ApsProcessOperationProcessEquDo apsProcessOperationProcessEquDo, AspCheckItemsDo aspCheckItemsDo) {
|
|
apsReportRecordsDo.setReportorderno(apsProductionOrderDo.getOrderno());
|
|
apsReportRecordsDo.setReportorderno(apsProductionOrderDo.getOrderno());
|
|
apsReportRecordsDo.setReportcustomorderno(apsProductionOrderDo.getCustomorderno());
|
|
apsReportRecordsDo.setReportcustomorderno(apsProductionOrderDo.getCustomorderno());
|
|
apsReportRecordsDo.setReportcustomname(apsProductionOrderDo.getCustomname());
|
|
apsReportRecordsDo.setReportcustomname(apsProductionOrderDo.getCustomname());
|
|
@@ -2103,20 +2105,20 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
apsReportRecordsDo.setReportprocess(apsProcessOperationDo.getProcess());
|
|
apsReportRecordsDo.setReportprocess(apsProcessOperationDo.getProcess());
|
|
apsReportRecordsDo.setReportprocessname(apsProcessOperationDo.getProcessname());
|
|
apsReportRecordsDo.setReportprocessname(apsProcessOperationDo.getProcessname());
|
|
apsReportRecordsDo.setReportifblankprocess(apsProcessOperationDo.getIfblankprocess());
|
|
apsReportRecordsDo.setReportifblankprocess(apsProcessOperationDo.getIfblankprocess());
|
|
- if (ObjectUtil.isNotEmpty(apsProcessOperationProcessEquDo.getNextprocessesids())){
|
|
|
|
|
|
+ if (ObjectUtil.isNotEmpty(apsProcessOperationProcessEquDo.getNextprocessesids())) {
|
|
List<String> nextEquIds = Arrays.asList(apsProcessOperationProcessEquDo.getNextprocessesids().split(","));
|
|
List<String> nextEquIds = Arrays.asList(apsProcessOperationProcessEquDo.getNextprocessesids().split(","));
|
|
- List<ApsProcessOperationProcessEquDo> nextEquDos = (List<ApsProcessOperationProcessEquDo>)apsProcessOperationProcessEquService.listByIds(nextEquIds);
|
|
|
|
|
|
+ List<ApsProcessOperationProcessEquDo> nextEquDos = (List<ApsProcessOperationProcessEquDo>) apsProcessOperationProcessEquService.listByIds(nextEquIds);
|
|
List<String> workShops = nextEquDos.stream().map(ApsProcessOperationProcessEquDo::getProcessworkshop).distinct().collect(Collectors.toList());
|
|
List<String> workShops = nextEquDos.stream().map(ApsProcessOperationProcessEquDo::getProcessworkshop).distinct().collect(Collectors.toList());
|
|
List<String> devices = nextEquDos.stream().map(ApsProcessOperationProcessEquDo::getProcessdevice).distinct().collect(Collectors.toList());
|
|
List<String> devices = nextEquDos.stream().map(ApsProcessOperationProcessEquDo::getProcessdevice).distinct().collect(Collectors.toList());
|
|
- apsReportRecordsDo.setReportnextworkshop(String.join(",",workShops));
|
|
|
|
- apsReportRecordsDo.setReportnextprocessdevice(String.join(",",devices));
|
|
|
|
|
|
+ apsReportRecordsDo.setReportnextworkshop(String.join(",", workShops));
|
|
|
|
+ apsReportRecordsDo.setReportnextprocessdevice(String.join(",", devices));
|
|
List<String> nextProcessIds = nextEquDos.stream().map(ApsProcessOperationProcessEquDo::getProcessid).distinct().collect(Collectors.toList());
|
|
List<String> nextProcessIds = nextEquDos.stream().map(ApsProcessOperationProcessEquDo::getProcessid).distinct().collect(Collectors.toList());
|
|
- if (ObjectUtil.isNotEmpty(nextProcessIds)){
|
|
|
|
- List<ApsProcessOperationDo> nextProcessDos = (List<ApsProcessOperationDo>)apsProcessOperationService.listByIds(nextProcessIds);
|
|
|
|
|
|
+ if (ObjectUtil.isNotEmpty(nextProcessIds)) {
|
|
|
|
+ List<ApsProcessOperationDo> nextProcessDos = (List<ApsProcessOperationDo>) apsProcessOperationService.listByIds(nextProcessIds);
|
|
List<String> process = nextProcessDos.stream().map(ApsProcessOperationDo::getProcess).distinct().collect(Collectors.toList());
|
|
List<String> process = nextProcessDos.stream().map(ApsProcessOperationDo::getProcess).distinct().collect(Collectors.toList());
|
|
List<String> processNames = nextProcessDos.stream().map(ApsProcessOperationDo::getProcessname).distinct().collect(Collectors.toList());
|
|
List<String> processNames = nextProcessDos.stream().map(ApsProcessOperationDo::getProcessname).distinct().collect(Collectors.toList());
|
|
- apsReportRecordsDo.setReportnextprocess(String.join(",",process));
|
|
|
|
- apsReportRecordsDo.setReportnextprocessname(String.join(",",processNames));
|
|
|
|
|
|
+ apsReportRecordsDo.setReportnextprocess(String.join(",", process));
|
|
|
|
+ apsReportRecordsDo.setReportnextprocessname(String.join(",", processNames));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|