diff --git a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml index d9df4ec6ab..2258dd43cf 100644 --- a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml +++ b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: data-report-server: container_name: data-report-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.6 + image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.8 ports: - "8109:8109" network_mode: host # 使用现有网络 diff --git a/epmet-module/data-report/data-report-server/pom.xml b/epmet-module/data-report/data-report-server/pom.xml index 8cfd6b8fda..a03e16e222 100644 --- a/epmet-module/data-report/data-report-server/pom.xml +++ b/epmet-module/data-report/data-report-server/pom.xml @@ -3,7 +3,7 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - 0.3.6 + 0.3.8 data-report-server diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/user/impl/UserAnalysisServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/user/impl/UserAnalysisServiceImpl.java index 9e02c60af2..5265749de5 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/user/impl/UserAnalysisServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/user/impl/UserAnalysisServiceImpl.java @@ -28,9 +28,9 @@ import org.springframework.util.CollectionUtils; import java.text.DecimalFormat; import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; -import java.util.stream.Collectors; /** * 组织能力用户相关接口 @@ -169,10 +169,23 @@ public class UserAnalysisServiceImpl implements UserAnalysisService { logger.error(String.format("各机关注册用户数缺少记录:date_id=%s,agencyId=%s",formDTO.getDateId(),dimInitResultDto.getAgencyId())); } } + logger.info("排序前"); + for(UserSubAgencyResultDTO m:dimList){ + logger.info("机关名:"+m.getName()+",总数="+m.getTotal()); + } //返回集合按照total降序排序 - List returnList = dimList.stream().sorted(Comparator.comparing(UserSubAgencyResultDTO::getTotal)) - .collect(Collectors.toList()); - return returnList; + Collections.sort(dimList, new Comparator() { + @Override + public int compare(UserSubAgencyResultDTO o1, UserSubAgencyResultDTO o2) { + int i=o2.getTotal()-o1.getTotal();//降序 + return i; + } + }); + logger.info("排序后"); + for(UserSubAgencyResultDTO m:dimList){ + logger.info("机关名:"+m.getName()+",总数="+m.getTotal()); + } + return dimList; } private List initUserSubAgencyResultDTO(String myAgencyId) { @@ -273,10 +286,23 @@ public class UserAnalysisServiceImpl implements UserAnalysisService { logger.error(String.format("直属网格注册用户数缺少记录:date_id=%s,gridId=%s",formDTO.getDateId(),dimInitResultDto.getGridId())); } } + logger.info("排序前"); + for(UserSubGridResultDTO m:dimList){ + logger.info("网格名:"+m.getName()+",总数="+m.getTotal()); + } //返回集合按照total降序排序 - List returnList = dimList.stream().sorted(Comparator.comparing(UserSubGridResultDTO::getTotal)) - .collect(Collectors.toList()); - return returnList; + Collections.sort(dimList, new Comparator() { + @Override + public int compare(UserSubGridResultDTO o1, UserSubGridResultDTO o2) { + int i=o2.getTotal()-o1.getTotal();//降序 + return i; + } + }); + logger.info("排序后"); + for(UserSubGridResultDTO m:dimList){ + logger.info("网格名:"+m.getName()+",总数="+m.getTotal()); + } + return dimList; } private List initUserSubGridResultDTO(String myAgencyId) { @@ -399,7 +425,7 @@ public class UserAnalysisServiceImpl implements UserAnalysisService { for(UserIncrTrendResDTO userIncrTrendResDTO:list){ String date=""; if(UserAnalysisConstant.DAY_TYPE.equals(formDTO.getType())){ - date=DateUtils.getxAxisDatePattern(userIncrTrendResDTO.getDateIdOrMonthId(),"."); + date=DateUtils.getxAxisDatePattern(userIncrTrendResDTO.getDateIdOrMonthId(),"/"); }else if(UserAnalysisConstant.MONTH_TYPE.equals(formDTO.getType())){ date=DateUtils.getxAxisDatePattern(userIncrTrendResDTO.getDateIdOrMonthId(),"/"); } diff --git a/epmet-module/data-report/data-report-server/src/main/resources/mapper/group/GroupDao.xml b/epmet-module/data-report/data-report-server/src/main/resources/mapper/group/GroupDao.xml index 607fc0819c..6bee70e94b 100644 --- a/epmet-module/data-report/data-report-server/src/main/resources/mapper/group/GroupDao.xml +++ b/epmet-module/data-report/data-report-server/src/main/resources/mapper/group/GroupDao.xml @@ -42,8 +42,7 @@ AND da.del_flag = '0' WHERE fgad.del_flag = '0' - GROUP BY fgad.agency_id - ORDER BY fgad.date_id desc + AND fgad.date_id = (SELECT MAX(date_id) FROM fact_group_agency_daily WHERE del_flag = '0') @@ -59,6 +58,7 @@ WHERE fggd.del_flag = '0' AND fggd.agency_id = #{agencyId} + AND fggd.date_id = (SELECT MAX(date_id) FROM fact_group_grid_daily WHERE del_flag = '0') diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsTopicServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsTopicServiceImpl.java index e2f275f83c..e481f0a596 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsTopicServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsTopicServiceImpl.java @@ -2,6 +2,7 @@ package com.epmet.service.impl; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.constant.ProjectConstant; import com.epmet.dto.AgencySubTreeDto; import com.epmet.dto.stats.DimTopicStatusDTO; import com.epmet.dto.stats.topic.result.TopicStatisticalData; @@ -12,6 +13,8 @@ import com.epmet.service.stats.DimTopicStatusService; import com.epmet.service.stats.topic.TopicStatisticalService; import com.epmet.service.topic.TopicService; import com.epmet.util.DimIdGenerator; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -27,6 +30,8 @@ import java.util.*; @Service public class StatsTopicServiceImpl implements StatsTopicService { + protected static final Logger log = LoggerFactory.getLogger(StatsTopicServiceImpl.class); + @Autowired private DimCustomerService dimCustomerService; @@ -80,10 +85,14 @@ public class StatsTopicServiceImpl implements StatsTopicService { List agencies = dimAgencyService.getAllAgency(customerId); //5.计算统计数据 - TopicStatisticalData data = - topicService.compute(agencies,date,timeDimension,customerId,topicStatusDimension); + try { + TopicStatisticalData data = + topicService.compute(agencies, date, timeDimension, customerId, topicStatusDimension); + //6.生成唯一性统计数据 + topicStatisticalService.insertUniquely(data); + }catch(Exception e){ + log.error(String.format(ProjectConstant.STATS_FAILED_PREFIX, "topicStats", customerId, new Date().toString(), e.getMessage())); + } - //6.生成唯一性统计数据 - topicStatisticalService.insertUniquely(data); } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java index d0c6d3a40c..04101bc378 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java @@ -2,6 +2,7 @@ package com.epmet.service.impl; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.constant.ProjectConstant; import com.epmet.dto.AgencySubTreeDto; import com.epmet.dto.stats.user.result.UserStatisticalData; import com.epmet.service.StatsUserService; @@ -10,6 +11,8 @@ import com.epmet.service.stats.DimCustomerService; import com.epmet.service.stats.user.UserStatisticalService; import com.epmet.service.user.UserService; import com.epmet.util.DimIdGenerator; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -28,6 +31,8 @@ import java.util.List; @Service public class StatsUserServiceImpl implements StatsUserService { + protected static final Logger log = LoggerFactory.getLogger(StatsUserServiceImpl.class); + @Autowired private DimCustomerService dimCustomerService; @@ -75,11 +80,19 @@ public class StatsUserServiceImpl implements StatsUserService { //List topAgencies = dimAgencyService.getTopAgency(customerId); //4.计算机关统计数据、生成唯一性统计数据 - UserStatisticalData agencyData = userService.traverseAgencyUser(agencies,date,timeDimension); - userStatisticalService.insertUniquely(agencyData); + try { + UserStatisticalData agencyData = userService.traverseAgencyUser(agencies, date, timeDimension); + userStatisticalService.insertUniquely(agencyData); + }catch(Exception e){ + log.error(String.format(ProjectConstant.STATS_FAILED_PREFIX, "agencyUserStats", customerId, new Date().toString(), e.getMessage())); + } //5.计算网格统计数据、生成唯一性统计数据 - UserStatisticalData gridData = userService.traverseGridUser(agencies,date,timeDimension); - userStatisticalService.insertUniquely(gridData); + try { + UserStatisticalData gridData = userService.traverseGridUser(agencies, date, timeDimension); + userStatisticalService.insertUniquely(gridData); + }catch(Exception e){ + log.error(String.format(ProjectConstant.STATS_FAILED_PREFIX, "gridUserStats", customerId, new Date().toString(), e.getMessage())); + } } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java index 61eeb5f503..296d66ee22 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java @@ -360,37 +360,38 @@ public class TopicServiceImpl implements TopicService { List groups = gridGroupMap.get(gridId); - groups.forEach(group -> { - if(null != group && StringUtils.isNotBlank(group.getGroupId())){ + if(null != groups) { + groups.forEach(group -> { + if (null != group && StringUtils.isNotBlank(group.getGroupId())) { - issueAgencyM.setIssueIncr(issueAgencyM.getIssueIncr() + groupTopicDataBetweenTimeRange.get(group.getGroupId()).getIssueIncr()); - issueAgencyM.setIssueTotal(issueAgencyM.getIssueTotal() + groupTopicDataBetweenTimeRange.get(group.getGroupId()).getIssueTotal()); + issueAgencyM.setIssueIncr(issueAgencyM.getIssueIncr() + groupTopicDataBetweenTimeRange.get(group.getGroupId()).getIssueIncr()); + issueAgencyM.setIssueTotal(issueAgencyM.getIssueTotal() + groupTopicDataBetweenTimeRange.get(group.getGroupId()).getIssueTotal()); - issueGridM.setIssueIncr(issueGridM.getIssueIncr() + groupTopicDataBetweenTimeRange.get(group.getGroupId()).getIssueIncr()); - issueGridM.setIssueTotal(issueGridM.getIssueTotal() + groupTopicDataBetweenTimeRange.get(group.getGroupId()).getIssueTotal()); + issueGridM.setIssueIncr(issueGridM.getIssueIncr() + groupTopicDataBetweenTimeRange.get(group.getGroupId()).getIssueIncr()); + issueGridM.setIssueTotal(issueGridM.getIssueTotal() + groupTopicDataBetweenTimeRange.get(group.getGroupId()).getIssueTotal()); - GroupTopicData data = groupTopicData.get(group.getGroupId()); - if(null != data){ + GroupTopicData data = groupTopicData.get(group.getGroupId()); + if (null != data) { - topicAgencyM_discussing.setTopicCount(topicAgencyM_discussing.getTopicCount() + data.getDiscussingTotal()); - topicAgencyM_discussing.setTopicIncr(topicAgencyM_discussing.getTopicIncr() + data.getDiscussingIncr()); + topicAgencyM_discussing.setTopicCount(topicAgencyM_discussing.getTopicCount() + data.getDiscussingTotal()); + topicAgencyM_discussing.setTopicIncr(topicAgencyM_discussing.getTopicIncr() + data.getDiscussingIncr()); - topicAgencyM_hidden.setTopicCount(topicAgencyM_hidden.getTopicCount() + data.getHiddenTotal()); - topicAgencyM_hidden.setTopicIncr(topicAgencyM_hidden.getTopicIncr() + data.getHiddenIncr()); + topicAgencyM_hidden.setTopicCount(topicAgencyM_hidden.getTopicCount() + data.getHiddenTotal()); + topicAgencyM_hidden.setTopicIncr(topicAgencyM_hidden.getTopicIncr() + data.getHiddenIncr()); - topicAgencyM_closed.setTopicCount(topicAgencyM_closed.getTopicCount() + data.getClosedTotal()); - topicAgencyM_closed.setTopicIncr(topicAgencyM_closed.getTopicIncr() + data.getClosedIncr()); + topicAgencyM_closed.setTopicCount(topicAgencyM_closed.getTopicCount() + data.getClosedTotal()); + topicAgencyM_closed.setTopicIncr(topicAgencyM_closed.getTopicIncr() + data.getClosedIncr()); - } - - } + } + } - }); + }); + } if(!gridDistinct.get(gridId)) { setGridMonthlyDataPacket(dataPacket, issueGridM); } @@ -446,7 +447,7 @@ public class TopicServiceImpl implements TopicService { }else{ for (ResiTopicResultDTO topic : group.getTopics()) { - + if(StringUtils.isBlank(topic.getTopicId())) continue; if (StringUtils.equals(NumConstant.ONE_STR, topic.getIncrFlag())) { groupTopicData.setTopicIncr(groupTopicData.getTopicIncr() + NumConstant.ONE); } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/UserServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/UserServiceImpl.java index 26fe63a713..2fca7b32fb 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/UserServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/UserServiceImpl.java @@ -338,6 +338,14 @@ public class UserServiceImpl implements UserService { regAgencyM.setPartymemberProportion(regAgencyD.getPartymemberProportion()); regAgencyM.setWarmHeartedProportion(regAgencyD.getWarmHeartedProportion()); regAgencyM.setCreatedBy(ModuleConstant.CREATED_BY_STATISTICAL_ROBOT); + if(null == dataPacket.getRegAgencyMonthlyList()){ + List list = new LinkedList<>(); + list.add(regAgencyM); + dataPacket.setRegAgencyMonthlyList(list); + }else{ + dataPacket.getRegAgencyMonthlyList().add(regAgencyM); + } + FactParticipationUserAgencyMonthlyDTO partiAgencyM = new FactParticipationUserAgencyMonthlyDTO(); partiAgencyM.setCustomerId(customerId); @@ -356,7 +364,13 @@ public class UserServiceImpl implements UserService { partiAgencyM.setPartymemberProportion(partiAgencyD.getPartymemberProportion()); partiAgencyM.setWarmHeartedProportion(partiAgencyD.getWarmHeartedProportion()); partiAgencyM.setCreatedBy(ModuleConstant.CREATED_BY_STATISTICAL_ROBOT); - + if(null == dataPacket.getPartiAgencyMonthlyList()){ + List list = new LinkedList<>(); + list.add(partiAgencyM); + dataPacket.setPartiAgencyMonthlyList(list); + }else{ + dataPacket.getPartiAgencyMonthlyList().add(partiAgencyM); + } } @@ -521,6 +535,7 @@ public class UserServiceImpl implements UserService { FactParticipationUserGridMonthlyDTO partiGridM = new FactParticipationUserGridMonthlyDTO(); partiGridM.setCustomerId(customerId); partiGridM.setAgencyId(agencyId); + partiGridM.setGridId(gridId); partiGridM.setMonthId(timeDimension.getMonthId()); partiGridM.setQuarterId(timeDimension.getQuarterId()); partiGridM.setYearId(timeDimension.getYearId()); diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/util/ModuleConstant.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/util/ModuleConstant.java index 8a196f82f4..48a1b9a08c 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/util/ModuleConstant.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/util/ModuleConstant.java @@ -30,5 +30,5 @@ public interface ModuleConstant { /** * 统计机器人 * */ - String CREATED_BY_STATISTICAL_ROBOT = "statisticalRobot"; + String CREATED_BY_STATISTICAL_ROBOT = "STATISTICAL_ROBOT"; } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/topic/FactTopicStatusAgencyMonthlyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/topic/FactTopicStatusAgencyMonthlyDao.xml index dc61db8665..721ba53791 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/topic/FactTopicStatusAgencyMonthlyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/topic/FactTopicStatusAgencyMonthlyDao.xml @@ -60,7 +60,7 @@ #{item.topicProportion}, - #{item.topicIncrement}, + #{item.topicIncr}, #{item.createdBy}, diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/topic/TopicDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/topic/TopicDao.xml index 10bf5cd05b..819674dbbf 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/topic/TopicDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/topic/TopicDao.xml @@ -109,6 +109,7 @@ date_format(CREATED_TIME,'%Y-%m-%d') AS createdTime FROM RESI_TOPIC_OPERATION operation WHERE operation.DEL_FLAG = '0' + AND CREATED_TIME =]]> #{startDate} AND CREATED_TIME DATE_SUB( #{endDate}, INTERVAL - 1 DAY) order by TOPIC_ID diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/PublicityTagViewedQuarterlyAndYearlyhlyStatsTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/PublicityTagViewedQuarterlyAndYearlyhlyStatsTask.java index 15f52608bd..cb03b1a6aa 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/PublicityTagViewedQuarterlyAndYearlyhlyStatsTask.java +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/PublicityTagViewedQuarterlyAndYearlyhlyStatsTask.java @@ -21,7 +21,7 @@ public class PublicityTagViewedQuarterlyAndYearlyhlyStatsTask implements ITask { @Override public void run(String params) { logger.debug("publicityTagViewedMonthlyStatsTask定时任务正在执行,参数为:{}", params); - Result result = statsPublicityTaskService.tagViewedMonthlyStatsjob(); + Result result = statsPublicityTaskService.tagUsedQuarterlyStatsjob(); if (result.success()) { logger.debug("publicityTagViewedMonthlyStatsTask定时任务正在执行定时任务执行成功"); } else {