Commit a087f365 by 裴大威

区分个人码和社群码满群人数

parent 2c4f8532
...@@ -30,6 +30,7 @@ import com.pcloud.book.group.dto.QrcodeNameAndProIdDTO; ...@@ -30,6 +30,7 @@ import com.pcloud.book.group.dto.QrcodeNameAndProIdDTO;
import com.pcloud.book.group.dto.UpdateGroupNameDTO; import com.pcloud.book.group.dto.UpdateGroupNameDTO;
import com.pcloud.book.group.dto.WeixinQrcodeDTO; import com.pcloud.book.group.dto.WeixinQrcodeDTO;
import com.pcloud.book.group.entity.GroupQrcode; import com.pcloud.book.group.entity.GroupQrcode;
import com.pcloud.book.group.enums.JoinGroupTypeEnum;
import com.pcloud.book.group.enums.QrcodeStatusEnum; import com.pcloud.book.group.enums.QrcodeStatusEnum;
import com.pcloud.book.group.tools.SendWeixinRequestTools; import com.pcloud.book.group.tools.SendWeixinRequestTools;
import com.pcloud.book.group.vo.ClassifyQrcodeVO; import com.pcloud.book.group.vo.ClassifyQrcodeVO;
...@@ -468,7 +469,7 @@ public class GroupQrcodeBizImpl implements GroupQrcodeBiz { ...@@ -468,7 +469,7 @@ public class GroupQrcodeBizImpl implements GroupQrcodeBiz {
} }
// 新用户进群时系统消息群人数不准,所以从系统中取然后+1,更新群人数操作会在群消息地方处理 // 新用户进群时系统消息群人数不准,所以从系统中取然后+1,更新群人数操作会在群消息地方处理
memberCount = groupQrcodeDTO.getUserNumber() + 1; memberCount = groupQrcodeDTO.getUserNumber() + 1;
if (memberCount >= 100 && QrcodeStatusEnum.ON_USE.value.equals(groupQrcodeDTO.getUseState())) { if (memberCount >= ((JoinGroupTypeEnum.GROUP_QRCODE.getCode().equals(groupQrcodeDTO.getJoinGroupType()) ? 100 : 500)) && QrcodeStatusEnum.ON_USE.value.equals(groupQrcodeDTO.getUseState())) {
//将二维码修改为已满群状态 //将二维码修改为已满群状态
changeToOverNumber(groupQrcodeDTO.getWeixinQrcodeId(), groupQrcodeDTO.getId()); changeToOverNumber(groupQrcodeDTO.getWeixinQrcodeId(), groupQrcodeDTO.getId());
} }
......
...@@ -56,5 +56,10 @@ public class GroupQrcodeDTO implements Serializable { ...@@ -56,5 +56,10 @@ public class GroupQrcodeDTO implements Serializable {
*/ */
private String groupName; private String groupName;
/**
* 入群方式
*/
private Integer joinGroupType;
} }
package com.pcloud.book.keywords.biz; package com.pcloud.book.keywords.biz;
import com.pcloud.book.group.dto.GroupClassifyQrcodeDTO;
import com.pcloud.book.keywords.dto.KeywordDTO; import com.pcloud.book.keywords.dto.KeywordDTO;
import com.pcloud.book.keywords.dto.KeywordStatisticsDTO; import com.pcloud.book.keywords.dto.KeywordStatisticsDTO;
import com.pcloud.book.keywords.dto.ReplyKeywordDTO; import com.pcloud.book.keywords.dto.ReplyKeywordDTO;
...@@ -79,11 +80,8 @@ public interface BookKeywordBiz { ...@@ -79,11 +80,8 @@ public interface BookKeywordBiz {
* 更新群人数 * 更新群人数
* @param wxGroupId 微信群id * @param wxGroupId 微信群id
* @param memberCount 群人数 * @param memberCount 群人数
* @param changeNumber 切群人数
* @param weixinQrcodeId weixin表主键
* @param groupQrcodeId groupQrcode表主键
*/ */
void updateGroupPeopleCount(String wxGroupId, Integer memberCount, Integer changeNumber, Long weixinQrcodeId, Long groupQrcodeId); void updateGroupPeopleCount(String wxGroupId, Integer memberCount, GroupClassifyQrcodeDTO classifyQrcodeInfo);
/** /**
* 修改群名称 * 修改群名称
......
...@@ -31,6 +31,7 @@ import com.pcloud.book.group.entity.BookGroupCipherUser; ...@@ -31,6 +31,7 @@ import com.pcloud.book.group.entity.BookGroupCipherUser;
import com.pcloud.book.group.entity.BookGroupClassify; import com.pcloud.book.group.entity.BookGroupClassify;
import com.pcloud.book.group.entity.BookGroupServe; import com.pcloud.book.group.entity.BookGroupServe;
import com.pcloud.book.group.entity.GroupQrcode; import com.pcloud.book.group.entity.GroupQrcode;
import com.pcloud.book.group.enums.JoinGroupTypeEnum;
import com.pcloud.book.group.enums.QrcodeStatusEnum; import com.pcloud.book.group.enums.QrcodeStatusEnum;
import com.pcloud.book.group.enums.TouchTypeEnum; import com.pcloud.book.group.enums.TouchTypeEnum;
import com.pcloud.book.group.tools.SendSelfMsgTools; import com.pcloud.book.group.tools.SendSelfMsgTools;
...@@ -941,7 +942,10 @@ public class BookKeywordBizImpl implements BookKeywordBiz { ...@@ -941,7 +942,10 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
* 更新群人数 * 更新群人数
*/ */
@Override @Override
public void updateGroupPeopleCount(String wxGroupId, Integer memberCount, Integer changeNumber, Long weixinQrcodeId, Long groupQrcodeId) { public void updateGroupPeopleCount(String wxGroupId, Integer memberCount, GroupClassifyQrcodeDTO classifyQrcodeInfo) {
Integer changeNumber = classifyQrcodeInfo.getChangeNumber();
Long weixinQrcodeId = classifyQrcodeInfo.getWeixinQrcodeId();
Long groupQrcodeId = classifyQrcodeInfo.getGroupQrcodeId();
log.info("[更新群人数] updateGroupPeopleCount wxGroupId:{} memberCount:{} changeNumber:{} weixinQrcodeId:{} groupQrcodeId:{}", wxGroupId, memberCount, changeNumber, weixinQrcodeId, groupQrcodeId); log.info("[更新群人数] updateGroupPeopleCount wxGroupId:{} memberCount:{} changeNumber:{} weixinQrcodeId:{} groupQrcodeId:{}", wxGroupId, memberCount, changeNumber, weixinQrcodeId, groupQrcodeId);
if (Objects.isNull(memberCount) || StringUtil.isBlank(wxGroupId) || memberCount <= 0) { if (Objects.isNull(memberCount) || StringUtil.isBlank(wxGroupId) || memberCount <= 0) {
return; return;
...@@ -961,7 +965,7 @@ public class BookKeywordBizImpl implements BookKeywordBiz { ...@@ -961,7 +965,7 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
groupQrcodeDao.changeQrcodeStateForNotOver(groupQrcodeId, QrcodeStatusEnum.ON_USE.value); groupQrcodeDao.changeQrcodeStateForNotOver(groupQrcodeId, QrcodeStatusEnum.ON_USE.value);
log.info("[更新群人数] 触发更新小于状态 wxGroupId:{} memberCount:{} changeNumber:{} weixinQrcodeId:{} groupQrcodeId:{}", wxGroupId, memberCount, changeNumber, weixinQrcodeId, groupQrcodeId); log.info("[更新群人数] 触发更新小于状态 wxGroupId:{} memberCount:{} changeNumber:{} weixinQrcodeId:{} groupQrcodeId:{}", wxGroupId, memberCount, changeNumber, weixinQrcodeId, groupQrcodeId);
} }
if (memberCount >= 100) { if (memberCount >= (JoinGroupTypeEnum.GROUP_QRCODE.getCode().equals(classifyQrcodeInfo.getJoinGroupType()) ? 100 : 500)) {
groupQrcodeBiz.changeToOverNumber(weixinQrcodeId, groupQrcodeId); groupQrcodeBiz.changeToOverNumber(weixinQrcodeId, groupQrcodeId);
log.info("[更新群人数] 触发更新满群状态 wxGroupId:{} memberCount:{} changeNumber:{} weixinQrcodeId:{} groupQrcodeId:{}", wxGroupId, memberCount, changeNumber, weixinQrcodeId, groupQrcodeId); log.info("[更新群人数] 触发更新满群状态 wxGroupId:{} memberCount:{} changeNumber:{} weixinQrcodeId:{} groupQrcodeId:{}", wxGroupId, memberCount, changeNumber, weixinQrcodeId, groupQrcodeId);
groupQrcodeDao.changeQrcodeState(groupQrcodeId, QrcodeStatusEnum.OVER_NUMBER.value); groupQrcodeDao.changeQrcodeState(groupQrcodeId, QrcodeStatusEnum.OVER_NUMBER.value);
......
...@@ -69,7 +69,6 @@ public class WxGroupSendTextListener { ...@@ -69,7 +69,6 @@ public class WxGroupSendTextListener {
if(flag && SendMessageTypeEnum.GROUP.getCode().equals(sendTextDTO.getCode())){ if(flag && SendMessageTypeEnum.GROUP.getCode().equals(sendTextDTO.getCode())){
weixinClockBiz.sendKeywordMessage(sendTextDTO.getTextContent().trim(), wechatUserId, sendTextDTO.getWechatGroupId(), sendTextDTO.getWxId(), sendTextDTO.getIp()); weixinClockBiz.sendKeywordMessage(sendTextDTO.getTextContent().trim(), wechatUserId, sendTextDTO.getWechatGroupId(), sendTextDTO.getWxId(), sendTextDTO.getIp());
} else { } else {
final long l = System.currentTimeMillis();
bookKeywordBiz.sendKeywordMessage(sendTextDTO); bookKeywordBiz.sendKeywordMessage(sendTextDTO);
} }
//猜谜语 //猜谜语
...@@ -92,7 +91,7 @@ public class WxGroupSendTextListener { ...@@ -92,7 +91,7 @@ public class WxGroupSendTextListener {
final String ip = sendTextDTO.getIp(); final String ip = sendTextDTO.getIp();
GroupClassifyQrcodeDTO classifyQrcodeInfo = bookGroupClassifyBiz.getClassifyQrcodeInfo(weixinGroupId); GroupClassifyQrcodeDTO classifyQrcodeInfo = bookGroupClassifyBiz.getClassifyQrcodeInfo(weixinGroupId);
// 处理更新群人数 // 处理更新群人数
bookKeywordBiz.updateGroupPeopleCount(weixinGroupId, sendTextDTO.getMemberCount(), classifyQrcodeInfo.getChangeNumber(), classifyQrcodeInfo.getWeixinQrcodeId(), classifyQrcodeInfo.getGroupQrcodeId()); bookKeywordBiz.updateGroupPeopleCount(weixinGroupId, sendTextDTO.getMemberCount(), classifyQrcodeInfo);
bookKeywordBiz.checkGroupName(weixinGroupId, classifyQrcodeInfo.getGroupName(), finalRobotId, ip); bookKeywordBiz.checkGroupName(weixinGroupId, classifyQrcodeInfo.getGroupName(), finalRobotId, ip);
}); });
} }
......
...@@ -236,10 +236,12 @@ ...@@ -236,10 +236,12 @@
q.weixin_qrcode_id weixinQrcodeId, q.weixin_qrcode_id weixinQrcodeId,
q.group_name groupName, q.group_name groupName,
q.user_number userNumber, q.user_number userNumber,
c.id classifyId c.id classifyId,
d.join_group_type joinGroupType
FROM FROM
book_group_qrcode q book_group_qrcode q
JOIN book_group_classify c ON q.classify_id = c.id JOIN book_group_classify c ON q.classify_id = c.id
JOIN book_group d ON c.book_group_id = d.id
AND q.weixin_group_id = #{_parameter} limit 1 AND q.weixin_group_id = #{_parameter} limit 1
</select> </select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment