Browse Source

根据链接查询群组信息接口修改添加inGroup返参

dev_shibei_match
yinzuomei 6 years ago
parent
commit
44986e5aac
  1. 10
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/Constant.java
  2. 50
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/invitation/result/LinkGroupInfoDTO.java
  3. 33
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/invitation/result/LinkGroupInfoResultDTO.java
  4. 5
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/dao/GroupInvitationDao.java
  5. 31
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/impl/GroupInvitationServiceImpl.java
  6. 9
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/ResiGroupMemberService.java
  7. 37
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java
  8. 2
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/invitation/GroupInvitationDao.xml

10
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/Constant.java

@ -108,4 +108,14 @@ public interface Constant {
* 版本控制用
*/
String VERSION_CONTROL = "/{version}";
/**
*
*/
String YES="yes";
/**
*
*/
String NO="no";
}

50
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/invitation/result/LinkGroupInfoDTO.java

@ -0,0 +1,50 @@
package com.epmet.resi.group.dto.invitation.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Description 点击链接查看组信息返参DTO
* @Author yinzuomei
* @Date 2020/4/8 11:22
*/
@Data
public class LinkGroupInfoDTO implements Serializable {
private static final long serialVersionUID = 6136787210623326830L;
/**
* 群组id
*/
private String groupId;
/**
* 群组头像
*/
private String groupHeadPhoto;
/**
* 组长名称
* 暂定街道-姓名
*/
private String leaderName;
/**
* 群组名称
*/
private String groupName;
/**
* 组介绍
*/
private String groupIntroduction;
/**
* 成员总数
*/
private Integer totalMember;
/**
* 党员总数
*/
private Integer totalPartyMember;
}

33
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/invitation/result/LinkGroupInfoResultDTO.java

@ -14,38 +14,13 @@ public class LinkGroupInfoResultDTO implements Serializable {
private static final long serialVersionUID = 8860336693592035343L;
/**
* 群组id
* 是否在群内标志已经在群内yes 不在群内no
*/
private String groupId;
private String inGroup;
/**
* 群组头像
* 小组相关信息
*/
private String groupHeadPhoto;
private LinkGroupInfoDTO groupInfo;
/**
* 组长名称
* 暂定街道-姓名
*/
private String leaderName;
/**
* 群组名称
*/
private String groupName;
/**
* 组介绍
*/
private String groupIntroduction;
/**
* 成员总数
*/
private Integer totalMember;
/**
* 党员总数
*/
private Integer totalPartyMember;
}

5
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/dao/GroupInvitationDao.java

@ -19,8 +19,7 @@ package com.epmet.modules.invitation.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.modules.invitation.entity.GroupInvitationEntity;
import com.epmet.resi.group.dto.invitation.form.LinkGroupInfoFormDTO;
import com.epmet.resi.group.dto.invitation.result.LinkGroupInfoResultDTO;
import com.epmet.resi.group.dto.invitation.result.LinkGroupInfoDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -40,5 +39,5 @@ public interface GroupInvitationDao extends BaseDao<GroupInvitationEntity> {
* @Description 根据群邀请连接查询群基本信息
* @Date 2020/3/31 23:22
**/
LinkGroupInfoResultDTO selectLinkGroupInfo(@Param("groupId") String groupId);
LinkGroupInfoDTO selectLinkGroupInfo(@Param("groupId") String groupId);
}

31
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/impl/GroupInvitationServiceImpl.java

@ -21,6 +21,7 @@ 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.constant.AppClientConstant;
import com.epmet.commons.tools.constant.Constant;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.exception.EpmetErrorCode;
@ -56,6 +57,7 @@ import com.epmet.resi.group.dto.invitation.form.AccetInvitationFormDTO;
import com.epmet.resi.group.dto.invitation.form.CreateGroupInvitationFormDTO;
import com.epmet.resi.group.dto.invitation.form.LinkGroupInfoFormDTO;
import com.epmet.resi.group.dto.invitation.result.CreateGroupInvitationResultDTO;
import com.epmet.resi.group.dto.invitation.result.LinkGroupInfoDTO;
import com.epmet.resi.group.dto.invitation.result.LinkGroupInfoResultDTO;
import com.epmet.resi.group.dto.member.GroupMemeberOperationDTO;
import com.epmet.resi.group.dto.member.ResiGroupMemberDTO;
@ -202,14 +204,25 @@ public class GroupInvitationServiceImpl extends BaseServiceImpl<GroupInvitationD
if (!validResult.success()) {
return new Result<LinkGroupInfoResultDTO>().error(validResult.getCode(), validResult.getMsg());
}
LinkGroupInfoResultDTO linkGroupInfoResultDTO = baseDao.selectLinkGroupInfo(validResult.getData().getResiGroupId());
//获取组长信息
Result<UserResiInfoResultDTO> groupLeaderUserInfo = this.getGroupLeaderUserInfo(linkGroupInfoResultDTO.getGroupId());
LinkGroupInfoResultDTO linkGroupInfoResultDTO = new LinkGroupInfoResultDTO();
//1、查询是否在群内
ResiGroupMemberDTO resiGroupMemberDTO = resiGroupMemberDao.selectGroupMemberInfo(validResult.getData().getResiGroupId(), formDTO.getUserId());
if (null != resiGroupMemberDTO && !MemberStateConstant.REMOVED.equals(resiGroupMemberDTO.getStatus())) {
linkGroupInfoResultDTO.setInGroup(Constant.YES);
return new Result<LinkGroupInfoResultDTO>().ok(linkGroupInfoResultDTO);
} else {
linkGroupInfoResultDTO.setInGroup(Constant.NO);
}
//2、查询组信息
LinkGroupInfoDTO groupInfo = baseDao.selectLinkGroupInfo(validResult.getData().getResiGroupId());
//3、获取组长信息
Result<UserResiInfoResultDTO> groupLeaderUserInfo = this.getGroupLeaderUserInfo(groupInfo.getGroupId());
if (groupLeaderUserInfo.success() && null != groupLeaderUserInfo.getData()) {
linkGroupInfoResultDTO.setLeaderName(groupLeaderUserInfo.getData().getShowName());
groupInfo.setLeaderName(groupLeaderUserInfo.getData().getShowName());
} else {
logger.info("组长注册信息查询失败" + groupLeaderUserInfo.getMsg());
}
linkGroupInfoResultDTO.setGroupInfo(groupInfo);
return new Result<LinkGroupInfoResultDTO>().ok(linkGroupInfoResultDTO);
}
@ -277,21 +290,25 @@ public class GroupInvitationServiceImpl extends BaseServiceImpl<GroupInvitationD
GroupMemeberOperationDTO groupMemeberOperation = new GroupMemeberOperationDTO();
groupMemeberOperation.setGroupId(resiGroupDTO.getId());
groupMemeberOperation.setCustomerUserId(formDTO.getUserId());
groupMemeberOperation.setGroupId(resiGroupDTO.getId());
groupMemeberOperation.setOperateStatus(MemberStateConstant.APPROVED);
groupMemeberOperation.setEnterGroupType(EnterGroupTypeConstant.INVITED);
groupMemeberOperation.setCreatedBy(formDTO.getUserId());
groupMemeberOperation.setOperateUserId(formDTO.getUserId());
groupMemeberOperationService.save(groupMemeberOperation);
//4、直接加入群成员关系表
//如果是之前被移除的,则修改resi_group_member记录
ResiGroupMemberDTO resiGroupMemberDTO = new ResiGroupMemberDTO();
ResiGroupMemberDTO resiGroupMember = resiGroupMemberDao.selectGroupMemberInfo(validResult.getData().getResiGroupId(), formDTO.getUserId());
if (null != resiGroupMember) {
resiGroupMemberDTO.setId(resiGroupMember.getId());
}
resiGroupMemberDTO.setCustomerUserId(groupMemeberOperation.getCustomerUserId());
resiGroupMemberDTO.setResiGroupId(groupMemeberOperation.getGroupId());
resiGroupMemberDTO.setGroupLeaderFlag(LeaderFlagConstant.GROUP_MEMBER);
resiGroupMemberDTO.setEnterGroupType(groupMemeberOperation.getEnterGroupType());
resiGroupMemberDTO.setStatus(MemberStateConstant.APPROVED);
resiGroupMemberDTO.setCreatedBy(groupMemeberOperation.getCustomerUserId());
resiGroupMemberService.save(resiGroupMemberDTO);
resiGroupMemberService.saveOrUpdate(resiGroupMemberDTO);
//5、修改群统计值
UserRoleDTO userRoleDTO = resiGroupService.checkPartyMemberOrWarmHeated(formDTO.getApp(),
formDTO.getUserId(),
@ -303,9 +320,9 @@ public class GroupInvitationServiceImpl extends BaseServiceImpl<GroupInvitationD
}
/**
* @return void
* @param formDTO
* @param resiGroupDTO
* @return void
* @Author yinzuomei
* @Description 用户通过邀请进群之后通知群主您的好友-认证的居民名字 xxx路-王先生通过邀请链接加入了组名
* @Date 2020/4/7 14:46

9
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/ResiGroupMemberService.java

@ -151,4 +151,13 @@ public interface ResiGroupMemberService extends BaseService<ResiGroupMemberEntit
* @Date 2020/3/30 22:07
**/
Result disAgreeApply(DisagreeApplyFormDTO disagreeApplyFormDTO);
/**
* @param resiGroupMemberDTO
* @return void
* @Author yinzuomei
* @Description 保存或更新resi_group_member
* @Date 2020/4/8 12:37
**/
void saveOrUpdate(ResiGroupMemberDTO resiGroupMemberDTO);
}

37
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java

@ -281,35 +281,40 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl<ResiGroupMemberD
@Override
public Result agreeApply(AgreeApplyFormDTO agreeApplyFormDTO) {
GroupMemeberOperationDTO groupMemeberOperationDTO = groupMemeberOperationService.get(agreeApplyFormDTO.getApplyId());
//当前申请单是否是待审核
//1、当前申请单是否是待审核
if (null == groupMemeberOperationDTO || !MemberStateConstant.UNDER_AUDITTING.equals(groupMemeberOperationDTO.getOperateStatus())) {
return new Result().error(ModuleConstant.APPLY_NOEXISTS);
}
//只有群主才可以审批入群申请
//2、只有群主才可以审批入群申请
ResiGroupMemberDTO leaderMember = baseDao.selectGroupMemberInfo(groupMemeberOperationDTO.getGroupId(), agreeApplyFormDTO.getUserId());
if (!LeaderFlagConstant.GROUP_LEADER.equals(leaderMember.getGroupLeaderFlag())) {
return new Result().error(ModuleConstant.CANNOT_AUDIT_APPLY);
}
//修改操作状态
//3、修改操作状态
groupMemeberOperationDTO.setOperateStatus(MemberStateConstant.APPROVED);
groupMemeberOperationDTO.setUpdatedBy(agreeApplyFormDTO.getUserId());
groupMemeberOperationDTO.setOperateUserId(agreeApplyFormDTO.getUserId());
groupMemeberOperationService.update(groupMemeberOperationDTO);
//加入群成员关系表
//4、加入群成员关系表
//4.1如果是之前被移除的,则修改resi_group_member记录
ResiGroupMemberDTO resiGroupMemberDTO = new ResiGroupMemberDTO();
ResiGroupMemberDTO resiGroupMember = baseDao.selectGroupMemberInfo(groupMemeberOperationDTO.getGroupId(), groupMemeberOperationDTO.getCustomerUserId());
if (null != resiGroupMember) {
resiGroupMemberDTO.setId(resiGroupMember.getId());
}
resiGroupMemberDTO.setCustomerUserId(groupMemeberOperationDTO.getCustomerUserId());
resiGroupMemberDTO.setResiGroupId(groupMemeberOperationDTO.getGroupId());
resiGroupMemberDTO.setGroupLeaderFlag(LeaderFlagConstant.GROUP_MEMBER);
resiGroupMemberDTO.setEnterGroupType(groupMemeberOperationDTO.getEnterGroupType());
resiGroupMemberDTO.setStatus(MemberStateConstant.APPROVED);
resiGroupMemberDTO.setCreatedBy(groupMemeberOperationDTO.getCustomerUserId());
resiGroupMemberService.save(resiGroupMemberDTO);
//修改群统计值
resiGroupMemberService.saveOrUpdate(resiGroupMemberDTO);
//5、修改群统计值
UserRoleDTO userRoleDTO = resiGroupService.checkPartyMemberOrWarmHeated(agreeApplyFormDTO.getApp(),
groupMemeberOperationDTO.getCustomerUserId(),
agreeApplyFormDTO.getCustomerId());
baseDao.updateResiGroupStatistical(groupMemeberOperationDTO.getGroupId(), userRoleDTO);
//给用户发送消息
//6、给用户发送消息
this.sendUserApprovedMessage(resiGroupMemberDTO);
return new Result();
}
@ -347,26 +352,36 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl<ResiGroupMemberD
@Override
public Result disAgreeApply(DisagreeApplyFormDTO disagreeApplyFormDTO) {
GroupMemeberOperationDTO groupMemeberOperationDTO = groupMemeberOperationService.get(disagreeApplyFormDTO.getApplyId());
//当前申请单是否是待审核
//1、当前申请单是否是待审核
if (null == groupMemeberOperationDTO || !MemberStateConstant.UNDER_AUDITTING.equals(groupMemeberOperationDTO.getOperateStatus())) {
return new Result().error(ModuleConstant.APPLY_NOEXISTS);
}
//只有群主才可以审批入群申请
//2、只有群主才可以审批入群申请
ResiGroupMemberDTO leaderMember = baseDao.selectGroupMemberInfo(groupMemeberOperationDTO.getGroupId(), disagreeApplyFormDTO.getUserId());
if (!LeaderFlagConstant.GROUP_LEADER.equals(leaderMember.getGroupLeaderFlag())) {
return new Result().error(ModuleConstant.CANNOT_AUDIT_APPLY);
}
//修改操作状态
//3、修改操作状态
groupMemeberOperationDTO.setOperateStatus(MemberStateConstant.REJECTED);
groupMemeberOperationDTO.setOperateDes(disagreeApplyFormDTO.getOperateDesc());
groupMemeberOperationDTO.setUpdatedBy(disagreeApplyFormDTO.getUserId());
groupMemeberOperationDTO.setOperateUserId(disagreeApplyFormDTO.getUserId());
groupMemeberOperationService.update(groupMemeberOperationDTO);
//给用户发送消息
//4、给用户发送消息
this.sendUserRejectedMessage(groupMemeberOperationDTO,disagreeApplyFormDTO);
return new Result();
}
@Override
public void saveOrUpdate(ResiGroupMemberDTO resiGroupMemberDTO) {
ResiGroupMemberEntity entity = ConvertUtils.sourceToTarget(resiGroupMemberDTO, ResiGroupMemberEntity.class);
if(StringUtils.isNotBlank(entity.getId())){
updateById(entity);
}else{
insert(entity);
}
}
/**
* @return void
* @param groupMemeberOperationDTO

2
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/invitation/GroupInvitationDao.xml

@ -4,7 +4,7 @@
<mapper namespace="com.epmet.modules.invitation.dao.GroupInvitationDao">
<!-- 根据群邀请连接查询群基本信息 -根据groupId 查询群基本信息 -->
<select id="selectLinkGroupInfo" parameterType="map" resultType="com.epmet.resi.group.dto.invitation.result.LinkGroupInfoResultDTO">
<select id="selectLinkGroupInfo" parameterType="map" resultType="com.epmet.resi.group.dto.invitation.result.LinkGroupInfoDTO">
SELECT
rg.id AS groupId,
rg.GROUP_HEAD_PHOTO AS groupHeadPhoto,

Loading…
Cancel
Save