|
@@ -175,6 +175,15 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
|
|
|
|
apsProcessOperationProcessEquDao.updateById(apsProcessOperationProcessEquDo);
|
|
apsProcessOperationProcessEquDao.updateById(apsProcessOperationProcessEquDo);
|
|
|
|
|
|
|
|
+ //如果没有输入批次号,取消开工需要还原
|
|
|
|
+ if (ObjectUtil.isEmpty(recordsDo.getBatchnumber())) {
|
|
|
|
+ //如果开工时间是当前月,需要取消流水号
|
|
|
|
+ if (DateUtil.month(recordsDo.getStartworktime()) == DateUtil.month(DateUtil.date())) {
|
|
|
|
+ //轧机/熔炉 对应炉号 流水号配置表中的值-1, 如果是铸轧,需要减去 输出物料的单卷数合计
|
|
|
|
+ this.cancelNumber(equDo);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
//更新其余信息
|
|
//更新其余信息
|
|
CommonUpdateProductionStatusReq commonUpdateProductionStatusReq = new CommonUpdateProductionStatusReq();
|
|
CommonUpdateProductionStatusReq commonUpdateProductionStatusReq = new CommonUpdateProductionStatusReq();
|
|
commonUpdateProductionStatusReq.setProcessOperationEquId(equDo.getId());
|
|
commonUpdateProductionStatusReq.setProcessOperationEquId(equDo.getId());
|
|
@@ -183,6 +192,29 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
return R.ok();
|
|
return R.ok();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private void cancelNumber(ApsProcessOperationProcessEquDo equDo) {
|
|
|
|
+ //炉号-1
|
|
|
|
+ //加工设备ID
|
|
|
|
+ String processdeviceid = equDo.getProcessdeviceid();
|
|
|
|
+ //在流水表中的 标识
|
|
|
|
+ String moduleCode = "aps_report_output_heat_" + processdeviceid;
|
|
|
|
+ apsProcessOperationProcessEquDao.updateSerialNumber(moduleCode, 1);
|
|
|
|
+
|
|
|
|
+ //查询坯料计划
|
|
|
|
+ ApsBlankOrderDo apsBlankOrderDo = apsBlankOrderService.getById(equDo.getBlankid());
|
|
|
|
+ if (ObjectUtil.isNotEmpty(apsBlankOrderDo.getBlanktype()) && apsBlankOrderDo.getBlanktype().equals("铸轧")) {
|
|
|
|
+ //查询 工序作业明细对应的 输出物料
|
|
|
|
+ List<ApsProcessOperationOutMaterDo> list = apsProcessOperationOutMaterService.list(new QueryWrapper<ApsProcessOperationOutMaterDo>().lambda().eq(ApsProcessOperationOutMaterDo::getMainid, equDo.getProcessid()));
|
|
|
|
+ //合计需要减的值
|
|
|
|
+ int needCancelValue = 0;
|
|
|
|
+ for (ApsProcessOperationOutMaterDo apsProcessOperationOutMaterDo : list) {
|
|
|
|
+ needCancelValue += apsProcessOperationOutMaterDo.getOutval();
|
|
|
|
+ }
|
|
|
|
+ apsProcessOperationProcessEquDao.updateSerialNumber("aps_report_output_" + processdeviceid, needCancelValue);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
@Transactional
|
|
@Transactional
|
|
public R startReport(StartRePortReq req) {
|
|
public R startReport(StartRePortReq req) {
|
|
@@ -295,8 +327,6 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
//注意事项
|
|
//注意事项
|
|
apsReportRecordsDo.setAttention(apsProcessOperationDo.getRemark());
|
|
apsReportRecordsDo.setAttention(apsProcessOperationDo.getRemark());
|
|
|
|
|
|
- //保存主表
|
|
|
|
- this.save(apsReportRecordsDo);
|
|
|
|
|
|
|
|
//=================更新工序作业明细的报工ID、已开工卷数============
|
|
//=================更新工序作业明细的报工ID、已开工卷数============
|
|
//将报工记录ID存入工序作业的设备子表中
|
|
//将报工记录ID存入工序作业的设备子表中
|
|
@@ -358,17 +388,55 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
}
|
|
}
|
|
|
|
|
|
//==========输出物料子表信息============
|
|
//==========输出物料子表信息============
|
|
- InsertMyReportOutputReq req2 = new InsertMyReportOutputReq();
|
|
|
|
- req2.setProcessId(apsProcessOperationDo.getId());
|
|
|
|
- req2.setIfBlankProcess(apsProcessOperationDo.getIfblankprocess());
|
|
|
|
- req2.setBlankType(apsBlankOrderDo.getBlanktype());
|
|
|
|
- req2.setMainId(apsReportRecordsDo.getId());
|
|
|
|
- req2.setLevel(apsProcessOperationDo.getLevel());
|
|
|
|
- R r = apsReportOutputService.insertMyReportOutputWithOutBatchNumber(req2);
|
|
|
|
|
|
+// InsertMyReportOutputReq req2 = new InsertMyReportOutputReq();
|
|
|
|
+// req2.setProcessId(apsProcessOperationDo.getId());
|
|
|
|
+// req2.setIfBlankProcess(apsProcessOperationDo.getIfblankprocess());
|
|
|
|
+// req2.setBlankType(apsBlankOrderDo.getBlanktype());
|
|
|
|
+// req2.setMainId(apsReportRecordsDo.getId());
|
|
|
|
+// req2.setLevel(apsProcessOperationDo.getLevel());
|
|
|
|
+// R r = apsReportOutputService.insertMyReportOutputWithOutBatchNumber(req2);
|
|
|
|
+// if (!r.getCode().equals("200")) {
|
|
|
|
+// return R.error(r.getMsg());
|
|
|
|
+// }
|
|
|
|
+ //============保存(报工)时,生成炉号和批次号=============
|
|
|
|
+ //获取设备/炉 的炉号(每月、每个设备/炉 更新)
|
|
|
|
+ String heatNumber;//初始化炉号
|
|
|
|
+ //调用通用接口生成炉号
|
|
|
|
+ SysSerialVo vo = new SysSerialVo();
|
|
|
|
+ vo.setModulecode("aps_report_output_heat_" + apsProcessOperationProcessEquDo.getProcessdeviceid());
|
|
|
|
+ vo.setRuleTemplateStr("@{serialNumber:#000}");
|
|
|
|
+ vo.setResetrule("date:yyyyMM");
|
|
|
|
+ vo.setIfautomaticreset("y");
|
|
|
|
+ vo.setInitValue(1L);
|
|
|
|
+ Map<String, Object> codeData = cxAdminFeginClient.getSerialNumberCode(vo).getData();
|
|
|
|
+ heatNumber = codeData.get("code").toString();
|
|
|
|
+
|
|
|
|
+ apsReportRecordsDo.setHeatnumber(heatNumber);
|
|
|
|
+ //保存主表
|
|
|
|
+ this.save(apsReportRecordsDo);
|
|
|
|
+
|
|
|
|
+ OrganizationCodeAndDeviceCodeVo organizationCodeAndDeviceCodeVo = this.baseMapper.selectOrganizationCodeAndDeviceCode(apsProcessOperationProcessEquDo.getProcessdeviceid());
|
|
|
|
+
|
|
|
|
+ InsertMyReportOutputReq insertMyReportOutputReq = new InsertMyReportOutputReq();
|
|
|
|
+ insertMyReportOutputReq.setMainId(apsReportRecordsDo.getId());
|
|
|
|
+ insertMyReportOutputReq.setProcessId(apsProcessOperationDo.getId());
|
|
|
|
+ insertMyReportOutputReq.setIfBlankProcess(apsProcessOperationDo.getIfblankprocess());
|
|
|
|
+ insertMyReportOutputReq.setDeviceId(apsProcessOperationProcessEquDo.getProcessdeviceid());
|
|
|
|
+ insertMyReportOutputReq.setMark(organizationCodeAndDeviceCodeVo.getOrganizationCode());
|
|
|
|
+ insertMyReportOutputReq.setYearCode((DateUtil.year(DateUtil.date()) % 100) + "");
|
|
|
|
+ insertMyReportOutputReq.setMonthCode(SaveConstans.MONTH_CODE_LIST.get(DateUtil.month(DateUtil.date())));
|
|
|
|
+ insertMyReportOutputReq.setEquipmentCode(organizationCodeAndDeviceCodeVo.getDeviceCode());
|
|
|
|
+ insertMyReportOutputReq.setHeatNumber(heatNumber);
|
|
|
|
+ insertMyReportOutputReq.setInputBatchNumber(apsReportRecordsDo.getBatchnumber());
|
|
|
|
+ insertMyReportOutputReq.setBlankType(apsBlankOrderDo.getBlanktype());
|
|
|
|
+ insertMyReportOutputReq.setLevel(apsProcessOperationDo.getLevel());
|
|
|
|
+
|
|
|
|
+ R r = apsReportOutputService.insertMyReportOutput(insertMyReportOutputReq);
|
|
if (!r.getCode().equals("200")) {
|
|
if (!r.getCode().equals("200")) {
|
|
- return R.error(r.getMsg());
|
|
|
|
|
|
+ throw new CustomException(r.getMsg());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
//=============加工参数子表信息、检查项目子表信息================
|
|
//=============加工参数子表信息、检查项目子表信息================
|
|
if (ObjectUtil.isNotEmpty(apsProcessOperationDo.getProcess())) {
|
|
if (ObjectUtil.isNotEmpty(apsProcessOperationDo.getProcess())) {
|
|
//根据工序查询其工序的加工参数
|
|
//根据工序查询其工序的加工参数
|
|
@@ -482,7 +550,7 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
req3.setProcessOperationEquId(apsProcessOperationProcessEquDo.getId());
|
|
req3.setProcessOperationEquId(apsProcessOperationProcessEquDo.getId());
|
|
R r2 = apsProcessOperationProcessEquService.updateProductionStatus(req3);
|
|
R r2 = apsProcessOperationProcessEquService.updateProductionStatus(req3);
|
|
if (!r2.getCode().equals("200")) {
|
|
if (!r2.getCode().equals("200")) {
|
|
- return R.error(r2.getMsg());
|
|
|
|
|
|
+ throw new CustomException(r2.getMsg());
|
|
}
|
|
}
|
|
|
|
|
|
return R.ok(apsReportRecordsDo);
|
|
return R.ok(apsReportRecordsDo);
|
|
@@ -570,20 +638,20 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
// //=============更新设备的报工记录ID===========
|
|
// //=============更新设备的报工记录ID===========
|
|
// apsProcessOperationProcessEquDao.updateEquByCancelRecord(apsReportRecordsDo.getId(), apsProcessOperationProcessEquDo.getProcessdeviceid());
|
|
// apsProcessOperationProcessEquDao.updateEquByCancelRecord(apsReportRecordsDo.getId(), apsProcessOperationProcessEquDo.getProcessdeviceid());
|
|
|
|
|
|
- //============保存(报工)时,生成炉号和批次号=============
|
|
|
|
- //获取设备/炉 的炉号(每月、每个设备/炉 更新)
|
|
|
|
- String heatNumber;//初始化炉号
|
|
|
|
- //调用通用接口生成炉号
|
|
|
|
- SysSerialVo vo = new SysSerialVo();
|
|
|
|
- vo.setModulecode("aps_report_output_heat_" + apsProcessOperationProcessEquDo.getProcessdeviceid());
|
|
|
|
- vo.setRuleTemplateStr("@{serialNumber:#000}");
|
|
|
|
- vo.setResetrule("date:yyyyMM");
|
|
|
|
- vo.setIfautomaticreset("y");
|
|
|
|
- vo.setInitValue(1L);
|
|
|
|
- Map<String, Object> codeData = cxAdminFeginClient.getSerialNumberCode(vo).getData();
|
|
|
|
- heatNumber = codeData.get("code").toString();
|
|
|
|
-
|
|
|
|
- apsReportRecordsDo.setHeatnumber(heatNumber);
|
|
|
|
|
|
+// //============保存(报工)时,生成炉号和批次号=============
|
|
|
|
+// //获取设备/炉 的炉号(每月、每个设备/炉 更新)
|
|
|
|
+// String heatNumber;//初始化炉号
|
|
|
|
+// //调用通用接口生成炉号
|
|
|
|
+// SysSerialVo vo = new SysSerialVo();
|
|
|
|
+// vo.setModulecode("aps_report_output_heat_" + apsProcessOperationProcessEquDo.getProcessdeviceid());
|
|
|
|
+// vo.setRuleTemplateStr("@{serialNumber:#000}");
|
|
|
|
+// vo.setResetrule("date:yyyyMM");
|
|
|
|
+// vo.setIfautomaticreset("y");
|
|
|
|
+// vo.setInitValue(1L);
|
|
|
|
+// Map<String, Object> codeData = cxAdminFeginClient.getSerialNumberCode(vo).getData();
|
|
|
|
+// heatNumber = codeData.get("code").toString();
|
|
|
|
+//
|
|
|
|
+// apsReportRecordsDo.setHeatnumber(heatNumber);
|
|
//报工状态
|
|
//报工状态
|
|
apsReportRecordsDo.setReportworkstatus("已报工");
|
|
apsReportRecordsDo.setReportworkstatus("已报工");
|
|
//如过报工时间为空,填入当前时间
|
|
//如过报工时间为空,填入当前时间
|
|
@@ -593,31 +661,31 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
|
|
|
|
this.updateById(apsReportRecordsDo);
|
|
this.updateById(apsReportRecordsDo);
|
|
|
|
|
|
- //物理删除原来的报工记录输出物料
|
|
|
|
- this.baseMapper.deleteOutputmaterialbyMainId(apsReportRecordsDo.getId());
|
|
|
|
-
|
|
|
|
|
|
+// //物理删除原来的报工记录输出物料
|
|
|
|
+// this.baseMapper.deleteOutputmaterialbyMainId(apsReportRecordsDo.getId());
|
|
|
|
+//
|
|
OrganizationCodeAndDeviceCodeVo organizationCodeAndDeviceCodeVo = this.baseMapper.selectOrganizationCodeAndDeviceCode(apsProcessOperationProcessEquDo.getProcessdeviceid());
|
|
OrganizationCodeAndDeviceCodeVo organizationCodeAndDeviceCodeVo = this.baseMapper.selectOrganizationCodeAndDeviceCode(apsProcessOperationProcessEquDo.getProcessdeviceid());
|
|
- if (ObjectUtil.isEmpty(organizationCodeAndDeviceCodeVo)) {
|
|
|
|
- return R.error("未找到对应的车间代号和设备代号");
|
|
|
|
- }
|
|
|
|
- InsertMyReportOutputReq insertMyReportOutputReq = new InsertMyReportOutputReq();
|
|
|
|
- insertMyReportOutputReq.setMainId(apsReportRecordsDo.getId());
|
|
|
|
- insertMyReportOutputReq.setProcessId(apsProcessOperationDo.getId());
|
|
|
|
- insertMyReportOutputReq.setIfBlankProcess(apsProcessOperationDo.getIfblankprocess());
|
|
|
|
- insertMyReportOutputReq.setDeviceId(apsProcessOperationProcessEquDo.getProcessdeviceid());
|
|
|
|
- insertMyReportOutputReq.setMark(organizationCodeAndDeviceCodeVo.getOrganizationCode());
|
|
|
|
- insertMyReportOutputReq.setYearCode((DateUtil.year(DateUtil.date()) % 100) + "");
|
|
|
|
- insertMyReportOutputReq.setMonthCode(SaveConstans.MONTH_CODE_LIST.get(DateUtil.month(DateUtil.date())));
|
|
|
|
- insertMyReportOutputReq.setEquipmentCode(organizationCodeAndDeviceCodeVo.getDeviceCode());
|
|
|
|
- insertMyReportOutputReq.setHeatNumber(heatNumber);
|
|
|
|
- insertMyReportOutputReq.setInputBatchNumber(apsReportRecordsDo.getBatchnumber());
|
|
|
|
- insertMyReportOutputReq.setBlankType(apsBlankOrderDo.getBlanktype());
|
|
|
|
- insertMyReportOutputReq.setLevel(apsProcessOperationDo.getLevel());
|
|
|
|
-
|
|
|
|
- R r = apsReportOutputService.insertMyReportOutput(insertMyReportOutputReq);
|
|
|
|
- if (!r.getCode().equals("200")) {
|
|
|
|
- return R.error(r.getMsg());
|
|
|
|
- }
|
|
|
|
|
|
+// if (ObjectUtil.isEmpty(organizationCodeAndDeviceCodeVo)) {
|
|
|
|
+// return R.error("未找到对应的车间代号和设备代号");
|
|
|
|
+// }
|
|
|
|
+// InsertMyReportOutputReq insertMyReportOutputReq = new InsertMyReportOutputReq();
|
|
|
|
+// insertMyReportOutputReq.setMainId(apsReportRecordsDo.getId());
|
|
|
|
+// insertMyReportOutputReq.setProcessId(apsProcessOperationDo.getId());
|
|
|
|
+// insertMyReportOutputReq.setIfBlankProcess(apsProcessOperationDo.getIfblankprocess());
|
|
|
|
+// insertMyReportOutputReq.setDeviceId(apsProcessOperationProcessEquDo.getProcessdeviceid());
|
|
|
|
+// insertMyReportOutputReq.setMark(organizationCodeAndDeviceCodeVo.getOrganizationCode());
|
|
|
|
+// insertMyReportOutputReq.setYearCode((DateUtil.year(DateUtil.date()) % 100) + "");
|
|
|
|
+// insertMyReportOutputReq.setMonthCode(SaveConstans.MONTH_CODE_LIST.get(DateUtil.month(DateUtil.date())));
|
|
|
|
+// insertMyReportOutputReq.setEquipmentCode(organizationCodeAndDeviceCodeVo.getDeviceCode());
|
|
|
|
+// insertMyReportOutputReq.setHeatNumber(heatNumber);
|
|
|
|
+// insertMyReportOutputReq.setInputBatchNumber(apsReportRecordsDo.getBatchnumber());
|
|
|
|
+// insertMyReportOutputReq.setBlankType(apsBlankOrderDo.getBlanktype());
|
|
|
|
+// insertMyReportOutputReq.setLevel(apsProcessOperationDo.getLevel());
|
|
|
|
+//
|
|
|
|
+// R r = apsReportOutputService.insertMyReportOutput(insertMyReportOutputReq);
|
|
|
|
+// if (!r.getCode().equals("200")) {
|
|
|
|
+// return R.error(r.getMsg());
|
|
|
|
+// }
|
|
|
|
|
|
//查询新的输出物料
|
|
//查询新的输出物料
|
|
List<ApsReportOutputDo> newOutputDos = apsReportOutputService.list(new QueryWrapper<ApsReportOutputDo>().lambda().eq(ApsReportOutputDo::getMainid, apsReportRecordsDo.getId()));
|
|
List<ApsReportOutputDo> newOutputDos = apsReportOutputService.list(new QueryWrapper<ApsReportOutputDo>().lambda().eq(ApsReportOutputDo::getMainid, apsReportRecordsDo.getId()));
|