| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -13,6 +13,7 @@ import com.epmet.commons.tools.redis.common.CustomerStaffRedis; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.commons.tools.redis.common.bean.GridInfoCache; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.commons.tools.security.dto.TokenDto; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.commons.tools.security.user.LoginUserUtil; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.commons.tools.utils.ConvertUtils; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.commons.tools.utils.DateUtils; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.commons.tools.utils.Result; | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -23,7 +24,6 @@ import com.epmet.dataaggre.dto.datastats.result.FactAgencyProjectResultDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dataaggre.dto.govissue.IssueProjectCategoryDictDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dataaggre.dto.govissue.result.IssueInfoDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dataaggre.dto.govissue.result.IssueListResultDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dataaggre.dto.govorg.result.GridsInfoListResultDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dataaggre.dto.govproject.ProjectDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dataaggre.dto.govproject.ProjectRelatedPersonnelDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dataaggre.dto.govproject.ResiEventDTO; | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -80,6 +80,8 @@ public class GovProjectServiceImpl implements GovProjectService { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						private EvaluationIndexService evaluationIndexService; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						@Autowired | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						private EpmetUserService epmetUserService; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						@Autowired | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						private LoginUserUtil loginUserUtil; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    /** | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					     * @Description  查询项目信息 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -415,13 +417,13 @@ public class GovProjectServiceImpl implements GovProjectService { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							formDTO.setToDateId(DateUtils.dateOrmonthId(formDTO.getDateId(), "date", 1)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							//1.查询客户下分类信息
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							List<IssueProjectCategoryDictDTO> categoryList = govIssueService.categoryList(formDTO.getCustomerId(), null, null); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							List<String> categoreCodeList = categoryList.stream().filter(ca -> ca.getParentCategoryCode().equals(formDTO.getCategoryCode())).map(m -> m.getCategoryCode()).collect(Collectors.toList()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							List<String> categoreCodeList = categoryList.stream().filter(ca -> ca.getParentCategoryCode().equals(formDTO.getCategoryCode())).map(IssueProjectCategoryDictDTO::getCategoryCode).collect(Collectors.toList()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							formDTO.setCategoreCodeList(categoreCodeList); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							//2.查询组织及下级截止某一天的某个一级分类下的项目列表
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							PageInfo<CategoryProjectResultDTO.Project> result = | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize(), formDTO.getIsPage()).doSelectPageInfo(() -> projectDao.categoryProjectList(formDTO)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							if (org.springframework.util.CollectionUtils.isEmpty(result.getList())) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							if (CollectionUtils.isEmpty(result.getList())) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								return resultDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							resultDTO.setTotal((int) result.getTotal()); | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -431,7 +433,7 @@ public class GovProjectServiceImpl implements GovProjectService { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							List<CategoryProjectResultDTO.Project> list = projectDao.getCategoryList(projectIds); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							//4.查询来源事件的项目上报的组织信息
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							List<String> eventIds = result.getList().stream().filter(re -> "resi_event".equals(re.getOrigin())).map(m -> m.getOriginId()).collect(Collectors.toList()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							List<String> eventIds = result.getList().stream().filter(re -> "resi_event".equals(re.getOrigin())).map(CategoryProjectResultDTO.Project::getOriginId).collect(Collectors.toList()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							List<ResiEventReportOrgDTO> eventOrgList = projectDao.getEventOrgList(eventIds); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							Map<String, ResiEventReportOrgDTO> eventMap = eventOrgList.stream().collect(Collectors.toMap(ResiEventReportOrgDTO::getResiEventId, Function.identity())); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -439,11 +441,19 @@ public class GovProjectServiceImpl implements GovProjectService { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							List<ResiEventDTO> eventUser = projectDao.getEventList(projectIds); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							List<ProjectRelatedPersonnelDTO> topicUser = projectDao.getTopicUser(projectIds); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							//市北客户查询 下议题区分下来源 设置topicId
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							Map<String, String> issueTopicSourceMap = new HashMap<>(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							if (CustomerIdConstant.SHI_BEI_CUSTOMER_ID.equals(loginUserUtil.getLoginUserCustomerId())){ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								issueTopicSourceMap = govIssueService.selectIssueTopicIdType(result.getList().stream() | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										.filter(re -> "issue".equals(re.getOrigin())) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										.map(CategoryProjectResultDTO.Project::getOriginId) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										.collect(Collectors.toList())).stream().collect(Collectors.toMap(IssueInfoDTO::getIssueId,IssueInfoDTO::getTopicId)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							//5.封装数据
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							//组织或网格id->组织或网格名称
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							Map<String, String> map = new HashMap<>(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							result.getList().forEach(re -> { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								//所属组织
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							for (CategoryProjectResultDTO.Project re : result.getList()) {//所属组织
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								if ("issue".equals(re.getOrigin())) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									if (map.containsKey(re.getGridId())) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										re.setOrgName(map.get(re.getGridId())); | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -454,6 +464,9 @@ public class GovProjectServiceImpl implements GovProjectService { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
											map.put(re.getGridId(), gridInfo.getGridName()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									//市北议题来源的设置话题Id
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									re.setTopicId(issueTopicSourceMap.get(re.getOriginId())); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								} else if ("agency".equals(re.getOrigin())) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									if (map.containsKey(re.getAgencyId())) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										re.setOrgName(map.get(re.getAgencyId())); | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -518,7 +531,7 @@ public class GovProjectServiceImpl implements GovProjectService { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										re.setUserId(to.getUserId()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								}); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							}); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							resultDTO.setList(result.getList()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return resultDTO; | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |