From d0f8732a1e4c275301b53c49ee8f00727651491e Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 27 九月 2024 19:49:34 +0800
Subject: [PATCH] 修改接口

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java |   81 ++++++++++++++++++++++++++++++++++++++--
 1 files changed, 77 insertions(+), 4 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
index bb5f7fc..f233a45 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
@@ -1,9 +1,6 @@
 package com.ruoyi.web.controller.system;
 
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
 import java.util.concurrent.TimeUnit;
 
 import com.ruoyi.common.core.domain.R;
@@ -12,6 +9,7 @@
 import com.ruoyi.common.core.redis.RedisCache;
 import com.ruoyi.framework.web.service.TokenService;
 import com.ruoyi.system.service.ISysRoleService;
+import com.ruoyi.system.service.ISysUserService;
 import com.ruoyi.web.controller.tool.MsgUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -53,7 +51,50 @@
     @Autowired
     private ISysRoleService roleService;
     @Autowired
+    private ISysUserService userService;
+    @Autowired
     private MsgUtils msgUtils;
+
+    /**
+     * 账号密码登录
+     *
+     * @param loginBody 登录信息
+     * @return 结果
+     */
+    @ApiOperation(value = "平台账号密码登录",notes = "平台账号密码登录")
+    @PostMapping("/platformLogin")
+    public AjaxResult<Map<String,Object>> platformLogin(@RequestBody LoginBody loginBody)
+    {
+
+        SysUser sysUser = userService.selectUserByUserName(loginBody.getUsername());
+        if(Objects.isNull(sysUser)){
+            return AjaxResult.error("用户不存在!");
+        }
+        if(sysUser.getRoleType() != 1){
+            return AjaxResult.error("商家账号无权限登录");
+        }
+
+
+        Map<String,Object> map = new HashMap<>();
+        // 生成令牌
+        LoginUser loginUser = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(),
+                loginBody.getUuid());
+        map.put(Constants.TOKEN, tokenService.createToken(loginUser));
+        List<SysRole> roles = loginUser.getUser().getRoles();
+        if(CollectionUtils.isEmpty(roles)){
+            return AjaxResult.error("请关联角色!");
+        }
+        if(roles.get(0).getStatus() == 1){
+            return AjaxResult.error("该账号角色已被禁用!");
+        }
+
+        List<SysMenu> menus = roleService.roleInfoFromUserId(loginUser.getUserId());
+
+        map.put("menus",menus);
+        map.put("roleName",roles.get(0).getRoleName());
+        map.put("userInfo",loginUser);
+        return AjaxResult.success(map);
+    }
 
     /**
      * 账号密码登录
@@ -87,6 +128,38 @@
     }
 
     /**
+     * 商家跳转登录
+     *
+     * @param loginBody 登录信息
+     * @return 结果
+     */
+    @ApiOperation(value = "商家跳转登录",notes = "商家跳转登录")
+    @PostMapping("/reLogin")
+    public AjaxResult<Map<String,Object>> reLogin(@RequestBody LoginBody loginBody)
+    {
+        Map<String,Object> map = new HashMap<>();
+        loginBody.setPassword("123456");
+        // 生成令牌
+        LoginUser loginUser = loginService.reLogin(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(),
+                loginBody.getUuid());
+        map.put(Constants.TOKEN, tokenService.createToken(loginUser));
+        List<SysRole> roles = loginUser.getUser().getRoles();
+        if(CollectionUtils.isEmpty(roles)){
+            return AjaxResult.error("请关联角色!");
+        }
+        if(roles.get(0).getStatus() == 1){
+            return AjaxResult.error("该账号角色已被禁用!");
+        }
+
+        List<SysMenu> menus = roleService.roleInfoFromUserId(loginUser.getUserId());
+
+        map.put("menus",menus);
+        map.put("roleName",roles.get(0).getRoleName());
+        map.put("userInfo",loginUser);
+        return AjaxResult.success(map);
+    }
+
+    /**
      * 账号密码登录
      *
      * @param loginBody 登录信息

--
Gitblit v1.7.1