diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSubAgencyResultDTO.java b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSubAgencyResultDTO.java index 87dd107010..3b599a64ff 100644 --- a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSubAgencyResultDTO.java +++ b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSubAgencyResultDTO.java @@ -1,5 +1,6 @@ package com.epmet.topic.dto.result; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import java.io.Serializable; @@ -32,4 +33,10 @@ public class TopicSubAgencyResultDTO implements Serializable { * 机关Id */ private String agencyId; + + /** + * 排序 + */ + @JsonIgnore + private Integer sort; } diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSubGridResultDTO.java b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSubGridResultDTO.java index 64cad1615c..d319e2c128 100644 --- a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSubGridResultDTO.java +++ b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSubGridResultDTO.java @@ -1,5 +1,6 @@ package com.epmet.topic.dto.result; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import java.io.Serializable; @@ -32,4 +33,10 @@ public class TopicSubGridResultDTO implements Serializable { * 网格Id */ private String gridId; + + /** + * 排序 + */ + @JsonIgnore + private Integer sort; } 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 8f4a3b3254..7382b031d5 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.5 + image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.7 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 c4c1073c33..c2611b288d 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.5 + 0.3.7 data-report-server diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/group/impl/GroupServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/group/impl/GroupServiceImpl.java index 80a5624e3b..1c72f584fc 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/group/impl/GroupServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/group/impl/GroupServiceImpl.java @@ -15,7 +15,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.Comparator; import java.util.List; +import java.util.stream.Collectors; /** * @Author zxc @@ -60,7 +62,8 @@ public class GroupServiceImpl implements GroupService { } }); }); - return result; + //倒序 + return result.stream().sorted(Comparator.comparing(GroupSubAgencyResultDTO::getValue).reversed()).collect(Collectors.toList()); } return new ArrayList<>(); } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java index 0859bd2632..ad8d8e7eee 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java @@ -14,9 +14,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Comparator; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; /** @@ -94,6 +92,7 @@ public class TopicServiceImpl implements TopicService { public List topicSubGrid(TokenDto tokenDto) { String agencyId = this.getLoginUserDetails(tokenDto); List result = new ArrayList<>(); + List resultAll = new ArrayList<>(); List subGridIdList = topicDao.getSubGridIdList(agencyId); if (subGridIdList.size() != NumConstant.ZERO){ List gridAllTopicInfoLastDay = topicDao.getGridAllTopicInfoLastDay(); @@ -110,7 +109,17 @@ public class TopicServiceImpl implements TopicService { } }); }); - return result; + Map> collect = result.stream().collect(Collectors.groupingBy(TopicSubGridResultDTO::getGridId)); + Set>> entries = collect.entrySet(); + entries.forEach(entry -> { + List value = entry.getValue(); + Integer sort = value.stream().collect(Collectors.summingInt(TopicSubGridResultDTO::getValue)); + value.forEach(v -> { + v.setSort(sort); + resultAll.add(v); + }); + }); + return resultAll.stream().sorted(Comparator.comparing(TopicSubGridResultDTO::getSort).reversed()).collect(Collectors.toList()); } return new ArrayList<>(); } @@ -124,6 +133,7 @@ public class TopicServiceImpl implements TopicService { public List topicSubAgency(TokenDto tokenDto) { String agencyId = this.getLoginUserDetails(tokenDto); List result = new ArrayList<>(); + List resultAll = new ArrayList<>(); List subAgencyIdList = topicDao.getSubAgencyIdList(agencyId); //存在下级机关 if (subAgencyIdList.size() != NumConstant.ZERO){ @@ -142,7 +152,17 @@ public class TopicServiceImpl implements TopicService { } }); }); - return result; + Map> collect = result.stream().collect(Collectors.groupingBy(TopicSubAgencyResultDTO::getAgencyId)); + Set>> entries = collect.entrySet(); + entries.forEach(entry -> { + List value = entry.getValue(); + Integer sort = value.stream().collect(Collectors.summingInt(TopicSubAgencyResultDTO::getValue)); + value.forEach(v -> { + v.setSort(sort); + resultAll.add(v); + }); + }); + return resultAll.stream().sorted(Comparator.comparing(TopicSubAgencyResultDTO::getSort).reversed()).collect(Collectors.toList()); } //不存在 return new ArrayList<>(); 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..47b42695ee 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,8 @@ 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') + ORDER BY value DESC @@ -89,7 +90,7 @@ del_flag = '0' AND agency_id = #{agencyId} ORDER BY - month_id DESC + month_id DESC, value DESC LIMIT 12 diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java index b19cd277b5..045fca9844 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java @@ -128,4 +128,12 @@ public interface DataStatisticalOpenFeignClient { @PostMapping("/data/stats/statsproject/gridprojectstats") Result gridProjectStats(); + /** + * 初始化所有维度 + * + * @return + */ + @PostMapping("/data/stats/dim/all/init") + Result initAllDims(); + } diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java index 336020e353..3a6c7e34c3 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java @@ -132,4 +132,9 @@ public class DataStatisticalOpenFeignClientFallBack implements DataStatisticalOp public Result gridProjectStats() { return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "gridProjectStats"); } + + @Override + public Result initAllDims() { + return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "initAllDims"); + } } diff --git a/epmet-module/data-statistical/data-statistical-server/deploy/docker-compose-dev.yml b/epmet-module/data-statistical/data-statistical-server/deploy/docker-compose-dev.yml index 738ce59964..9f622320e1 100644 --- a/epmet-module/data-statistical/data-statistical-server/deploy/docker-compose-dev.yml +++ b/epmet-module/data-statistical/data-statistical-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: data-statistical-server: container_name: data-statistical-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/data-statistical-server:0.3.3 + image: 192.168.1.130:10080/epmet-cloud-dev/data-statistical-server:0.3.7 ports: - "8108:8108" network_mode: host # 使用现有网络 diff --git a/epmet-module/data-statistical/data-statistical-server/pom.xml b/epmet-module/data-statistical/data-statistical-server/pom.xml index ece13a9d61..3cb1ed3e57 100644 --- a/epmet-module/data-statistical/data-statistical-server/pom.xml +++ b/epmet-module/data-statistical/data-statistical-server/pom.xml @@ -2,7 +2,7 @@ - 0.3.3 + 0.3.7 data-statistical com.epmet diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DimController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DimController.java index b901c3463e..81ee884d47 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DimController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DimController.java @@ -46,7 +46,7 @@ public class DimController { * @return */ @PostMapping("/all/init") - public Result initAll() { + public Result initAllDims() { try { dimDateService.initDimDate(); logger.info("初始化按日维度成功"); diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/DimMonthServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/DimMonthServiceImpl.java index d732bb5c47..19eea4c1fc 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/DimMonthServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/DimMonthServiceImpl.java @@ -118,16 +118,16 @@ public class DimMonthServiceImpl extends BaseServiceImpl 4.0.0 - 0.3.10 + 0.3.11 com.epmet epmet-job diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/DimInitService.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/DimInitService.java new file mode 100644 index 0000000000..6d3f493620 --- /dev/null +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/DimInitService.java @@ -0,0 +1,9 @@ +package com.epmet.service; + +import com.epmet.commons.tools.utils.Result; + +public interface DimInitService { + + Result initAllDims(); + +} diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/DimInitServiceImpl.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/DimInitServiceImpl.java new file mode 100644 index 0000000000..38bdc54135 --- /dev/null +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/DimInitServiceImpl.java @@ -0,0 +1,19 @@ +package com.epmet.service.impl; + +import com.epmet.commons.tools.utils.Result; +import com.epmet.feign.DataStatisticalOpenFeignClient; +import com.epmet.service.DimInitService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class DimInitServiceImpl implements DimInitService { + + @Autowired + private DataStatisticalOpenFeignClient statsFeignClient; + + @Override + public Result initAllDims() { + return statsFeignClient.initAllDims(); + } +} diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/DimInitTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/DimInitTask.java new file mode 100644 index 0000000000..1fa78dd52c --- /dev/null +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/DimInitTask.java @@ -0,0 +1,31 @@ +package com.epmet.task; + +import com.epmet.commons.tools.utils.Result; +import com.epmet.service.DimInitService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/6/23 14:36 + */ +@Slf4j +@Component("dimInitTask") +public class DimInitTask implements ITask { + + @Autowired + private DimInitService dimInitService; + + @Override + public void run(String params) { + log.debug("DimInitTask定时任务正在执行,参数为:{}", params); + Result result = dimInitService.initAllDims(); + if (result.success()){ + log.debug("DimInitTask定时任务正在执行定时任务执行成功"); + }else { + log.debug("DimInitTask定时任务正在执行定时任务执行失败:" + result.getMsg()); + } + } +}