Browse Source

Merge branch 'dev_1010' of http://121.42.41.42:7070/r/esua-epdc-cloud into dev_1010

dev
王金鹏 6 years ago
parent
commit
162a443577
  1. 28
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java
  2. 26
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/GroupFeignClient.java
  3. 10
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/GroupFeignClientFallback.java
  4. 22
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/GroupService.java
  5. 10
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/GroupServiceImpl.java
  6. 51
      esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/constant/GroupNoticeConstant.java
  7. 29
      esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/UserReviewDto.java
  8. 28
      esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/form/GroupAddUserFormDTO.java
  9. 4
      esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/form/GroupUserFormDTO.java
  10. 31
      esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/form/GroupUserReviewFormDTO.java
  11. 6
      esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/result/GroupUserListResultDTO.java
  12. 17
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/AppGroupController.java
  13. 73
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/AppUserGroupController.java
  14. 12
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/GroupService.java
  15. 36
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/UserGroupService.java
  16. 23
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java
  17. 123
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/UserGroupServiceImpl.java
  18. 2
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/UserGroupDao.xml
  19. 2
      esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/epdc/form/EpdcInformationFormDTO.java

28
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java

@ -182,4 +182,32 @@ public class ApiGroupController {
return groupService.listOfInviteUsers(userDetail, formDto); return groupService.listOfInviteUsers(userDetail, formDto);
} }
/**
*
* 添加社群成员
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/11/6 9:17
*/
@PostMapping("addMember")
public Result addMember(@RequestBody GroupAddUserFormDTO formDto) {
return groupService.saveGroupUsers(formDto);
}
/**
*
* 审核入群申请
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/11/6 13:22
*/
@PostMapping("reviewApply")
public Result reviewApply(@RequestBody GroupUserReviewFormDTO formDto) {
return groupService.updateGroupUsers(formDto);
}
} }

26
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/GroupFeignClient.java

@ -154,6 +154,30 @@ public interface GroupFeignClient {
* @author liuchuang * @author liuchuang
* @since 2019/10/23 16:38 * @since 2019/10/23 16:38
*/ */
@GetMapping(value = "group/epdc-app/group/getInviteList", consumes = MediaType.APPLICATION_JSON_VALUE) @GetMapping(value = "group/epdc-app/usergroup/getInviteList", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<EpdcUserGroupInviteResultDTO>> getInviteList(EpdcUserGroupInviteFormDTO formDto); Result<List<EpdcUserGroupInviteResultDTO>> getInviteList(EpdcUserGroupInviteFormDTO formDto);
/**
*
* 添加成员
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/11/6 9:37
*/
@PostMapping(value = "group/epdc-app/usergroup/addMember", consumes = MediaType.APPLICATION_JSON_VALUE)
Result addMember(GroupAddUserFormDTO formDto);
/**
*
* 审核入群申请
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/11/6 13:26
*/
@PostMapping(value = "group/epdc-app/usergroup/reviewApply", consumes = MediaType.APPLICATION_JSON_VALUE)
Result reviewApply(GroupUserReviewFormDTO formDto);
} }

10
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/GroupFeignClientFallback.java

@ -74,4 +74,14 @@ public class GroupFeignClientFallback implements GroupFeignClient {
public Result<List<EpdcUserGroupInviteResultDTO>> getInviteList(EpdcUserGroupInviteFormDTO formDto) { public Result<List<EpdcUserGroupInviteResultDTO>> getInviteList(EpdcUserGroupInviteFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "getInviteList", formDto); return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "getInviteList", formDto);
} }
@Override
public Result addMember(GroupAddUserFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "addMember", formDto);
}
@Override
public Result reviewApply(GroupUserReviewFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "reviewApply", formDto);
}
} }

22
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/GroupService.java

@ -140,4 +140,26 @@ public interface GroupService {
*/ */
Result<List<EpdcUserGroupInviteResultDTO>> listOfInviteUsers(TokenDto userDetail, EpdcUserGroupInviteFormDTO formDto); Result<List<EpdcUserGroupInviteResultDTO>> listOfInviteUsers(TokenDto userDetail, EpdcUserGroupInviteFormDTO formDto);
/**
*
* 添加社群成员
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/11/6 9:18
*/
Result saveGroupUsers(GroupAddUserFormDTO formDto);
/**
*
* 审核入群申请
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/11/6 13:23
*/
Result updateGroupUsers(GroupUserReviewFormDTO formDto);
} }

10
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/GroupServiceImpl.java

@ -159,4 +159,14 @@ public class GroupServiceImpl implements GroupService {
formDto.setGridId(userDetail.getGridId()); formDto.setGridId(userDetail.getGridId());
return groupFeignClient.getInviteList(formDto); return groupFeignClient.getInviteList(formDto);
} }
@Override
public Result saveGroupUsers(GroupAddUserFormDTO formDto) {
return groupFeignClient.addMember(formDto);
}
@Override
public Result updateGroupUsers(GroupUserReviewFormDTO formDto) {
return groupFeignClient.reviewApply(formDto);
}
} }

51
esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/constant/GroupNoticeConstant.java

@ -27,7 +27,37 @@ public interface GroupNoticeConstant {
/** /**
* 删除社群成员 * 删除社群成员
*/ */
String NOTICE_GROUP_REMOVED_MEMBER = "你已被群主移除社群"; String NOTICE_GROUP_USER_REMOVED_MEMBER = "你已被群主移除社群";
/**
* 邀请入群
*/
String NOTICE_GROUP_USER_INVITED = "您已加入社群";
/**
* 邀请入群内容
*/
String NOTICE_GROUP_USER_INVITED_CONTENT = "您已被群主邀请加入groupName社群,快进入社群看看吧。";
/**
* 入群申请通过
*/
String NOTICE_GROUP_USER_REVIEW_PASSED = "入群申请【审核通过】";
/**
* 入群申请不通过
*/
String NOTICE_GROUP_USER_REVIEW_NOT_PASSED = "入群申请【审核不通过】";
/**
* 入群申请通过内容
*/
String NOTICE_GROUP_USER_REVIEW_PASSED_CONTENT = "您加入groupName社群的申请,审核已通过,快进入社群吧。";
/**
* 入群申请不通过内容
*/
String NOTICE_GROUP_USER_REVIEW_NOT_PASSED_CONTENT = "您加入groupName社群的申请,审核未通过,原因:auditOpinion";
/** /**
* 退出社群 * 退出社群
@ -67,10 +97,25 @@ public interface GroupNoticeConstant {
/** /**
* 消息所属业务类型移除社群成员 * 消息所属业务类型移除社群成员
*/ */
String NOTICE_BUSINESS_TYPE_GROUP_REMOVED_MEMBER = "groupRemovedMember"; String NOTICE_BUSINESS_TYPE_GROUP_USER_REMOVED_MEMBER = "groupRemovedMember";
/** /**
* 消息所属业务类型退出社群 * 消息所属业务类型退出社群
*/ */
String NOTICE_BUSINESS_TYPE_GROUP_QUIT = "groupQuit"; String NOTICE_BUSINESS_TYPE_GROUP_USER_QUIT = "groupQuit";
/**
* 社群邀请
*/
String NOTICE_BUSINESS_TYPE_GROUP_USER_INVITED = "groupInvited";
/**
* 入群申请通过
*/
String NOTICE_BUSINESS_TYPE_GROUP_USER_REVIEW_PASSED = "groupUserReviewPassed";
/**
* 入群申请未通过
*/
String NOTICE_BUSINESS_TYPE_GROUP_USER_REVIEW_NOT_PASS = "groupUserReviewNotPass";
} }

29
esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/UserReviewDto.java

@ -0,0 +1,29 @@
package com.elink.esua.epdc.dto.group;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @Authorliuchuang
* @Date2019/11/6 13:18
*/
@Data
public class UserReviewDto implements Serializable {
private static final long serialVersionUID = 5555206313726765102L;
private String id;
/**
* 审核结果5审核不通过10审核通过
*/
@NotNull(message = "审核结果不能为空")
private Integer state;
/**
* 审核意见
*/
private String auditOpinion;
}

28
esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/form/GroupAddUserFormDTO.java

@ -0,0 +1,28 @@
package com.elink.esua.epdc.dto.group.form;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
*
* 添加成员Form DTO
*
* @Authorliuchuang
* @Date2019/11/6 9:00
*/
@Data
public class GroupAddUserFormDTO implements Serializable {
private static final long serialVersionUID = 7220929684754186126L;
/**
* 社群ID
*/
private String groupId;
/**
* 添加成员信息
*/
List<GroupUserFormDTO> groupUserFormDtoList;
}

4
esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/form/GroupUserFormDTO.java

@ -16,10 +16,6 @@ import java.io.Serializable;
public class GroupUserFormDTO implements Serializable { public class GroupUserFormDTO implements Serializable {
private static final long serialVersionUID = -1532468675717622698L; private static final long serialVersionUID = -1532468675717622698L;
/**
* 社群ID
*/
private String groupId;
/** /**
* 用户ID * 用户ID
*/ */

31
esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/form/GroupUserReviewFormDTO.java

@ -0,0 +1,31 @@
package com.elink.esua.epdc.dto.group.form;
import com.elink.esua.epdc.dto.group.UserReviewDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.List;
/**
*
* 入群审核Form DTO
*
* @Authorliuchuang
* @Date2019/11/6 11:07
*/
@Data
public class GroupUserReviewFormDTO implements Serializable {
private static final long serialVersionUID = 490810653280939342L;
/**
* 社群ID
*/
@NotBlank(message = "社群ID不能为空")
private String groupId;
/**
* 审核用户
*/
private List<UserReviewDto> userReviewDtoList;
}

6
esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/result/GroupUserListResultDTO.java

@ -3,6 +3,7 @@ package com.elink.esua.epdc.dto.group.result;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date;
/** /**
* *
@ -36,4 +37,9 @@ public class GroupUserListResultDTO implements Serializable {
* 群主标识 01 * 群主标识 01
*/ */
private String lordFlag; private String lordFlag;
/**
* 申请时间
*/
private Date createdTime;
} }

17
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/AppGroupController.java

@ -4,8 +4,6 @@ import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.enums.GroupUserStateEnum; import com.elink.esua.epdc.dto.enums.GroupUserStateEnum;
import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
import com.elink.esua.epdc.dto.group.GroupSettingStateDTO; import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
import com.elink.esua.epdc.dto.group.form.*; import com.elink.esua.epdc.dto.group.form.*;
import com.elink.esua.epdc.dto.group.result.*; import com.elink.esua.epdc.dto.group.result.*;
@ -189,19 +187,4 @@ public class AppGroupController {
return groupService.modifyMemberState(formDto); return groupService.modifyMemberState(formDto);
} }
/**
*
* 添加成员列表
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO>>
* @author liuchuang
* @since 2019/10/23 16:37
*/
@GetMapping("getInviteList")
public Result<List<EpdcUserGroupInviteResultDTO>> getInviteList(@RequestBody EpdcUserGroupInviteFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return groupService.listOfInviteUsers(formDto);
}
} }

73
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/AppUserGroupController.java

@ -0,0 +1,73 @@
package com.elink.esua.epdc.modules.group.controller;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
import com.elink.esua.epdc.dto.group.form.GroupAddUserFormDTO;
import com.elink.esua.epdc.dto.group.form.GroupUserReviewFormDTO;
import com.elink.esua.epdc.modules.group.service.UserGroupService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
*
* 移动端社群成员模块
*
* @Authorliuchuang
* @Date2019/11/6 9:40
*/
@RestController
@RequestMapping(Constant.EPDC_APP + "usergroup")
public class AppUserGroupController {
@Autowired
private UserGroupService userGroupService;
/**
*
* 添加成员列表
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO>>
* @author liuchuang
* @since 2019/10/23 16:37
*/
@GetMapping("getInviteList")
public Result<List<EpdcUserGroupInviteResultDTO>> getInviteList(@RequestBody EpdcUserGroupInviteFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return userGroupService.listOfInviteUsers(formDto);
}
/**
*
* 添加社群成员
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/11/6 9:17
*/
@PostMapping("addMember")
public Result addMember(@RequestBody GroupAddUserFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return userGroupService.saveGroupUsers(formDto);
}
/**
*
* 审核入群申请
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/11/6 13:26
*/
@PostMapping("reviewApply")
public Result reviewApply(@RequestBody GroupUserReviewFormDTO formDto) {
return userGroupService.modifyGroupUsers(formDto);
}
}

12
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/GroupService.java

@ -20,8 +20,6 @@ package com.elink.esua.epdc.modules.group.service;
import com.elink.esua.epdc.commons.mybatis.service.BaseService; import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
import com.elink.esua.epdc.dto.group.GroupDTO; import com.elink.esua.epdc.dto.group.GroupDTO;
import com.elink.esua.epdc.dto.group.GroupDetailDTO; import com.elink.esua.epdc.dto.group.GroupDetailDTO;
import com.elink.esua.epdc.dto.group.GroupManagementDTO; import com.elink.esua.epdc.dto.group.GroupManagementDTO;
@ -211,14 +209,4 @@ public interface GroupService extends BaseService<GroupEntity> {
*/ */
Result modifyMemberState(GroupUserRemoveOrQuitFormDTO formDto); Result modifyMemberState(GroupUserRemoveOrQuitFormDTO formDto);
/**
*
* 移动端-添加成员列表
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO>>
* @author liuchuang
* @since 2019/10/23 16:37
*/
Result<List<EpdcUserGroupInviteResultDTO>> listOfInviteUsers(EpdcUserGroupInviteFormDTO formDto);
} }

36
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/UserGroupService.java

@ -20,8 +20,12 @@ package com.elink.esua.epdc.modules.group.service;
import com.elink.esua.epdc.commons.mybatis.service.BaseService; import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
import com.elink.esua.epdc.dto.group.UserGroupDTO; import com.elink.esua.epdc.dto.group.UserGroupDTO;
import com.elink.esua.epdc.dto.group.form.GroupAddUserFormDTO;
import com.elink.esua.epdc.dto.group.form.GroupUserRemoveOrQuitFormDTO; import com.elink.esua.epdc.dto.group.form.GroupUserRemoveOrQuitFormDTO;
import com.elink.esua.epdc.dto.group.form.GroupUserReviewFormDTO;
import com.elink.esua.epdc.dto.group.result.GroupUserListResultDTO; import com.elink.esua.epdc.dto.group.result.GroupUserListResultDTO;
import com.elink.esua.epdc.modules.group.entity.UserGroupEntity; import com.elink.esua.epdc.modules.group.entity.UserGroupEntity;
@ -142,12 +146,34 @@ public interface UserGroupService extends BaseService<UserGroupEntity> {
/** /**
* *
* 获取社群用户ID * 移动端-添加成员列表
* *
* @params [groupId, states] * @params [formDto]
* @return java.util.List<java.lang.String> * @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO>>
* @author liuchuang
* @since 2019/10/23 16:37
*/
Result<List<EpdcUserGroupInviteResultDTO>> listOfInviteUsers(EpdcUserGroupInviteFormDTO formDto);
/**
*
* 移动端-添加社群成员
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/11/6 9:18
*/
Result saveGroupUsers(GroupAddUserFormDTO formDto);
/**
*
* 移动端审核入群申请
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang * @author liuchuang
* @since 2019/10/23 15:04 * @since 2019/11/6 13:29
*/ */
List<String> listOfGroupUserIdsByState(String groupId, int[] states); Result modifyGroupUsers(GroupUserReviewFormDTO formDto);
} }

23
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java

@ -27,15 +27,12 @@ import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.constant.GroupNoticeConstant; import com.elink.esua.epdc.dto.constant.GroupNoticeConstant;
import com.elink.esua.epdc.dto.epdc.form.EpdcInformationFormDTO; import com.elink.esua.epdc.dto.epdc.form.EpdcInformationFormDTO;
import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
import com.elink.esua.epdc.dto.group.*; import com.elink.esua.epdc.dto.group.*;
import com.elink.esua.epdc.dto.enums.GroupStateEnum; import com.elink.esua.epdc.dto.enums.GroupStateEnum;
import com.elink.esua.epdc.dto.enums.GroupUserStateEnum; import com.elink.esua.epdc.dto.enums.GroupUserStateEnum;
import com.elink.esua.epdc.dto.group.form.*; import com.elink.esua.epdc.dto.group.form.*;
import com.elink.esua.epdc.dto.group.result.*; import com.elink.esua.epdc.dto.group.result.*;
import com.elink.esua.epdc.modules.async.NewsTask; import com.elink.esua.epdc.modules.async.NewsTask;
import com.elink.esua.epdc.modules.feign.UserFeignClient;
import com.elink.esua.epdc.modules.group.dao.GroupDao; import com.elink.esua.epdc.modules.group.dao.GroupDao;
import com.elink.esua.epdc.modules.group.entity.GroupEntity; import com.elink.esua.epdc.modules.group.entity.GroupEntity;
import com.elink.esua.epdc.modules.group.service.GroupService; import com.elink.esua.epdc.modules.group.service.GroupService;
@ -64,9 +61,6 @@ public class GroupServiceImpl extends BaseServiceImpl<GroupDao, GroupEntity> imp
@Autowired @Autowired
private NewsTask newsTask; private NewsTask newsTask;
@Autowired
private UserFeignClient userFeignClient;
@Override @Override
public PageData<GroupManagementDTO> page(Map<String, Object> params) { public PageData<GroupManagementDTO> page(Map<String, Object> params) {
IPage<GroupManagementDTO> page = getPage(params); IPage<GroupManagementDTO> page = getPage(params);
@ -280,8 +274,8 @@ public class GroupServiceImpl extends BaseServiceImpl<GroupDao, GroupEntity> imp
return new Result().error("操作失败,只有群主可以删除社群成员"); return new Result().error("操作失败,只有群主可以删除社群成员");
} }
informationFormDTO.setUserId(formDto.getUserId()); informationFormDTO.setUserId(formDto.getUserId());
informationFormDTO.setTitle(GroupNoticeConstant.NOTICE_GROUP_REMOVED_MEMBER); informationFormDTO.setTitle(GroupNoticeConstant.NOTICE_GROUP_USER_REMOVED_MEMBER);
informationFormDTO.setBusinessType(GroupNoticeConstant.NOTICE_BUSINESS_TYPE_GROUP_REMOVED_MEMBER); informationFormDTO.setBusinessType(GroupNoticeConstant.NOTICE_BUSINESS_TYPE_GROUP_USER_REMOVED_MEMBER);
} else if (GroupUserStateEnum.GROUP_USER_STATE_RETIRED.getValue().equals(formDto.getState())){ } else if (GroupUserStateEnum.GROUP_USER_STATE_RETIRED.getValue().equals(formDto.getState())){
// 退出社群 // 退出社群
if (NumConstant.ONE_STR.equals(userGroupDto.getLordFlag())) { if (NumConstant.ONE_STR.equals(userGroupDto.getLordFlag())) {
@ -289,7 +283,7 @@ public class GroupServiceImpl extends BaseServiceImpl<GroupDao, GroupEntity> imp
} }
informationFormDTO.setUserId(lordGroupDto.getUserId()); informationFormDTO.setUserId(lordGroupDto.getUserId());
informationFormDTO.setTitle(userGroupDto.getNickname().concat(GroupNoticeConstant.NOTICE_GROUP_QUIT)); informationFormDTO.setTitle(userGroupDto.getNickname().concat(GroupNoticeConstant.NOTICE_GROUP_QUIT));
informationFormDTO.setBusinessType(GroupNoticeConstant.NOTICE_BUSINESS_TYPE_GROUP_QUIT); informationFormDTO.setBusinessType(GroupNoticeConstant.NOTICE_BUSINESS_TYPE_GROUP_USER_QUIT);
} }
// 更新社群成员状态 // 更新社群成员状态
@ -298,15 +292,4 @@ public class GroupServiceImpl extends BaseServiceImpl<GroupDao, GroupEntity> imp
newsTask.insertUserInformation(informationFormDTO); newsTask.insertUserInformation(informationFormDTO);
return new Result(); return new Result();
} }
@Override
public Result<List<EpdcUserGroupInviteResultDTO>> listOfInviteUsers(EpdcUserGroupInviteFormDTO formDto) {
// 获取社群当前待审核和审核通过的成员ID
int[] states = new int[]{GroupUserStateEnum.GROUP_USER_STATE_PENDING_REVIEW.getValue(), GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue()};
List<String> userIds = userGroupService.listOfGroupUserIdsByState(formDto.getGroupId(), states);
formDto.setUserIds(userIds);
return userFeignClient.getInviteUserList(formDto);
}
} }

123
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/UserGroupServiceImpl.java

@ -20,20 +20,36 @@ package com.elink.esua.epdc.modules.group.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl; import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils; import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant; import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.constant.GroupNoticeConstant;
import com.elink.esua.epdc.dto.enums.GroupUserStateEnum;
import com.elink.esua.epdc.dto.epdc.form.EpdcInformationFormDTO;
import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
import com.elink.esua.epdc.dto.group.GroupDTO;
import com.elink.esua.epdc.dto.group.UserGroupDTO; import com.elink.esua.epdc.dto.group.UserGroupDTO;
import com.elink.esua.epdc.dto.group.UserReviewDto;
import com.elink.esua.epdc.dto.group.form.GroupAddUserFormDTO;
import com.elink.esua.epdc.dto.group.form.GroupUserFormDTO;
import com.elink.esua.epdc.dto.group.form.GroupUserRemoveOrQuitFormDTO; import com.elink.esua.epdc.dto.group.form.GroupUserRemoveOrQuitFormDTO;
import com.elink.esua.epdc.dto.group.form.GroupUserReviewFormDTO;
import com.elink.esua.epdc.dto.group.result.GroupUserListResultDTO; import com.elink.esua.epdc.dto.group.result.GroupUserListResultDTO;
import com.elink.esua.epdc.modules.async.NewsTask;
import com.elink.esua.epdc.modules.feign.UserFeignClient;
import com.elink.esua.epdc.modules.group.dao.UserGroupDao; import com.elink.esua.epdc.modules.group.dao.UserGroupDao;
import com.elink.esua.epdc.modules.group.entity.UserGroupEntity; import com.elink.esua.epdc.modules.group.entity.UserGroupEntity;
import com.elink.esua.epdc.modules.group.service.GroupService;
import com.elink.esua.epdc.modules.group.service.UserGroupService; import com.elink.esua.epdc.modules.group.service.UserGroupService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -47,6 +63,15 @@ import java.util.Map;
@Service @Service
public class UserGroupServiceImpl extends BaseServiceImpl<UserGroupDao, UserGroupEntity> implements UserGroupService { public class UserGroupServiceImpl extends BaseServiceImpl<UserGroupDao, UserGroupEntity> implements UserGroupService {
@Autowired
private UserFeignClient userFeignClient;
@Autowired
private GroupService groupService;
@Autowired
private NewsTask newsTask;
@Override @Override
public PageData<UserGroupDTO> page(Map<String, Object> params) { public PageData<UserGroupDTO> page(Map<String, Object> params) {
IPage<UserGroupDTO> page = getPage(params); IPage<UserGroupDTO> page = getPage(params);
@ -120,8 +145,102 @@ public class UserGroupServiceImpl extends BaseServiceImpl<UserGroupDao, UserGrou
} }
@Override @Override
public List<String> listOfGroupUserIdsByState(String groupId, int[] states) { public Result<List<EpdcUserGroupInviteResultDTO>> listOfInviteUsers(EpdcUserGroupInviteFormDTO formDto) {
return baseDao.selectListOfGroupUserIdsByState(groupId, states); // 获取社群当前待审核和审核通过的成员ID
int[] states = {GroupUserStateEnum.GROUP_USER_STATE_PENDING_REVIEW.getValue(), GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue()};
List<String> userIds = baseDao.selectListOfGroupUserIdsByState(formDto.getGroupId(), states);
formDto.setUserIds(userIds);
return userFeignClient.getInviteUserList(formDto);
}
@Override
@Transactional(rollbackFor = Exception.class)
public Result saveGroupUsers(GroupAddUserFormDTO formDto) {
List<UserGroupEntity> userGroupEntities = new ArrayList<>(formDto.getGroupUserFormDtoList().size());
UserGroupEntity entity = null;
for (GroupUserFormDTO userDto:
formDto.getGroupUserFormDtoList()) {
entity = new UserGroupEntity();
entity.setGroupId(formDto.getGroupId());
entity.setUserId(userDto.getUserId());
entity.setNickname(userDto.getNickname());
entity.setUserAvatar(userDto.getUserAvatar());
entity.setMobile(userDto.getMobile());
entity.setPartyMember(userDto.getPartyMember());
entity.setLordFlag(NumConstant.ZERO_STR);
entity.setState(GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue());
userGroupEntities.add(entity);
}
if (insertBatch(userGroupEntities)) {
// 获取社群信息
GroupDTO groupDto = groupService.get(formDto.getGroupId());
// 组装发送消息内容
for (UserGroupEntity userGroupEntity:
userGroupEntities) {
EpdcInformationFormDTO informationFormDTO = new EpdcInformationFormDTO();
informationFormDTO.setContent(GroupNoticeConstant.NOTICE_GROUP_USER_INVITED_CONTENT.replace("groupName", groupDto.getGroupName()));
informationFormDTO.setType(GroupNoticeConstant.NOTICE_TYPE_GROUP_NOTICE);
informationFormDTO.setBusinessId(formDto.getGroupId());
informationFormDTO.setUserId(userGroupEntity.getUserId());
informationFormDTO.setTitle(GroupNoticeConstant.NOTICE_GROUP_USER_INVITED);
informationFormDTO.setBusinessType(GroupNoticeConstant.NOTICE_BUSINESS_TYPE_GROUP_USER_INVITED);
// 发送通知
newsTask.insertUserInformation(informationFormDTO);
}
return new Result();
}
return new Result().error();
}
@Override
@Transactional(rollbackFor = Exception.class)
public Result modifyGroupUsers(GroupUserReviewFormDTO formDto) {
List<UserGroupEntity> userGroupEntities = new ArrayList<>(formDto.getUserReviewDtoList().size());
UserGroupEntity entity = null;
for (UserReviewDto userReviewDto:
formDto.getUserReviewDtoList()) {
entity = new UserGroupEntity();
entity.setId(userReviewDto.getId());
entity.setState(userReviewDto.getState());
entity.setAuditOpinion(userReviewDto.getAuditOpinion());
userGroupEntities.add(entity);
}
if (updateBatchById(userGroupEntities)) {
// 获取社群信息
GroupDTO groupDto = groupService.get(formDto.getGroupId());
// 组装发送消息内容
for (UserGroupEntity userGroupEntity:
userGroupEntities) {
EpdcInformationFormDTO informationFormDTO = new EpdcInformationFormDTO();
informationFormDTO.setType(GroupNoticeConstant.NOTICE_TYPE_AUDIT_NOTICE);
informationFormDTO.setUserId(userGroupEntity.getUserId());
if (GroupUserStateEnum.GROUP_USER_STATE_AUDIT_NOT_PASSED.getValue().equals(userGroupEntity.getState())) {
informationFormDTO.setTitle(GroupNoticeConstant.NOTICE_GROUP_USER_REVIEW_NOT_PASSED);
informationFormDTO.setContent(GroupNoticeConstant.NOTICE_GROUP_USER_REVIEW_NOT_PASSED_CONTENT
.replace("groupName", groupDto.getGroupName())
.replace("auditOpinion", userGroupEntity.getAuditOpinion()));
informationFormDTO.setBusinessId(userGroupEntity.getId());
informationFormDTO.setBusinessType(GroupNoticeConstant.NOTICE_BUSINESS_TYPE_GROUP_USER_REVIEW_NOT_PASS);
} else {
informationFormDTO.setTitle(GroupNoticeConstant.NOTICE_GROUP_USER_REVIEW_PASSED);
informationFormDTO.setContent(GroupNoticeConstant.NOTICE_GROUP_USER_REVIEW_PASSED_CONTENT
.replace("groupName", groupDto.getGroupName()));
informationFormDTO.setBusinessId(formDto.getGroupId());
informationFormDTO.setBusinessType(GroupNoticeConstant.NOTICE_BUSINESS_TYPE_GROUP_USER_REVIEW_PASSED);
}
// 发送通知
newsTask.insertUserInformation(informationFormDTO);
}
return new Result();
}
return new Result().error();
} }
} }

2
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/UserGroupDao.xml

@ -27,7 +27,7 @@
</select> </select>
<select id="selectListOfGroupUsersByState" resultType="com.elink.esua.epdc.dto.group.result.GroupUserListResultDTO"> <select id="selectListOfGroupUsersByState" resultType="com.elink.esua.epdc.dto.group.result.GroupUserListResultDTO">
SELECT ID, USER_ID, NICKNAME, USER_AVATAR, LORD_FLAG FROM epdc_user_group WHERE DEL_FLAG = '0' AND STATE = #{state} AND GROUP_ID = #{groupId} SELECT ID, NICKNAME, USER_AVATAR, LORD_FLAG, CREATED_TIME FROM epdc_user_group WHERE DEL_FLAG = '0' AND STATE = #{state} AND GROUP_ID = #{groupId}
</select> </select>
<select id="selectOneOfLordByGroupId" resultType="com.elink.esua.epdc.dto.group.UserGroupDTO"> <select id="selectOneOfLordByGroupId" resultType="com.elink.esua.epdc.dto.group.UserGroupDTO">

2
esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/epdc/form/EpdcInformationFormDTO.java

@ -64,7 +64,7 @@ public class EpdcInformationFormDTO implements Serializable {
* 消息所属业务类型event事件审核issueComment议题评论issueReply议题评论回复itemComment项目评论itemReply项目评论回复 * 消息所属业务类型event事件审核issueComment议题评论issueReply议题评论回复itemComment项目评论itemReply项目评论回复
* issueApprove支持议题itemApprove支持项目issueCommentApprove议题评论支持issueCommentOppose议题评论反对 * issueApprove支持议题itemApprove支持项目issueCommentApprove议题评论支持issueCommentOppose议题评论反对
* itemCommentApprove项目评论支持itemCommentOppose项目评论反对issue议题处理 * itemCommentApprove项目评论支持itemCommentOppose项目评论反对issue议题处理
* item项目处理crowd社群邀请等 * item项目处理groupInvited社群邀请等
*/ */
@NotBlank(message = "消息所属业务类型不能为空") @NotBlank(message = "消息所属业务类型不能为空")
private String businessType; private String businessType;

Loading…
Cancel
Save