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 |  116 ++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 73 insertions(+), 43 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 c950e57..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,16 +1,20 @@
 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.UsersEntity;
+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.UsersService;
+import com.lf.server.service.sys.UserService;
 import com.lf.server.service.all.SignService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
@@ -33,7 +37,7 @@
 @RequestMapping("/sign")
 public class SignController extends BaseController {
     @Autowired
-    UsersService userService;
+    UserService userService;
 
     @Autowired
     LoginService loginService;
@@ -45,7 +49,13 @@
     SignService signService;
 
     @Autowired
+    private OperateService operateService;
+
+    @Autowired
     PropertiesConfig propertiesConfig;
+
+    @Autowired
+    private ScheduleService scheduleService;
 
     @SysLog()
     @ApiOperation(value = "璺宠浆棣栭〉")
@@ -53,7 +63,7 @@
     public ModelAndView toIndex(ModelAndView mv, HttpServletRequest req) {
         mv.setViewName("index");
 
-        UsersEntity ue = tokenService.getCurrentUser(req);
+        UserEntity ue = tokenService.getCurrentUser(req);
         if (ue != null) {
             mv.addObject("msg", "Hello " + ue.getUname() + " !");
         }
@@ -78,7 +88,7 @@
         mv.setViewName("druid");
 
         try {
-            UsersEntity ue = tokenService.getCurrentUser(req);
+            UserEntity ue = tokenService.getCurrentUser(req);
             if (ue != null) {
                 String sessionId = WebHelper.getCookieByKey(StaticData.DRUID_COOKIE_KEY, req);
                 if (StringHelper.isNull(sessionId)) {
@@ -86,7 +96,7 @@
                 }
             }
         } catch (Exception ex) {
-            //
+            log.error(ex.getMessage(), ex);
         }
 
         return mv;
@@ -99,12 +109,12 @@
         try {
             mv.setViewName("redirect:/toLogin");
 
-            UsersEntity ue = tokenService.getCurrentUser(req);
+            UserEntity ue = tokenService.getCurrentUser(req);
             if (ue != null) {
                 mv.setViewName("monitor");
             }
         } catch (Exception ex) {
-            //
+            log.error(ex.getMessage(), ex);
         }
 
         return mv;
@@ -116,51 +126,44 @@
             @ApiImplicitParam(name = "user", value = "鐢ㄦ埗鍚�", dataType = "UsersEntity", paramType = "body", example = "")
     })
     @PostMapping(value = "/login", produces = "application/json; charset=UTF-8")
-    public ResponseMsg<TokenEntity> login(@RequestBody UsersEntity user, HttpServletRequest req, HttpServletResponse res) {
+    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());
-
-            UsersEntity 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);
         }
     }
 
@@ -190,30 +193,30 @@
             Boolean flag = tokenService.isLogin(req, res);
             if (flag) {
                 // 鍐欐棩蹇�
-                UsersEntity ue = tokenService.getCurrentUser(req);
-                LoginEntity le = loginService.getNewLogin(ue.getId(), 2, req);
+                UserEntity ue = tokenService.getCurrentUser(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);
         }
     }
 
     @SysLog()
     @ApiOperation(value = "鑾峰彇褰撳墠鐢ㄦ埛")
     @GetMapping("/getCurrentUser")
-    public ResponseMsg<UsersEntity> getCurrentUser(HttpServletRequest req) {
+    public ResponseMsg<UserEntity> getCurrentUser(HttpServletRequest req) {
         try {
-            UsersEntity ue = tokenService.getCurrentUser(req);
+            UserEntity ue = tokenService.getCurrentUser(req);
             if (ue == null) {
                 return fail("娌℃湁鎵惧埌", null);
             }
 
             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