From f9ddeb748da46dc7341b7608f64435695601f4b6 Mon Sep 17 00:00:00 2001
From: sgj <1442489573@qq.com>
Date: 星期三, 01 四月 2026 11:31:05 +0800
Subject: [PATCH] 登录页,对密码进行加密

---
 fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/SysLoginController.java |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 55 insertions(+), 4 deletions(-)

diff --git a/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/SysLoginController.java b/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/SysLoginController.java
index 876ffa5..7ce854d 100644
--- a/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/SysLoginController.java
+++ b/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/SysLoginController.java
@@ -1,5 +1,7 @@
 package com.fzzy.sys.controller;
 
+import com.fzzy.igds.utils.Base64Util;
+import com.fzzy.sys.LoginCheckManager;
 import com.fzzy.sys.service.LoginService;
 import com.ruoyi.common.config.FrameworkConfig;
 import com.ruoyi.common.core.controller.BaseController;
@@ -12,6 +14,7 @@
 import com.ruoyi.framework.shiro.token.PhoneToken;
 import com.ruoyi.framework.web.service.ConfigService;
 import com.ruoyi.system.service.ISysUserService;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.shiro.SecurityUtils;
 import org.apache.shiro.authc.AuthenticationException;
 import org.apache.shiro.authc.UsernamePasswordToken;
@@ -33,6 +36,7 @@
  *
  * @author ruoyi
  */
+@Slf4j
 @Controller
 public class SysLoginController extends BaseController {
     /**
@@ -49,6 +53,9 @@
     @Resource
     private RedisCache redisCache;
 
+    @Resource
+    private LoginCheckManager loginCheckManager;
+
     @GetMapping("/login")
     public String login(HttpServletRequest request, HttpServletResponse response, ModelMap mmap) {
         // 濡傛灉鏄疉jax璇锋眰锛岃繑鍥濲son瀛楃涓层��
@@ -64,19 +71,63 @@
         return "login";
     }
 
+    /**
+     * 鐧诲綍鏂规硶 ---绯荤粺鑷甫
+     *
+     * @param username 鐢ㄦ埛鍚�
+     * @param password 瀵嗙爜
+     * @param rememberMe 璁颁綇鎴�
+     * @return 缁撴灉
+
+     @PostMapping("/login")
+     @ResponseBody
+     public AjaxResult ajaxLogin(String username, String password, Boolean rememberMe) {
+     UsernamePasswordToken token = new UsernamePasswordToken(username, password, rememberMe);
+     Subject subject = SecurityUtils.getSubject();
+
+     try {
+     subject.login(token);
+     return success();
+     } catch (AuthenticationException e) {
+     log.error("鐧诲綍寮傚父", e);
+     String msg = "鐢ㄦ埛鍚嶆垨鑰呭瘑鐮侀敊璇紝璇锋牳瀵�";
+     return error(msg);
+     }
+     }
+     */
+    /**
+     * 鐧诲綍鏂规硶 ---鑷畾涔夎皟鏁�
+     *
+     * @param username 鐢ㄦ埛鍚�
+     * @param password 瀵嗙爜
+     * @param rememberMe 璁颁綇鎴�
+     * @return 缁撴灉
+     */
     @PostMapping("/login")
     @ResponseBody
     public AjaxResult ajaxLogin(String username, String password, Boolean rememberMe) {
+        if (StringUtils.isNotBlank(password)){
+            password=Base64Util.decodeBase64Password(password);
+        }
+
         UsernamePasswordToken token = new UsernamePasswordToken(username, password, rememberMe);
         Subject subject = SecurityUtils.getSubject();
         try {
             subject.login(token);
+            //娓呴櫎閿欒淇℃伅
+            loginCheckManager.clearCheckError(username);
             return success();
         } catch (AuthenticationException e) {
-            String msg = "璐﹀彿銆佸瘑鐮佹垨楠岃瘉鐮侀敊璇紝璇烽噸鏂拌緭鍏�";
-//            if (StringUtils.isNotEmpty(e.getMessage())) {
-//                msg = e.getMessage();
-//            }
+
+            //鏍规嵁鑷畾涔夋崲缂撳瓨鍒ゆ柇淇℃伅
+            String errorMsg = loginCheckManager.getCheckError(username);
+            if(StringUtils.isNotBlank(errorMsg)){
+                //loginCheckManager.clearCheckError(username);
+                return error(errorMsg);
+            }
+
+            log.error("鐢ㄦ埛[" + username + "]鐧诲綍寮傚父,{}", e.getMessage());
+            String msg = "鐧诲綍寮傚父锛屼俊鎭細"+e.getMessage();
             return error(msg);
         }
     }

--
Gitblit v1.9.3