Browse Source

2025-06-05

字段授权没生效
master
fengyuan_yang 9 months ago
parent
commit
368edfe7f5
  1. 24
      src/main/java/com/spring/modules/request/service/impl/RequestManageServiceImpl.java
  2. 20
      src/main/java/com/spring/modules/sampleManagement/data/PlmTechnicalSpecificationSheetData.java
  3. 210
      src/main/java/com/spring/modules/sampleManagement/service/Impl/TechnicalSpecificationServiceImpl.java
  4. 56
      src/main/resources/mapper/quotation/QuotationInformationMapper.xml
  5. 344
      src/main/resources/mapper/sampleManagement/TechnicalSpecificationMapper.xml

24
src/main/java/com/spring/modules/request/service/impl/RequestManageServiceImpl.java

@ -206,15 +206,17 @@ public class RequestManageServiceImpl extends ServiceImpl<RequestManageMapper, P
*/
@Override
public List<PlmFieldData> getFieldList(TableData inData) {
if ("plm_technicalSpecification_team".equals(inData.getTableId())) { // 针对BM的多选人员字段
List<PlmFieldData> relList = new ArrayList<>();
relList.add(new PlmFieldData("operatorId#engineer", "PE Engineer"));
relList.add(new PlmFieldData("operatorId#technician", "Artwork"));
relList.add(new PlmFieldData("operatorId#dcc", "DCC"));
relList.add(new PlmFieldData("operatorId#cqc", "CQC"));
relList.add(new PlmFieldData("operatorId#fai", "FAI"));
return relList;
}
// if ("plm_technicalSpecification_team".equals(inData.getTableId())) { // 针对BM的多选人员字段
// List<PlmFieldData> relList = new ArrayList<>();
// relList.add(new PlmFieldData("operatorId#cs", "CS"));
// relList.add(new PlmFieldData("operatorId#engineer", "PE Engineer"));
// relList.add(new PlmFieldData("operatorId#technician", "Artwork"));
// relList.add(new PlmFieldData("operatorId#mp", "Technical"));
// relList.add(new PlmFieldData("operatorId#dcc", "DCC"));
// relList.add(new PlmFieldData("operatorId#cqc", "CQC"));
// relList.add(new PlmFieldData("operatorId#fai", "FAI"));
// return relList;
// }
List<PlmFieldData> list = requestManageMapper.getFieldList(inData);
// 下划线转驼峰
List<PlmFieldData> collect = list.stream().map(a -> {
@ -233,9 +235,9 @@ public class RequestManageServiceImpl extends ServiceImpl<RequestManageMapper, P
public List<PlmFieldData> getAuthorityFieldList(TableData inData) {
List<PlmFieldData> list = requestManageMapper.getAuthorityFieldList(inData);
for (PlmFieldData plmFieldData : list) {
if("Y".equals(plmFieldData.getUpdateFlag())){
if ("Y".equals(plmFieldData.getUpdateFlag())) {
plmFieldData.setUpdateCheck(true);
}else {
} else {
plmFieldData.setUpdateCheck(false);
}
}

20
src/main/java/com/spring/modules/sampleManagement/data/PlmTechnicalSpecificationSheetData.java

@ -92,6 +92,26 @@ public class PlmTechnicalSpecificationSheetData extends PlmTechnicalSpecificatio
this.documentSource = documentSource;
}
private List<String> csOperatorList;
private List<String> mpOperatorList;
public List<String> getMpOperatorList() {
return mpOperatorList;
}
public void setMpOperatorList(List<String> mpOperatorList) {
this.mpOperatorList = mpOperatorList;
}
public List<String> getCsOperatorList() {
return csOperatorList;
}
public void setCsOperatorList(List<String> csOperatorList) {
this.csOperatorList = csOperatorList;
}
public List<String> getCqcOperatorList() {
return cqcOperatorList;
}

210
src/main/java/com/spring/modules/sampleManagement/service/Impl/TechnicalSpecificationServiceImpl.java

@ -122,43 +122,46 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
@Transactional
public PlmTechnicalSpecificationSheetData saveTechnicalSpecificationSheet(PlmTechnicalSpecificationSheetData inData){
SysUserEntity sysUserEntity = (SysUserEntity) SecurityUtils.getSubject().getPrincipal();
List<PlmTechnicalSpecificationTeamData> plmTechnicalSpecificationTeams=new ArrayList<>();
PlmProjectPartData searchTestPart=new PlmProjectPartData();
List<PlmTechnicalSpecificationTeamData> plmTechnicalSpecificationTeams = new ArrayList<>();
PlmProjectPartData searchTestPart = new PlmProjectPartData();
searchTestPart.setSite(inData.getSite());
searchTestPart.setTestPartNo(inData.getTestPartNo());
List<PlmProjectPartData> checkPart=quotationInformationMapper.getProjectPartList(searchTestPart);
if(checkPart.isEmpty()){
List<PlmProjectPartData> checkPart = quotationInformationMapper.getProjectPartList(searchTestPart);
if (checkPart.isEmpty()) {
throw new RuntimeException("项目物料不存在");
}
if("".equals(checkPart.get(0).getFinalPartNo())||checkPart.get(0).getFinalPartNo()==null){
if ("".equals(checkPart.get(0).getFinalPartNo()) || checkPart.get(0).getFinalPartNo() == null) {
throw new RuntimeException("该物料没有生成正式物料!");
}
List<PartInformationEntity> partList =
partInformationMapper.selectList(new LambdaQueryWrapper<PartInformationEntity>()
List<PartInformationEntity> partList = partInformationMapper.selectList(new LambdaQueryWrapper<PartInformationEntity>()
.eq(PartInformationEntity::getPartNo, checkPart.get(0).getFinalPartNo())
.eq(PartInformationEntity::getSite, inData.getSite()));
if(partList.isEmpty()){
if (partList.isEmpty()) {
throw new RuntimeException("该正式料号不在物料清单内!");
}
if(inData.getId()==0){
if (inData.getId() == 0) {
// 新增
//根据生效日期查询bom版本号
BomHeaderEntity bomHeaderEntity=technicalSpecificationMapper.getBomNowRevNo(inData.getSite(),checkPart.get(0).getFinalPartNo());
if(!Objects.isNull(bomHeaderEntity)){
BomHeaderEntity bomHeaderEntity = technicalSpecificationMapper.getBomNowRevNo(inData.getSite(),checkPart.get(0).getFinalPartNo());
if (!Objects.isNull(bomHeaderEntity)) {
inData.setBomType(bomHeaderEntity.getBomType());
inData.setEngChgLevel(bomHeaderEntity.getEngChgLevel());
BomDetailEntity bomDetailEntity=technicalSpecificationMapper.getTopOneBomAlternativeNo(bomHeaderEntity);
if(!Objects.isNull(bomDetailEntity)){
if (!Objects.isNull(bomDetailEntity)) {
inData.setBomAlternativeNo(bomDetailEntity.getAlternativeNo());
}
}
//根据生效日期查询Route版本号
RoutingHeaderEntity routingHeaderEntity=technicalSpecificationMapper.getRouteNowRevNo(inData.getSite(),checkPart.get(0).getFinalPartNo());
if(!Objects.isNull(routingHeaderEntity)){
RoutingHeaderEntity routingHeaderEntity = technicalSpecificationMapper.getRouteNowRevNo(inData.getSite(),checkPart.get(0).getFinalPartNo());
if (!Objects.isNull(routingHeaderEntity)) {
inData.setRoutingType(routingHeaderEntity.getRoutingType());
inData.setRoutingRevision(routingHeaderEntity.getRoutingRevision());
RoutingDetailEntity routingDetailEntity=technicalSpecificationMapper.getTopOneRouteAlternativeNo(routingHeaderEntity);
if(!Objects.isNull(routingDetailEntity)){
RoutingDetailEntity routingDetailEntity = technicalSpecificationMapper.getTopOneRouteAlternativeNo(routingHeaderEntity);
if (!Objects.isNull(routingDetailEntity)) {
inData.setRoutingAlternativeNo(routingDetailEntity.getAlternativeNo());
}
}
@ -171,7 +174,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
technicalSpecificationMapper.saveTechnicalSpecificationSheet(inData);
// 修改参数
technicalSpecificationMapper.updateProjectPartNowBm(inData);
}else {
} else {
// 修改操作
// PlmProjectInfoData checkPlmProjectInfoData=projectDao.checkPlmProjectInfoData(inData);
// if(!checkPlmProjectInfoData.getCustomerId().equals(inData.getCustomerId())){
@ -187,35 +190,53 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
// --处理人员数据 修改已提前删除所有人员
// 前端已注释
for (int i = 0; i <inData.getQuotationOfficerList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
// 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();
teamData.setSite(inData.getSite());
teamData.setOperatorId(inData.getQuotationOfficerList().get(i));
teamData.setOperatorId(inData.getCsOperatorList().get(i));
teamData.setCodeNo(inData.getCodeNo());
teamData.setType("quotationOfficer");
teamData.setType("cs");
plmTechnicalSpecificationTeams.add(teamData);
}
// 前端已注释
for (int i = 0; i <inData.getEngineerList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
// Engineer
for (int i = 0; i < inData.getEngineerList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(inData.getEngineerList().get(i));
teamData.setCodeNo(inData.getCodeNo());
teamData.setType("engineer");
plmTechnicalSpecificationTeams.add(teamData);
}
// 前端已注释
for (int i = 0; i <inData.getTechnicianList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
// Artwork
for (int i = 0; i < inData.getTechnicianList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(inData.getTechnicianList().get(i));
teamData.setCodeNo(inData.getCodeNo());
teamData.setType("technician");
plmTechnicalSpecificationTeams.add(teamData);
}
// DCC人员处理
for (int i = 0; i <inData.getDccList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
// Technical
for (int i = 0; i < inData.getMpOperatorList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(inData.getMpOperatorList().get(i));
teamData.setCodeNo(inData.getCodeNo());
teamData.setType("mp");
plmTechnicalSpecificationTeams.add(teamData);
}
// DCC
for (int i = 0; i < inData.getDccList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(inData.getDccList().get(i));
teamData.setCodeNo(inData.getCodeNo());
@ -224,16 +245,16 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
// CQC
for (String cqc : inData.getCqcOperatorList()) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(cqc);
teamData.setCodeNo(inData.getCodeNo());
teamData.setType("cqc");
plmTechnicalSpecificationTeams.add(teamData);
}
//FAI
// FAI
for (String fai : inData.getFaiOperatorList()) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(fai);
teamData.setCodeNo(inData.getCodeNo());
@ -305,36 +326,59 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
@Override
public void updateBMBasicInformation(PlmTechnicalSpecificationSheetData inData){
SysUserEntity sysUserEntity = (SysUserEntity) SecurityUtils.getSubject().getPrincipal();
List<PlmTechnicalSpecificationTeamData> plmTechnicalSpecificationTeams=new ArrayList<>();
List<PlmTechnicalSpecificationTeamData> plmTechnicalSpecificationTeams = new ArrayList<>();
inData.setUpdateBy(sysUserEntity.getUsername());
technicalSpecificationMapper.updateBMBasicInformation(inData);
technicalSpecificationMapper.deleteTechnicalSpecificationTeamsForBase(inData);
for (int i = 0; i <inData.getQuotationOfficerList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
// 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();
teamData.setSite(inData.getSite());
teamData.setOperatorId(inData.getQuotationOfficerList().get(i));
teamData.setOperatorId(inData.getCsOperatorList().get(i));
teamData.setCodeNo(inData.getCodeNo());
teamData.setType("quotationOfficer");
teamData.setType("cs");
plmTechnicalSpecificationTeams.add(teamData);
}
for (int i = 0; i <inData.getEngineerList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
// Engineer
for (int i = 0; i < inData.getEngineerList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(inData.getEngineerList().get(i));
teamData.setCodeNo(inData.getCodeNo());
teamData.setType("engineer");
plmTechnicalSpecificationTeams.add(teamData);
}
for (int i = 0; i <inData.getTechnicianList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
// Artwork
for (int i = 0; i < inData.getTechnicianList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(inData.getTechnicianList().get(i));
teamData.setCodeNo(inData.getCodeNo());
teamData.setType("technician");
plmTechnicalSpecificationTeams.add(teamData);
}
for (int i = 0; i <inData.getDccList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
// Technical
for (int i = 0; i < inData.getMpOperatorList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(inData.getMpOperatorList().get(i));
teamData.setCodeNo(inData.getCodeNo());
teamData.setType("mp");
plmTechnicalSpecificationTeams.add(teamData);
}
// DCC
for (int i = 0; i < inData.getDccList().size() ; i++) {
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(inData.getDccList().get(i));
teamData.setCodeNo(inData.getCodeNo());
@ -343,16 +387,16 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
// CQC
for (String cqc : inData.getCqcOperatorList()) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(cqc);
teamData.setCodeNo(inData.getCodeNo());
teamData.setType("cqc");
plmTechnicalSpecificationTeams.add(teamData);
}
//FAI
// FAI
for (String fai : inData.getFaiOperatorList()) {
PlmTechnicalSpecificationTeamData teamData=new PlmTechnicalSpecificationTeamData();
PlmTechnicalSpecificationTeamData teamData = new PlmTechnicalSpecificationTeamData();
teamData.setSite(inData.getSite());
teamData.setOperatorId(fai);
teamData.setCodeNo(inData.getCodeNo());
@ -1263,9 +1307,12 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
PlmTechnicalSpecificationSheet changeRequest = technicalSpecificationMapper.selectTechnicalSpecification(data.getSite(), data.getCodeNo());
// 人员信息
List<PlmTechnicalSpecificationTeamData> operatorList = technicalSpecificationMapper.selectTechnicalSpecificationTeam(data.getSite(), data.getCodeNo());
List<PlmTechnicalSpecificationTeamData> engineers = operatorList.stream().filter(a -> "engineer".equals(a.getType())).collect(Collectors.toList());
List<PlmTechnicalSpecificationTeamData> technicians = operatorList.stream().filter(a -> "technician".equals(a.getType())).collect(Collectors.toList());
List<PlmTechnicalSpecificationTeamData> dccs = operatorList.stream().filter(a -> "dcc".equals(a.getType())).collect(Collectors.toList());
List<PlmTechnicalSpecificationTeamData> engineers = operatorList.stream().filter(a -> "engineer".equals(a.getType())).collect(Collectors.toList()); // Select Engineer
List<PlmTechnicalSpecificationTeamData> technicians = operatorList.stream().filter(a -> "technician".equals(a.getType())).collect(Collectors.toList()); // Select Artwork
List<PlmTechnicalSpecificationTeamData> dccs = operatorList.stream().filter(a -> "dcc".equals(a.getType())).collect(Collectors.toList()); // Select DCC
// 2025-06-05 检查到cqc和fai人员没有查 但是海波表示功能正常 先不管
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
// 根据字段对应的数据库表+字段查询出数据
for (PlmRequestDetailVo nodeDetail : nodeDetails) {
@ -1299,7 +1346,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
}
} else if ("plm_technicalSpecification_team".equals(nodeDetail.getPlmTable())) { // 多选人员表
if ("engineer".equals(nodeDetail.getPlmField().split("#")[1])) {
if ("engineerList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData engineer : engineers) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(engineer.getDomainControlAccount());
@ -1308,7 +1355,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
} else if ("technician".equals(nodeDetail.getPlmField().split("#")[1])) {
} else if ("technicianList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData technician : technicians) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(technician.getDomainControlAccount());
@ -1317,7 +1364,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
} else if ("dcc".equals(nodeDetail.getPlmField().split("#")[1])) {
} else if ("dccList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData dcc : dccs) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(dcc.getDomainControlAccount());
@ -1326,6 +1373,24 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
} else if ("csOperatorList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData cs : css) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(cs.getDomainControlAccount());
if (oaIds.isEmpty()) {
throw new RuntimeException("未获取到域控账号对应的OA人员!");
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
} else if ("mpOperatorList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData mp : mps) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(mp.getDomainControlAccount());
if (oaIds.isEmpty()) {
throw new RuntimeException("未获取到域控账号对应的OA人员!");
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
}
fieldValue = fieldValues.length() > 0 ? fieldValues.substring(0, fieldValues.length() - 1) : "";
}
@ -1393,6 +1458,9 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
List<PlmTechnicalSpecificationTeamData> dccs = operatorList.stream().filter(a -> "dcc".equals(a.getType())).collect(Collectors.toList());
List<PlmTechnicalSpecificationTeamData> cqcs = operatorList.stream().filter(a -> "cqc".equals(a.getType())).collect(Collectors.toList());
List<PlmTechnicalSpecificationTeamData> fais = operatorList.stream().filter(a -> "fai".equals(a.getType())).collect(Collectors.toList());
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());
ParamData paramData = new ParamData(data.getSite(), baseData.get("nodeId"), baseData.get("nodeName"), data.getCodeNo(), data.getUserName(), baseData.get("classificationNo"),
baseData.get("userId"), baseData.get("workflowId"), baseData.get("workflowname"), baseData.get("requestName"), baseData.get("path"), baseData.get("requestId"),
@ -1412,7 +1480,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
}
List<MainData> mainData = getMainData(data.getSite(), baseData, changeRequest, engineers, technicians, dccs, cqcs, fais);
List<MainData> mainData = getMainData(data.getSite(), baseData, changeRequest, engineers, technicians, dccs, cqcs, fais, css, mps);
paramData.setMainData(mainData);
SubmitRequestParam submitRequestParam = new SubmitRequestParam();
submitRequestParam.setUserId(paramData.getUserId());
@ -1530,6 +1598,8 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
List<PlmTechnicalSpecificationTeamData> dccs = operatorList.stream().filter(a -> "dcc".equals(a.getType())).collect(Collectors.toList());
List<PlmTechnicalSpecificationTeamData> cqcs = operatorList.stream().filter(a -> "cqc".equals(a.getType())).collect(Collectors.toList());
List<PlmTechnicalSpecificationTeamData> fais = operatorList.stream().filter(a -> "fai".equals(a.getType())).collect(Collectors.toList());
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());
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"),
@ -1539,7 +1609,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);
List<MainData> mainData = getMainData(data.getSite(), baseData, changeRequest, engineers, technicians, dccs, cqcs, fais, css, mps);
paramData.setMainData(mainData);
SubmitRequestParam submitRequestParam = new SubmitRequestParam();
submitRequestParam.setUserId(paramData.getUserId());
@ -1569,7 +1639,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> fais, List<PlmTechnicalSpecificationTeamData> css, List<PlmTechnicalSpecificationTeamData> mps) {
// 创建 mainData
List<MainData> mainData = new ArrayList<>();
List<PlmRequestDetailVo> nodeDetails = changeManagementMapper.queryNodeDetails(site, baseData.get("workflowId"), baseData.get("nodeId"), baseData.get("classificationNo"));
@ -1606,7 +1676,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
}
} else if ("plm_technicalSpecification_team".equals(nodeDetail.getPlmTable())) { // 多选人员表
if ("engineer".equals(nodeDetail.getPlmField().split("#")[1])) {
if ("engineerList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData engineer : engineers) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(engineer.getDomainControlAccount());
@ -1615,7 +1685,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
} else if ("technician".equals(nodeDetail.getPlmField().split("#")[1])) {
} else if ("technicianList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData technician : technicians) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(technician.getDomainControlAccount());
@ -1624,7 +1694,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
} else if ("dcc".equals(nodeDetail.getPlmField().split("#")[1])) {
} else if ("dccList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData dcc : dccs) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(dcc.getDomainControlAccount());
@ -1633,7 +1703,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
} else if ("cqc".equals(nodeDetail.getPlmField().split("#")[1])) {
} else if ("cqcOperatorList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData cqc : cqcs) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(cqc.getDomainControlAccount());
@ -1642,7 +1712,7 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
} else if ("fai".equals(nodeDetail.getPlmField().split("#")[1])) {
} else if ("faiOperatorList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData fai : fais) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(fai.getDomainControlAccount());
@ -1651,6 +1721,24 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
} else if ("csOperatorList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData cs : css) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(cs.getDomainControlAccount());
if (oaIds.isEmpty()) {
throw new RuntimeException("未获取到域控账号对应的OA人员!");
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
} else if ("mpOperatorList".equals(nodeDetail.getPlmField())) {
for (PlmTechnicalSpecificationTeamData mp : mps) {
// 根据域控账号获取oa人员id
List<OaUserData> oaIds = sysUserDao.selectOaIdByAccount(mp.getDomainControlAccount());
if (oaIds.isEmpty()) {
throw new RuntimeException("未获取到域控账号对应的OA人员!");
}
fieldValues.append(oaIds.get(0).getId()).append(",");
}
}
fieldValue = fieldValues.length() > 0 ? fieldValues.substring(0, fieldValues.length() - 1) : "";
}

56
src/main/resources/mapper/quotation/QuotationInformationMapper.xml

@ -251,35 +251,35 @@
<!-- 获取产品列表 -->
<select id="getProjectPartList" parameterType="PlmProjectPartData" resultType="PlmProjectPartData">
SELECT ppp.site,
ppp.test_part_no,
ppp.part_desc,
ppp.part_spec,
ppp.material_number,
ppp.part_type,
ppp.project_id,
ppi.project_name,
ppp.final_part_no,
ppi.customer_id as customerNo,
dbo.plm_get_customer_desc(ppi.site, ppi.customer_id) as customerDesc,
dbo.get_family_name(ppp.site, ppp.part_type) as partTypeDesc,
ppp.final_part_no,
ppp.code_no,
dbo.get_code_desc(ppp.site, ppp.code_no, 'IP') as codeDesc,
ppp.group_id,
dbo.get_group_name(ppp.site, ppp.group_id) as groupName,
ppp.product_group_id1,
dbo.get_product_group_name(ppp.site, ppp.product_group_id1, '1') as productGroupName1,
ppp.product_group_id2,
dbo.get_product_group_name(ppp.site, ppp.product_group_id2, '2') as productGroupName2,
ppp.um_id,
ppp.type,
ppp.bu_no,
pcpi.customer_part_no
SELECT
ppp.site,
ppp.test_part_no,
ppp.part_desc,
ppp.part_spec,
ppp.material_number,
ppp.part_type,
ppp.project_id,
ppi.project_name,
ppp.final_part_no,
ppi.customer_id as customerNo,
dbo.plm_get_customer_desc(ppi.site, ppi.customer_id) as customerDesc,
dbo.get_family_name(ppp.site, ppp.part_type) as partTypeDesc,
ppp.final_part_no,
ppp.code_no,
dbo.get_code_desc(ppp.site, ppp.code_no, 'IP') as codeDesc,
ppp.group_id,
dbo.get_group_name(ppp.site, ppp.group_id) as groupName,
ppp.product_group_id1,
dbo.get_product_group_name(ppp.site, ppp.product_group_id1, '1') as productGroupName1,
ppp.product_group_id2,
dbo.get_product_group_name(ppp.site, ppp.product_group_id2, '2') as productGroupName2,
ppp.um_id,
ppp.type,
ppp.bu_no,
pcpi.customer_part_no
FROM view_Project_Part as ppp
LEFT JOIN plm_project_info as ppi on ppp.site = ppi.site and ppp.project_id = ppi.project_id
left join plm_customer_part_info pcpi on ppp.site = pcpi.site and ppp.test_part_no = pcpi.part_no and
ppi.customer_id = pcpi.customer_no
LEFT JOIN plm_project_info as ppi on ppp.site = ppi.site and ppp.project_id = ppi.project_id
left join plm_customer_part_info pcpi on ppp.site = pcpi.site and ppp.test_part_no = pcpi.part_no and ppi.customer_id = pcpi.customer_no
<where>
ppp.site = #{site}
<if test="projectId != null and projectId != ''">

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

@ -69,8 +69,7 @@
<result column="project_name" property="projectName"/>
</resultMap>
<select id="technicalSpecificationListSearch" parameterType="PlmTechnicalSpecificationSheetData"
resultType="PlmTechnicalSpecificationSheetData">
<select id="technicalSpecificationListSearch" parameterType="PlmTechnicalSpecificationSheetData" resultType="PlmTechnicalSpecificationSheetData">
SELECT a.id,
a.site,
a.code_no as codeNo,
@ -198,29 +197,22 @@
</select>
<insert id="saveTechnicalSpecificationSheet">
insert into plm_technical_specification_sheet(site, code_no, project_id, test_part_no, status, rev_no, ECN_flag,
ECN_no, ECN_address, remark,
create_date, create_by, proofing_no, ori_code_no, bom_type,
eng_chg_level, bom_alternative_no, routing_type, routing_revision,
routing_alternative_no, stage, materialType, step_id
, cqcOperator, faiOperator, peOperater, csOperater, mpOperator, rev, customer_rev, certification)
values ( #{site}, #{codeNo}, #{projectId}, #{testPartNo}, #{status}, #{revNo}, #{ecnFlag}, #{ecnNo}
, #{ecnAddress}
, #{remark}, GetDate(), #{createBy}, #{proofingNo}, #{oriCodeNo}, #{bomType}
, #{engChgLevel,jdbcType=INTEGER}
, #{bomAlternativeNo}, #{routingType}, #{routingRevision,jdbcType=INTEGER}, #{routingAlternativeNo}
, 'Sample'
, 'Label', 10
, #{cqcOperator}, #{faiOperator}, #{peOperater}, #{csOperater}, #{mpOperator}, #{rev}, #{customerRev}
, 'RoHs')
insert into plm_technical_specification_sheet
(site, code_no, project_id, test_part_no, status, rev_no, ECN_flag, ECN_no, ECN_address, remark,
create_date, create_by, proofing_no, ori_code_no, bom_type, eng_chg_level, bom_alternative_no,
routing_type, routing_revision, routing_alternative_no, stage, materialType, step_id, cqcOperator,
faiOperator, peOperater, csOperater, mpOperator, rev, customer_rev, certification)
values
(#{site}, #{codeNo}, #{projectId}, #{testPartNo}, #{status}, #{revNo}, #{ecnFlag}, #{ecnNo}, #{ecnAddress}, #{remark},
GetDate(), #{createBy}, #{proofingNo}, #{oriCodeNo}, #{bomType}, #{engChgLevel,jdbcType=INTEGER}, #{bomAlternativeNo},
#{routingType}, #{routingRevision,jdbcType=INTEGER}, #{routingAlternativeNo}, 'Sample', 'Label', 10, #{cqcOperator},
#{faiOperator}, #{peOperater}, #{csOperater}, #{mpOperator}, #{rev}, #{customerRev}, 'RoHs')
</insert>
<update id="updateProjectPartNowBm">
update plm_project_part
set now_bm=#{codeNo}
where site = #{site}
and project_id = #{projectId}
and test_part_no = #{testPartNo}
set now_bm = #{codeNo}
where site = #{site} and project_id = #{projectId} and test_part_no = #{testPartNo}
</update>
<insert id="saveTechnicalSpecificationTeams">
@ -237,23 +229,23 @@
<update id="updateTechnicalSpecificationSheet">
update plm_technical_specification_sheet
set project_id=#{projectId}
, test_part_no=#{testPartNo}
, status=#{status}
, rev_no=#{revNo}
, ECN_no=#{ecnNo}
, ECN_flag=#{ecnFlag}
, ECN_address=#{ecnAddress}
, remark=#{remark}
, update_date=GetDate()
, update_by=#{updateBy}
, cqcOperator=#{cqcOperator}
, faiOperator=#{faiOperator}
, peOperater=#{peOperater}
, csOperater=#{csOperater}
, mpOperator=#{mpOperator}
, rev=#{rev}
, customer_rev=#{customerRev}
set project_id = #{projectId},
test_part_no = #{testPartNo},
status = #{status},
rev_no = #{revNo},
ECN_no = #{ecnNo},
ECN_flag = #{ecnFlag},
ECN_address = #{ecnAddress},
remark = #{remark},
update_date = GetDate(),
update_by = #{updateBy},
cqcOperator = #{cqcOperator},
faiOperator = #{faiOperator},
peOperater = #{peOperater},
csOperater = #{csOperater},
mpOperator = #{mpOperator},
rev = #{rev},
customer_rev = #{customerRev}
where id = #{id}
</update>
@ -262,8 +254,9 @@
from plm_technicalSpecification_team
where site = #{site}
and code_no = #{codeNo}
and type in ('quotationOfficer', 'engineer', 'technician', 'dcc', 'cqc', 'fai')
and type in ('quotationOfficer', 'engineer', 'technician', 'dcc', 'cqc', 'fai', 'cs', 'mp')
</delete>
<delete id="deleteTechnicalSpecificationTeamsForDetail">
delete
from plm_technicalSpecification_team
@ -311,63 +304,58 @@
</select>
<select id="tsdBasicInformationSearch" resultType="PlmTechnicalSpecificationSheetData">
SELECT top 1 a.id,
a.site,
a.code_no,
a.project_id,
a.test_part_no,
a.status,
a.rev_no,
a.work_center_no,
a.ECN_flag,
a.ECN_no,
b.bu_no,
a.ECN_address,
a.remark,
a.create_date,
a.create_by,
a.update_date,
a.update_by,
b.final_part_no,
b.part_type partTypeDesc,
b.part_type,
b.part_name,
b.part_desc,
b.part_spec,
dbo.plm_get_technicalBaseDesc(a.status, 'status') statusDesc,
a.proofing_no,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'engineer') engineer,
stage,
dbo.plm_get_dictDataLabel('bm_process', process, a.site) process,
remarkPage,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'quotationOfficer') quotationOfficer,
c.customer_Id,
a.ori_code_no,
a.overPrintOperator,
a.printOperator,
dbo.get_userDisPlay(a.overPrintOperator) overPrintOperatorName,
dbo.get_userDisPlay(a.printOperator) printOperatorName,
a.peOperater,
dbo.get_userDisPlay(a.peOperater) peOperaterName,
a.csOperater,
dbo.get_userDisPlay(a.csOperater) csOperaterName,
isnull(a.step_id, 10) stepId,
d.is_reject,
a.pod,
d.node_id,
d.node_name,
a.mpOperator,
dbo.get_userDisPlay(a.mpOperator) mpOperatorName,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'technician') technician,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'engineer') engineerNo,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'dcc') dcc,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'technician') technicianNo,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'cqc') cqcOperatorName,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'fai') faiOperatorName,
<!-- a.cqcOperator,-->
<!-- a.faiOperator,-->
<!-- dbo.get_userDisPlay(a.cqcOperator) cqcOperatorName,-->
<!-- dbo.get_userDisPlay(a.faiOperator) faiOperatorName,-->
SELECT
top 1
a.id,
a.site,
a.code_no,
a.project_id,
a.test_part_no,
a.status,
a.rev_no,
a.work_center_no,
a.ECN_flag,
a.ECN_no,
b.bu_no,
a.ECN_address,
a.remark,
a.create_date,
a.create_by,
a.update_date,
a.update_by,
b.final_part_no,
b.part_type partTypeDesc,
b.part_type,
b.part_name,
b.part_desc,
b.part_spec,
dbo.plm_get_technicalBaseDesc(a.status, 'status') statusDesc,
a.proofing_no,
stage,
dbo.plm_get_dictDataLabel('bm_process', process, a.site) process,
remarkPage,
c.customer_Id,
a.ori_code_no,
a.overPrintOperator,
a.printOperator,
dbo.get_userDisPlay(a.overPrintOperator) overPrintOperatorName,
dbo.get_userDisPlay(a.printOperator) printOperatorName,
isnull(a.step_id, 10) stepId,
d.is_reject,
a.pod,
d.node_id,
d.node_name,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'cs') csOperater,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'cs') csOperaterName,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'engineer') engineerNo,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'engineer') engineer,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'technician') technicianNo,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'technician') technician,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'mp') mpOperator,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'mp') mpOperatorName,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'dcc') dcc,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'cqc') cqcOperatorName,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'fai') faiOperatorName,
a.rev,
a.customer_rev,
relevance_part_no,
@ -375,15 +363,11 @@
a.ecn_upgrade_flag,
a.ecn_need_change_drawing
FROM plm_technical_specification_sheet a
left join view_Project_final_Part b
on a.site = b.site and a.project_id = b.project_id and a.test_part_no = b.test_part_no
left join plm_project_info c on a.site = c.site and a.project_id = c.project_id
left join plm_request_header as prh on a.site = prh.site and prh.menu_id = '103002'
left join plm_request_node as d on a.site = d.site and prh.classification_no = d.classification_no and
prh.workflow_id = d.workflow_id and
isnull(a.step_id, 10) = d.step_id
where a.site = #{site}
and a.code_no = #{codeNo}
left join view_Project_final_Part b on a.site = b.site and a.project_id = b.project_id and a.test_part_no = b.test_part_no
left join plm_project_info c on a.site = c.site and a.project_id = c.project_id
left join plm_request_header as prh on a.site = prh.site and prh.menu_id = '103002'
left join plm_request_node as d on a.site = d.site and prh.classification_no = d.classification_no and prh.workflow_id = d.workflow_id and isnull(a.step_id, 10) = d.step_id
where a.site = #{site} and a.code_no = #{codeNo}
</select>
<delete id="deleteTechnicalSpecificationList">
@ -484,25 +468,24 @@
</select>
<update id="updateBMBasicInformation">
update plm_technical_specification_sheet
set status=#{status}
, stage=#{stage}
, remarkPage=#{remarkPage}
, rev_no=#{revNo}
, ECN_no=#{ecnNo}
, ECN_flag=#{ecnFlag}
, ECN_address=#{ecnAddress}
, cqcOperator=#{cqcOperator}
, update_date=GetDate()
, update_by=#{updateBy}
, faiOperator=#{faiOperator}
, peOperater=#{peOperater}
, csOperater=#{csOperater}
, pod=#{pod}
, mpOperator=#{mpOperator}
, relevance_part_no=#{relevancePartNo}
, ecn_need_change_drawing = #{ecnNeedChangeDrawing}
where site = #{site}
and code_no = #{codeNo}
set status = #{status},
stage = #{stage},
remarkPage = #{remarkPage},
rev_no = #{revNo},
ECN_no = #{ecnNo},
ECN_flag = #{ecnFlag},
ECN_address = #{ecnAddress},
cqcOperator = #{cqcOperator},
update_date = GetDate(),
update_by = #{updateBy},
faiOperator = #{faiOperator},
peOperater = #{peOperater},
csOperater = #{csOperater},
pod = #{pod},
mpOperator = #{mpOperator},
relevance_part_no = #{relevancePartNo},
ecn_need_change_drawing = #{ecnNeedChangeDrawing}
where site = #{site} and code_no = #{codeNo}
</update>
<select id="searchBMcustomerInfo" resultType="PlmTechnicalSpecificationSheetData">
@ -2193,9 +2176,8 @@
a.type,
b.domain_control_account
FROM plm_technicalSpecification_team as a
left join sys_user as b on a.operator_id = b.username
where a.site = #{site}
and a.code_no = #{codeNo}
left join sys_user as b on a.operator_id = b.username
where a.site = #{site} and a.code_no = #{codeNo}
</select>
<select id="getBMStatusDesc" resultType="PlmTechnicalSpecificationSheetData">
@ -2324,63 +2306,57 @@
</update>
<select id="technicalSpecificationList" resultType="com.spring.modules.sampleManagement.data.PlmTechnicalSpecificationSheetData">
SELECT a.id,
a.site,
a.code_no as codeNo,
a.project_id as projectId,
a.test_part_no as testPartNo,
a.status,
a.rev_no as revNo,
a.work_center_no as workCenterNo,
a.ECN_flag as ecnFlag,
a.ECN_no as ecnNo,
a.ori_code_no as oriCodeNo,
a.ECN_address as ecnAddress,
a.remark,
a.create_date as createDate,
a.create_by as createBy,
a.update_date as updateDate,
a.update_by as updateBy,
b.final_part_no as finalPartNo,
b.part_type as partTypeDesc,
b.part_type as partType,
b.part_name as partName,
b.part_desc as partDesc,
b.part_spec as partSpec,
dbo.plm_get_technicalBaseDesc(a.status, 'status') as statusDesc,
a.proofing_no as proofingNo,
b.bu_no as buNo,
dbo.plm_get_bu_desc(a.site, b.bu_no) as buDesc,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'engineer') as engineer,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'technician') as technician,
process,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'quotationOfficer') as quotationOfficer,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'engineer') as engineerNo,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'technician') as technicianNo,
c.customer_Id as customerId,
a.picture_addess as pictureAddess,
a.customerPictureChangeRemark,
a.productionFileComments,
a.bom_type as bomType,
a.eng_chg_level as engChgLevel,
a.bom_alternative_no as bomAlternativeNo,
a.routing_type as routingType,
a.routing_revision as routingRevision,
a.routing_alternative_no as routingAlternativeNo,
a.pod,
a.mpOperator,
dbo.get_userDisPlay(a.mpOperator) as mpOperatorName,
a.peOperater,
dbo.get_userDisPlay(a.peOperater) as peOperaterName,
a.csOperater,
dbo.get_userDisPlay(a.csOperater) as csOperaterName,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'dcc') as dccOperaterName,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'cqc') as cqcOperatorName,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'fai') as faiOperatorName,
<!-- a.cqcOperator,-->
<!-- dbo.get_userDisPlay(a.cqcOperator) as cqcOperatorName,-->
<!-- a.faiOperator,-->
<!-- dbo.get_userDisPlay(a.faiOperator) as faiOperatorName,-->
SELECT
a.id,
a.site,
a.code_no as codeNo,
a.project_id as projectId,
a.test_part_no as testPartNo,
a.status,
a.rev_no as revNo,
a.work_center_no as workCenterNo,
a.ECN_flag as ecnFlag,
a.ECN_no as ecnNo,
a.ori_code_no as oriCodeNo,
a.ECN_address as ecnAddress,
a.remark,
a.create_date as createDate,
a.create_by as createBy,
a.update_date as updateDate,
a.update_by as updateBy,
b.final_part_no as finalPartNo,
b.part_type as partTypeDesc,
b.part_type as partType,
b.part_name as partName,
b.part_desc as partDesc,
b.part_spec as partSpec,
dbo.plm_get_technicalBaseDesc(a.status, 'status') as statusDesc,
a.proofing_no as proofingNo,
b.bu_no as buNo,
dbo.plm_get_bu_desc(a.site, b.bu_no) as buDesc,
process,
c.customer_Id as customerId,
a.picture_addess as pictureAddess,
a.customerPictureChangeRemark,
a.productionFileComments,
a.bom_type as bomType,
a.eng_chg_level as engChgLevel,
a.bom_alternative_no as bomAlternativeNo,
a.routing_type as routingType,
a.routing_revision as routingRevision,
a.routing_alternative_no as routingAlternativeNo,
a.pod,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'cs') csOperater,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'cs') csOperaterName,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'engineer') engineerNo,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'engineer') engineer,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'technician') technicianNo,
dbo.get_technicalSpecificationTeamName(a.site, a.code_no, 'technician') technician,
dbo.get_technicalSpecificationTeamNo(a.site, a.code_no, 'mp') mpOperator,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'mp') mpOperatorName,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'dcc') dccOperaterName,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'cqc') cqcOperatorName,
dbo.get_technicalSpecificationTeamNames(a.site, a.code_no, 'fai') faiOperatorName,
d.is_reject as isReject,
d.node_id as nodeId,
d.node_name as nodeName,

Loading…
Cancel
Save