From 3e8b215b519a2e28a996e6682efeb01af07eb7c7 Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 6 Aug 2021 16:49:43 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9A=82=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/datastats/form/BaseDataFormDTO.java | 6 +- .../controller/pub/PubController.java | 57 +++++++++++++++---- .../service/datastats/DataStatsService.java | 6 +- .../datastats/impl/DataStatsServiceImpl.java | 6 +- 4 files changed, 57 insertions(+), 18 deletions(-) diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/BaseDataFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/BaseDataFormDTO.java index d2513cf19d..1eae69043b 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/BaseDataFormDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/datastats/form/BaseDataFormDTO.java @@ -17,9 +17,9 @@ public class BaseDataFormDTO implements Serializable { /** * 组织Id */ - @NotBlank(message = "组织ID不能为空",groups = {BaseDataFormDTO.BaseData.class,BaseDataFormDTO.WorkFact.class}) + @NotBlank(message = "组织ID不能为空",groups = {BaseDataFormDTO.BaseData.class, AgencyIdAndLevel.class}) private String agencyId; - @NotBlank(message = "组织级别不能为空",groups = BaseDataFormDTO.WorkFact.class) + @NotBlank(message = "组织级别不能为空",groups = AgencyIdAndLevel.class) private String agencyLevel; private String type; /** @@ -29,6 +29,6 @@ public class BaseDataFormDTO implements Serializable { private String startDateId; private String endDateId; public interface BaseData extends CustomerClientShowGroup{} - public interface WorkFact extends CustomerClientShowGroup{} + public interface AgencyIdAndLevel extends CustomerClientShowGroup{} } 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 964e5225d1..2d6b0fa999 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 @@ -3,19 +3,20 @@ package com.epmet.dataaggre.controller.pub; 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.form.SubTopicAndGroupFormDTO; -import com.epmet.dataaggre.dto.datastats.form.SubUserTotalFormDTO; 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.service.datastats.DataStatsService; +import lombok.extern.log4j.Log4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.util.List; /** @@ -24,6 +25,7 @@ import java.util.List; * @author yinzuomei@elink-cn.com * @date 2021/7/27 18:36 */ +@Log4j @RestController @RequestMapping("pub") public class PubController { @@ -41,7 +43,8 @@ public class PubController { @PostMapping("baseDataAgg") public Result getBaseStatsData(@RequestBody BaseDataFormDTO formDTO){ ValidatorUtils.validateEntity(formDTO,BaseDataFormDTO.BaseData.class); - return new Result().ok(dataStatsService.getBaseStatsData(formDTO)); + BaseStatsDataResultDTO baseStatsData = dataStatsService.getBaseStatsData(formDTO); + return new Result().ok(baseStatsData); } /** @@ -54,8 +57,9 @@ public class PubController { */ @PostMapping("subWorkFact") public Result> getSubWorkFact(@RequestBody BaseDataFormDTO formDTO){ - ValidatorUtils.validateEntity(formDTO,BaseDataFormDTO.WorkFact.class); - return new Result>().ok(dataStatsService.getSubWorkFact(formDTO)); + ValidatorUtils.validateEntity(formDTO, BaseDataFormDTO.AgencyIdAndLevel.class); + List subWorkFact = dataStatsService.getSubWorkFact(formDTO); + return new Result>().ok(subWorkFact); } /** @@ -64,9 +68,10 @@ public class PubController { * @author sun */ @PostMapping("subUserTotal") - public Result> subUserTotal(@RequestBody SubUserTotalFormDTO formDTO) { - ValidatorUtils.validateEntity(formDTO, SubUserTotalFormDTO.Agency.class); - return new Result>().ok(dataStatsService.subUserTotal(formDTO)); + public Result> subUserTotal(@RequestBody BaseDataFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, BaseDataFormDTO.AgencyIdAndLevel.class); + List data = dataStatsService.subUserTotal(formDTO); + return new Result>().ok(data); } /** @@ -75,9 +80,39 @@ public class PubController { * @author sun */ @PostMapping("subTopicAndGroup") - public Result> subTopicAndGroup(@RequestBody SubTopicAndGroupFormDTO formDTO) { - ValidatorUtils.validateEntity(formDTO, SubTopicAndGroupFormDTO.Agency.class); - return new Result>().ok(dataStatsService.subTopicAndGroup(formDTO)); + public Result> subTopicAndGroup(@RequestBody BaseDataFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, BaseDataFormDTO.AgencyIdAndLevel.class); + List data = dataStatsService.subTopicAndGroup(formDTO); + return new Result>().ok(data); + } + + /** + * 导出数据,使用map接收 + * + * @param map + * @param response + * @throws IOException + */ + @PostMapping("/exportExcel") + public void exportExcel(@RequestBody BaseDataFormDTO formDTO, HttpServletResponse response) throws IOException { + /* try { + Map mapData = new HashMap<>(); + BaseStatsDataResultDTO baseStatsData = dataStatsService.getBaseStatsData(formDTO); + String templatePath = "excel/trace_temp.xlsx"; + log.info("exportExcel templatePath:{}",templatePath); + mapData.put("dataType", baseStatsData); + + start = System.currentTimeMillis(); + Workbook workbook = ExcelExportUtil.exportExcel(new TemplateExportParams(templatePath, "数据汇总"), baseStatsData); + //header + response.setHeader("content-Type", "application/vnd.ms-excel"); + response.addHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode("继续追踪导出详情-".concat(DateUtils.formatDate()) + ".xlsx", "UTF-8")); + //加密 + log.error("excelExport build wb cost:{}",System.currentTimeMillis()-start); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + }*/ + } } 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 621a336fb2..9db20ef41c 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 @@ -200,13 +200,15 @@ public interface DataStatsService { * @Param formDTO * @Description 对外接口--查询下级用户党员数 * @author sun + * @param formDTO */ - List subUserTotal(SubUserTotalFormDTO formDTO); + List subUserTotal(BaseDataFormDTO formDTO); /** * @Param formDTO * @Description 对外接口--查询下级话题和小组数 * @author sun + * @param formDTO */ - List subTopicAndGroup(SubTopicAndGroupFormDTO formDTO); + List subTopicAndGroup(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 600d74b413..e8cfd1c8ba 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 @@ -1633,9 +1633,10 @@ public class DataStatsServiceImpl implements DataStatsService { * @Param formDTO * @Description 对外接口--查询下级用户党员数 * @author sun + * @param formDTO */ @Override - public List subUserTotal(SubUserTotalFormDTO formDTO) { + public List subUserTotal(BaseDataFormDTO formDTO) { List resultList = new ArrayList<>(); //1.入参有日期的则按具体时间执行,没有的则按当前时间前一天执行 if (StringUtils.isBlank(formDTO.getDateId())) { @@ -1710,9 +1711,10 @@ public class DataStatsServiceImpl implements DataStatsService { * @Param formDTO * @Description 对外接口--查询下级话题和小组数 * @author sun + * @param formDTO */ @Override - public List subTopicAndGroup(SubTopicAndGroupFormDTO formDTO) { + public List subTopicAndGroup(BaseDataFormDTO formDTO) { List resultList = new ArrayList<>(); //1.入参有日期的则按具体时间执行,没有的则按当前时间前一天执行 if (StringUtils.isBlank(formDTO.getDateId())) { From ddfb8d62dd41c382a7e419f7532c2908decbf755 Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 6 Aug 2021 17:30:08 +0800 Subject: [PATCH 2/3] =?UTF-8?q?bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/StatsStaffPatrolRecordDailyServiceImpl.java | 5 ----- .../main/resources/mapper/datastats/DatsStatsDao.xml | 10 +++++----- .../epmetuser/StatsStaffPatrolRecordDailyDao.xml | 2 +- 3 files changed, 6 insertions(+), 11 deletions(-) diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java index 41818e1b6d..1d246813f0 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java @@ -32,11 +32,6 @@ public class StatsStaffPatrolRecordDailyServiceImpl extends BaseServiceImpl getPatrolSumList(List agencyList, String startDateId, String endDateId) { - /* LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(StatsStaffPatrolRecordDailyEntity::getDelFlag, NumConstant.ZERO_STR) - .between(StatsStaffPatrolRecordDailyEntity::getDateId, startDateId,endDateId) - .in(StatsStaffPatrolRecordDailyEntity::getAgencyId, agencyList) - ;*/ return baseDao.getPatrolSumList(agencyList,startDateId,endDateId); } 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 d9f6301ad2..eb3f9c7d33 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 @@ -714,10 +714,10 @@ diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml index 4cc36dc640..1e54dc1a1e 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml @@ -10,7 +10,7 @@ WHERE del_flag = '0' AND date_id BETWEEN #{startDateId} and #{endDateId} - agency_id = #{agencyId} + GRID_PIDS like CONCAT( #{agencyId},'%') GROUP BY customer_id,agency_id From 19719a06f41fb62fe03f6ad039c7294d38e83046 Mon Sep 17 00:00:00 2001 From: jianjun Date: Sun, 8 Aug 2021 11:22:05 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9A=82=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../result/PatrolDailySumResult.java | 21 +++++++++++++++++++ .../ScreenCustomerAgencyDTO.java | 5 +++++ .../StatsStaffPatrolRecordDailyDao.java | 5 +++-- .../datastats/impl/DataStatsServiceImpl.java | 17 ++++++++------- .../StatsStaffPatrolRecordDailyService.java | 3 ++- ...tatsStaffPatrolRecordDailyServiceImpl.java | 7 ++++--- .../StatsStaffPatrolRecordDailyDao.xml | 13 ++++++------ .../evaluationindex/EvaluationIndexDao.xml | 5 +++-- 8 files changed, 55 insertions(+), 21 deletions(-) create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/PatrolDailySumResult.java diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/PatrolDailySumResult.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/PatrolDailySumResult.java new file mode 100644 index 0000000000..5400a1247f --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/PatrolDailySumResult.java @@ -0,0 +1,21 @@ +package com.epmet.dataaggre.dto.epmetuser.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * desc: + * + * @author: LiuJanJun + * @date: 2021/8/8 11:01 上午 + * @version: 1.0 + */ +@Data +public class PatrolDailySumResult implements Serializable { + private static final long serialVersionUID = 310405655189243944L; + + private String fullAgencyId; + private Integer patrolTotal; + private Integer totalTime; +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/evaluationindex/ScreenCustomerAgencyDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/evaluationindex/ScreenCustomerAgencyDTO.java index 3b2c818967..2ad0113f89 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/evaluationindex/ScreenCustomerAgencyDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/evaluationindex/ScreenCustomerAgencyDTO.java @@ -23,6 +23,11 @@ public class ScreenCustomerAgencyDTO implements Serializable { */ private String agencyId; + /** + * pids + */ + private String pids; + /** * 组织名称 */ diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StatsStaffPatrolRecordDailyDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StatsStaffPatrolRecordDailyDao.java index 4d082fe5d9..c7e68c410e 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StatsStaffPatrolRecordDailyDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StatsStaffPatrolRecordDailyDao.java @@ -19,6 +19,7 @@ package com.epmet.dataaggre.dao.epmetuser; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dataaggre.dto.epmetuser.result.PatrolDailySumResult; import com.epmet.dataaggre.entity.epmetuser.StatsStaffPatrolRecordDailyEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -36,10 +37,10 @@ public interface StatsStaffPatrolRecordDailyDao extends BaseDao getPatrolSumList(@Param("agencyList") List agencyList, @Param("startDateId") String startDateId, @Param("endDateId") String endDateId); + List getPatrolSumList(@Param("agencyFullIdList") List agencyFullIdList, @Param("startDateId") String startDateId, @Param("endDateId") String endDateId); } 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 e8cfd1c8ba..2b42fbda86 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 @@ -11,6 +11,7 @@ import com.epmet.dataaggre.dao.datastats.FactGridMemberStatisticsDailyDao; import com.epmet.dataaggre.dto.datastats.FactGroupActDailyDTO; import com.epmet.dataaggre.dto.datastats.form.*; import com.epmet.dataaggre.dto.datastats.result.*; +import com.epmet.dataaggre.dto.epmetuser.result.PatrolDailySumResult; import com.epmet.dataaggre.dto.evaluationindex.ScreenCustomerAgencyDTO; import com.epmet.dataaggre.dto.evaluationindex.ScreenCustomerGridDTO; import com.epmet.dataaggre.dto.evaluationindex.ScreenGovernRankDataDailyDTO; @@ -19,7 +20,6 @@ import com.epmet.dataaggre.dto.resigroup.ActCategoryDictDTO; import com.epmet.dataaggre.dto.resigroup.result.GroupActRankDetailDTO; import com.epmet.dataaggre.entity.datastats.DimAgencyEntity; import com.epmet.dataaggre.entity.datastats.FactAgencyGovernDailyEntity; -import com.epmet.dataaggre.entity.epmetuser.StatsStaffPatrolRecordDailyEntity; import com.epmet.dataaggre.service.datastats.DataStatsService; import com.epmet.dataaggre.service.epmetuser.StatsStaffPatrolRecordDailyService; import com.epmet.dataaggre.service.evaluationindex.EvaluationIndexService; @@ -1538,8 +1538,8 @@ public class DataStatsServiceImpl implements DataStatsService { Map closeProjectStartMap = closeProjectStart.stream().collect(Collectors.toMap(SubGridProjectResultDTO::getGridId, SubGridProjectResultDTO::getClosedProjectTotal, (o1, o2) -> o1)); Map closeProjectEndMap = closeProjectEnd.stream().collect(Collectors.toMap(SubGridProjectResultDTO::getGridId, SubGridProjectResultDTO::getClosedProjectTotal, (o1, o2) -> o1)); //巡查次数和时间 - List patrolList = statsStaffPatrolRecordDailyService.getPatrolSumList(gridIdList,formDTO.getStartDateId(),formDTO.getEndDateId()); - Map patrolListMap = patrolList.stream().collect(Collectors.toMap(StatsStaffPatrolRecordDailyEntity::getAgencyId, o -> o, (o1, o2) -> o1)); + List patrolList = statsStaffPatrolRecordDailyService.getPatrolSumList(gridIdList,formDTO.getStartDateId(),formDTO.getEndDateId()); + Map patrolListMap = patrolList.stream().collect(Collectors.toMap(PatrolDailySumResult::getFullAgencyId, o -> o, (o1, o2) -> o1)); subAgencyList.forEach(agency->{ String gridId = agency.getGridId(); @@ -1549,7 +1549,8 @@ public class DataStatsServiceImpl implements DataStatsService { resultDTO.setTopicToIssueTotal(getTotal(toIssueStartMap,toIssueEndMap,gridId)); resultDTO.setIssueToProjectTotal(getTotal(toProjectStartMap,toProjectEndMap,gridId)); resultDTO.setClosedProjectTotal(getTotal(closeProjectStartMap,closeProjectEndMap,gridId)); - StatsStaffPatrolRecordDailyEntity patrolRecordDTO = patrolListMap.get(gridId); + + PatrolDailySumResult patrolRecordDTO = patrolListMap.get(agency.getAllParentIds()); if (patrolRecordDTO != null){ resultDTO.setPatrolTotal(patrolRecordDTO.getPatrolTotal()); Integer totalTime = patrolRecordDTO.getTotalTime(); @@ -1583,8 +1584,9 @@ public class DataStatsServiceImpl implements DataStatsService { Map closeProjectStartMap = closeProjectStart.stream().collect(Collectors.toMap(SubAgencyProjectResultDTO::getAgencyId, SubAgencyProjectResultDTO::getClosedProjectTotal, (o1, o2) -> o1)); Map closeProjectEndMap = closeProjectEnd.stream().collect(Collectors.toMap(SubAgencyProjectResultDTO::getAgencyId, SubAgencyProjectResultDTO::getClosedProjectTotal, (o1, o2) -> o1)); //巡查次数和时间 - List patrolList = statsStaffPatrolRecordDailyService.getPatrolSumList(agencyList,formDTO.getStartDateId(),formDTO.getEndDateId()); - Map patrolListMap = patrolList.stream().collect(Collectors.toMap(StatsStaffPatrolRecordDailyEntity::getAgencyId, o -> o, (o1, o2) -> o1)); + List agencyFullIds = subAgencyList.stream().map(o -> o.getPids().concat(o.getAgencyId())).collect(Collectors.toList()); + List patrolList = statsStaffPatrolRecordDailyService.getPatrolSumList(agencyFullIds,formDTO.getStartDateId(),formDTO.getEndDateId()); + Map patrolListMap = patrolList.stream().collect(Collectors.toMap(PatrolDailySumResult::getFullAgencyId, o -> o, (o1, o2) -> o1)); subAgencyList.forEach(agency->{ String agencyId = agency.getAgencyId(); @@ -1594,7 +1596,8 @@ public class DataStatsServiceImpl implements DataStatsService { resultDTO.setTopicToIssueTotal(getTotal(toIssueStartMap,toIssueEndMap,agencyId)); resultDTO.setIssueToProjectTotal(getTotal(toProjectStartMap,toProjectEndMap,agencyId)); resultDTO.setClosedProjectTotal(getTotal(closeProjectStartMap,closeProjectEndMap,agencyId)); - StatsStaffPatrolRecordDailyEntity patrolRecordDTO = patrolListMap.get(agencyId); + String fullAgencyId = agency.getPids().concat(agencyId); + PatrolDailySumResult patrolRecordDTO = patrolListMap.get(fullAgencyId); if (patrolRecordDTO != null){ resultDTO.setPatrolTotal(patrolRecordDTO.getPatrolTotal()); Integer totalTime = patrolRecordDTO.getTotalTime(); diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/StatsStaffPatrolRecordDailyService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/StatsStaffPatrolRecordDailyService.java index 4de390526a..e8ec143b3c 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/StatsStaffPatrolRecordDailyService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/StatsStaffPatrolRecordDailyService.java @@ -18,6 +18,7 @@ package com.epmet.dataaggre.service.epmetuser; import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.dataaggre.dto.epmetuser.result.PatrolDailySumResult; import com.epmet.dataaggre.entity.epmetuser.StatsStaffPatrolRecordDailyEntity; import java.util.List; @@ -37,6 +38,6 @@ public interface StatsStaffPatrolRecordDailyService extends BaseService getPatrolSumList(List agencyList, String startDateId, String endDateId); + List getPatrolSumList(List agencyList, String startDateId, String endDateId); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java index 1d246813f0..aad90034f3 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/StatsStaffPatrolRecordDailyServiceImpl.java @@ -4,6 +4,7 @@ import com.epmet.commons.dynamic.datasource.annotation.DataSource; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.dataaggre.constant.DataSourceConstant; import com.epmet.dataaggre.dao.epmetuser.StatsStaffPatrolRecordDailyDao; +import com.epmet.dataaggre.dto.epmetuser.result.PatrolDailySumResult; import com.epmet.dataaggre.entity.epmetuser.StatsStaffPatrolRecordDailyEntity; import com.epmet.dataaggre.service.epmetuser.StatsStaffPatrolRecordDailyService; import lombok.extern.slf4j.Slf4j; @@ -25,14 +26,14 @@ public class StatsStaffPatrolRecordDailyServiceImpl extends BaseServiceImpl getPatrolSumList(List agencyList, String startDateId, String endDateId) { - return baseDao.getPatrolSumList(agencyList,startDateId,endDateId); + public List getPatrolSumList(List agencyFullIdList, String startDateId, String endDateId) { + return baseDao.getPatrolSumList(agencyFullIdList,startDateId,endDateId); } } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml index 1e54dc1a1e..3470e2f60d 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StatsStaffPatrolRecordDailyDao.xml @@ -1,17 +1,18 @@ - + SELECT - agency_id, + LEFT (GRID_PIDS,LENGTH( ${fullAgencyId} )) fullAgencyId, sum(patrol_total) patrolTotal, sum(TOTAL_TIME) totalTime FROM stats_staff_patrol_record_daily WHERE del_flag = '0' AND date_id BETWEEN #{startDateId} and #{endDateId} - - GRID_PIDS like CONCAT( #{agencyId},'%') - - GROUP BY customer_id,agency_id + AND GRID_PIDS like CONCAT( #{fullAgencyId},'%') + GROUP BY fullAgencyId + + diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/evaluationindex/EvaluationIndexDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/evaluationindex/EvaluationIndexDao.xml index d248aa13df..7ad70627dc 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/evaluationindex/EvaluationIndexDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/evaluationindex/EvaluationIndexDao.xml @@ -154,7 +154,8 @@ agency_name AS agencyName, level AS level, area_code AS areaCode, - parent_area_code AS parentAreaCode + parent_area_code AS parentAreaCode, + PIDS FROM screen_customer_agency WHERE @@ -174,4 +175,4 @@ - \ No newline at end of file +