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 b780f1fb3..33cdbde1c 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 @@ -5,12 +5,12 @@ import com.elink.esua.epdc.commons.tools.annotation.LoginUser; 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.service.GroupService; 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 org.springframework.web.bind.annotation.*; + +import java.util.List; /** * @@ -54,4 +54,18 @@ public class ApiGroupController { return groupService.disbandGroup(formDto); } + /** + * + * 我的群列表 + * + * @params [userDetail] + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author liuchuang + * @since 2019/10/21 17:20 + */ + @GetMapping("listOfMine") + public Result> groupsOfMine(@LoginUser TokenDto userDetail) { + return groupService.listGroupsOfMine(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 e5c9dfc11..7a95daca1 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 @@ -4,11 +4,16 @@ import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; 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.form.GroupsOfMineFormDTO; +import com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO; import com.elink.esua.epdc.feign.fallback.GroupFeignClientFallback; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; +import java.util.List; + /** * * 社群模块调用 @@ -42,4 +47,16 @@ public interface GroupFeignClient { */ @PostMapping(value = "group/epdc-app/group/operate", consumes = MediaType.APPLICATION_JSON_VALUE) Result disbandGroup(GroupSettingStateDTO formDto); + + /** + * + * 我的群列表 + * + * @params [formDTO] + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author liuchuang + * @since 2019/10/21 17:26 + */ + @GetMapping(value = "group/epdc-app/group/listOfMine", consumes = MediaType.APPLICATION_JSON_VALUE) + Result> listGroupsOfMine(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 1a2d9b66b..d3e03cb92 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 @@ -5,9 +5,13 @@ import com.elink.esua.epdc.commons.tools.utils.ModuleUtils; 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.form.GroupsOfMineFormDTO; +import com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO; import com.elink.esua.epdc.feign.GroupFeignClient; import org.springframework.stereotype.Component; +import java.util.List; + /** * @Author:liuchuang * @Date:2019/10/17 14:40 @@ -24,4 +28,9 @@ public class GroupFeignClientFallback implements GroupFeignClient { public Result disbandGroup(GroupSettingStateDTO formDto) { return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "disbandGroup", formDto); } + + @Override + public Result> listGroupsOfMine(GroupsOfMineFormDTO formDto) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "listGroupsOfMine", 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 e7530c3da..5a564cbed 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 @@ -4,6 +4,9 @@ import com.elink.esua.epdc.common.token.dto.TokenDto; 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 java.util.List; /** * @@ -35,4 +38,15 @@ public interface GroupService { * @since 2019/10/21 9:51 */ Result disbandGroup(GroupSettingStateDTO dto); + + /** + * + * 我的群列表 + * + * @params [userDetail] + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author liuchuang + * @since 2019/10/21 17:21 + */ + Result> listGroupsOfMine(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 3f3ab544b..51768d80f 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 @@ -9,12 +9,16 @@ import com.elink.esua.epdc.dto.enums.GroupStateEnum; import com.elink.esua.epdc.dto.enums.GroupUserStateEnum; 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.feign.AdminFeignClient; import com.elink.esua.epdc.feign.GroupFeignClient; import com.elink.esua.epdc.service.GroupService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** * * 社群模块 @@ -71,4 +75,12 @@ public class GroupServiceImpl implements GroupService { dto.setState(GroupStateEnum.GROUP_STATE_DISBANDED.getValue()); return groupFeignClient.disbandGroup(dto); } + + @Override + public Result> listGroupsOfMine(TokenDto userDetail) { + GroupsOfMineFormDTO formDto = new GroupsOfMineFormDTO(); + formDto.setUserId(userDetail.getUserId()); + formDto.setGridId(userDetail.getGridId()); + return groupFeignClient.listGroupsOfMine(formDto); + } } diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/form/GroupsOfMineFormDTO.java b/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/form/GroupsOfMineFormDTO.java new file mode 100644 index 000000000..67c82d929 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/form/GroupsOfMineFormDTO.java @@ -0,0 +1,31 @@ +package com.elink.esua.epdc.dto.group.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * + * 我的群FormDTO + * + * @Author:liuchuang + * @Date:2019/10/21 17:06 + */ +@Data +public class GroupsOfMineFormDTO implements Serializable { + private static final long serialVersionUID = 6427160357602633892L; + + /** + * 用户ID + */ + @NotBlank(message = "用户ID不能为空") + private String userId; + + /** + * 网格ID + */ + @NotNull(message = "网格ID不能为空") + private Long gridId; +} diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/result/GroupsOfMineResultDTO.java b/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/result/GroupsOfMineResultDTO.java new file mode 100644 index 000000000..53dada3e9 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/result/GroupsOfMineResultDTO.java @@ -0,0 +1,68 @@ +package com.elink.esua.epdc.dto.group.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * + * 我的群列表DTO + * + * @Author:liuchuang + * @Date:2019/10/21 17:00 + */ +@Data +public class GroupsOfMineResultDTO implements Serializable { + private static final long serialVersionUID = 346523775154631726L; + + /** + * 社群ID + */ + private String id; + + /** + * 社群名称 + */ + private String groupName; + + /** + * 社群头像 + */ + private String groupAvatar; + + /** + * 总人数 + */ + private Integer totalNum; + + /** + * 党员人数 + */ + private Integer partyMemberNum; + + /** + * 未读话题数量 + */ + private Integer unreadTopicNum; + + /** + * 最新一条话题发布时间(yyyy-MM-dd HH:mm) + */ + private Date latestTopicTime; + + /** + * 社群类别(0:党员群,1:自建群) + */ + private String groupCategory; + + /** + * 社群状态(0:待审核,5:审核不通过,10:审核通过,15:禁言) + */ + private Integer state; + + /** + * 群名称下方的描述 + */ + private String description; +} 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 2edc84608..f5f1f8458 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 @@ -5,12 +5,13 @@ import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; 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.modules.group.service.GroupService; 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 org.springframework.web.bind.annotation.*; + +import java.util.List; /** * @@ -44,7 +45,7 @@ public class AppGroupController { /** * - * 禁言、解禁、解散社群 + * 解散社群 * * @params [dto] * @return com.elink.esua.epdc.commons.tools.utils.Result @@ -57,4 +58,22 @@ public class AppGroupController { ValidatorUtils.validateEntity(dto); return groupService.modifyGroupState(dto); } + + /** + * + * 我的群列表 + * + * @params [formDTO] + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author liuchuang + * @since 2019/10/21 17:18 + */ + @GetMapping("listOfMine") + public Result> groupsOfMine(@RequestBody GroupsOfMineFormDTO formDto) { + //效验数据 + ValidatorUtils.validateEntity(formDto); + List data = groupService.listGroupsOfMine(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 000732171..7707fe58b 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 @@ -20,6 +20,8 @@ package com.elink.esua.epdc.modules.group.dao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; 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.modules.group.entity.GroupEntity; import org.apache.ibatis.annotations.Mapper; @@ -67,5 +69,16 @@ public interface GroupDao extends BaseDao { * @since 2019/10/21 10:32 */ GroupDetailDTO selectOneOfGroupDetail(String id); + + /** + * + * 移动端-我的群列表 + * + * @params [formDTO] + * @return java.util.List + * @author liuchuang + * @since 2019/10/21 17:08 + */ + List selectListGroupsOfMine(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 7d75fab02..c6a5c3d18 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 @@ -25,6 +25,8 @@ import com.elink.esua.epdc.dto.group.GroupDetailDTO; import com.elink.esua.epdc.dto.group.GroupManagementDTO; 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.modules.group.entity.GroupEntity; import java.util.List; @@ -130,4 +132,15 @@ public interface GroupService extends BaseService { * @since 2019/10/21 9:31 */ Result modifyGroupState(GroupSettingStateDTO dto); + + /** + * + * 移动端-我的群列表 + * + * @params [formDTO] + * @return java.util.List + * @author liuchuang + * @since 2019/10/21 17:09 + */ + List listGroupsOfMine(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 c4966573b..007e8cfed 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 @@ -30,7 +30,9 @@ import com.elink.esua.epdc.dto.group.*; import com.elink.esua.epdc.dto.enums.GroupStateEnum; import com.elink.esua.epdc.dto.enums.GroupUserStateEnum; 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.modules.async.NewsTask; import com.elink.esua.epdc.modules.group.dao.GroupDao; import com.elink.esua.epdc.modules.group.entity.GroupEntity; @@ -198,4 +200,9 @@ public class GroupServiceImpl extends BaseServiceImpl imp return new Result().error("操作失败"); } + @Override + public List listGroupsOfMine(GroupsOfMineFormDTO formDto) { + return baseDao.selectListGroupsOfMine(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 3bc49613e..51977e5a9 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 @@ -55,5 +55,47 @@ AND gp.ID = #{id} + + \ No newline at end of file