From f32813951f368b2fd5b97bc9bb25689c53ccf3bb Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期五, 29 四月 2022 11:35:51 +0800
Subject: [PATCH] update 优化 redis 序列化 使用系统自带json工具 全局统一
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java | 68 +++++++++++++++++++++++++--------
1 files changed, 51 insertions(+), 17 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 6322ed5..facf6ce 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
@@ -3,27 +3,27 @@
import cn.dev33.satoken.exception.NotLoginException;
import cn.dev33.satoken.stp.StpUtil;
import com.ruoyi.common.constant.Constants;
-import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.domain.entity.SysMenu;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginBody;
-import com.ruoyi.common.core.service.UserService;
-import com.ruoyi.common.utils.LoginUtils;
-import com.ruoyi.common.utils.spring.SpringUtils;
+import com.ruoyi.common.core.domain.model.SmsLoginBody;
+import com.ruoyi.common.helper.LoginHelper;
import com.ruoyi.system.domain.vo.RouterVo;
import com.ruoyi.system.service.ISysMenuService;
+import com.ruoyi.system.service.ISysUserService;
import com.ruoyi.system.service.SysLoginService;
import com.ruoyi.system.service.SysPermissionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
+import javax.validation.constraints.NotBlank;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -36,12 +36,13 @@
*/
@Validated
@Api(value = "鐧诲綍楠岃瘉鎺у埗鍣�", tags = {"鐧诲綍楠岃瘉绠$悊"})
-@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RequiredArgsConstructor
@RestController
public class SysLoginController {
private final SysLoginService loginService;
private final ISysMenuService menuService;
+ private final ISysUserService userService;
private final SysPermissionService permissionService;
/**
@@ -52,23 +53,56 @@
*/
@ApiOperation("鐧诲綍鏂规硶")
@PostMapping("/login")
- public AjaxResult<Map<String, Object>> login(@RequestBody LoginBody loginBody) {
+ public R<Map<String, Object>> login(@Validated @RequestBody LoginBody loginBody) {
Map<String, Object> ajax = new HashMap<>();
// 鐢熸垚浠ょ墝
String token = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(),
- loginBody.getUuid());
+ loginBody.getUuid());
ajax.put(Constants.TOKEN, token);
- return AjaxResult.success(ajax);
+ return R.ok(ajax);
+ }
+
+ /**
+ * 鐭俊鐧诲綍(绀轰緥)
+ *
+ * @param smsLoginBody 鐧诲綍淇℃伅
+ * @return 缁撴灉
+ */
+ @ApiOperation("鐭俊鐧诲綍(绀轰緥)")
+ @PostMapping("/smsLogin")
+ public R<Map<String, Object>> smsLogin(@Validated @RequestBody SmsLoginBody smsLoginBody) {
+ Map<String, Object> ajax = new HashMap<>();
+ // 鐢熸垚浠ょ墝
+ String token = loginService.smsLogin(smsLoginBody.getPhonenumber(), smsLoginBody.getSmsCode());
+ ajax.put(Constants.TOKEN, token);
+ return R.ok(ajax);
+ }
+
+ /**
+ * 灏忕▼搴忕櫥褰�(绀轰緥)
+ *
+ * @param xcxCode 灏忕▼搴廲ode
+ * @return 缁撴灉
+ */
+ @ApiOperation("灏忕▼搴忕櫥褰�(绀轰緥)")
+ @PostMapping("/xcxLogin")
+ public R<Map<String, Object>> xcxLogin(@NotBlank(message = "{xcx.code.not.blank}") String xcxCode) {
+ Map<String, Object> ajax = new HashMap<>();
+ // 鐢熸垚浠ょ墝
+ String token = loginService.xcxLogin(xcxCode);
+ ajax.put(Constants.TOKEN, token);
+ return R.ok(ajax);
}
@ApiOperation("鐧诲嚭鏂规硶")
@PostMapping("/logout")
- public AjaxResult<Void> logout(){
+ public R<Void> logout() {
try {
StpUtil.logout();
+ loginService.logout(LoginHelper.getUsername());
} catch (NotLoginException e) {
}
- return AjaxResult.success("閫�鍑烘垚鍔�");
+ return R.ok("閫�鍑烘垚鍔�");
}
/**
@@ -78,8 +112,8 @@
*/
@ApiOperation("鑾峰彇鐢ㄦ埛淇℃伅")
@GetMapping("getInfo")
- public AjaxResult<Map<String, Object>> getInfo() {
- SysUser user = SpringUtils.getBean(UserService.class).selectUserById(LoginUtils.getUserId());
+ public R<Map<String, Object>> getInfo() {
+ SysUser user = userService.selectUserById(LoginHelper.getUserId());
// 瑙掕壊闆嗗悎
Set<String> roles = permissionService.getRolePermission(user);
// 鏉冮檺闆嗗悎
@@ -88,7 +122,7 @@
ajax.put("user", user);
ajax.put("roles", roles);
ajax.put("permissions", permissions);
- return AjaxResult.success(ajax);
+ return R.ok(ajax);
}
/**
@@ -98,9 +132,9 @@
*/
@ApiOperation("鑾峰彇璺敱淇℃伅")
@GetMapping("getRouters")
- public AjaxResult<List<RouterVo>> getRouters() {
- Long userId = LoginUtils.getUserId();
+ public R<List<RouterVo>> getRouters() {
+ Long userId = LoginHelper.getUserId();
List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId);
- return AjaxResult.success(menuService.buildMenus(menus));
+ return R.ok(menuService.buildMenus(menus));
}
}
--
Gitblit v1.9.3