|
@@ -25,8 +25,8 @@ import java.util.stream.Collectors;
|
|
|
public class RiskRuleConfigService {
|
|
|
@Autowired
|
|
|
private WorkWechatServiceImpl workWechatServiceImpl;
|
|
|
- private static final int USER_COUNT_THRESHOLD = 1; //生效人数阈值
|
|
|
- private static final int USER_COUNT_THRESHOLD_FOR_ANOMALY_USER_RATIO = 2; //大于30人才触发是否关闭判断
|
|
|
+ private static final int USER_COUNT_THRESHOLD = 5; //生效人数阈值
|
|
|
+ private static final int USER_COUNT_THRESHOLD_FOR_ANOMALY_USER_RATIO = 30; //大于30人才触发是否关闭判断
|
|
|
private static final float ANOMALY_USER_RATIO = 0.1f; //异常用户比例20%
|
|
|
@Autowired
|
|
|
private WorkWechatRoomInfoMapper mapper;
|
|
@@ -73,19 +73,6 @@ public class RiskRuleConfigService {
|
|
|
long roomUpdateTime = roomInfo.getUpdateTime().getTime()/1000;
|
|
|
log.info("getFixedRulesForThisChat, roomId: {}, roomUpdateTime: {}", roomId, roomUpdateTime);
|
|
|
List<UserListFromAdPlatformModel.ChatMember> memberList = getUserListFromAdPlatform(chatId);
|
|
|
- memberList.forEach(member -> {
|
|
|
- if (member.getJoinTime() != null) {
|
|
|
- log.info(
|
|
|
- "MemberIDListDEBUG: " + member.getNickName() +
|
|
|
- ", joinTime: " + member.getJoinTime() +
|
|
|
- ", roomUpdateTime: " + roomUpdateTime +
|
|
|
- ", external_d: " + member.getExternalId() +
|
|
|
- ", isAfter: " + (member.getJoinTime() > roomUpdateTime)
|
|
|
- );
|
|
|
- } else {
|
|
|
- System.out.println("Member ID: " + member.getNickName() + ", joinTime: null");
|
|
|
- }
|
|
|
- });
|
|
|
List<UserListFromAdPlatformModel.ChatMember> distinctMembers = memberList.stream()
|
|
|
.collect(Collectors.toMap(
|
|
|
UserListFromAdPlatformModel.ChatMember::getExternalId, // key: externalId
|
|
@@ -136,7 +123,6 @@ public class RiskRuleConfigService {
|
|
|
log.info("checkIfOpenedForFixedRules, chatId: {}, anomalyUserRatio: {}", chatId, anomalyUserRatio);
|
|
|
if (anomalyUserRatio >= ANOMALY_USER_RATIO) {
|
|
|
log.info("checkIfOpenedForFixedRules, chatId: {}, anomalyUserRatio is high enough, opening rules", chatId);
|
|
|
-// return false;
|
|
|
ruleResult.isAbnormalRatioHighEnough = true;
|
|
|
} else {
|
|
|
log.info("checkIfOpenedForFixedRules, chatId: {}, anomalyUserRatio is not high enough, not opening rules", chatId);
|