浏览代码

增加调试信息

刘立冬 1 月之前
父节点
当前提交
5ffd05c2aa

+ 18 - 9
risk-control-core/src/main/java/com/tzld/piaoquan/risk/control/service/impl/RiskRuleConfigService.java

@@ -59,7 +59,7 @@ public class RiskRuleConfigService {
 
 
     //防止误踢,只有满足存在五个正常群人数才会生效
-    public FixedRuleResult getFixedRulesForThisChat(String chatId, String roomId) throws ParseException {
+    public FixedRuleResult getFixedRulesForThisChat(String chatId, String roomId) {
         FixedRuleResult ruleResult = new FixedRuleResult();
         WorkWechatRoomInfoExample example = new WorkWechatRoomInfoExample();
         example.createCriteria().andRoomIdEqualTo(roomId);
@@ -69,19 +69,26 @@ public class RiskRuleConfigService {
             return ruleResult;
         }
         WorkWechatRoomInfo roomInfo = examples.get(0);
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        sdf.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai")); // 设置为UTC+8
-        Date date = sdf.parse(roomInfo.getUpdateTime().toString());
-        long roomUpdateTime = date.getTime() / 1000; // 正确的UTC时间戳
-//        Instant instant = roomInfo.getUpdateTime().toInstant(); // 转为UTC时间
-//        long roomUpdateTime = instant.getEpochSecond(); // 直接获取秒级时间戳
-//        long roomUpdateTime = roomInfo.getUpdateTime().getTime()/1000;
+        long roomUpdateTime =  roomInfo.getUpdateTime().getTime()/1000;
         log.info("getFixedRulesForThisChat, roomId: {}, roomUpdateTime: {}", roomId, roomUpdateTime);
         List<UserListFromAdPlatformModel.ChatMember> memberList = getUserListFromAdPlatform(chatId);
         if (memberList == null || memberList.isEmpty()) {
             log.error("checkIfOpenedForFixedRules, memberList is empty for chatId: {}", chatId);
             return ruleResult;
         } else {
+            // 打印所有成员的joinTime和roomUpdateTime用于调试
+            memberList.forEach(member -> {
+                if (member.getJoinTime() != null) {
+                    log.info(
+                            "Member ID: " + member.getNickName() +
+                                    ", joinTime: " + member.getJoinTime() +
+                                    ", roomUpdateTime: " + roomUpdateTime +
+                                    ", isAfter: " + (member.getJoinTime() > roomUpdateTime)
+                    );
+                } else {
+                    System.out.println("Member ID: " + member.getNickName() + ", joinTime: null");
+                }
+            });
             //开关开启后的加入的数量
             int size = (int) memberList.stream()
                     .filter(member -> member.getJoinTime() != null && member.getJoinTime() > roomUpdateTime)
@@ -93,8 +100,10 @@ public class RiskRuleConfigService {
                     .count();
             ruleResult.normalCount = normalSize;
             ruleResult.abnormalCount = size - normalSize;
+            log.info("checkIfOpenedForFixedRules, chatId: {}, size: {}, normalSize: {},total size:{}", chatId, size, normalSize);
+
             if(normalSize >= USER_COUNT_THRESHOLD) {//大于等于3才生效
-                log.info("checkIfOpenedForFixedRules, chatId: {}, size: {}, normalSize: {}", chatId, size, normalSize);
+                log.info("checkIfOpenedForFixedRules, size: {}, normalSize: {}", size, normalSize);
                 //如果群成员大于30人,才判断异常用户比例
                 ruleResult.isNormalCountEnough = true;
                 if (size >= USER_COUNT_THRESHOLD_FOR_ANOMALY_USER_RATIO) {