| 
						
						
						
					 | 
					@ -1,5 +1,6 @@ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					package com.epmet.service.user.impl; | 
					 | 
					 | 
					package com.epmet.service.user.impl; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					import com.alibaba.fastjson.JSON; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					import com.epmet.commons.dynamic.datasource.annotation.DataSource; | 
					 | 
					 | 
					import com.epmet.commons.dynamic.datasource.annotation.DataSource; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					import com.epmet.commons.tools.constant.NumConstant; | 
					 | 
					 | 
					import com.epmet.commons.tools.constant.NumConstant; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					import com.epmet.constant.DataSourceConstant; | 
					 | 
					 | 
					import com.epmet.constant.DataSourceConstant; | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					@ -748,35 +749,34 @@ public class UserServiceImpl implements UserService { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    public void fillScreenProjectData(List<ScreenProjectDataDTO> list) { | 
					 | 
					 | 
					    public void fillScreenProjectData(List<ScreenProjectDataDTO> list) { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        List<String> topicUserIdList = list.stream().filter(o -> ProjectConstant.PROJECT_ORIGIN_ISSUE.equals(o.getOrigin())) | 
					 | 
					 | 
					        List<String> topicUserIdList = list.stream().filter(o -> ProjectConstant.PROJECT_ORIGIN_ISSUE.equals(o.getOrigin())) | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                .map(ScreenProjectDataDTO::getLinkName).distinct().collect(Collectors.toList()); | 
					 | 
					 | 
					                .map(ScreenProjectDataDTO::getLinkName).distinct().collect(Collectors.toList()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					        if (CollectionUtils.isEmpty(topicUserIdList)){ | 
					 | 
					 | 
					        Map<String, ScreenProjectDataDTO> topicUserMap = new HashMap<>(); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            return; | 
					 | 
					 | 
					        if (!CollectionUtils.isEmpty(topicUserIdList)){ | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					            List<ScreenProjectDataDTO> collection = userDao.selectScreenProjectData(topicUserIdList); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					            logger.info("fillScreenProjectData staff list:{},param:{}", JSON.toJSONString(collection),topicUserIdList); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					            topicUserMap = collection.stream().collect(Collectors.toMap(ScreenProjectDataDTO::getTopicId,o->o,(o1,o2)->o1)); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        } | 
					 | 
					 | 
					        } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					        List<ScreenProjectDataDTO> collection = userDao.selectScreenProjectData(topicUserIdList); | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        Map<String, ScreenProjectDataDTO> topicUserMap = collection.stream().collect(Collectors.toMap(ScreenProjectDataDTO::getTopicId,o->o,(o1,o2)->o1)); | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					 | 
					 | 
					       /* if(!CollectionUtils.isEmpty(collection)){ | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            list.stream().flatMap(target -> collection.stream().filter(res -> StringUtils.equals(target.getLinkName(),res.getTopicId())) | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            .map(merge -> { | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                target.setLinkName(merge.getLinkName()); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                target.setLinkMobile(merge.getLinkMobile()); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                return target;})); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        }*/ | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					        List<String> staffUserIdList = list.stream().filter(o -> ProjectConstant.PROJECT_ORIGIN_AGENCY.equals(o.getOrigin())) | 
					 | 
					 | 
					        List<String> staffUserIdList = list.stream().filter(o -> ProjectConstant.PROJECT_ORIGIN_AGENCY.equals(o.getOrigin())) | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                .map(ScreenProjectDataDTO::getLinkName).distinct().collect(Collectors.toList()); | 
					 | 
					 | 
					                .map(ScreenProjectDataDTO::getLinkName).distinct().collect(Collectors.toList()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					        if (CollectionUtils.isEmpty(topicUserIdList)){ | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            return; | 
					 | 
					 | 
					        Map<String, ScreenProjectDataDTO> staffMap = new HashMap<>(); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					        if (!CollectionUtils.isEmpty(staffUserIdList)){ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					            List<ScreenProjectDataDTO> staffList = userDao.selectStaffInfo(staffUserIdList); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					            logger.info("fillScreenProjectData staff list:{},param:{}", JSON.toJSONString(staffList),staffUserIdList); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					            staffMap = staffList.stream().collect(Collectors.toMap(ScreenProjectDataDTO::getId,o->o,(o1,o2)->o1)); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        } | 
					 | 
					 | 
					        } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					        List<ScreenProjectDataDTO> staffList = userDao.selectStaffInfo(staffUserIdList); | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        Map<String, ScreenProjectDataDTO> collect = staffList.stream().collect(Collectors.toMap(ScreenProjectDataDTO::getId,o->o,(o1,o2)->o1)); | 
					 | 
					 | 
					        for (ScreenProjectDataDTO project : list) { | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        list.forEach(project->{ | 
					 | 
					 | 
					            ScreenProjectDataDTO userDTO = staffMap.get(project.getLinkName()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            ScreenProjectDataDTO userDTO = collect.get(project.getLinkName()); | 
					 | 
					 | 
					            if (userDTO == null) { | 
				
			
			
				
				
			
		
	
		
		
			
				
					 | 
					 | 
					            if (userDTO == null){ | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					                userDTO = topicUserMap.get(project.getLinkName()); | 
					 | 
					 | 
					                userDTO = topicUserMap.get(project.getLinkName()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            } | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					            if (userDTO != null){ | 
					 | 
					 | 
					            if (userDTO != null) { | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					                project.setLinkName(userDTO.getLinkName()); | 
					 | 
					 | 
					                project.setLinkName(userDTO.getLinkName()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                project.setLinkMobile(userDTO.getLinkMobile()); | 
					 | 
					 | 
					                project.setLinkMobile(userDTO.getLinkMobile()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            } | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					        }); | 
					 | 
					 | 
					        } | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					    } | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    /** | 
					 | 
					 | 
					    /** | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  |