From ed8c7a5effd0d423ce1118b680ecdca6fe732609 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期三, 02 七月 2025 16:43:13 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.11.205:9000/r/P2022036_Service

---
 src/main/java/com/lf/server/controller/all/SignController.java |   96 +++++++++++++++++++++++++++++++----------------
 1 files changed, 63 insertions(+), 33 deletions(-)

diff --git a/src/main/java/com/lf/server/controller/all/SignController.java b/src/main/java/com/lf/server/controller/all/SignController.java
index 2335ac5..a5abd72 100644
--- a/src/main/java/com/lf/server/controller/all/SignController.java
+++ b/src/main/java/com/lf/server/controller/all/SignController.java
@@ -1,14 +1,18 @@
 package com.lf.server.controller.all;
 
-import com.lf.server.aspect.SysLog;
+import com.lf.server.annotation.SysLog;
 import com.lf.server.config.PropertiesConfig;
 import com.lf.server.entity.all.ResponseMsg;
+import com.lf.server.entity.all.SettingData;
 import com.lf.server.entity.all.StaticData;
 import com.lf.server.entity.sys.LoginEntity;
+import com.lf.server.entity.sys.OperateEntity;
 import com.lf.server.entity.sys.TokenEntity;
 import com.lf.server.entity.sys.UserEntity;
 import com.lf.server.helper.*;
+import com.lf.server.service.all.ScheduleService;
 import com.lf.server.service.sys.LoginService;
+import com.lf.server.service.sys.OperateService;
 import com.lf.server.service.sys.TokenService;
 import com.lf.server.service.sys.UserService;
 import com.lf.server.service.all.SignService;
@@ -45,7 +49,13 @@
     SignService signService;
 
     @Autowired
+    private OperateService operateService;
+
+    @Autowired
     PropertiesConfig propertiesConfig;
+
+    @Autowired
+    private ScheduleService scheduleService;
 
     @SysLog()
     @ApiOperation(value = "璺宠浆棣栭〉")
@@ -86,7 +96,7 @@
                 }
             }
         } catch (Exception ex) {
-            //
+            log.error(ex.getMessage(), ex);
         }
 
         return mv;
@@ -104,7 +114,7 @@
                 mv.setViewName("monitor");
             }
         } catch (Exception ex) {
-            //
+            log.error(ex.getMessage(), ex);
         }
 
         return mv;
@@ -118,49 +128,42 @@
     @PostMapping(value = "/login", produces = "application/json; charset=UTF-8")
     public ResponseMsg<TokenEntity> login(@RequestBody UserEntity user, HttpServletRequest req, HttpServletResponse res) {
         try {
-            if (user == null) {
-                return fail("璇疯緭鍏ョ敤鎴峰悕鍜屽瘑鐮侊紒", null);
-            }
-            if (StringHelper.isEmpty(user.getUid())) {
-                return fail("鐢ㄦ埛鍚嶄笉鑳戒负绌猴紒", null);
-            }
-            if (StringHelper.isEmpty(user.getPwd())) {
-                return fail("瀵嗙爜涓嶈兘涓虹┖锛�", null);
+            String str = userService.validateLoginPwd(user);
+            if (str != null) {
+                return fail(str, null);
             }
 
-            // 瑙e瘑
-            String uid = RsaHelper.decrypt(user.getUid());
-            String pwd = RsaHelper.decrypt(user.getPwd());
-
-            UserEntity ue = userService.selectByUid(uid);
+            UserEntity ue = userService.selectByUid(user.getUid());
             if (ue == null) {
-                return fail("鐢ㄦ埛鍚嶄笉瀛樺湪锛�", null);
+                return fail("鐢ㄦ埛鍚嶄笉瀛樺湪", null);
             }
 
-            LoginEntity le = loginService.getNewLogin(ue.getId(), 1, req);
-            if (!Md5Helper.validatePassword(pwd, ue.getPwd())) {
-                le.setStatus(0);
-                le.setDescr("瀵嗙爜閿欒");
-                loginService.insertLogin(le);
-                return fail("瀵嗙爜涓嶆纭紒", null);
+            if (!Md5Helper.validatePassword(user.getPwd(), ue.getPwd())) {
+                tokenService.setPwdErrCache(ue);
+                return fail("瀵嗙爜涓嶆纭�", null);
             }
 
+            LoginEntity le = loginService.getNewLogin(ue.getId(), 1, 1, 1, req);
             Integer rows = loginService.insertLogin(le);
             if (rows == 0) {
-                return fail("鍒涘缓鐧诲綍鏃ュ織澶辫触锛�", null);
+                return fail("鍒涘缓鐧诲綍鏃ュ織澶辫触", null);
             }
 
-            TokenEntity te = tokenService.getNewToken(ue.getId(), req);
+            TokenEntity te = tokenService.getNewToken(ue, req);
             rows = tokenService.insertToken(te);
             if (rows == 0) {
-                return fail("鍒涘缓浠ょ墝淇℃伅澶辫触锛�", null);
+                return fail("鍒涘缓浠ょ墝澶辫触", null);
             }
 
+            te.setAutoLogOut(SettingData.AUTO_LOGOUT);
             tokenService.saveToken(ue, te, req, res);
 
-            return success(te);
+            int onlineUser = scheduleService.countOnlineUsers();
+            String msg = onlineUser >= SettingData.MAX_USER_LOGIN ? "璀﹀憡锛氱郴缁熷凡缁忓埌杈剧敤鎴疯闂噺鐨勪笂闄愶紒" : "";
+
+            return success(msg, te);
         } catch (Exception ex) {
-            return fail(ex.getMessage(), null);
+            return fail(ex, null);
         }
     }
 
@@ -178,7 +181,7 @@
 
             return success(flag ? "鐧诲嚭鎴愬姛" : "鐧诲嚭澶辫触", flag);
         } catch (Exception ex) {
-            return fail(ex.getMessage(), false);
+            return fail(ex, false);
         }
     }
 
@@ -191,13 +194,13 @@
             if (flag) {
                 // 鍐欐棩蹇�
                 UserEntity ue = tokenService.getCurrentUser(req);
-                LoginEntity le = loginService.getNewLogin(ue.getId(), 2, req);
+                LoginEntity le = loginService.getNewLogin(ue.getId(), 1, 2, 1, req);
                 Integer rows = loginService.insertLogin(le);
             }
 
             return success(flag ? "鐢ㄦ埛宸茬櫥褰�" : "鐢ㄦ埛鏈櫥褰�", flag);
         } catch (Exception ex) {
-            return fail(ex.getMessage(), false);
+            return fail(ex, false);
         }
     }
 
@@ -213,7 +216,7 @@
 
             return success(ue);
         } catch (Exception ex) {
-            return fail(ex.getMessage(), null);
+            return fail(ex, null);
         }
     }
 
@@ -226,7 +229,34 @@
 
             return success(key);
         } catch (Exception ex) {
-            return fail(ex.getMessage(), null);
+            return fail(ex, null);
+        }
+    }
+
+    @ApiOperation(value = "鎻掑叆鎿嶄綔鏃ュ織")
+    @GetMapping("/insertOpLog")
+    public ResponseMsg<Object> insertOpLog(String m1, String m2, HttpServletRequest req) {
+        try {
+            if (StringHelper.isEmpty(m1)) {
+                return fail("涓�绾фā鍧楀繀濉�", 0);
+            }
+
+            OperateEntity oe = new OperateEntity();
+            oe.setIp(WebHelper.getIpAddress(req));
+            oe.setModular1(m1);
+            oe.setModular2(m2);
+            oe.setType(0);
+
+            UserEntity ue = tokenService.getCurrentUser(req);
+            if (ue != null) {
+                oe.setUserid(ue.getId());
+            }
+
+            int rows = operateService.insertOperate(oe);
+
+            return success(rows);
+        } catch (Exception ex) {
+            return fail(ex, 0);
         }
     }
 }

--
Gitblit v1.9.3