|
|
|
@ -191,28 +191,12 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
technicalSpecificationMapper.updateProjectPartNowBm(inData); |
|
|
|
} else { |
|
|
|
// 修改操作 |
|
|
|
// PlmProjectInfoData checkPlmProjectInfoData=projectDao.checkPlmProjectInfoData(inData); |
|
|
|
// if(!checkPlmProjectInfoData.getCustomerId().equals(inData.getCustomerId())){ |
|
|
|
// PlmProjectContactData projectContactData=new PlmProjectContactData(); |
|
|
|
// projectContactData.setSite(checkPlmProjectInfoData.getSite()); |
|
|
|
// projectContactData.setProjectId(checkPlmProjectInfoData.getProjectId()); |
|
|
|
// projectDao.deleteProjectContact(projectContactData); |
|
|
|
// } |
|
|
|
inData.setUpdateBy(sysUserEntity.getUsername()); |
|
|
|
technicalSpecificationMapper.updateTechnicalSpecificationSheet(inData); |
|
|
|
// 删除所有人员 |
|
|
|
technicalSpecificationMapper.deleteTechnicalSpecificationTeamsForBase(inData); |
|
|
|
} |
|
|
|
// --处理人员数据 修改已提前删除所有人员 |
|
|
|
// 前端已注释 |
|
|
|
// for (int i = 0; i <inData.getQuotationOfficerList().size() ; i++) { |
|
|
|
// PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData(); |
|
|
|
// teamData.setSite(inData.getSite()); |
|
|
|
// teamData.setOperatorId(inData.getQuotationOfficerList().get(i)); |
|
|
|
// teamData.setCodeNo(inData.getCodeNo()); |
|
|
|
// teamData.setType("quotationOfficer"); |
|
|
|
// plmTechnicalSpecificationTeams.add(teamData); |
|
|
|
// } |
|
|
|
// CS |
|
|
|
for (int i = 0; i < inData.getCsOperatorList().size() ; i++) { |
|
|
|
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData(); |
|
|
|
@ -240,6 +224,15 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
teamData.setType("technician"); |
|
|
|
plmTechnicalSpecificationTeams.add(teamData); |
|
|
|
} |
|
|
|
// qualityEngineer |
|
|
|
for (int i = 0; i < inData.getQualityEngineerList().size() ; i++) { |
|
|
|
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData(); |
|
|
|
teamData.setSite(inData.getSite()); |
|
|
|
teamData.setOperatorId(inData.getQualityEngineerList().get(i)); |
|
|
|
teamData.setCodeNo(inData.getCodeNo()); |
|
|
|
teamData.setType("qualityEngineer"); |
|
|
|
plmTechnicalSpecificationTeams.add(teamData); |
|
|
|
} |
|
|
|
// Technical |
|
|
|
for (int i = 0; i < inData.getMpOperatorList().size() ; i++) { |
|
|
|
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData(); |
|
|
|
@ -286,9 +279,6 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
plmTechnicalSpecificationTeams.add(teamData); |
|
|
|
} |
|
|
|
// 新增人员 |
|
|
|
// for (PlmTechnicalSpecificationTeamData plmTechnicalSpecificationTeam : plmTechnicalSpecificationTeams) { |
|
|
|
// technicalSpecificationMapper.saveTechnicalSpecificationTeams(plmTechnicalSpecificationTeam); |
|
|
|
// } |
|
|
|
int batchSize = 25; |
|
|
|
List<PlmTechnicalSpecificationTeamData> teams = plmTechnicalSpecificationTeams; |
|
|
|
int totalSize = teams.size(); |
|
|
|
@ -297,7 +287,6 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
List<PlmTechnicalSpecificationTeamData> batchList = teams.subList(startIndex, endIndex); |
|
|
|
technicalSpecificationMapper.saveBatchTechnicalSpecificationTeams(batchList); |
|
|
|
} |
|
|
|
// PlmProjectInfo plmProjectInfo=projectDao.getProjectData(inData.getSite(),inData.getProjectId()); |
|
|
|
inData.setBuNo(checkPart.get(0).getBuNo()); |
|
|
|
return inData; |
|
|
|
|
|
|
|
@ -357,15 +346,6 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
technicalSpecificationMapper.updateBMBasicInformation(inData); |
|
|
|
technicalSpecificationMapper.deleteTechnicalSpecificationTeamsForBase(inData); |
|
|
|
|
|
|
|
// for (int i = 0; i <inData.getQuotationOfficerList().size() ; i++) { |
|
|
|
// PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData(); |
|
|
|
// teamData.setSite(inData.getSite()); |
|
|
|
// teamData.setOperatorId(inData.getQuotationOfficerList().get(i)); |
|
|
|
// teamData.setCodeNo(inData.getCodeNo()); |
|
|
|
// teamData.setType("quotationOfficer"); |
|
|
|
// plmTechnicalSpecificationTeams.add(teamData); |
|
|
|
// } |
|
|
|
|
|
|
|
// CS |
|
|
|
for (int i = 0; i < inData.getCsOperatorList().size() ; i++) { |
|
|
|
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData(); |
|
|
|
@ -393,6 +373,15 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
teamData.setType("technician"); |
|
|
|
plmTechnicalSpecificationTeams.add(teamData); |
|
|
|
} |
|
|
|
// qualityEngineer |
|
|
|
for (int i = 0; i < inData.getQualityEngineerList().size() ; i++) { |
|
|
|
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData(); |
|
|
|
teamData.setSite(inData.getSite()); |
|
|
|
teamData.setOperatorId(inData.getQualityEngineerList().get(i)); |
|
|
|
teamData.setCodeNo(inData.getCodeNo()); |
|
|
|
teamData.setType("qualityEngineer"); |
|
|
|
plmTechnicalSpecificationTeams.add(teamData); |
|
|
|
} |
|
|
|
// Technical |
|
|
|
for (int i = 0; i < inData.getMpOperatorList().size() ; i++) { |
|
|
|
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData(); |
|
|
|
@ -439,9 +428,6 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
plmTechnicalSpecificationTeams.add(teamData); |
|
|
|
} |
|
|
|
// 新增人员 |
|
|
|
// for (PlmTechnicalSpecificationTeamData plmTechnicalSpecificationTeam : plmTechnicalSpecificationTeams) { |
|
|
|
// technicalSpecificationMapper.saveTechnicalSpecificationTeams(plmTechnicalSpecificationTeam); |
|
|
|
// } |
|
|
|
int batchSize = 25; |
|
|
|
List<PlmTechnicalSpecificationTeamData> teams = plmTechnicalSpecificationTeams; |
|
|
|
int totalSize = teams.size(); |
|
|
|
@ -1574,7 +1560,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
List<PlmTechnicalSpecificationTeamData> css = operatorList.stream().filter(a -> "cs".equals(a.getType())).collect(Collectors.toList()); // Select CS |
|
|
|
List<PlmTechnicalSpecificationTeamData> mps = operatorList.stream().filter(a -> "mp".equals(a.getType())).collect(Collectors.toList()); // Select Technical |
|
|
|
List<PlmTechnicalSpecificationTeamData> plans = operatorList.stream().filter(a -> "plan".equals(a.getType())).collect(Collectors.toList()); // Select CS |
|
|
|
|
|
|
|
List<PlmTechnicalSpecificationTeamData> qualityEngineers = operatorList.stream().filter(a -> "qualityEngineer".equals(a.getType())).collect(Collectors.toList()); // Select Artwork |
|
|
|
// 根据字段对应的数据库表+字段查询出数据 |
|
|
|
for (PlmRequestDetailVo nodeDetail : nodeDetails) { |
|
|
|
if (nodeDetail.getId() == null) { |
|
|
|
@ -1625,6 +1611,15 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
} |
|
|
|
fieldValues.append(oaIds.get(0).getId()).append(","); |
|
|
|
} |
|
|
|
} else if ("qualityEngineerList".equals(nodeDetail.getPlmField())) { |
|
|
|
for (PlmTechnicalSpecificationTeamData qualityEngineer : qualityEngineers) { |
|
|
|
// 根据域控账号获取oa人员id |
|
|
|
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(qualityEngineer.getDomainControlAccount()); |
|
|
|
if (oaIds.isEmpty()) { |
|
|
|
throw new RuntimeException("未获取到域控账号对应的OA人员!"); |
|
|
|
} |
|
|
|
fieldValues.append(oaIds.get(0).getId()).append(","); |
|
|
|
} |
|
|
|
} else if ("dccList".equals(nodeDetail.getPlmField())) { |
|
|
|
for (PlmTechnicalSpecificationTeamData dcc : dccs) { |
|
|
|
// 根据域控账号获取oa人员id |
|
|
|
@ -1731,6 +1726,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
List<PlmTechnicalSpecificationTeamData> css = operatorList.stream().filter(a -> "cs".equals(a.getType())).collect(Collectors.toList()); |
|
|
|
List<PlmTechnicalSpecificationTeamData> mps = operatorList.stream().filter(a -> "mp".equals(a.getType())).collect(Collectors.toList()); |
|
|
|
List<PlmTechnicalSpecificationTeamData> plans = operatorList.stream().filter(a -> "plan".equals(a.getType())).collect(Collectors.toList()); |
|
|
|
List<PlmTechnicalSpecificationTeamData> qualityEngineers = operatorList.stream().filter(a -> "qualityEngineer".equals(a.getType())).collect(Collectors.toList()); // Select Artwork |
|
|
|
|
|
|
|
|
|
|
|
ParamData paramData = new ParamData(data.getSite(), baseData.get("nodeId"), baseData.get("nodeName"), data.getCodeNo(), data.getUserName(), baseData.get("classificationNo"), |
|
|
|
@ -1751,7 +1747,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
List<MainData> mainData = getMainData(data.getSite(), baseData, changeRequest, engineers, technicians, dccs, cqcs, fais, css, mps, plans); |
|
|
|
List<MainData> mainData = getMainData(data.getSite(), baseData, changeRequest, engineers, technicians, dccs, cqcs, fais, css, mps, plans, qualityEngineers); |
|
|
|
paramData.setMainData(mainData); |
|
|
|
SubmitRequestParam submitRequestParam = new SubmitRequestParam(); |
|
|
|
submitRequestParam.setUserId(paramData.getUserId()); |
|
|
|
@ -1872,6 +1868,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
List<PlmTechnicalSpecificationTeamData> css = operatorList.stream().filter(a -> "cs".equals(a.getType())).collect(Collectors.toList()); |
|
|
|
List<PlmTechnicalSpecificationTeamData> mps = operatorList.stream().filter(a -> "mp".equals(a.getType())).collect(Collectors.toList()); |
|
|
|
List<PlmTechnicalSpecificationTeamData> plans = operatorList.stream().filter(a -> "plan".equals(a.getType())).collect(Collectors.toList()); |
|
|
|
List<PlmTechnicalSpecificationTeamData> qualityEngineers = operatorList.stream().filter(a -> "qualityEngineer".equals(a.getType())).collect(Collectors.toList()); // Select Artwork |
|
|
|
|
|
|
|
ParamData paramData = new ParamData(data.getSite(), baseData.get("nodeId"), baseData.get("nodeName"), data.getDocumentNo(), data.getUserName(), baseData.get("classificationNo"), |
|
|
|
baseData.get("userId"), baseData.get("workflowId"), baseData.get("workflowname"), baseData.get("requestName"), baseData.get("path"), baseData.get("requestId"), |
|
|
|
@ -1881,7 +1878,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
paramData.setRevisionNo(data.getRevisionNo()); |
|
|
|
// 如果是节点更新则调用提交流程接口,反之则跳过这一步 |
|
|
|
if ("update".equals(data.getProcessFlag())) { |
|
|
|
List<MainData> mainData = getMainData(data.getSite(), baseData, changeRequest, engineers, technicians, dccs, cqcs, fais, css, mps, plans); |
|
|
|
List<MainData> mainData = getMainData(data.getSite(), baseData, changeRequest, engineers, technicians, dccs, cqcs, fais, css, mps, plans, qualityEngineers); |
|
|
|
paramData.setMainData(mainData); |
|
|
|
SubmitRequestParam submitRequestParam = new SubmitRequestParam(); |
|
|
|
submitRequestParam.setUserId(data.getUpdateBy()); |
|
|
|
@ -1912,7 +1909,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
public List<MainData> getMainData(String site, Map<String, String> baseData, PlmTechnicalSpecificationSheet changeRequest, List<PlmTechnicalSpecificationTeamData> engineers, |
|
|
|
List<PlmTechnicalSpecificationTeamData> technicians, List<PlmTechnicalSpecificationTeamData> dccs, List<PlmTechnicalSpecificationTeamData> cqcs, |
|
|
|
List<PlmTechnicalSpecificationTeamData> fais, List<PlmTechnicalSpecificationTeamData> css, List<PlmTechnicalSpecificationTeamData> mps, |
|
|
|
List<PlmTechnicalSpecificationTeamData> plans) { |
|
|
|
List<PlmTechnicalSpecificationTeamData> plans, List<PlmTechnicalSpecificationTeamData> qualityEngineers) { |
|
|
|
// 创建 mainData |
|
|
|
List<MainData> mainData = new ArrayList<>(); |
|
|
|
List<PlmRequestDetailVo> nodeDetails = changeManagementMapper.queryNodeDetails(site, baseData.get("workflowId"), baseData.get("nodeId"), baseData.get("classificationNo")); |
|
|
|
@ -1958,7 +1955,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
} |
|
|
|
fieldValues.append(oaIds.get(0).getId()).append(","); |
|
|
|
} |
|
|
|
} else if ("technicianList".equals(nodeDetail.getPlmField())) { |
|
|
|
} else if ("technicianList".equals(nodeDetail.getPlmField())) { |
|
|
|
for (PlmTechnicalSpecificationTeamData technician : technicians) { |
|
|
|
// 根据域控账号获取oa人员id |
|
|
|
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(technician.getDomainControlAccount()); |
|
|
|
@ -1967,6 +1964,15 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification |
|
|
|
} |
|
|
|
fieldValues.append(oaIds.get(0).getId()).append(","); |
|
|
|
} |
|
|
|
} else if ("qualityEngineerList".equals(nodeDetail.getPlmField())) { |
|
|
|
for (PlmTechnicalSpecificationTeamData qualityEngineer : qualityEngineers) { |
|
|
|
// 根据域控账号获取oa人员id |
|
|
|
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(qualityEngineer.getDomainControlAccount()); |
|
|
|
if (oaIds.isEmpty()) { |
|
|
|
throw new RuntimeException("未获取到域控账号对应的OA人员!"); |
|
|
|
} |
|
|
|
fieldValues.append(oaIds.get(0).getId()).append(","); |
|
|
|
} |
|
|
|
} else if ("dccList".equals(nodeDetail.getPlmField())) { |
|
|
|
for (PlmTechnicalSpecificationTeamData dcc : dccs) { |
|
|
|
// 根据域控账号获取oa人员id |
|
|
|
|