From 15abbe1fb062dd76f53b9db0665cf63854aca939 Mon Sep 17 00:00:00 2001 From: liuchuang Date: Tue, 22 Oct 2019 14:00:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A8=E8=8D=90=E7=BE=A4=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=20init?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epdc/controller/ApiGroupController.java | 15 +++++++ .../esua/epdc/feign/GroupFeignClient.java | 13 ++++++ .../fallback/GroupFeignClientFallback.java | 6 +++ .../elink/esua/epdc/service/GroupService.java | 12 ++++++ .../epdc/service/impl/GroupServiceImpl.java | 15 +++++++ .../result/GroupsOfRecommendResultDTO.java | 42 +++++++++++++++++++ .../group/controller/AppGroupController.java | 18 ++++++++ .../modules/group/dao/GroupDao.java | 12 ++++++ .../modules/group/service/GroupService.java | 12 ++++++ .../group/service/impl/GroupServiceImpl.java | 6 +++ .../main/resources/mapper/group/GroupDao.xml | 27 +++++++++++- 11 files changed, 177 insertions(+), 1 deletion(-) create mode 100644 esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/result/GroupsOfRecommendResultDTO.java diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java index 33cdbde1c..b9f442381 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java @@ -6,6 +6,7 @@ import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.group.GroupSettingStateDTO; import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO; import com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO; +import com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO; import com.elink.esua.epdc.service.GroupService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -68,4 +69,18 @@ public class ApiGroupController { return groupService.listGroupsOfMine(userDetail); } + /** + * + * 推荐群列表 + * + * @params [userDetail] + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author liuchuang + * @since 2019/10/22 13:53 + */ + @GetMapping("listOfRecommend") + public Result> groupsOfRecommend(@LoginUser TokenDto userDetail) { + return groupService.listGroupsOfRecommend(userDetail); + } + } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/GroupFeignClient.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/GroupFeignClient.java index 7a95daca1..036c917bf 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/GroupFeignClient.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/GroupFeignClient.java @@ -6,6 +6,7 @@ import com.elink.esua.epdc.dto.group.GroupSettingStateDTO; import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO; import com.elink.esua.epdc.dto.group.form.GroupsOfMineFormDTO; import com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO; +import com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO; import com.elink.esua.epdc.feign.fallback.GroupFeignClientFallback; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; @@ -59,4 +60,16 @@ public interface GroupFeignClient { */ @GetMapping(value = "group/epdc-app/group/listOfMine", consumes = MediaType.APPLICATION_JSON_VALUE) Result> listGroupsOfMine(GroupsOfMineFormDTO formDto); + + /** + * + * 推荐群列表 + * + * @params [formDto] + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author liuchuang + * @since 2019/10/22 13:51 + */ + @GetMapping(value = "group/epdc-app/group/listOfRecommend", consumes = MediaType.APPLICATION_JSON_VALUE) + Result> listGroupsOfRecommend(GroupsOfMineFormDTO formDto); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/GroupFeignClientFallback.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/GroupFeignClientFallback.java index d3e03cb92..be39ebf02 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/GroupFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/GroupFeignClientFallback.java @@ -7,6 +7,7 @@ import com.elink.esua.epdc.dto.group.GroupSettingStateDTO; import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO; import com.elink.esua.epdc.dto.group.form.GroupsOfMineFormDTO; import com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO; +import com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO; import com.elink.esua.epdc.feign.GroupFeignClient; import org.springframework.stereotype.Component; @@ -33,4 +34,9 @@ public class GroupFeignClientFallback implements GroupFeignClient { public Result> listGroupsOfMine(GroupsOfMineFormDTO formDto) { return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "listGroupsOfMine", formDto); } + + @Override + public Result> listGroupsOfRecommend(GroupsOfMineFormDTO formDto) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "listGroupsOfRecommend", formDto); + } } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/GroupService.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/GroupService.java index 5a564cbed..d4c55ac40 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/GroupService.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/GroupService.java @@ -5,6 +5,7 @@ import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.group.GroupSettingStateDTO; import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO; import com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO; +import com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO; import java.util.List; @@ -49,4 +50,15 @@ public interface GroupService { * @since 2019/10/21 17:21 */ Result> listGroupsOfMine(TokenDto userDetail); + + /** + * + * 推荐群列表 + * + * @params [userDetail] + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author liuchuang + * @since 2019/10/22 13:54 + */ + Result> listGroupsOfRecommend(TokenDto userDetail); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/GroupServiceImpl.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/GroupServiceImpl.java index 51768d80f..9e2d94cea 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/GroupServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/GroupServiceImpl.java @@ -11,6 +11,7 @@ import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO; import com.elink.esua.epdc.dto.group.form.GroupUserFormDTO; import com.elink.esua.epdc.dto.group.form.GroupsOfMineFormDTO; import com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO; +import com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO; import com.elink.esua.epdc.feign.AdminFeignClient; import com.elink.esua.epdc.feign.GroupFeignClient; import com.elink.esua.epdc.service.GroupService; @@ -78,9 +79,23 @@ public class GroupServiceImpl implements GroupService { @Override public Result> listGroupsOfMine(TokenDto userDetail) { + if (null == userDetail) { + return new Result().error("获取用户信息失败"); + } GroupsOfMineFormDTO formDto = new GroupsOfMineFormDTO(); formDto.setUserId(userDetail.getUserId()); formDto.setGridId(userDetail.getGridId()); return groupFeignClient.listGroupsOfMine(formDto); } + + @Override + public Result> listGroupsOfRecommend(TokenDto userDetail) { + if (null == userDetail) { + return new Result().error("获取用户信息失败"); + } + GroupsOfMineFormDTO formDto = new GroupsOfMineFormDTO(); + formDto.setUserId(userDetail.getUserId()); + formDto.setGridId(userDetail.getGridId()); + return groupFeignClient.listGroupsOfRecommend(formDto); + } } diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/result/GroupsOfRecommendResultDTO.java b/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/result/GroupsOfRecommendResultDTO.java new file mode 100644 index 000000000..40d81a99b --- /dev/null +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/result/GroupsOfRecommendResultDTO.java @@ -0,0 +1,42 @@ +package com.elink.esua.epdc.dto.group.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * + * 推荐群DTO + * + * @Author:liuchuang + * @Date:2019/10/22 11:18 + */ +@Data +public class GroupsOfRecommendResultDTO implements Serializable { + private static final long serialVersionUID = 9117108366107815457L; + + /** + * 社群ID + */ + private String id; + + /** + * 社群名称 + */ + private String groupName; + + /** + * 社群头像 + */ + private String groupAvatar; + + /** + * 总人数 + */ + private String totalNum; + + /** + * 党员人数 + */ + private String partyMemberNum; +} diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/AppGroupController.java b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/AppGroupController.java index f5f1f8458..b9039ea44 100644 --- a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/AppGroupController.java +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/AppGroupController.java @@ -7,6 +7,7 @@ import com.elink.esua.epdc.dto.group.GroupSettingStateDTO; import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO; import com.elink.esua.epdc.dto.group.form.GroupsOfMineFormDTO; import com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO; +import com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO; import com.elink.esua.epdc.modules.group.service.GroupService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -76,4 +77,21 @@ public class AppGroupController { return new Result>().ok(data); } + /** + * + * 推荐群列表 + * + * @params [formDto] + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author liuchuang + * @since 2019/10/22 13:49 + */ + @GetMapping("listOfRecommend") + public Result> groupsOfRecommend(@RequestBody GroupsOfMineFormDTO formDto) { + //效验数据 + ValidatorUtils.validateEntity(formDto); + List data = groupService.listGroupsOfRecommend(formDto); + return new Result>().ok(data); + } + } diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/dao/GroupDao.java b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/dao/GroupDao.java index 7707fe58b..866291014 100644 --- a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/dao/GroupDao.java +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/dao/GroupDao.java @@ -22,6 +22,7 @@ import com.elink.esua.epdc.dto.group.GroupDetailDTO; import com.elink.esua.epdc.dto.group.GroupManagementDTO; import com.elink.esua.epdc.dto.group.form.GroupsOfMineFormDTO; import com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO; +import com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO; import com.elink.esua.epdc.modules.group.entity.GroupEntity; import org.apache.ibatis.annotations.Mapper; @@ -80,5 +81,16 @@ public interface GroupDao extends BaseDao { * @since 2019/10/21 17:08 */ List selectListGroupsOfMine(GroupsOfMineFormDTO formDto); + + /** + * + * 移动端-推荐群列表 + * + * @params [formDto] + * @return java.util.List + * @author liuchuang + * @since 2019/10/22 13:45 + */ + List selectListGroupsOfRecommend(GroupsOfMineFormDTO formDto); } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/GroupService.java b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/GroupService.java index c6a5c3d18..65d6ffb9e 100644 --- a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/GroupService.java +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/GroupService.java @@ -27,6 +27,7 @@ import com.elink.esua.epdc.dto.group.GroupSettingStateDTO; import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO; import com.elink.esua.epdc.dto.group.form.GroupsOfMineFormDTO; import com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO; +import com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO; import com.elink.esua.epdc.modules.group.entity.GroupEntity; import java.util.List; @@ -143,4 +144,15 @@ public interface GroupService extends BaseService { * @since 2019/10/21 17:09 */ List listGroupsOfMine(GroupsOfMineFormDTO formDto); + + /** + * + * 移动端-推荐群列表 + * + * @params [formDto] + * @return java.util.List + * @author liuchuang + * @since 2019/10/22 13:46 + */ + List listGroupsOfRecommend(GroupsOfMineFormDTO formDto); } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java index 007e8cfed..b4897399d 100644 --- a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java @@ -33,6 +33,7 @@ import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO; import com.elink.esua.epdc.dto.group.form.GroupsOfMineFormDTO; import com.elink.esua.epdc.dto.group.result.GroupUserListResultDTO; import com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO; +import com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO; import com.elink.esua.epdc.modules.async.NewsTask; import com.elink.esua.epdc.modules.group.dao.GroupDao; import com.elink.esua.epdc.modules.group.entity.GroupEntity; @@ -205,4 +206,9 @@ public class GroupServiceImpl extends BaseServiceImpl imp return baseDao.selectListGroupsOfMine(formDto); } + @Override + public List listGroupsOfRecommend(GroupsOfMineFormDTO formDto) { + return baseDao.selectListGroupsOfRecommend(formDto); + } + } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/GroupDao.xml b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/GroupDao.xml index f578ddaff..4817f3283 100644 --- a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/GroupDao.xml +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/GroupDao.xml @@ -63,7 +63,10 @@ gp.GROUP_CATEGORY, gp.STATE, COUNT( ugp1.ID ) AS totalNum, - SUM( ugp1.PARTY_MEMBER = '1' ) AS partyMemberNum, + CASE + WHEN SUM( ugp1.PARTY_MEMBER = '1' ) IS NULL THEN + 0 ELSE SUM( ugp1.PARTY_MEMBER = '1' ) + END AS partyMemberNum, COUNT( ugpr.ID ) AS unreadTopicNum, MAX( ugpr.TOPIC_SUBMIT_TIME ) AS latestTopicTime, CASE @@ -97,5 +100,27 @@ latestTopicTime DESC + + \ No newline at end of file