diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectRelatedPersonnel.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectRelatedPersonnel.java index e94f363f6..2b1a62419 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectRelatedPersonnel.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectRelatedPersonnel.java @@ -56,6 +56,16 @@ public class ProjectRelatedPersonnel implements Serializable { @Excel(name = "工程接口人,Engineering Interface", width = 15,orderNum = "3") private java.lang.String engineeringInterfacePersonName; + /**工程接口人法规工程师设置*/ + private java.lang.String engineerLawSet; + @TableField(exist = false) + private java.lang.String engineerLawSetName; + + /**工程接口人认证工程师设置*/ + private java.lang.String engineerAttSet; + @TableField(exist = false) + private java.lang.String engineerAttSetName; + /**认证工程师*/ private java.lang.String certificationEngineer; @TableField(exist = false) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectRelatedPersonnelService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectRelatedPersonnelService.java index fe8cc762c..f19b5f1e1 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectRelatedPersonnelService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectRelatedPersonnelService.java @@ -71,6 +71,9 @@ public interface IProjectRelatedPersonnelService extends IService queryPersonByProjectId(String projectId, String dutyTerritory); + //通过项目库id 和责任领域查询 + List queryByProjectIdAndDutyTerritoy(String projectId, List dutyTerritoryList); + /**处理导出数据*/ List disposeExportXls(String id,String projectId,String cut); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java index bb1c9f47f..cdfe8f18d 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java @@ -506,6 +506,78 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl dutyTerritoryList = new ArrayList<>(); + dutyTerritoryList = Arrays.asList(projectLawsInventoryEO.getDutyTerritory().split(",")); + dutyTerritoryList = dutyTerritoryList.stream().distinct().collect(Collectors.toList()); + + String projectLibrartId = projectLawsInventoryEO.getProjectLibraryId(); + + List designDutyIdList = new ArrayList<>(); + designDutyIdList = Arrays.asList(projectLawsInventoryEO.getDesignDutyId().split(",")); + designDutyIdList = designDutyIdList.stream().distinct().collect(Collectors.toList()); + List verifyDutyIdList = new ArrayList<>(); + verifyDutyIdList = Arrays.asList(projectLawsInventoryEO.getVerifyDutyId().split(",")); + verifyDutyIdList = verifyDutyIdList.stream().distinct().collect(Collectors.toList()); + + //allList 为法规工程师中验证符合性和确认符合中的责任人 + List allList = new ArrayList<>(); +// allList = Arrays.asList(designDutyIdList.toString()+","+verifyDutyIdList.toString()); + allList.addAll(designDutyIdList); + allList.addAll(verifyDutyIdList); + allList = allList.stream().distinct().collect(Collectors.toList()); + + +// List engineeringInterfacePersonList = new ArrayList<>(); +// engineeringInterfacePersonList = Arrays.asList(projectLawsInventoryEO.getEngineeringInterfacePerson().split(",")); +// engineeringInterfacePersonList = engineeringInterfacePersonList.stream().distinct().collect(Collectors.toList()); + + + List projectRelatedPersonnelList = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritoy(projectLibrartId, dutyTerritoryList); + + //enginnerList为每一条的工程接口人的集合 + List enginnerList = new ArrayList<>(); + if(projectRelatedPersonnelList.size()>0){ + for(ProjectRelatedPersonnel projectRelatedPersonnel : projectRelatedPersonnelList){ + if(StringUtils.isEmpty(projectRelatedPersonnel.getEngineeringInterfacePerson())){ + //直接将allList存入到 + String all = String.join(",",allList); + projectRelatedPersonnel.setEngineerLawSet(all); + projectRelatedPersonnelService.editById(projectRelatedPersonnel); + + }else { + enginnerList.add(projectRelatedPersonnel.getEngineeringInterfacePerson()); + enginnerList = enginnerList.stream().distinct().collect(Collectors.toList()); + //比较allList中有而enginnerList中没有的工程接口人 + boolean flag = false; + List resultList = new ArrayList<>(); + if(allList.size()>0){ + flag = CollectionUtils.isEqualCollection(allList,enginnerList); + if(!flag){ + //进行遍历两个list,将allList中有的而enginnerList没有的存入到相关人员名单中的法规那里 + + for(String all : allList){ + boolean flag1 = true; + for(String enginner : enginnerList){ + if(all.equals(enginner)){ + flag1 = false; + break; + } + } + if(flag1){ + resultList.add(all); + } + } + } + } + //将相关人员名单中没有的resultList添加到相关人员记录表中 + String result = String.join(",",resultList); + projectRelatedPersonnel.setEngineerLawSet(result); + projectRelatedPersonnelService.editById(projectRelatedPersonnel); + } + } + } + + //翻译-中文 translateData(infoEOList); translateData(dataList); @@ -1800,7 +1872,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl projectLawsInventoryEOS = this.list(queryWrapper); - + List idList = Arrays.asList(ids.split(",")); String projectLawsInventoryIds = ids; String pIds = ""; @@ -5999,7 +6071,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl queryByProjectIdAndDutyTerritoy(String projectId, List dutyTerritoryList) { + + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("project_id",projectId).in("duty_territory",dutyTerritoryList); + List projectRelatedPersonnels = baseMapper.selectList(wrapper); + + return projectRelatedPersonnels; + + + } + /**处理导出数据*/ @Override public List disposeExportXls(String id,String projectId,String cut){