|
@@ -63,6 +63,10 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
|
private ApsReportBlankCompentService apsReportBlankCompentService;
|
|
|
@Resource
|
|
|
private CXAdminFeginClient cxAdminFeginClient;
|
|
|
+ @Autowired
|
|
|
+ private ApsCraftStepService apsCraftStepService;
|
|
|
+ @Autowired
|
|
|
+ private ApsCraftEquService apsCraftEquService;
|
|
|
|
|
|
@Override
|
|
|
@Transactional
|
|
@@ -192,6 +196,20 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
|
SysUserVo currentUser = CXCommonUtils.getCurrentUser();
|
|
|
String tenantId = currentUser.getOrganizationDoList().get(0).getFullpid().split(",")[1];
|
|
|
|
|
|
+ //查询此工序对应工艺步骤中,对应设备的设备参数
|
|
|
+ String equparames = "";
|
|
|
+ //查询工序步骤
|
|
|
+ String processcode = apsProcessOperationDo.getProcesscode();
|
|
|
+ ApsCraftStepDo craftStepDo = apsCraftStepService.getOne(new QueryWrapper<ApsCraftStepDo>().lambda().eq(ApsCraftStepDo::getProcesscode, processcode));
|
|
|
+ if (ObjectUtil.isNotEmpty(craftStepDo)) {
|
|
|
+ //查询设备参数子表
|
|
|
+ ApsCraftEquDo apsCraftEquDo = apsCraftEquService.getOne(new QueryWrapper<ApsCraftEquDo>().lambda().eq(ApsCraftEquDo::getMainid, craftStepDo.getId()).eq(ApsCraftEquDo::getResourceid, apsProcessOperationProcessEquDo.getProcessdeviceid()));
|
|
|
+ if (ObjectUtil.isNotEmpty(apsCraftEquDo)) {
|
|
|
+ equparames = apsCraftEquDo.getEquparames();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
//新增主表报工记录信息
|
|
|
ApsReportRecordsDo apsReportRecordsDo = new ApsReportRecordsDo();
|
|
|
apsReportRecordsDo.setId(SecurityUtil.getUUID());
|
|
@@ -214,6 +232,8 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
|
//报工状态
|
|
|
apsReportRecordsDo.setReportworkstatus("已开工");
|
|
|
apsReportRecordsDo.setCheckstatus("待检验");
|
|
|
+ //设备参数
|
|
|
+ apsReportRecordsDo.setDeviceparm(equparames);
|
|
|
|
|
|
//保存主表
|
|
|
this.save(apsReportRecordsDo);
|
|
@@ -304,46 +324,68 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
|
|
|
|
|
|
}
|
|
|
//=============坯料成分子表信息=============
|
|
|
- //工序作业的合金
|
|
|
- String metal = apsProcessOperationDo.getMetal();
|
|
|
- //订单的客户ID
|
|
|
- String customid = apsProductionOrderDo.getCustomid();
|
|
|
- String alloyId = "";
|
|
|
- //查询合金对应的所有主表信息
|
|
|
- List<ApsAlloyDo> apsAlloyDoList = apsAlloyService.list(new QueryWrapper<ApsAlloyDo>().lambda().eq(ApsAlloyDo::getAlloy, metal));
|
|
|
- if (ObjectUtil.isNotEmpty(apsAlloyDoList)) {
|
|
|
- //查询客户标准
|
|
|
- List<ApsAlloyDo> collect = apsAlloyDoList.stream().filter(item -> ObjectUtil.isNotEmpty(item.getCustomerid()) && item.getCustomerid().contains(customid)).collect(Collectors.toList());
|
|
|
- if (ObjectUtil.isNotEmpty(collect)) {
|
|
|
- alloyId = collect.get(0).getId();
|
|
|
- } else {//查询国标
|
|
|
- List<ApsAlloyDo> collect1 = apsAlloyDoList.stream().filter(item -> ObjectUtil.isEmpty(item.getCustomerid())).collect(Collectors.toList());
|
|
|
- if (ObjectUtil.isNotEmpty(collect1)) {
|
|
|
- alloyId = collect1.get(0).getId();
|
|
|
+ //工序作业的是否坯料工序=是 时,根据客户合金成分设置自动生成
|
|
|
+ if (apsProcessOperationDo.getIfblankprocess().equals("是")) {
|
|
|
+ //工序作业的合金
|
|
|
+ String metal = apsProcessOperationDo.getMetal();
|
|
|
+ //订单的客户ID
|
|
|
+ String customid = apsProductionOrderDo.getCustomid();
|
|
|
+ String alloyId = "";
|
|
|
+ //查询合金对应的所有主表信息
|
|
|
+ List<ApsAlloyDo> apsAlloyDoList = apsAlloyService.list(new QueryWrapper<ApsAlloyDo>().lambda().eq(ApsAlloyDo::getAlloy, metal));
|
|
|
+ if (ObjectUtil.isNotEmpty(apsAlloyDoList)) {
|
|
|
+ //查询客户标准
|
|
|
+ List<ApsAlloyDo> collect = apsAlloyDoList.stream().filter(item -> ObjectUtil.isNotEmpty(item.getCustomerid()) && item.getCustomerid().contains(customid)).collect(Collectors.toList());
|
|
|
+ if (ObjectUtil.isNotEmpty(collect)) {
|
|
|
+ alloyId = collect.get(0).getId();
|
|
|
+ } else {//查询国标
|
|
|
+ List<ApsAlloyDo> collect1 = apsAlloyDoList.stream().filter(item -> ObjectUtil.isEmpty(item.getCustomerid())).collect(Collectors.toList());
|
|
|
+ if (ObjectUtil.isNotEmpty(collect1)) {
|
|
|
+ alloyId = collect1.get(0).getId();
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
- //查询合金成分要求
|
|
|
- if (ObjectUtil.isNotEmpty(alloyId)) {
|
|
|
- List<ApsAlloyCompositionDo> apsAlloyCompositionDoList = apsAlloyCompositionService.list(new QueryWrapper<ApsAlloyCompositionDo>().lambda().eq(ApsAlloyCompositionDo::getAlloyid, alloyId));
|
|
|
-
|
|
|
- if (ObjectUtil.isNotEmpty(apsAlloyCompositionDoList)) {
|
|
|
- List<ApsReportBlankCompentDo> needInsertApsReportBlankCompentList = new LinkedList<>();
|
|
|
- for (ApsAlloyCompositionDo apsAlloyCompositionDo : apsAlloyCompositionDoList) {
|
|
|
- ApsReportBlankCompentDo apsReportBlankCompentDo = new ApsReportBlankCompentDo();
|
|
|
- apsReportBlankCompentDo.setId(SecurityUtil.getUUID());
|
|
|
- apsReportBlankCompentDo.setTenantid(tenantId);
|
|
|
- apsReportBlankCompentDo.setMainid(apsReportRecordsDo.getId());
|
|
|
- apsReportBlankCompentDo.setCompent(apsAlloyCompositionDo.getIngredient());
|
|
|
- apsReportBlankCompentDo.setStartproportion(apsAlloyCompositionDo.getLeftproportion());
|
|
|
- apsReportBlankCompentDo.setEndproportion(apsAlloyCompositionDo.getRightproportion());
|
|
|
- needInsertApsReportBlankCompentList.add(apsReportBlankCompentDo);
|
|
|
- }
|
|
|
- if (ObjectUtil.isNotEmpty(needInsertApsReportBlankCompentList)) {
|
|
|
- apsReportBlankCompentService.saveBatch(needInsertApsReportBlankCompentList);
|
|
|
- }
|
|
|
+ //查询合金成分要求
|
|
|
+ if (ObjectUtil.isNotEmpty(alloyId)) {
|
|
|
+ List<ApsAlloyCompositionDo> apsAlloyCompositionDoList = apsAlloyCompositionService.list(new QueryWrapper<ApsAlloyCompositionDo>().lambda().eq(ApsAlloyCompositionDo::getAlloyid, alloyId));
|
|
|
+
|
|
|
+ if (ObjectUtil.isNotEmpty(apsAlloyCompositionDoList)) {
|
|
|
+ List<ApsReportBlankCompentDo> needInsertApsReportBlankCompentList = new LinkedList<>();
|
|
|
+ for (ApsAlloyCompositionDo apsAlloyCompositionDo : apsAlloyCompositionDoList) {
|
|
|
+ ApsReportBlankCompentDo apsReportBlankCompentDo = new ApsReportBlankCompentDo();
|
|
|
+ apsReportBlankCompentDo.setId(SecurityUtil.getUUID());
|
|
|
+ apsReportBlankCompentDo.setTenantid(tenantId);
|
|
|
+ apsReportBlankCompentDo.setMainid(apsReportRecordsDo.getId());
|
|
|
+ apsReportBlankCompentDo.setCompent(apsAlloyCompositionDo.getIngredient());
|
|
|
+ apsReportBlankCompentDo.setStartproportion(apsAlloyCompositionDo.getLeftproportion());
|
|
|
+ apsReportBlankCompentDo.setEndproportion(apsAlloyCompositionDo.getRightproportion());
|
|
|
+ needInsertApsReportBlankCompentList.add(apsReportBlankCompentDo);
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotEmpty(needInsertApsReportBlankCompentList)) {
|
|
|
+ apsReportBlankCompentService.saveBatch(needInsertApsReportBlankCompentList);
|
|
|
+ }
|
|
|
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {//不是坯料工序,根据输入物料批次号,查询来源报工的坯料成分,copy一份
|
|
|
+ String inputBatchNumber = req.getInputBatchNumber();
|
|
|
+ //查询上一个的报工ID
|
|
|
+ String lastReportRecordId = this.baseMapper.selectLastReoprtRecordByBatchNumber(inputBatchNumber);
|
|
|
+ //查询上一个报工的坯料成分
|
|
|
+ List<ApsReportBlankCompentDo> apsReportBlankCompentDoList = apsReportBlankCompentService.list(new QueryWrapper<ApsReportBlankCompentDo>().lambda().eq(ApsReportBlankCompentDo::getMainid, lastReportRecordId));
|
|
|
+ //复制新增
|
|
|
+ List<ApsReportBlankCompentDo> needAddList = new LinkedList<>();
|
|
|
+ for (ApsReportBlankCompentDo apsReportBlankCompentDo : apsReportBlankCompentDoList) {
|
|
|
+ ApsReportBlankCompentDo needAdd = new ApsReportBlankCompentDo();
|
|
|
+ needAdd.setId(SecurityUtil.getUUID());
|
|
|
+ needAdd.setMainid(apsReportRecordsDo.getId());
|
|
|
+ needAdd.setCompent(apsReportBlankCompentDo.getCompent());
|
|
|
+ needAdd.setStartproportion(apsReportBlankCompentDo.getStartproportion());
|
|
|
+ needAdd.setEndproportion(apsReportBlankCompentDo.getEndproportion());
|
|
|
+ needAdd.setActualproportion(apsReportBlankCompentDo.getActualproportion());
|
|
|
+ needAddList.add(needAdd);
|
|
|
}
|
|
|
+ apsReportBlankCompentService.saveBatch(needAddList);
|
|
|
}
|
|
|
//更新生产状态
|
|
|
CommonUpdateProductionStatusReq req3 = new CommonUpdateProductionStatusReq();
|