From e16302f9d475c7cc4dd18c5abf1a23cb5502e362 Mon Sep 17 00:00:00 2001
From: whyclxw <810412026@qq.com>
Date: 星期三, 28 五月 2025 14:57:56 +0800
Subject: [PATCH] 密码验证加-

---
 src/main/java/com/whyc/controller/LoginController.java |   46 ++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 40 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/whyc/controller/LoginController.java b/src/main/java/com/whyc/controller/LoginController.java
index 75c2a05..4e0e42d 100644
--- a/src/main/java/com/whyc/controller/LoginController.java
+++ b/src/main/java/com/whyc/controller/LoginController.java
@@ -17,13 +17,16 @@
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
 import javax.swing.*;
 import java.io.IOException;
+import java.security.NoSuchAlgorithmException;
+import java.security.SecureRandom;
 
 @RequestMapping("login")
 @RestController
 @Api(tags = "鐧诲綍")
-public class LoginController {
+public class LoginController extends BaseController{
 
     @Autowired
     private LoginService service;
@@ -35,17 +38,27 @@
     public Response login(@RequestParam String userName, String password,HttpServletRequest request){
         return service.login(userName,password,request);
     }
+    @PostMapping("loginByRSA")
+    @ApiOperation(value ="鐧诲綍-璐﹀彿瀵嗙爜鍔犲瘑")
+    public Response loginByRSA(@RequestParam String userName, String password,String deliveredCode,HttpServletRequest request,Integer validCode){
+        return service.loginByRSA(userName,password,deliveredCode,request,validCode);
+    }
 
     @PostMapping("loginWithUKey")
     @ApiOperation(value ="鐧诲綍-uKey-TODO")
-    public Response loginWithUKey(@RequestParam String userName, String password,HttpServletRequest request){
-        return service.loginWithUKey(userName,password,request);
+    public Response loginWithUKey(@RequestParam String userName,
+                                  @RequestParam String password,
+                                  @RequestParam String uKeyId,
+                                  HttpServletRequest request){
+        return service.loginWithUKey(userName,password,uKeyId,request);
     }
 
     @GetMapping("/getRandom")
     @ApiOperation(value = "uKey鏍¢獙鍓嶇敓鎴愰殢鏈烘暟")
-    public Response getRandom(){
-        int randomNum = (int)((Math.random()*9+1)*10000);
+    public Response getRandom() throws NoSuchAlgorithmException {
+        //int randomNum = (int)((Math.random()*9+1)*10000);
+        SecureRandom random = SecureRandom.getInstance("SHA1PRNG");
+        int randomNum = random.nextInt(100000);
         ActionUtil.getSession().setAttribute("uKeyRandom",String.valueOf(randomNum));
         return new Response().set(1,randomNum);
     }
@@ -56,7 +69,8 @@
         //鍓嶇灏嗗瓧绗鏇挎崲鎴愪簡huodongwei,杩欓噷鍐嶈浆鍥炴潵
         signDTO.setInPath(signDTO.getInPath().replace("huodongwei","\\"));
         //閫氳繃uKeyId鑾峰彇鍏挜XY
-        UserInf userInf = userService.getPublicXYByUKeyId(signDTO.getUKeyId());
+        //UserInf userInf = userService.getPublicXYByUKeyId(signDTO.getUKeyId());
+        UserInf userInf = userService.getUserByUKeyId(signDTO.getUKeyId());
         //鑾峰彇涔嬪墠鐢熸垚鐨勯殢鏈烘暟
         String uKeyRandom = (String) ActionUtil.getSession().getAttribute("uKeyRandom");
         boolean b = com.whyc.softkey.jsyunew3.YtVerfiy(userInf.getUName(), uKeyRandom, signDTO.getPublicX(), signDTO.getPublicY(), signDTO.getSign(), signDTO.getInPath());
@@ -112,4 +126,24 @@
         response.setContentType("text/html;charset=utf-8");
         response.getWriter().write("鎮ㄦ湭鑾峰彇鍒版帴鍙g殑璋冪敤鎺堟潈,鎷掔粷璁块棶!");
     }
+
+    @PostMapping("/check")
+    @ApiOperation(value = "鍒ゆ柇鏄惁鏈夊彟涓�鍚屼竴璐﹀彿鐧诲綍鐨勭敤鎴�")
+    public Response check(){
+        Response response = service.checkUser();
+        //褰撳墠鐢ㄦ埛
+        HttpSession session = ActionUtil.getSession();
+        UserInf uinf=(UserInf) session.getAttribute("user");
+        if(response.getCode() == 1){
+            session.invalidate();		//娓呴櫎褰撳墠鐨剆ession;				//娓呴櫎session
+        }
+        return response;
+    }
+
+    @GetMapping("loginNoPass")
+    @ApiOperation(value = "鍏嶅瘑鐧诲綍")
+    public Response loginNoPass(@RequestParam int uId,HttpServletRequest request){
+        return service.loginNoPass(uId,request);
+    }
+
 }

--
Gitblit v1.9.1