相关人员名单--添加搜索条件

This commit is contained in:
zhn
2022-07-04 17:39:56 +08:00
parent c3dfd0f8da
commit fa95bb52f0
6 changed files with 56 additions and 16 deletions
@@ -46,7 +46,11 @@ public class ProjectRelatedPersonnelController extends JeroController<ProjectRel
@RequiresPermissions("projectRelatedPersonnel:page") @RequiresPermissions("projectRelatedPersonnel:page")
@PostMapping(value = "/page") @PostMapping(value = "/page")
public Result<?> queryPageList(@RequestBody Map<String,Object> map) { public Result<?> queryPageList(@RequestBody Map<String,Object> map) {
List<ProjectRelatedPersonnel> pageList= projectRelatedPersonnelService.queryPageList((String) map.get("projectId")); List<ProjectRelatedPersonnel> pageList= projectRelatedPersonnelService.queryPageList((String) map.get("projectId"),
(String) map.get("dutyTerritory"),
(String) map.get("lawEngineer"),
(String) map.get("engineeringInterfacePerson"),
(String) map.get("certificationEngineer"));
return Result.OK((String)map.get("cut"),pageList); return Result.OK((String)map.get("cut"),pageList);
} }
/** /**
@@ -14,7 +14,12 @@ import java.util.List;
*/ */
public interface ProjectRelatedPersonnelMapper extends BaseMapper<ProjectRelatedPersonnel> { public interface ProjectRelatedPersonnelMapper extends BaseMapper<ProjectRelatedPersonnel> {
List<ProjectRelatedPersonnel> queryPageList(@Param("projectId") String projectId,String dictCode); List<ProjectRelatedPersonnel> queryPageList(@Param("projectId") String projectId,
String dictCode,
@Param("dutyTerritory") String dutyTerritory,
@Param("lawEngineer") String lawEngineer,
@Param("engineeringInterfacePerson") String engineeringInterfacePerson,
@Param("certificationEngineer") String certificationEngineer);
List<ProjectRelatedPersonnel> queryById(@Param("id")String id); List<ProjectRelatedPersonnel> queryById(@Param("id")String id);
} }
@@ -42,6 +42,18 @@
<if test="projectId != null and projectId != ''"> <if test="projectId != null and projectId != ''">
prp.project_id=#{projectId} prp.project_id=#{projectId}
</if> </if>
<if test="dutyTerritory != null and dutyTerritory != ''">
AND prp.duty_territory=#{dutyTerritory}
</if>
<if test="lawEngineer != null and lawEngineer != ''">
AND prp.law_engineer like concat(concat('%',#{lawEngineer}),'%')
</if>
<if test="engineeringInterfacePerson != null and engineeringInterfacePerson != ''">
AND prp.engineering_interface_person like concat(concat('%',#{engineeringInterfacePerson}),'%')
</if>
<if test="certificationEngineer != null and certificationEngineer != ''">
AND prp.certification_engineer like concat(concat('%',#{certificationEngineer}),'%')
</if>
AND sd.dict_code = #{dictCode} AND sd.dict_code = #{dictCode}
</where> </where>
ORDER BY sdi.item_text ASC ORDER BY sdi.item_text ASC
@@ -57,4 +69,4 @@
</where> </where>
order by prp.create_time desc order by prp.create_time desc
</select> </select>
</mapper> </mapper>
@@ -67,7 +67,7 @@ public interface IProjectRelatedPersonnelService extends IService<ProjectRelated
*/ */
List<ProjectRelatedPersonnel> queryList(); List<ProjectRelatedPersonnel> queryList();
List<ProjectRelatedPersonnel> queryPageList(String projectId); List<ProjectRelatedPersonnel> queryPageList(String projectId,String dutyTerritory,String lawEngineer,String engineeringInterfacePerson,String certificationEngineer);
Map<String,Object> queryPersonByProjectId(String projectId, String dutyTerritory); Map<String,Object> queryPersonByProjectId(String projectId, String dutyTerritory);
@@ -6400,7 +6400,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
} }
} }
//相关人员名单中取法规工程师 //相关人员名单中取法规工程师
List<ProjectRelatedPersonnel> projectRelatedPersonnels = projectRelatedPersonnelService.queryPageList(projectLibraryId); List<ProjectRelatedPersonnel> projectRelatedPersonnels = projectRelatedPersonnelService.queryPageList(projectLibraryId,null,null,null,null);
List<String> lawEngineerNameList = new ArrayList<>(); List<String> lawEngineerNameList = new ArrayList<>();
if(projectRelatedPersonnels.size() != 0){ if(projectRelatedPersonnels.size() != 0){
for (ProjectRelatedPersonnel projectRelatedPersonnel : projectRelatedPersonnels) { for (ProjectRelatedPersonnel projectRelatedPersonnel : projectRelatedPersonnels) {
@@ -183,26 +183,45 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
* @return * @return
*/ */
@Override @Override
public List<ProjectRelatedPersonnel> queryPageList(String projectId) { public List<ProjectRelatedPersonnel> queryPageList(String projectId,
String dutyTerritoryTemp,
String lawEngineer,
String engineeringInterfacePerson,
String certificationEngineer) {
//查询数据 //查询数据
List<ProjectRelatedPersonnel> result = projectRelatedPersonnelMapper.queryPageList(projectId,DictCodeEnum.DUTY_TERRITORY.getValue()); List<ProjectRelatedPersonnel> result = projectRelatedPersonnelMapper.queryPageList(projectId,
DictCodeEnum.DUTY_TERRITORY.getValue(),
dutyTerritoryTemp,
lawEngineer,
engineeringInterfacePerson,
certificationEngineer);
//查询数据里的责任领域 //查询数据里的责任领域
List<String> dutyTerritory = result.stream().map(e -> e.getDutyTerritory()).collect(Collectors.toList()); List<String> dutyTerritory = result.stream().map(e -> e.getDutyTerritory()).collect(Collectors.toList());
//查标签内容里的责任领域数据 //查标签内容里的责任领域数据
List<String> sysDictItemValueList = sysDictItemMapper.selectItemValueByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue()); List<String> sysDictItemValueList = sysDictItemMapper.selectItemValueByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue());
//没有数据->新增所有责任领域,查询 //没有数据->新增所有责任领域,查询
if(result.size() != sysDictItemValueList.size()){ if(StringUtils.isBlank(dutyTerritoryTemp)
&& StringUtils.isBlank(lawEngineer)
&& StringUtils.isBlank(engineeringInterfacePerson)
&& StringUtils.isBlank(certificationEngineer)){
if(result.size() != sysDictItemValueList.size()){
//更新相关人员表里的责任领域数据 //更新相关人员表里的责任领域数据
if (CollectionUtils.isNotEmpty(sysDictItemValueList)) { if (CollectionUtils.isNotEmpty(sysDictItemValueList)) {
for (String sysDictItemValue : sysDictItemValueList) { for (String sysDictItemValue : sysDictItemValueList) {
if(!dutyTerritory.contains(sysDictItemValue)) { if(!dutyTerritory.contains(sysDictItemValue)) {
setDutyTerritoryValue(sysDictItemValue, projectId); setDutyTerritoryValue(sysDictItemValue, projectId);
}
} }
} }
//重新查询列表
result = projectRelatedPersonnelMapper.queryPageList(projectId,
DictCodeEnum.DUTY_TERRITORY.getValue(),
dutyTerritoryTemp,
lawEngineer,
engineeringInterfacePerson,
certificationEngineer);
} }
//重新查询列表
result = projectRelatedPersonnelMapper.queryPageList(projectId,DictCodeEnum.DUTY_TERRITORY.getValue());
} }
disposeData(result); disposeData(result);
return result; return result;
@@ -456,7 +475,7 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
records = queryById(id); records = queryById(id);
} }
}else{ }else{
records=queryPageList(projectId); records=queryPageList(projectId,null,null,null,null);
} }
//id无值,传全部 //id无值,传全部
disposeDutyTerritory(records,cut); disposeDutyTerritory(records,cut);