From 56dfe0d4bf81262622a1919cceb2b039fd356209 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 03 九月 2024 16:52:49 +0800
Subject: [PATCH] 代码提交 bug解决

---
 ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java |   45 ++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 44 insertions(+), 1 deletions(-)

diff --git a/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java b/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java
index b3e65d0..2a273e6 100644
--- a/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java
+++ b/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java
@@ -91,8 +91,38 @@
         // 获取登录token
         return R.ok(map);
     }
+    @GetMapping("loginDevice")
+    @ApiOperation(value = "扫描设备-用户登录")
+    public R<?> loginDevice(LoginBody form)
+    {
+        // 用户登录
+        LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword(),form.getSheBei());
+        SysUser sysUser1 = userInfo.getSysUser();
 
-    @DeleteMapping("logout")
+
+        HashMap<String, Object> map = new HashMap<>();
+        map.put("token",tokenService.createToken1(userInfo));
+        List<SysRole> roles = sysUser1.getRoles();
+        if (Objects.equals("00", sysUser1.getUserType())) {
+            if (CollectionUtils.isEmpty(roles)) {
+                return R.fail("请关联角色!");
+            }
+            map.put("roleName", roles.get(0).getRoleName());
+        }
+
+        map.put("info",userInfo);
+        map.put("userType", sysUser1.getUserType());
+        // 修改用户最后登录时间
+        SysUser sysUser = new SysUser();
+        sysUser.setUserId(sysUser1.getUserId());
+        sysUser.setLoginDate(new Date());
+        System.out.println("修改用户登录时间"+sysUser);
+        userClient.updateSysUser(sysUser);
+        // 获取登录token
+        return R.ok(map);
+    }
+
+    @PostMapping("logout")
     @ApiOperation(value = "管理后台-用户登出")
     public R<?> logout(HttpServletRequest request)
     {
@@ -107,6 +137,19 @@
         }
         return R.ok();
     }
+    @PostMapping("logoutDevice")
+    @ApiOperation(value = "扫描设备-用户登出")
+    public R<?> logoutDevice(HttpServletRequest request)
+    {
+        String token = SecurityUtils.getToken(request);
+        if (StringUtils.isNotEmpty(token))
+        {
+            String username = JwtUtils.getUserName(token);
+            // 删除用户缓存记录
+            AuthUtil.logoutByTokenDevice(token);
+        }
+        return R.ok();
+    }
 
     @PostMapping("refresh")
     @ApiOperation(value = "管理后台-刷新令牌有效期")

--
Gitblit v1.7.1