| 
						
						
							
								
							
						
						
					 | 
					@ -155,115 +155,120 @@ public class ScreenGrassrootsGovernDataAbsorptionServiceImpl implements ScreenGr | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    @Override | 
					 | 
					 | 
					    @Override | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    public boolean difficultyDataExtract(ScreenCentralZoneDataFormDTO param) { | 
					 | 
					 | 
					    public boolean difficultyDataExtract(ScreenCentralZoneDataFormDTO param) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					        //获取agency维度
 | 
					 | 
					 | 
					        try { | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        List<DimAgencyEntity> agencyList = dimAgencyService.getAgencyListByCustomerId(param.getCustomerId()); | 
					 | 
					 | 
					            //默认查询10天内的数据
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        Map<String, DimAgencyEntity> agencyMap = agencyList.stream().collect(Collectors.toMap(DimAgencyEntity::getId, o -> o, (o1, o2) -> o1)); | 
					 | 
					 | 
					            param.setInternalDay(DateUtils.getBeforeNDay(NumConstant.TEN)); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        //获取grid维度
 | 
					 | 
					 | 
					            //获取agency维度
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        List<GridInfoDTO> gridList = customerGridService.queryGridInfoList(param.getCustomerId()); | 
					 | 
					 | 
					            List<DimAgencyEntity> agencyList = dimAgencyService.getAgencyListByCustomerId(param.getCustomerId()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        Map<String, GridInfoDTO> gridMap = gridList.stream().collect(Collectors.toMap(GridInfoDTO::getGridId, o -> o, (o1, o2) -> o1)); | 
					 | 
					 | 
					            Map<String, DimAgencyEntity> agencyMap = agencyList.stream().collect(Collectors.toMap(DimAgencyEntity::getId, o -> o, (o1, o2) -> o1)); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					
 | 
					 | 
					 | 
					            //获取grid维度
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        //获取客户下所有项目分类
 | 
					 | 
					 | 
					            List<GridInfoDTO> gridList = customerGridService.queryGridInfoList(param.getCustomerId()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        List<IssueProjectCategoryDictEntity> categoryList = issueProjectCategoryDictService.getAllByCId(param.getCustomerId()); | 
					 | 
					 | 
					            Map<String, GridInfoDTO> gridMap = gridList.stream().collect(Collectors.toMap(GridInfoDTO::getGridId, o -> o, (o1, o2) -> o1)); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        //项目分类数据 todo 暂时查询所有
 | 
					 | 
					 | 
					            //获取客户下所有项目分类
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        List<ProjectCategoryDTO> projectCategoryData = projectService.getProjectCategoryData(param.getCustomerId(), null); | 
					 | 
					 | 
					            List<IssueProjectCategoryDictEntity> categoryList = issueProjectCategoryDictService.getAllByCId(param.getCustomerId()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        //key projectId:categoryCode Set
 | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        Map<String, Set<String>> projectCategoryMap = projectCategoryData.stream() | 
					 | 
					 | 
					            //项目分类数据 todo 暂时查询所有
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                .collect(Collectors.groupingBy(ProjectCategoryDTO::getProjectId, Collectors.mapping(ProjectCategoryDTO::getCategoryCode, Collectors.toSet()))); | 
					 | 
					 | 
					            List<ProjectCategoryDTO> projectCategoryData = projectService.getProjectCategoryData(param.getCustomerId(), null); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					
 | 
					 | 
					 | 
					            //key projectId:categoryCode Set
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        //获取业务库项目标题
 | 
					 | 
					 | 
					            Map<String, Set<String>> projectCategoryMap = projectCategoryData.stream() | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        List<ProjectDTO> bizProjectInfoList = projectService.getProjectInfo(param.getCustomerId(), null, null); | 
					 | 
					 | 
					                    .collect(Collectors.groupingBy(ProjectCategoryDTO::getProjectId, Collectors.mapping(ProjectCategoryDTO::getCategoryCode, Collectors.toSet()))); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        if (CollectionUtils.isEmpty(bizProjectInfoList)) { | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            log.warn("difficultyDataExtract customerId:{} have any project", param.getCustomerId()); | 
					 | 
					 | 
					            //获取业务库项目标题
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            return false; | 
					 | 
					 | 
					            List<ProjectDTO> bizProjectInfoList = projectService.getProjectInfo(param.getCustomerId(), null, null); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        } | 
					 | 
					 | 
					            if (CollectionUtils.isEmpty(bizProjectInfoList)) { | 
				
			
			
				
				
			
		
	
		
		
			
				
					 | 
					 | 
					        Map<String, ProjectDTO> bizProjectInfoMap = bizProjectInfoList.stream().collect(Collectors.toMap(ProjectDTO::getId, o -> o, (o1, o2) -> o1)); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        int pageNo = NumConstant.ONE; | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        int pageSize = NumConstant.FIVE_HUNDRED; | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        List<FactOriginProjectMainAndPeriodDTO> difficultyBaseList; | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        do { | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            //1.根据客户Id 获取所有项目数据
 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            int offset = (pageNo++ - NumConstant.ONE) * pageSize; | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            difficultyBaseList = factOriginProjectMainDailyService.getProjectAndPeriodForDiff(param, offset,pageSize); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            if (CollectionUtils.isEmpty(difficultyBaseList)) { | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					                log.warn("difficultyDataExtract customerId:{} have any project", param.getCustomerId()); | 
					 | 
					 | 
					                log.warn("difficultyDataExtract customerId:{} have any project", param.getCustomerId()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                return false; | 
					 | 
					 | 
					                return false; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            } | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					
 | 
					 | 
					 | 
					            Map<String, ProjectDTO> bizProjectInfoMap = bizProjectInfoList.stream().collect(Collectors.toMap(ProjectDTO::getId, o -> o, (o1, o2) -> o1)); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            //2.获取项目的所有节点耗时数据
 | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            List<FactOriginProjectOrgPeriodDailyEntity> projectPeriodList = difficultyBaseList.stream() | 
					 | 
					 | 
					            int pageNo = NumConstant.ONE; | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                    .filter(o->o.getPeriodList() != null) | 
					 | 
					 | 
					            int pageSize = NumConstant.ONE_THOUSAND; | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                    .flatMap(o->o.getPeriodList().stream()) | 
					 | 
					 | 
					            List<FactOriginProjectMainAndPeriodDTO> difficultyBaseList; | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                    .collect(Collectors.toList()); | 
					 | 
					 | 
					            do { | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            //处理部门数去重(只要流转到就算)
 | 
					 | 
					 | 
					                //1.根据客户Id 获取所有项目数据
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            Map<String, Set<String>> orgCountMap = new HashMap<>(); | 
					 | 
					 | 
					                int offset = (pageNo++ - NumConstant.ONE) * pageSize; | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            //被处理次数
 | 
					 | 
					 | 
					                difficultyBaseList = factOriginProjectMainDailyService.getProjectAndPeriodForDiff(param, offset,pageSize); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            Map<String, Integer> handleCountMap = new HashMap<>(); | 
					 | 
					 | 
					                if (CollectionUtils.isEmpty(difficultyBaseList)) { | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            Set<String> valideProjectIdSet = fillAnyCountAndValidProject(param, projectPeriodList, orgCountMap, handleCountMap); | 
					 | 
					 | 
					                    log.warn("difficultyDataExtract customerId:{} have any project", param.getCustomerId()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					
 | 
					 | 
					 | 
					                    return false; | 
				
			
			
				
				
			
		
	
		
		
			
				
					 | 
					 | 
					            List<ScreenDifficultyDataEntity> diffList = new ArrayList<>(); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            List<ScreenDifficultyImgDataEntity> imgDataEntities = new ArrayList<>(); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            for (FactOriginProjectMainAndPeriodDTO project : difficultyBaseList) { | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                if (agencyMap.get(project.getAgencyId()) == null || bizProjectInfoMap.get(project.getId()) == null) { | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                    log.warn("未获取到相关的项目信息或者项目的所属组织信息,agencyId:{},projectId:{}",project.getAgencyId(),project.getId()); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                    continue; | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                } | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                //判断是否符合难点堵点条件
 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                if (!valideProjectIdSet.contains(project.getId())) { | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                    continue; | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                } | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                ScreenDifficultyDataEntity diffEntity = buildBaseDiffEntity(project, agencyMap, gridMap, bizProjectInfoMap); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                Set<String> regCount = orgCountMap.get(project.getId()); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                if (regCount != null) { | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                    diffEntity.setEventReOrg(regCount.size()); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                } else { | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                    diffEntity.setEventReOrg(0); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                } | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                Integer handleOrgCount = handleCountMap.get(project.getId()); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                if (handleOrgCount != null) { | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                    diffEntity.setEventHandledCount(handleOrgCount); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                } else { | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                    diffEntity.setEventHandledCount(0); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					                } | 
					 | 
					 | 
					                } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					                diffEntity.setDataEndTime(StringUtils.isBlank(param.getDateId())?DateUtils.getBeforeNDay(NumConstant.ONE):param.getDateId()); | 
					 | 
					 | 
					                //2.获取项目的所有节点耗时数据
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                setCategoryInfo(diffEntity, project.getId(), categoryList, projectCategoryMap); | 
					 | 
					 | 
					                List<FactOriginProjectOrgPeriodDailyEntity> projectPeriodList = difficultyBaseList.stream() | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					
 | 
					 | 
					 | 
					                        .filter(o->o.getPeriodList() != null) | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					
 | 
					 | 
					 | 
					                        .flatMap(o->o.getPeriodList().stream()) | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                if (StringUtils.isNotBlank(project.getTopicId())) { | 
					 | 
					 | 
					                        .collect(Collectors.toList()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                    //获取图片及话题内容
 | 
					 | 
					 | 
					                //处理部门数去重(只要流转到就算)
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                    ResiTopicAndImgResultDTO topicInfo = topicService.getTopicAndImgs(project.getTopicId(), "image"); | 
					 | 
					 | 
					                Map<String, Set<String>> orgCountMap = new HashMap<>(); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                    if (topicInfo != null) { | 
					 | 
					 | 
					                //被处理次数
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                        List<TopicAttachmentDTO> topicImgList = topicInfo.getTopicImgList(); | 
					 | 
					 | 
					                Map<String, Integer> handleCountMap = new HashMap<>(); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                        if (!CollectionUtils.isEmpty(topicImgList)){ | 
					 | 
					 | 
					                Set<String> valideProjectIdSet = fillAnyCountAndValidProject(param, projectPeriodList, orgCountMap, handleCountMap); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                            diffEntity.setEventImgUrl(topicImgList.get(NumConstant.ZERO).getAttachmentUrl()); | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                            topicImgList.forEach(img -> { | 
					 | 
					 | 
					                List<ScreenDifficultyDataEntity> diffList = new ArrayList<>(); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                                ScreenDifficultyImgDataEntity imgData = new ScreenDifficultyImgDataEntity(); | 
					 | 
					 | 
					                List<ScreenDifficultyImgDataEntity> imgDataEntities = new ArrayList<>(); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                                imgData.setEventId(project.getId()); | 
					 | 
					 | 
					                for (FactOriginProjectMainAndPeriodDTO project : difficultyBaseList) { | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                                imgData.setEventImgUrl(img.getAttachmentUrl()); | 
					 | 
					 | 
					                    if (agencyMap.get(project.getAgencyId()) == null || bizProjectInfoMap.get(project.getId()) == null) { | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                                imgData.setSort(img.getSort()); | 
					 | 
					 | 
					                        log.warn("未获取到相关的项目信息或者项目的所属组织信息,agencyId:{},projectId:{}",project.getAgencyId(),project.getId()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                                imgDataEntities.add(imgData); | 
					 | 
					 | 
					                        continue; | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                                imgData.setCustomerId(param.getCustomerId()); | 
					 | 
					 | 
					                    } | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                            }); | 
					 | 
					 | 
					                    //判断是否符合难点堵点条件
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    if (!valideProjectIdSet.contains(project.getId())) { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                        continue; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    ScreenDifficultyDataEntity diffEntity = buildBaseDiffEntity(project, agencyMap, gridMap, bizProjectInfoMap); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    Set<String> regCount = orgCountMap.get(project.getId()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    if (regCount != null) { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                        diffEntity.setEventReOrg(regCount.size()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    } else { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                        diffEntity.setEventReOrg(0); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    Integer handleOrgCount = handleCountMap.get(project.getId()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    if (handleOrgCount != null) { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                        diffEntity.setEventHandledCount(handleOrgCount); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    } else { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                        diffEntity.setEventHandledCount(0); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    diffEntity.setDataEndTime(StringUtils.isBlank(param.getDateId())?DateUtils.getBeforeNDay(NumConstant.ONE):param.getDateId()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    setCategoryInfo(diffEntity, project.getId(), categoryList, projectCategoryMap); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    if (StringUtils.isNotBlank(project.getTopicId())) { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                        //获取图片及话题内容
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                        ResiTopicAndImgResultDTO topicInfo = topicService.getTopicAndImgs(project.getTopicId(), "image"); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                        if (topicInfo != null) { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                            List<TopicAttachmentDTO> topicImgList = topicInfo.getTopicImgList(); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                            if (!CollectionUtils.isEmpty(topicImgList)){ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                                diffEntity.setEventImgUrl(topicImgList.get(NumConstant.ZERO).getAttachmentUrl()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                                topicImgList.forEach(img -> { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                                    ScreenDifficultyImgDataEntity imgData = new ScreenDifficultyImgDataEntity(); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                                    imgData.setEventId(project.getId()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                                    imgData.setEventImgUrl(img.getAttachmentUrl()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                                    imgData.setSort(img.getSort()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                                    imgDataEntities.add(imgData); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                                    imgData.setCustomerId(param.getCustomerId()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                                }); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                            } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                            diffEntity.setEventContent(topicInfo.getTopicContent()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                            log.info("projectId:{} imgs:{}", project.getId(), imgDataEntities.stream().filter(o -> o.getEventId().equals(project.getId())).count()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                        } | 
					 | 
					 | 
					                        } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                        diffEntity.setEventContent(topicInfo.getTopicContent()); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                        log.info("projectId:{} imgs:{}", project.getId(), imgDataEntities.stream().filter(o -> o.getEventId().equals(project.getId())).count()); | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                    } | 
					 | 
					 | 
					                    } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					
 | 
					 | 
					 | 
					                    diffList.add(diffEntity); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					                } | 
					 | 
					 | 
					                } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					                diffList.add(diffEntity); | 
					 | 
					 | 
					                log.info("========:" + JSON.toJSONString(diffList)); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            } | 
					 | 
					 | 
					                log.info("========:" + JSON.toJSONString(imgDataEntities)); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            log.info("========:" + JSON.toJSONString(diffList)); | 
					 | 
					 | 
					                screenDifficultyDataService.dataClean(param.getCustomerId(),diffList,imgDataEntities); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            log.info("========:" + JSON.toJSONString(imgDataEntities)); | 
					 | 
					 | 
					                log.info("difficultyDataExtract excute pageNo:{}",pageNo); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					
 | 
					 | 
					 | 
					            } while (!CollectionUtils.isEmpty(difficultyBaseList)&&difficultyBaseList.size()==pageSize); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            screenDifficultyDataService.dataClean(param.getCustomerId(),diffList,imgDataEntities); | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        } while (!CollectionUtils.isEmpty(difficultyBaseList)&&difficultyBaseList.size()==pageSize); | 
					 | 
					 | 
					            //3.获取项目的最后操作记录
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					
 | 
					 | 
					 | 
					            return true; | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        //log.info("【大屏数据抽取-难点赌点执行完毕】 客户Id{} 难点赌点数据{}", param.getCustomerId(), JSON.toJSONString(diffList));
 | 
					 | 
					 | 
					        } finally { | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        //3.获取项目的最后操作记录
 | 
					 | 
					 | 
					            log.info("【大屏数据抽取-难点赌点执行完毕】 客户Id{}", param.getCustomerId()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        return true; | 
					 | 
					 | 
					        } | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					    } | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    /** | 
					 | 
					 | 
					    /** | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  |