diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java index 8c9593360c..dbe444201e 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java @@ -5,16 +5,19 @@ import com.epmet.commons.tools.annotation.RequirePermission; import com.epmet.commons.tools.enums.RequirePermissionEnum; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.dataaggre.dto.epmetuser.form.*; import com.epmet.dataaggre.dto.epmetuser.result.*; import com.epmet.dataaggre.dto.govorg.result.GridMemberDataAnalysisResultDTO; +import com.epmet.dataaggre.excel.StaffPatrollExcel; import com.epmet.dataaggre.service.datastats.DataStatsService; import com.epmet.dataaggre.service.epmetuser.EpmetUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -253,4 +256,13 @@ public class EpmetUserController { return new Result().ok(epmetUserService.getStaffInfo(staffId)); } + @GetMapping("export/staffpatroll") + public void export(@LoginUser TokenDto tokenDto, @RequestBody StaffListFormDTO formDTO, HttpServletResponse response) throws Exception { + ValidatorUtils.validateEntity(formDTO, StaffListFormDTO.Staff.class); + formDTO.setUserId(tokenDto.getUserId()); + //formDTO.setUserId("73ae6280e46a6653a5605d51d5462725"); + List resultDTOS = epmetUserService.staffPatrolList(formDTO); + ExcelUtils.exportExcelToTarget(response, null, resultDTOS, StaffPatrollExcel.class); + } + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/excel/StaffPatrollExcel.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/excel/StaffPatrollExcel.java new file mode 100644 index 0000000000..503c8b4cab --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/excel/StaffPatrollExcel.java @@ -0,0 +1,45 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dataaggre.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +/** + * 客户表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-03-11 + */ +@Data +public class StaffPatrollExcel { + + @Excel(name = "组织") + private String gridName = ""; + @Excel(name = "姓名") + private String staffName = ""; + @Excel(name = "巡查总次数") + private Integer patrolTotal = 0; + @Excel(name = "上报项目数") + private Integer reportProjectCount; + @Excel(name = "巡查总时长") + private String totalTime = ""; + + + +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/redis/ResiGroupRedis.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/redis/ResiGroupRedis.java index 3efbd220d4..3639a7a8d8 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/redis/ResiGroupRedis.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/redis/ResiGroupRedis.java @@ -2,6 +2,7 @@ package com.epmet.dataaggre.redis; import com.epmet.commons.tools.redis.RedisUtils; import com.epmet.dataaggre.constant.GroupConstant; +import com.epmet.dto.form.UserBadgeUnitFormDTO; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -36,8 +37,8 @@ public class ResiGroupRedis { if (!CollectionUtils.isEmpty(result)){ List icons = new ArrayList<>(); for (Object o : result) { - Map map = (Map) o; - icons.add(map.get(GroupConstant.BADGE_ICON)); + UserBadgeUnitFormDTO map = (UserBadgeUnitFormDTO) o; + icons.add(map.getBadgeIcon()); } return icons; } diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/screen/CategoryAnalysisResultDTO.java b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/screen/CategoryAnalysisResultDTO.java index f91ef35e09..ebbd47cdaa 100644 --- a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/screen/CategoryAnalysisResultDTO.java +++ b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/result/screen/CategoryAnalysisResultDTO.java @@ -1,5 +1,6 @@ package com.epmet.dto.result.screen; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import lombok.NoArgsConstructor; @@ -33,4 +34,10 @@ public class CategoryAnalysisResultDTO implements Serializable { * 分类编码 */ private String categoryCode; + + /** + * 分类来源客户ID + */ + @JsonIgnore + private String categoryOriginCustomerId; } diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/CategoryTopAppealResultDTO.java b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/CategoryTopAppealResultDTO.java index 6b5a1000ec..1fab9522b4 100644 --- a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/CategoryTopAppealResultDTO.java +++ b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/CategoryTopAppealResultDTO.java @@ -1,6 +1,7 @@ package com.epmet.project.dto.result; import com.epmet.commons.tools.constant.NumConstant; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import java.io.Serializable; @@ -30,6 +31,12 @@ public class CategoryTopAppealResultDTO implements Serializable { */ private Integer categoryCount; + /** + * 分类来源客户ID + */ + @JsonIgnore + private String categoryOriginCustomerId; + public CategoryTopAppealResultDTO() { this.categoryId = ""; this.categoryName = ""; diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/user/StaffPatrolDetailController.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/user/StaffPatrolDetailController.java index 8f06a5850f..e20e1e7d5c 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/user/StaffPatrolDetailController.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/user/StaffPatrolDetailController.java @@ -6,11 +6,11 @@ import com.epmet.datareport.service.user.StaffPatrolDetailService; import com.epmet.user.form.GridManagerListFormDTO; import com.epmet.dto.form.PatrolTrackFormDTO; import com.epmet.dto.form.RecordListFormDTO; -import com.epmet.user.form.PatrolCountFormDTO; +import com.epmet.dto.form.PatrolCountFormDTO; import com.epmet.user.result.GridManagerListResultDTO; import com.epmet.dto.result.PatrolTrackResultDTO; import com.epmet.dto.result.RecordListResultDTO; -import com.epmet.user.result.PatrolCountResultDTO; +import com.epmet.dto.result.PatrolCountResultDTO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenProjectCategoryOrgDailyDao.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenProjectCategoryOrgDailyDao.java index 98de75653b..e3cf3d074d 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenProjectCategoryOrgDailyDao.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenProjectCategoryOrgDailyDao.java @@ -42,7 +42,7 @@ public interface ScreenProjectCategoryOrgDailyDao { */ List selectCategoryAnalysis(@Param("agencyId") String agencyId,@Param("customerId")String customerId); - CustomerProjectCategoryDTO selectProjectCategory(@Param("categoryCode")String categoryCode, @Param("customerId")String customerId, @Param("subCustomerIds")List subCustomerIds); + CustomerProjectCategoryDTO selectProjectCategory(@Param("categoryCode")String categoryCode, @Param("customerId")String customerId); /** * @Description 查询事件分类 diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/ScreenProjectServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/ScreenProjectServiceImpl.java index 127f239501..c740aa4c5e 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/ScreenProjectServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/ScreenProjectServiceImpl.java @@ -154,13 +154,8 @@ public class ScreenProjectServiceImpl implements ScreenProjectService { List resultDTOList = screenProjectCategoryOrgDailyDao.selectCategoryAnalysis(formDTO.getAgencyId(), customerId); List resultList = new ArrayList<>(); if (!CollectionUtils.isEmpty(resultDTOList)) { - Result> crmRes = operCrmOpenFeignClient.getAllSubCustomerIds(customerId); - List subCustomerIds = new ArrayList<>(); - if (crmRes.success() && !CollectionUtils.isEmpty(crmRes.getData())) { - subCustomerIds = crmRes.getData(); - } for (CategoryAnalysisResultDTO dto : resultDTOList) { - CustomerProjectCategoryDTO projectCategoryDTO = screenProjectCategoryOrgDailyDao.selectProjectCategory(dto.getCategoryCode(), customerId, subCustomerIds); + CustomerProjectCategoryDTO projectCategoryDTO = screenProjectCategoryOrgDailyDao.selectProjectCategory(dto.getCategoryCode(), dto.getCategoryOriginCustomerId()); if (null == projectCategoryDTO || StringUtils.isBlank(projectCategoryDTO.getCategoryName())) { log.warn(String.format("查询分类名称失败,当前客户:%s, categoryCode:%s", dto.getCategoryCode(), customerId)); continue; @@ -219,15 +214,10 @@ public class ScreenProjectServiceImpl implements ScreenProjectService { if (CollectionUtils.isEmpty(result)){ return new ArrayList<>(); } - Result> sonCustomer = operCrmOpenFeignClient.getAllSubCustomerIds(customerId); - List subCustomerIds = new ArrayList<>(); - if (sonCustomer.success() && !CollectionUtils.isEmpty(sonCustomer.getData())) { - subCustomerIds = sonCustomer.getData(); - } for (CategoryTopAppealResultDTO r : result) { - CustomerProjectCategoryDTO projectCategoryDTO = screenProjectCategoryOrgDailyDao.selectProjectCategory(r.getCategoryId(), customerId, subCustomerIds); + CustomerProjectCategoryDTO projectCategoryDTO = screenProjectCategoryOrgDailyDao.selectProjectCategory(r.getCategoryId(), r.getCategoryOriginCustomerId()); if (null == projectCategoryDTO || StringUtils.isBlank(projectCategoryDTO.getCategoryName())) { - log.warn(String.format("查询分类名称失败,当前客户:%s, categoryCode:%s", r.getCategoryId(), customerId)); + log.warn(String.format("查询分类名称失败,当前客户:%s, categoryCode:%s", r.getCategoryId(), r.getCategoryOriginCustomerId())); continue; } r.setCategoryName(projectCategoryDTO.getCategoryName()); diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/user/StaffPatrolDetailService.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/user/StaffPatrolDetailService.java index 20573e51a7..95fc1eb064 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/user/StaffPatrolDetailService.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/user/StaffPatrolDetailService.java @@ -3,11 +3,11 @@ package com.epmet.datareport.service.user; import com.epmet.user.form.GridManagerListFormDTO; import com.epmet.dto.form.PatrolTrackFormDTO; import com.epmet.dto.form.RecordListFormDTO; -import com.epmet.user.form.PatrolCountFormDTO; +import com.epmet.dto.form.PatrolCountFormDTO; import com.epmet.user.result.GridManagerListResultDTO; import com.epmet.dto.result.PatrolTrackResultDTO; import com.epmet.dto.result.RecordListResultDTO; -import com.epmet.user.result.PatrolCountResultDTO; +import com.epmet.dto.result.PatrolCountResultDTO; import java.util.List; diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/user/impl/StaffPatrolDetailServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/user/impl/StaffPatrolDetailServiceImpl.java index 4f36820709..6f01a162ac 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/user/impl/StaffPatrolDetailServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/user/impl/StaffPatrolDetailServiceImpl.java @@ -3,6 +3,7 @@ package com.epmet.datareport.service.user.impl; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.datareport.constant.PatrolConstant; import com.epmet.datareport.dao.user.StaffPatrolDetailDao; @@ -15,9 +16,9 @@ import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.user.form.GridManagerListFormDTO; import com.epmet.dto.form.PatrolTrackFormDTO; import com.epmet.dto.form.RecordListFormDTO; -import com.epmet.user.form.PatrolCountFormDTO; +import com.epmet.dto.form.PatrolCountFormDTO; import com.epmet.user.result.GridManagerListResultDTO; -import com.epmet.user.result.PatrolCountResultDTO; +import com.epmet.dto.result.PatrolCountResultDTO; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -26,7 +27,6 @@ import org.springframework.util.CollectionUtils; import java.util.ArrayList; import java.util.List; -import java.util.Map; import java.util.stream.Collectors; /** @@ -200,24 +200,11 @@ public class StaffPatrolDetailServiceImpl implements StaffPatrolDetailService { */ @Override public PatrolCountResultDTO patrolCount(PatrolCountFormDTO formDTO) { - PatrolCountResultDTO result = new PatrolCountResultDTO(); - GridManagerListFormDTO gridManagerListFormDTO = ConvertUtils.sourceToTarget(formDTO, GridManagerListFormDTO.class); - List resultDTOS = gridManagerList(gridManagerListFormDTO); - // 结果为空就是没网格员 - if (CollectionUtils.isEmpty(resultDTOS)){ - return result; - } - // 根据状态分组,只取巡查中的网格员;巡查中的为0,剩下的都是未巡查,巡查中不为0,总数 - 巡查中 = 未巡查 - Map> groupByStatus = resultDTOS.stream().collect(Collectors.groupingBy(GridManagerListResultDTO::getStatus)); - List patrolling = groupByStatus.get(PatrolConstant.PATROLLING); - if (CollectionUtils.isEmpty(patrolling)){ - result.setElseCount(resultDTOS.size()); - return result; + Result resultDTOResult = epmetUserOpenFeignClient.patrolCount(formDTO); + if (!resultDTOResult.success()){ + throw new RenException("查询巡查人数失败..."); } - result.setPatrollingCount(patrolling.size()); - result.setElseCount(resultDTOS.size() - patrolling.size()); - return result; + return resultDTOResult.getData(); } - } diff --git a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenProjectCategoryOrgDailyDao.xml b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenProjectCategoryOrgDailyDao.xml index 4bd5e6a20d..5731b27e2b 100644 --- a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenProjectCategoryOrgDailyDao.xml +++ b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenProjectCategoryOrgDailyDao.xml @@ -8,7 +8,8 @@ SELECT '' AS categoryName, M.PROJECT_TOTAL AS projectTotal, m.DATE_ID as dateId, - m.CATEGORY_CODE as categoryCode + m.CATEGORY_CODE as categoryCode, + m.CATEGORY_ORIGIN_CUSTOMER_ID FROM screen_project_category_org_daily m WHERE M.DEL_FLAG = '0' and m.level='1' @@ -33,46 +34,25 @@ SELECT c.CUSTOMER_ID, + c.CUSTOMER_ID AS categoryOriginCustomerId, c.CATEGORY_CODE, c.`LEVEL`, p.AGENCY_ID AS orgId, diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectCategoryGridDailyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectCategoryGridDailyDao.xml index ba818db4ef..8ec1fcc4bd 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectCategoryGridDailyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectCategoryGridDailyDao.xml @@ -17,6 +17,7 @@ sca.PID, sca.pids, sg.CUSTOMER_ID, + sg.CUSTOMER_ID AS categoryOriginCustomerId, sg.CATEGORY_CODE, SUM(sg.PROJECT_TOTAL) AS projectTotal, sg.level, diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectCategoryOrgDailyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectCategoryOrgDailyDao.xml index ff969ef456..72f1a188a1 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectCategoryOrgDailyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectCategoryOrgDailyDao.xml @@ -29,6 +29,7 @@ IFNULL(sca.PID,'0') AS pid, IFNULL(sca.PIDS,'0') AS pids, sa.CUSTOMER_ID, + sa.CATEGORY_ORIGIN_CUSTOMER_ID, sa.CATEGORY_CODE, SUM(sa.PROJECT_TOTAL) AS projectTotal, sa.level, @@ -50,8 +51,14 @@ IFNULL(sca.PID,'0') AS pid, IFNULL(sca.PIDS,'0') AS pids, #{customerId} as customerId, + od.CUSTOMER_ID AS categoryOriginCustomerId, od.level, - od.CATEGORY_CODE, + + cd.EPMET_CATEGORY_CODE AS categoryCode, + + + od.CATEGORY_CODE AS categoryCode, + SUM(od.PROJECT_TOTAL) AS projectTotal, #{level} as orgType, od.DATE_ID @@ -101,4 +108,57 @@ GROUP BY od.CATEGORY_CODE + + + \ No newline at end of file diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java index bd6a1c4376..36a2a43684 100644 --- a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java +++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java @@ -13,6 +13,7 @@ import com.epmet.enums.OrgLevelEnums; import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.ResiEventService; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -44,11 +45,18 @@ public class ResiEventServiceImpl implements ResiEventService, ResultDataResolve //String parentAgencyId = gridInfoData.getParentAgencyId(); //String pids = gridInfoData.getPids(); + List npcResultList = new ArrayList<>(); + //查询人大代表列表 ListUserByBadgeFormDTO npcForm = new ListUserByBadgeFormDTO(customerId, BadgeConstant.BADGE_KEY_NPC); Result> npcResult = epmetUserOpenFeignClient.listUsersByBadge(npcForm); List npcData = getResultDataOrThrowsException(npcResult, ServiceConstant.EPMET_USER_SERVER, null, null); + if(CollectionUtils.isEmpty(npcData)) { + // 没有人大代表,直接返回空列表即可 + return npcResultList; + } + //批量查询人大代表所在的网格信息 List npcGridIds = npcData.stream().map(d -> d.getGridId()).collect(Collectors.toList()); OrgInfoFormDTO form = new OrgInfoFormDTO(OrgInfoConstant.GRID, npcGridIds); @@ -57,7 +65,6 @@ public class ResiEventServiceImpl implements ResiEventService, ResultDataResolve Map npcGridInfoMap = convertNpcGridInfos2Map(npcGridInfos); - List npcResultList = new ArrayList<>(); npcData.stream().forEach(npc -> { if (StringUtils.isBlank(excludeUserId) || !npc.getUserId().equals(excludeUserId)) { OrgInfoResultDTO gridInfo = npcGridInfoMap.get(npc.getGridId()); diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberConfirmController.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberConfirmController.java index 58d4d2edc2..099d9d434b 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberConfirmController.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberConfirmController.java @@ -1,5 +1,6 @@ package com.epmet.modules.partymember.controller; +import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.utils.Result; import com.epmet.modules.partymember.service.PartyMemberConfirmService; import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO; @@ -65,6 +66,7 @@ public class PartyMemberConfirmController { * @date 2020/3/31 10:50 */ @PostMapping("submit") + @NoRepeatSubmit public Result submit(@RequestBody PartymemberInfoDTO partyMemberInfoDTO) { return partyMemberConfirmService.submit(partyMemberInfoDTO); } diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/user/form/PatrolCountFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/PatrolCountFormDTO.java similarity index 95% rename from epmet-module/data-report/data-report-client/src/main/java/com/epmet/user/form/PatrolCountFormDTO.java rename to epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/PatrolCountFormDTO.java index 6f48bc75f3..86505b98e2 100644 --- a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/user/form/PatrolCountFormDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/PatrolCountFormDTO.java @@ -1,4 +1,4 @@ -package com.epmet.user.form; +package com.epmet.dto.form; import lombok.Data; diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/user/result/PatrolCountResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PatrolCountResultDTO.java similarity index 95% rename from epmet-module/data-report/data-report-client/src/main/java/com/epmet/user/result/PatrolCountResultDTO.java rename to epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PatrolCountResultDTO.java index 4c11895d3d..aeb9032734 100644 --- a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/user/result/PatrolCountResultDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/PatrolCountResultDTO.java @@ -1,4 +1,4 @@ -package com.epmet.user.result; +package com.epmet.dto.result; import com.epmet.commons.tools.constant.NumConstant; import lombok.Data; diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/SelectPatrolCountResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/SelectPatrolCountResultDTO.java new file mode 100644 index 0000000000..7caf6fd5d5 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/SelectPatrolCountResultDTO.java @@ -0,0 +1,27 @@ +package com.epmet.dto.result; + +import com.epmet.commons.tools.constant.NumConstant; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2021/8/20 9:04 上午 + * @DESC + */ +@Data +public class SelectPatrolCountResultDTO implements Serializable { + + private static final long serialVersionUID = -4944469520967374496L; + + /** + * 巡查状态 + */ + private String status; + + /** + * 人数 + */ + private Integer staffCount = NumConstant.ZERO; +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java index da36b0d6bb..19935ac620 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java @@ -617,4 +617,13 @@ public interface EpmetUserOpenFeignClient { */ @PostMapping("/epmetuser/staffrole/queryRoleStaffIds") Result> queryRoleStaffIds(@RequestBody RoleStaffIdFormDTO formDTO); + + /** + * @Description 查询巡查人数 + * @Param formDTO + * @author zxc + * @date 2021/8/20 10:21 上午 + */ + @PostMapping("/epmetuser/statsstaffpatrolrecorddaily/patrolcount") + Result patrolCount(@RequestBody PatrolCountFormDTO formDTO); } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java index b9f0264618..093fcb3ec8 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java @@ -440,4 +440,9 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien public Result> queryRoleStaffIds(RoleStaffIdFormDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "queryRoleStaffIds", formDTO); } + + @Override + public Result patrolCount(PatrolCountFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "patrolCount", formDTO); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StatsStaffPatrolRecordDailyController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StatsStaffPatrolRecordDailyController.java index b2dad2bce4..be2943f19d 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StatsStaffPatrolRecordDailyController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StatsStaffPatrolRecordDailyController.java @@ -1,19 +1,13 @@ package com.epmet.controller; -import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; -import com.epmet.commons.tools.validator.AssertUtils; import com.epmet.commons.tools.validator.ValidatorUtils; -import com.epmet.commons.tools.validator.group.AddGroup; -import com.epmet.commons.tools.validator.group.UpdateGroup; -import com.epmet.commons.tools.validator.group.DefaultGroup; -import com.epmet.dto.StatsStaffPatrolRecordDailyDTO; import com.epmet.service.StatsStaffPatrolRecordDailyService; +import com.epmet.dto.form.PatrolCountFormDTO; +import com.epmet.dto.result.PatrolCountResultDTO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.Map; - /** * [天]工作人员巡查记录统计 @@ -28,5 +22,15 @@ public class StatsStaffPatrolRecordDailyController { @Autowired private StatsStaffPatrolRecordDailyService statsStaffPatrolRecordDailyService; - + /** + * @Description 查询巡查人数 + * @Param formDTO + * @author zxc + * @date 2021/8/20 10:21 上午 + */ + @PostMapping("patrolcount") + public Result patrolCount(@RequestBody PatrolCountFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO, PatrolCountFormDTO.PatrolCountForm.class); + return new Result().ok(statsStaffPatrolRecordDailyService.patrolCount(formDTO)); + } } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StatsStaffPatrolRecordDailyDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StatsStaffPatrolRecordDailyDao.java index 458a171d00..58779caaa0 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StatsStaffPatrolRecordDailyDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StatsStaffPatrolRecordDailyDao.java @@ -18,11 +18,13 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.result.SelectPatrolCountResultDTO; import com.epmet.entity.StatsStaffPatrolRecordDailyEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.Date; +import java.util.List; /** * [天]工作人员巡查记录统计 @@ -61,4 +63,13 @@ public interface StatsStaffPatrolRecordDailyDao extends BaseDao selectPatrolCount(@Param("agencyId")String agencyId, @Param("dateId")String dateId); + } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StatsStaffPatrolRecordDailyService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StatsStaffPatrolRecordDailyService.java index 4eb51384d9..a73d0ac373 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StatsStaffPatrolRecordDailyService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StatsStaffPatrolRecordDailyService.java @@ -2,6 +2,8 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.entity.StatsStaffPatrolRecordDailyEntity; +import com.epmet.dto.form.PatrolCountFormDTO; +import com.epmet.dto.result.PatrolCountResultDTO; /** * [天]工作人员巡查记录统计 @@ -11,5 +13,12 @@ import com.epmet.entity.StatsStaffPatrolRecordDailyEntity; */ public interface StatsStaffPatrolRecordDailyService extends BaseService { + /** + * @Description 查询巡查人数 + * @Param formDTO + * @author zxc + * @date 2021/8/20 10:21 上午 + */ + PatrolCountResultDTO patrolCount(PatrolCountFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StatsStaffPatrolRecordDailyServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StatsStaffPatrolRecordDailyServiceImpl.java index a53fc8e3a5..5f54160a06 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StatsStaffPatrolRecordDailyServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StatsStaffPatrolRecordDailyServiceImpl.java @@ -1,23 +1,19 @@ package com.epmet.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; -import com.epmet.commons.tools.page.PageData; -import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.utils.DateUtils; +import com.epmet.constant.PatrolConstant; import com.epmet.dao.StatsStaffPatrolRecordDailyDao; -import com.epmet.dto.StatsStaffPatrolRecordDailyDTO; +import com.epmet.dto.result.SelectPatrolCountResultDTO; import com.epmet.entity.StatsStaffPatrolRecordDailyEntity; import com.epmet.service.StatsStaffPatrolRecordDailyService; +import com.epmet.dto.form.PatrolCountFormDTO; +import com.epmet.dto.result.PatrolCountResultDTO; import lombok.extern.slf4j.Slf4j; -import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import java.util.Arrays; import java.util.List; -import java.util.Map; /** * [天]工作人员巡查记录统计 @@ -29,4 +25,24 @@ import java.util.Map; @Slf4j public class StatsStaffPatrolRecordDailyServiceImpl extends BaseServiceImpl implements StatsStaffPatrolRecordDailyService { + /** + * @Description 查询巡查人数 + * @Param formDTO + * @author zxc + * @date 2021/8/20 10:21 上午 + */ + @Override + public PatrolCountResultDTO patrolCount(PatrolCountFormDTO formDTO) { + PatrolCountResultDTO result = new PatrolCountResultDTO(); + List counts = baseDao.selectPatrolCount(formDTO.getAgencyId(), DateUtils.getBeforeNDay(NumConstant.ZERO)); + counts.forEach(c -> { + if (c.getStatus().equals(PatrolConstant.PATROLLING)){ + result.setPatrollingCount(c.getStaffCount()); + } + if (c.getStatus().equals(PatrolConstant.END)){ + result.setElseCount(c.getStaffCount()); + } + }); + return result; + } } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffPatrolRecordDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffPatrolRecordDao.xml index 27fc5211ec..2ae77add42 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffPatrolRecordDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffPatrolRecordDao.xml @@ -48,7 +48,7 @@ + + + \ No newline at end of file