GetAdminTOken.java 1.4 KB
package com.ruoyi.test;

import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.framework.web.service.SysPermissionService;
import com.ruoyi.framework.web.service.TokenService;
import com.ruoyi.system.mapper.SysUserMapper;
import com.ruoyi.system.service.ISysUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/ceshi")
@Api(tags = "测试接口")
public class GetAdminTOken {

    @Autowired
    private ISysUserService userService;


    @Autowired
    private TokenService tokenService;

    @Autowired
    private SysPermissionService permissionService;


    @GetMapping("/getToken")
    @ApiOperation("创建永久token")
    public String getToken(Long userId){
        SysUser user = userService.selectUserById(userId);
        LoginUser loginUser = new LoginUser(user.getUserId(), user.getDeptId(), user, permissionService.getMenuPermission(user));
        // 每个用户分配一个固定token
        user.setRemark(tokenService.createToken(loginUser));
        userService.updateUser(user);
        return user.getRemark();
    }
}