update 还原在线日志解锁功能

This commit is contained in:
AprilWind
2026-03-18 13:30:57 +08:00
parent b4917a88b2
commit bcdbd7ec3a

View File

@@ -4,12 +4,15 @@ import cn.dev33.satoken.annotation.SaCheckPermission;
import com.baomidou.lock.annotation.Lock4j;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.PageResult;
import org.dromara.common.core.constant.CacheConstants;
import org.dromara.common.core.domain.R;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.redis.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.PageResult;
import org.dromara.common.redis.utils.RedisUtils;
import org.dromara.common.web.core.BaseController;
import org.dromara.system.domain.bo.SysLoginInfoBo;
import org.dromara.system.domain.vo.SysLoginInfoVo;
@@ -49,7 +52,7 @@ public class SysLoginInfoController extends BaseController {
* 导出系统访问记录列表。
*
* @param loginInfo 查询条件
* @param response HTTP 响应
* @param response HTTP 响应
*/
@Log(title = "登录日志", businessType = BusinessType.EXPORT)
@SaCheckPermission("monitor:logininfo:export")
@@ -86,4 +89,22 @@ public class SysLoginInfoController extends BaseController {
return R.ok();
}
/**
* 清除指定用户的登录失败锁定状态。
*
* @param userName 用户名
* @return 操作结果
*/
@SaCheckPermission("monitor:logininfo:unlock")
@Log(title = "账户解锁", businessType = BusinessType.OTHER)
@RepeatSubmit()
@GetMapping("/unlock/{userName}")
public R<Void> unlock(@PathVariable("userName") String userName) {
String loginName = CacheConstants.PWD_ERR_CNT_KEY + userName;
if (RedisUtils.hasKey(loginName)) {
RedisUtils.deleteObject(loginName);
}
return R.ok();
}
}