Browse Source

Merge remote-tracking branch 'origin/master'

master
rui_li 1 month ago
parent
commit
0b9165b32d
  1. 99
      src/main/java/com/spring/modules/change/service/impl/ChangeManagementServiceImpl.java
  2. 6
      src/main/resources/mapper/sampleManagement/TechnicalSpecificationMapper.xml

99
src/main/java/com/spring/modules/change/service/impl/ChangeManagementServiceImpl.java

@ -1522,55 +1522,7 @@ public class ChangeManagementServiceImpl extends ServiceImpl<ChangeManagementMap
// cData.setWorkflowId(paramData.getWorkflowId());
// cData.setRoleId(7);
// List<PlmProcessControllBaseData> controlList = requestManageMapper.getProcessSelect2(cData);
// 如果是ECN则执行升版操作且节点勾选了特殊管控 -- 2025-10-28 特殊权限改到存储过程判断
if (Constant.ECN.equals(type)) {
ChangeRequestEntity changeRequestEntity = new ChangeRequestEntity();
changeRequestEntity.setSite(paramData.getSite());
changeRequestEntity.setChangeNo(paramData.getDocNo());
List<ChangeRequestDetailEntity> codelist = changeManagementMapper.requestDetailSearch(changeRequestEntity);
for (ChangeRequestDetailEntity detail : codelist) {
List<Object> params = new ArrayList<>();
List<Map<String, Object>> resultList;
// 判断有没有填写新物料编码
if (StringUtils.isNotBlank(detail.getNewPartNo())) { // 选择了新物料
params.add(detail.getSite());
params.add(detail.getCodeNo());
params.add(detail.getNewPartNo());
params.add(paramData.getUserName());
params.add(paramData.getDocNo());
params.add(paramData.getNodeId());
// 执行复制方法
resultList = procedureDao.getProcedureData("plm_copy_bm", params);
// 如果有新物料编码则停用之前的物料
changeManagementMapper.updatePartActive(detail.getSite(), detail.getPartNo());
} else {
// 查出BM版本号
PlmTechnicalSpecificationSheetData ptssd = changeManagementMapper.getTechnicalSpecification(detail.getSite(), detail.getCodeNo());
int revNo;
try {
revNo = Integer.parseInt(ptssd.getRevNo()) + 1;
} catch (NumberFormatException e) {
throw new RuntimeException("转换错误: 版本号不是一个有效的整数!");
}
params.add(detail.getSite());
params.add(detail.getCodeNo());
params.add(ptssd.getRevNo());
params.add(ptssd.getOriCodeNo());
params.add(revNo);
params.add(paramData.getUserName());
params.add(paramData.getDocNo());
params.add(paramData.getNodeId());
// 执行升版方法
resultList = procedureDao.getProcedureData("plm_bm_upRevNo", params);
}
//判断是否成功
String code = String.valueOf(resultList.get(0).get("resultCode"));
if ("400".equalsIgnoreCase(code)) {
String msg = String.valueOf(resultList.get(0).get("resultMsg"));
throw new RuntimeException(msg);
}
}
}
if (isRemarks.isEmpty()) { // 已结束
// 如果是BM 并且流程已结束 往plm_bm_bomplm_bm_routing中插入数据
@ -1775,7 +1727,56 @@ public class ChangeManagementServiceImpl extends ServiceImpl<ChangeManagementMap
throw new RuntimeException("统一待办异常信息:" + receiveRequestInfoResponse.getMsg());
}
}
}
// 如果是ECN则执行升版操作且节点勾选了特殊管控 -- 2025-10-28 特殊权限改到存储过程判断 -- 2025-12-05 存储过程改为修改stepId以后再升版
if (Constant.ECN.equals(type)) {
ChangeRequestEntity changeRequestEntity = new ChangeRequestEntity();
changeRequestEntity.setSite(paramData.getSite());
changeRequestEntity.setChangeNo(paramData.getDocNo());
List<ChangeRequestDetailEntity> codelist = changeManagementMapper.requestDetailSearch(changeRequestEntity);
for (ChangeRequestDetailEntity detail : codelist) {
List<Object> params = new ArrayList<>();
List<Map<String, Object>> resultList;
// 判断有没有填写新物料编码
if (StringUtils.isNotBlank(detail.getNewPartNo())) { // 选择了新物料
params.add(detail.getSite());
params.add(detail.getCodeNo());
params.add(detail.getNewPartNo());
params.add(paramData.getUserName());
params.add(paramData.getDocNo());
params.add(paramData.getNodeId());
// 执行复制方法
resultList = procedureDao.getProcedureData("plm_copy_bm", params);
// 如果有新物料编码则停用之前的物料
changeManagementMapper.updatePartActive(detail.getSite(), detail.getPartNo());
} else {
// 查出BM版本号
PlmTechnicalSpecificationSheetData ptssd = changeManagementMapper.getTechnicalSpecification(detail.getSite(), detail.getCodeNo());
int revNo;
try {
revNo = Integer.parseInt(ptssd.getRevNo()) + 1;
} catch (NumberFormatException e) {
throw new RuntimeException("转换错误: 版本号不是一个有效的整数!");
}
params.add(detail.getSite());
params.add(detail.getCodeNo());
params.add(ptssd.getRevNo());
params.add(ptssd.getOriCodeNo());
params.add(revNo);
params.add(paramData.getUserName());
params.add(paramData.getDocNo());
params.add(paramData.getNodeId());
// 执行升版方法
resultList = procedureDao.getProcedureData("plm_bm_upRevNo", params);
}
//判断是否成功
String code = String.valueOf(resultList.get(0).get("resultCode"));
if ("400".equalsIgnoreCase(code)) {
String msg = String.valueOf(resultList.get(0).get("resultMsg"));
throw new RuntimeException(msg);
}
}
}
}

6
src/main/resources/mapper/sampleManagement/TechnicalSpecificationMapper.xml

@ -2862,8 +2862,8 @@
left join plm_customer_information as pci on pcpi.site = pci.site and pcpi.customer_no = pci.customer_no
<if test="cutterNumber != null and cutterNumber != ''">
inner join plm_bm_prepress pbp on pbp.Site = a.site and pbp.code_no = a.code_no and
(plateNo like #{query.cutterNumber} or
cutterNumber like #{query.cutterNumber})
(plateNo like #{cutterNumber} or
cutterNumber like #{cutterNumber})
</if>
<if test="whereClause != null and whereClause != ''">
WHERE ${whereClause}
@ -2965,7 +2965,7 @@
ORDER BY ${orderClause}
</if>
<if test="orderClause == null or orderClause == ''">
ORDER BY a.id
ORDER BY a.ori_code_no desc, a.rev_no desc
</if>
</select>

Loading…
Cancel
Save