diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/resigroup/form/GroupActRankFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/resigroup/form/GroupActRankFormDTO.java new file mode 100644 index 0000000000..e9a920f869 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/resigroup/form/GroupActRankFormDTO.java @@ -0,0 +1,45 @@ +package com.epmet.dataaggre.dto.resigroup.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 005、【支建+联建】下级组织排行列表 + * + * @author yinzuomei@elink-cn.com + * @date 2021/5/18 17:30 + */ +@Data +public class GroupActRankFormDTO implements Serializable { + private static final long serialVersionUID = 2293552582281839132L; + public interface AddUserInternalGroup { + } + + /** + * 支部建设:100;联建共建:101 + */ + @NotBlank(message = "firstCategoryCode必传,支部建设:100;联建共建:101", groups = BranchConAnalysisFormDTO.AddUserInternalGroup.class) + private String firstCategoryCode; + + /** + * 当前客户id + */ + @NotBlank(message = "客户id不能为空", groups = BranchConAnalysisFormDTO.AddUserInternalGroup.class) + private String customerId; + + /** + * 当前组织或者网格id + */ + @NotBlank(message = "orgId不能为空", groups = BranchConAnalysisFormDTO.AddUserInternalGroup.class) + private String orgId; + + /** + * 默认传组织:agency; 网格:grid + */ + @NotBlank(message = "orgType不能为空", groups = BranchConAnalysisFormDTO.AddUserInternalGroup.class) + private String orgType; + + private String rankCode; +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/resigroup/result/GroupActRankDetailDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/resigroup/result/GroupActRankDetailDTO.java new file mode 100644 index 0000000000..21e3dc29fd --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/resigroup/result/GroupActRankDetailDTO.java @@ -0,0 +1,13 @@ +package com.epmet.dataaggre.dto.resigroup.result; + +import lombok.Data; + +/** + * 描述一下 + * + * @author yinzuomei@elink-cn.com + * @date 2021/5/19 9:31 + */ +@Data +public class GroupActRankDetailDTO { +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/resigroup/result/GroupActRankResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/resigroup/result/GroupActRankResultDTO.java new file mode 100644 index 0000000000..45efaa413b --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/resigroup/result/GroupActRankResultDTO.java @@ -0,0 +1,22 @@ +package com.epmet.dataaggre.dto.resigroup.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 005、【支建+联建】下级组织排行列表 + * + * @author yinzuomei@elink-cn.com + * @date 2021/5/18 17:33 + */ +@Data +public class GroupActRankResultDTO implements Serializable { + private String orgId; + private String orgType; + private String orgName; + private Integer organizeTotal; + private String organizeName = "组织总次数"; + private Integer participateUserTotal; + private String participateUserName = "参加总人数"; +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GroupActController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GroupActController.java index a88f86456e..b79cb0b7f7 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GroupActController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GroupActController.java @@ -5,8 +5,10 @@ import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.dataaggre.dto.resigroup.ActCategoryDictDTO; import com.epmet.dataaggre.dto.resigroup.form.BranchConAnalysisFormDTO; import com.epmet.dataaggre.dto.resigroup.form.GroupActCategoryQueryFormDTO; +import com.epmet.dataaggre.dto.resigroup.form.GroupActRankFormDTO; import com.epmet.dataaggre.dto.resigroup.form.SubAnalysisByCodeFormDTO; import com.epmet.dataaggre.dto.resigroup.result.BranchConAnalysisResultDTO; +import com.epmet.dataaggre.dto.resigroup.result.GroupActRankResultDTO; import com.epmet.dataaggre.dto.resigroup.result.RankCodeResultDTO; import com.epmet.dataaggre.dto.resigroup.result.SubAnalysisByCodeResultDTO; import com.epmet.dataaggre.service.resigroup.ResiGroupService; @@ -86,4 +88,17 @@ public class GroupActController { } + /** + * @return com.epmet.commons.tools.utils.Result> + * @param formDTO + * @author yinzuomei + * @description 005、【支建+联建】下级组织排行列表 + * @Date 2021/5/18 17:46 + **/ + @PostMapping("subranklist") + public Result> querySubRankList(@RequestBody GroupActRankFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO,GroupActRankFormDTO.class); + return new Result>().ok(resiGroupService.querySubRankList(formDTO)); + } + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java index 18ad900fc6..100978e144 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java @@ -175,15 +175,6 @@ public class GovOrgServiceImpl implements GovOrgService { agecnyInfo.setOrgType("agency"); result.add(agecnyInfo); }); - }else if("grid".equals(orgType)){ - List list= customerGridDao.selectGridListByAgencyId(orgId); - list.forEach(grid->{ - OrgInfoCommonDTO gridInfo=new OrgInfoCommonDTO(); - gridInfo.setOrgId(grid.getGridId()); - gridInfo.setOrgName(grid.getGridName()); - gridInfo.setOrgType("grid"); - result.add(gridInfo); - }); } return result; } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/resigroup/ResiGroupService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/resigroup/ResiGroupService.java index d0cb64fade..68f4afb4ee 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/resigroup/ResiGroupService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/resigroup/ResiGroupService.java @@ -2,14 +2,8 @@ package com.epmet.dataaggre.service.resigroup; import com.epmet.dataaggre.dto.resigroup.ActCategoryDictDTO; import com.epmet.dataaggre.dto.resigroup.ResiTopicDTO; -import com.epmet.dataaggre.dto.resigroup.form.BranchConAnalysisFormDTO; -import com.epmet.dataaggre.dto.resigroup.form.CandidateListFormDTO; -import com.epmet.dataaggre.dto.resigroup.form.GroupActCategoryQueryFormDTO; -import com.epmet.dataaggre.dto.resigroup.form.SubAnalysisByCodeFormDTO; -import com.epmet.dataaggre.dto.resigroup.result.BranchConAnalysisResultDTO; -import com.epmet.dataaggre.dto.resigroup.result.CandidateListResultDTO; -import com.epmet.dataaggre.dto.resigroup.result.RankCodeResultDTO; -import com.epmet.dataaggre.dto.resigroup.result.SubAnalysisByCodeResultDTO; +import com.epmet.dataaggre.dto.resigroup.form.*; +import com.epmet.dataaggre.dto.resigroup.result.*; import java.util.List; @@ -59,4 +53,12 @@ public interface ResiGroupService { * @return com.epmet.dataaggre.dto.resigroup.result.RankCodeResultDTO */ List queryRankCodeList(GroupActCategoryQueryFormDTO formDTO); + + /** + * 005、【支建+联建】下级组织排行列表 + * + * @param formDTO + * @return com.epmet.dataaggre.dto.resigroup.result.GroupActRankResultDTO + */ + List querySubRankList(GroupActRankFormDTO formDTO); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/resigroup/impl/ResiGroupServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/resigroup/impl/ResiGroupServiceImpl.java index 6d726bba69..030adf6b6a 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/resigroup/impl/ResiGroupServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/resigroup/impl/ResiGroupServiceImpl.java @@ -11,10 +11,7 @@ import com.epmet.dataaggre.dto.datastats.FactGroupActDailyDTO; import com.epmet.dataaggre.dto.epmetuser.result.UserInfosResultDTO; import com.epmet.dataaggre.dto.resigroup.ActCategoryDictDTO; import com.epmet.dataaggre.dto.resigroup.ResiTopicDTO; -import com.epmet.dataaggre.dto.resigroup.form.BranchConAnalysisFormDTO; -import com.epmet.dataaggre.dto.resigroup.form.CandidateListFormDTO; -import com.epmet.dataaggre.dto.resigroup.form.GroupActCategoryQueryFormDTO; -import com.epmet.dataaggre.dto.resigroup.form.SubAnalysisByCodeFormDTO; +import com.epmet.dataaggre.dto.resigroup.form.*; import com.epmet.dataaggre.dto.resigroup.result.*; import com.epmet.dataaggre.entity.resigroup.ResiGroupEntity; import com.epmet.dataaggre.redis.ResiGroupRedis; @@ -271,4 +268,20 @@ public class ResiGroupServiceImpl implements ResiGroupService { }); return resultList; } + + /** + * 005、【支建+联建】下级组织排行列表 + * + * @param formDTO + * @return com.epmet.dataaggre.dto.resigroup.result.GroupActRankResultDTO + */ + @Override + public List querySubRankList(GroupActRankFormDTO formDTO) { + List orgInfoDTOList = govOrgService.queryNextOrgInfoDTO(formDTO.getCustomerId(), formDTO.getOrgId(), formDTO.getOrgType()); + if (CollectionUtils.isEmpty(orgInfoDTOList)) { + return new ArrayList<>(); + } + // todo + return null; + } }