Browse Source

退出群组

dev
zhaoqifeng 4 years ago
parent
commit
3de49b63c4
  1. 20
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/group/GroupDataDao.xml
  2. 10
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/ResiGroupMemberService.java
  3. 12
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/GroupMemeberOperationServiceImpl.java
  4. 18
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java
  5. 7
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/member/ResiGroupMemberDao.xml

20
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/group/GroupDataDao.xml

@ -26,12 +26,12 @@
COUNT(rgm.id) AS gridGroupPeopleTotal
FROM
resi_group rg
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id AND rmg.DEL_FLAG = 0
WHERE
rg.DEL_FLAG = 0
AND rg.state = #{state}
AND rg.customer_id = #{customerId}
AND rgm.status != #{status}
AND (rgm.status = 'approved' OR rgm.status = 'silent')
AND DATE_FORMAT(rgm.created_time,'%Y%m%d') <![CDATA[ <= ]]> #{dateId}
GROUP BY rg.grid_id
</select>
@ -45,12 +45,12 @@
COUNT( rgm.id ) AS groupCount
FROM
resi_group rg
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id AND rmg.DEL_FLAG = 0
WHERE
rg.DEL_FLAG = 0
AND rg.state = #{state}
AND rg.customer_id = #{customerId}
AND rgm.STATUS != #{status}
AND (rgm.status = 'approved' OR rgm.status = 'silent')
AND DATE_FORMAT(rgm.created_time,'%Y%m%d') <![CDATA[ <= ]]> #{dateId}
GROUP BY
rgm.resi_group_id
@ -94,12 +94,12 @@
COUNT(rgm.id) AS gridGroupPeopleTotal
FROM
resi_group rg
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id AND rmg.DEL_FLAG = 0
WHERE
rg.DEL_FLAG = 0
AND rg.state = 'approved'
AND rg.customer_id = #{customerId}
AND rgm.status != 'removed'
AND (rgm.status = 'approved' OR rgm.status = 'silent')
AND DATE_FORMAT(rgm.created_time,'%Y%m%d') <![CDATA[ <= ]]> #{dateId}
GROUP BY rg.grid_id
</select>
@ -112,12 +112,12 @@
COUNT( rgm.id ) AS groupCount
FROM
resi_group rg
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id AND rmg.DEL_FLAG = 0
WHERE
rg.DEL_FLAG = 0
AND rg.state = 'approved'
AND rg.customer_id = #{customerId}
AND rgm.STATUS != 'removed'
AND (rgm.status = 'approved' OR rgm.status = 'silent')
AND DATE_FORMAT(rgm.created_time,'%Y%m%d') <![CDATA[ <= ]]> #{dateId}
GROUP BY
rgm.resi_group_id
@ -145,12 +145,12 @@
COUNT( rgm.id ) AS groupCount
FROM
resi_group rg
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id AND rmg.DEL_FLAG = 0
WHERE
rg.DEL_FLAG = 0
AND rg.state = 'approved'
AND rg.grid_id = #{gridId}
AND rgm.STATUS != 'removed'
AND (rgm.status = 'approved' OR rgm.status = 'silent')
GROUP BY
rgm.resi_group_id
</foreach>

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

@ -252,4 +252,14 @@ public interface ResiGroupMemberService extends BaseService<ResiGroupMemberEntit
* @Date 2021/4/19 19:14
**/
List<ResiGroupMemberDTO> getMemberList(String groupId);
/**
* 查询小组人员信息
* @author zhaoqifeng
* @date 2021/5/8 15:17
* @param groupId
* @param userId
* @return com.epmet.resi.group.dto.member.ResiGroupMemberDTO
*/
ResiGroupMemberDTO getMemberInfo(String groupId, String userId);
}

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

@ -247,8 +247,8 @@ public class GroupMemeberOperationServiceImpl extends BaseServiceImpl<GroupMemeb
throw new RenException("没有找到邀请人Id");
}
//查询是否在群内
ResiGroupMemberDTO groupMember = resiGroupMemberDao.selectGroupMemberInfo(groupId, param.getUserId());
if (null != groupMember && !MemberStateConstant.REMOVED.equals(groupMember.getStatus())) {
ResiGroupMemberDTO groupMember = memberService.getMemberInfo(groupId, param.getUserId());
if (null != groupMember && MemberStateConstant.APPROVED.equals(groupMember.getStatus())) {
log.info("已经在群内,直接返回成功,但是不发送积分事件");
result.setStatus("entered");
return result;
@ -341,7 +341,7 @@ public class GroupMemeberOperationServiceImpl extends BaseServiceImpl<GroupMemeb
}
}
if(StringUtils.isNotBlank(inviter)){
if(StringUtils.isNotBlank(inviter) && null == groupMember){
CommonGridIdFormDTO dataFilterParam = new CommonGridIdFormDTO();
dataFilterParam.setGridId(resiGroupDTO.getGridId());
@ -397,15 +397,15 @@ public class GroupMemeberOperationServiceImpl extends BaseServiceImpl<GroupMemeb
//直接加入群成员关系表
//如果是之前被移除的,则修改resi_group_member记录
ResiGroupMemberDTO resiGroupMemberDTO = new ResiGroupMemberDTO();
ResiGroupMemberDTO resiGroupMember = resiGroupMemberDao.selectGroupMemberInfo(groupId, param.getUserId());
if (null != resiGroupMember) {
resiGroupMemberDTO.setId(resiGroupMember.getId());
if (null != groupMember) {
resiGroupMemberDTO.setId(groupMember.getId());
}
resiGroupMemberDTO.setCustomerUserId(groupMemeberOperation.getCustomerUserId());
resiGroupMemberDTO.setResiGroupId(groupMemeberOperation.getGroupId());
resiGroupMemberDTO.setGroupLeaderFlag(LeaderFlagConstant.GROUP_MEMBER);
resiGroupMemberDTO.setEnterGroupType(groupMemeberOperation.getEnterGroupType());
resiGroupMemberDTO.setStatus(MemberStateConstant.APPROVED);
resiGroupMemberDTO.setDelFlag(NumConstant.ZERO_STR);
resiGroupMemberDTO.setCreatedBy(groupMemeberOperation.getCustomerUserId());
memberService.saveOrUpdate(resiGroupMemberDTO);
//修改群统计值

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

@ -383,6 +383,24 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl<ResiGroupMemberD
return baseDao.getMemberList(groupId);
}
/**
* 查询小组人员信息
*
* @param groupId
* @param userId
* @return com.epmet.resi.group.dto.member.ResiGroupMemberDTO
* @author zhaoqifeng
* @date 2021/5/8 15:17
*/
@Override
public ResiGroupMemberDTO getMemberInfo(String groupId, String userId) {
QueryWrapper<ResiGroupMemberEntity> wrapper = new QueryWrapper<>();
wrapper.eq("RESI_GROUP_ID", groupId)
.eq("CUSTOMER_USER_ID", userId);
ResiGroupMemberEntity entity = baseDao.selectOne(wrapper);
return ConvertUtils.sourceToTarget(entity, ResiGroupMemberDTO.class);
}
/**
* @param groupMemberListFormDTO
* @return com.epmet.commons.tools.utils.Result

7
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/member/ResiGroupMemberDao.xml

@ -103,7 +103,8 @@
)
FROM
RESI_GROUP groupp
INNER JOIN RESI_GROUP_MEMBER member ON member.RESI_GROUP_ID = groupp.ID AND member.DEL_FLAG = '0' AND member.STATUS <![CDATA[<>]]> 'removed'
INNER JOIN RESI_GROUP_MEMBER member ON member.RESI_GROUP_ID = groupp.ID AND member.DEL_FLAG = '0' AND (member.STATUS = 'approved' OR
member.STATUS = 'silent')
WHERE
groupp.DEL_FLAG = '0'
AND
@ -122,7 +123,8 @@
) as votableCount
FROM
RESI_GROUP groupp
LEFT JOIN RESI_GROUP_MEMBER member ON member.RESI_GROUP_ID = groupp.ID AND member.DEL_FLAG = '0' AND member.STATUS <![CDATA[<>]]> 'removed'
LEFT JOIN RESI_GROUP_MEMBER member ON member.RESI_GROUP_ID = groupp.ID AND member.DEL_FLAG = '0' AND (member.STATUS = 'approved' OR
member.STATUS = 'silent')
WHERE
groupp.DEL_FLAG = '0'
AND
@ -163,6 +165,7 @@
AND CUSTOMER_USER_ID = #{userId}
AND RESI_GROUP_ID = #{groupId}
AND `STATUS` != 'removed'
AND `STATUS` != 'exit'
</select>
<!-- 修改群成员关系数据状态 -->

Loading…
Cancel
Save