From 780578502875aa0c339cb73f11b1e635df458c77 Mon Sep 17 00:00:00 2001 From: 李林 <z1292839451@163.com> Date: 星期三, 28 二月 2024 14:55:05 +0800 Subject: [PATCH] 系统调整 --- user-server/src/main/java/com/yuanchu/mom/controller/UserController.java | 54 ++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 40 insertions(+), 14 deletions(-) diff --git a/user-server/src/main/java/com/yuanchu/mom/controller/UserController.java b/user-server/src/main/java/com/yuanchu/mom/controller/UserController.java index c9a93bc..f0792ec 100644 --- a/user-server/src/main/java/com/yuanchu/mom/controller/UserController.java +++ b/user-server/src/main/java/com/yuanchu/mom/controller/UserController.java @@ -1,20 +1,25 @@ package com.yuanchu.mom.controller; -import cn.hutool.json.JSON; +import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.yuanchu.mom.annotation.ValueAuth; import com.yuanchu.mom.common.PrintChina; import com.yuanchu.mom.dto.UserPageDto; import com.yuanchu.mom.pojo.User; +import com.yuanchu.mom.service.PowerService; import com.yuanchu.mom.service.UserService; import com.yuanchu.mom.utils.JackSonUtil; import com.yuanchu.mom.utils.Jwt; import com.yuanchu.mom.utils.RedisUtil; +import com.yuanchu.mom.utils.ServletUtils; import com.yuanchu.mom.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.DigestUtils; import org.springframework.validation.annotation.Validated; @@ -26,32 +31,46 @@ @RequestMapping("/user") @RestController @Api(tags = "鐢ㄦ埛妯″潡") +@AllArgsConstructor public class UserController { - @Autowired - UserService userService; + private UserService userService; - @Autowired + private PowerService powerService; + private Jwt jwt; @ApiOperation(value = "鐧诲綍") @PostMapping("/enter") + @ValueAuth public Result login(String account, String password) { User user = userService.selectUserByPwd(account, password); - if (user == null) return Result.fail("鐧诲綍澶辫触"); - String jwtToken = jwt.createJwt(user.getName(), user.getId(), 60); - String jwtReToken = jwt.createJwt(user.getName(), user.getId(), 24 * 60); - RedisUtil.set("" + user.getId(), jwtToken, 60); - RedisUtil.set(user.getId() + "Re", jwtReToken, 24 * 60); - Map<String, String> map = new HashMap<>(); + if (user == null) return Result.fail("璐﹀彿瀵嗙爜閿欒鎴栬�呰处鍙峰凡琚仠鐢�"); + String jwtToken; + String jwtReToken; + if(RedisUtil.hasKey("" + user.getId())){ + jwtToken = RedisUtil.get("" + user.getId()) + ""; + }else{ + jwtToken = jwt.createJwt(user.getName(), user.getId(), 24 * 60); + RedisUtil.set("" + user.getId(), jwtToken, 24 * 60); + } + if(RedisUtil.hasKey(user.getId() + "Re")){ + jwtReToken = RedisUtil.get(user.getId() + "Re") + ""; + }else{ + jwtReToken = jwt.createJwt(user.getName(), user.getId(), 48 * 60); + RedisUtil.set(user.getId() + "Re", jwtReToken, 48 * 60); + } + Map<String, Object> map = new HashMap<>(); map.put("token", jwtToken); map.put("reToken", jwtReToken); map.put("name", user.getName()); + map.put("power", powerService.selectPowerByRoleId(user.getRoleId())); return Result.success("鐧诲綍鎴愬姛", map); } @ApiOperation(value = "token鍒锋柊") @PostMapping("/refresh") + @ValueAuth public Result refresh(String reToken) throws Exception { Map<String, String> map = new Jwt().readJWT(reToken); Map<String, String> maps = JackSonUtil.unmarshal(map.get("data"), Map.class); @@ -62,10 +81,10 @@ } else if (redisToken.equals(reToken)) { int id = Integer.parseInt(maps.get("id").replaceAll("\"", "")); String name = maps.get("name").replaceAll("\"", ""); - String jwtToken = jwt.createJwt(name, id, 60); - String jwtReToken = jwt.createJwt(name, id, 24 * 60); - RedisUtil.set("" + id, jwtToken, 60); - RedisUtil.set(id + "Re", jwtReToken, 24 * 60); + String jwtToken = jwt.createJwt(name, id, 24 * 60); + String jwtReToken = jwt.createJwt(name, id, 48 * 60); + RedisUtil.set("" + id, jwtToken, 24 * 60); + RedisUtil.set(id + "Re", jwtReToken, 48 * 60); Map<String, String> map1 = new HashMap<>(); map1.put("token", jwtToken); map1.put("reToken", jwtReToken); @@ -98,4 +117,11 @@ else user.setPassword(DigestUtils.md5DigestAsHex(user.getPassword().getBytes())); return Result.success(userService.addUser(user)); } + + @ApiOperation(value = "鑾峰彇鐢ㄦ埛淇℃伅鏋氫妇") + @GetMapping("/getUserMenu") + @ValueAuth + public Result<?> getUserMenu() { + return Result.success(userService.getUserMenu()); + } } -- Gitblit v1.9.3