新增登录次数

liweidong
ShiJiuZhou 2 months ago
parent 3e93ec77dc
commit 26d2bee4f5
  1. 8
      blade-auth/src/main/java/org/springblade/auth/handler/BladeAuthorizationHandler.java
  2. 5
      blade-ops/blade-log/src/main/java/org/springblade/core/log/pojo/dto/UserLoginStatsDTO.java
  3. 4
      blade-ops/blade-log/src/main/java/org/springblade/core/log/service/impl/LogApiServiceImpl.java

@ -172,6 +172,14 @@ public class BladeAuthorizationHandler extends AbstractAuthorizationHandler {
// 4. 更新最后一次登录时间
long lastLoginTime = System.currentTimeMillis();
hashOps.put(key, "lastLoginTime", lastLoginTime);
// 新增:登录次数递增
Object countObj = hashOps.get(key, "loginCount");
long loginCount = 1;
if (countObj != null) {
loginCount = (Long) countObj + 1;
}
hashOps.put(key, "loginCount", loginCount);
}
/**
* 认证失败回调

@ -36,4 +36,9 @@ public class UserLoginStatsDTO {
* 最后一次登录时间
*/
private Long lastLoginTime;
/**
* 登录次数
*/
private Long loginCount;
}

@ -63,6 +63,7 @@ public class LogApiServiceImpl extends ServiceImpl<LogApiMapper, LogApi> impleme
String userId = key.replace("user:login:", "");
String currentUsername = (String) hashOps.get(key, "username");
String currentDeptId = (String) hashOps.get(key, "deptId");
Long loginCount = (Long) hashOps.get(key, "loginCount");
// 过滤条件:根据 username 和 deptId 筛选
boolean matchUsername = username == null || currentUsername != null && currentUsername.contains(username);
boolean matchDept = deptId == null || currentDeptId != null && currentDeptId.equals(deptId);
@ -75,7 +76,8 @@ public class LogApiServiceImpl extends ServiceImpl<LogApiMapper, LogApi> impleme
currentUsername,
loginIp,
currentDeptId,
lastLoginTime
lastLoginTime,
loginCount
));
}
}

Loading…
Cancel
Save