From 1894d9da3ceae871d77862a5b7454abdb015c5f3 Mon Sep 17 00:00:00 2001 From: jianjun Date: Thu, 12 Aug 2021 15:29:13 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E5=92=8C=E5=B0=8F=E7=BB=84=E6=80=BB=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../result/BaseStatsDataResultDTO.java | 6 ----- .../result/UserAndGroupTotalResultDTO.java | 20 ++++++++++++++ .../controller/pub/PubController.java | 17 ++++++++---- .../dataaggre/dao/datastats/DataStatsDao.java | 19 ++++++++++++++ .../service/datastats/DataStatsService.java | 10 +++++++ .../datastats/impl/DataStatsServiceImpl.java | 23 ++++++++++++++++ .../mapper/datastats/DatsStatsDao.xml | 26 +++++++++++++++++++ 7 files changed, 110 insertions(+), 11 deletions(-) create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/UserAndGroupTotalResultDTO.java diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/BaseStatsDataResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/BaseStatsDataResultDTO.java index 8302d08e49..1381870afa 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/BaseStatsDataResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/BaseStatsDataResultDTO.java @@ -14,18 +14,12 @@ public class BaseStatsDataResultDTO implements Serializable { private Integer topicTotal; private Integer topicIncr; - // private Integer topicToIssueTotal; private Integer issueTotal; private Integer issueIncr; - // private Integer issueToProjectTotal; private Integer projectTotal; private Integer projectIncr; private Integer closedProjectTotal; private Integer closedProjectIncr; -// private Integer patrolTotal; -// private Integer patrolTotalTime; -// private Integer orgId; -// private Integer orgName; diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/UserAndGroupTotalResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/UserAndGroupTotalResultDTO.java new file mode 100644 index 0000000000..7572ecd1ae --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/result/UserAndGroupTotalResultDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dataaggre.dto.datastats.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 对外接口--查询当前组织的用户和小组总数数 + * @Auth sun + */ +@Data +public class UserAndGroupTotalResultDTO implements Serializable { + private static final long serialVersionUID = 3564816296202777303L; + //话题总数 + private Integer userTotal = 0; + //小组总数 + private Integer groupTotal = 0; + private Integer sort = 1; + +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java index 8a0c8ae877..680d16023f 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/pub/PubController.java @@ -7,10 +7,7 @@ import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.dataaggre.dto.datastats.form.BaseDataFormDTO; -import com.epmet.dataaggre.dto.datastats.result.BaseStatsDataResultDTO; -import com.epmet.dataaggre.dto.datastats.result.SubTopicAndGroupResultDTO; -import com.epmet.dataaggre.dto.datastats.result.SubUserTotalResultDTO; -import com.epmet.dataaggre.dto.datastats.result.WorkFactResultDTO; +import com.epmet.dataaggre.dto.datastats.result.*; import com.epmet.dataaggre.service.datastats.DataStatsService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -93,11 +90,21 @@ public class PubController { return new Result>().ok(data); } + /** + * @Param formDTO + * @Description 对外接口--查询当前组织的用户和小组总数数 + * @author sun + */ + @PostMapping("getUserAndGroupTotal") + public Result getUserAndGroupTotal(@RequestBody BaseDataFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, BaseDataFormDTO.AgencyIdAndLevel.class); + return new Result().ok(dataStatsService.getUserAndGroupTotal(formDTO)); + } + /** * 导出数据,使用map接收 * * @param formDTO - * @param response * @throws IOException * @return */ diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/DataStatsDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/DataStatsDao.java index 46f7e64cb6..e9772bf321 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/DataStatsDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/DataStatsDao.java @@ -276,9 +276,28 @@ public interface DataStatsDao { /** * 获取话题相关总数 + * * @param agencyList * @param dateId * @return */ List getSubSumAgencyTopic(@Param("agencyList") List agencyList, @Param("dateId") String dateId); + + /** + * desc:获取用户总数 + * + * @param agencyList + * @param dateId + * @return + */ + TotalAndIncrResultDTO getAgencySumUser(@Param("agencyList") List agencyList, @Param("dateId") String dateId); + + /** + * desc:获取小组总数 + * + * @param agencyList + * @param dateId + * @return + */ + TotalAndIncrResultDTO getAgencySumGroup(@Param("agencyList") List agencyList, @Param("dateId") String dateId); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java index 9db20ef41c..8d0cb5fa76 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java @@ -211,4 +211,14 @@ public interface DataStatsService { * @param formDTO */ List subTopicAndGroup(BaseDataFormDTO formDTO); + + /** + * desc: 对外接口--查询当前组织的用户和小组总数数 + * + * @param formDTO + * @return java.util.List + * @author LiuJanJun + * @date 2021/8/12 2:23 下午 + */ + UserAndGroupTotalResultDTO getUserAndGroupTotal(BaseDataFormDTO formDTO); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java index 0fede9e608..d89badcfaa 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java @@ -1799,4 +1799,27 @@ public class DataStatsServiceImpl implements DataStatsService { return resultList; } + @Override + public UserAndGroupTotalResultDTO getUserAndGroupTotal(BaseDataFormDTO formDTO) { + //入参有日期的则按具体时间执行,没有的则按当前时间前一天执行 + if (StringUtils.isBlank(formDTO.getDateId())) { + Date yesterday = DateUtils.addDateDays(new Date(), -1); + SimpleDateFormat format = new SimpleDateFormat(DateUtils.DATE_PATTERN_YYYYMMDD); + formDTO.setDateId(format.format(yesterday)); + } + UserAndGroupTotalResultDTO result = new UserAndGroupTotalResultDTO(); + + //0.根据组织Id查询是否存在子客户,存在的按areaCode查询当前客户之外的客户组织列表 + List agencyList = indexService.getAgencyIdsByAgencyId(formDTO.getAgencyId()); + agencyList.add(formDTO.getAgencyId()); + + //3-2.查询组织下用户 + TotalAndIncrResultDTO userTotal = dataStatsDao.getAgencySumUser(agencyList, formDTO.getDateId()); + result.setUserTotal(userTotal == null? NumConstant.ZERO:userTotal.getTotal()); + //3-3.查询直属下级组织小组日统计数据 + TotalAndIncrResultDTO groupTotal = dataStatsDao.getAgencySumGroup(agencyList, formDTO.getDateId()); + result.setGroupTotal(groupTotal == null? NumConstant.ZERO:groupTotal.getTotal()); + return result; + } + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml index eb3f9c7d33..ca06b808fe 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml @@ -742,5 +742,31 @@ agency_id = #{agencyId} + + From b1a91f6bd224e16930f44f27e4e3f06bd716032e Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Thu, 12 Aug 2021 15:44:27 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BD=A0=E5=A5=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java index cf7aef270e..1d18d7329f 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java @@ -276,7 +276,7 @@ public class EpmetUserServiceImpl implements EpmetUserService { formDTO.setPatrolStartTime(DateUtils.getBeforeMonthDate(formDTO.getTime(), "yyyyMMdd")); List staffList = new ArrayList<>(); //2-1.按名字检索时先查询人员基础信息 - if (StringUtils.isEmpty(formDTO.getStaffName())) { + if (!StringUtils.isEmpty(formDTO.getStaffName())) { staffList = customerStaffDao.selectByStaffIds(null, formDTO.getStaffName()); if (!CollectionUtils.isEmpty(staffList)) { formDTO.setStaffId(staffList.get(0).getUserId()); From 36d8c53ffa2374e9b70fe8eeeaa0ccd1d75d674d Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Thu, 12 Aug 2021 15:46:19 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BD=A0=E5=A5=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java index 1d18d7329f..4e2453104a 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java @@ -285,7 +285,7 @@ public class EpmetUserServiceImpl implements EpmetUserService { //2-2.查询业务数据 resultList = staffPatrolRecordDao.selectStaffPatrolList(formDTO); //2-3.查询人员基本信息【之前sql关联人员表查性别、姓名效率低 所以分开查) - if (!CollectionUtils.isEmpty(staffList)) { + if (CollectionUtils.isEmpty(staffList)) { List staffIdList = resultList.stream().map(StaffListResultDTO::getStaffId).collect(Collectors.toList()); staffList = customerStaffDao.selectByStaffIds(staffIdList, null); }