trigger: verify valid_volumes after runner restart
This commit is contained in:
@@ -0,0 +1,231 @@
|
||||
package com.freedom.admin.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.freedom.admin.base.BaseController;
|
||||
import com.freedom.admin.common.Result;
|
||||
import com.freedom.admin.config.MyException;
|
||||
import com.freedom.admin.entity.TSysUser;
|
||||
import com.freedom.admin.entity.TSysUserRole;
|
||||
import com.freedom.admin.mapper.TSysUserRoleMapper;
|
||||
import com.freedom.admin.service.TSysUserService;
|
||||
import com.freedom.admin.service.UserService;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.security.PermitAll;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author zhangjiaxun
|
||||
* @date 2021/2/2 13:41
|
||||
* @description 控制层-用户表
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("sys-user")
|
||||
@Log4j2
|
||||
public class TSysUserController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private TSysUserService tSysUserService;
|
||||
|
||||
@Autowired
|
||||
private UserService userService;
|
||||
|
||||
@Autowired
|
||||
private TSysUserRoleMapper tSysUserRoleMapper;
|
||||
|
||||
/**
|
||||
* 用户注册
|
||||
*
|
||||
* @param sysUser 用户信息
|
||||
* @return Result 响应结果
|
||||
* */
|
||||
@RequestMapping("register")
|
||||
@PermitAll
|
||||
public Result<TSysUser> register(TSysUser sysUser){
|
||||
try {
|
||||
QueryWrapper<TSysUser> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("del_flag",0);
|
||||
queryWrapper.eq("username", sysUser.getUsername());
|
||||
long count = tSysUserService.count(queryWrapper);
|
||||
if (count > 0){
|
||||
return Result.error().message("账号已存在!");
|
||||
}
|
||||
boolean register = tSysUserService.register(sysUser);
|
||||
return Result.ok().setData(register);
|
||||
} catch (MyException e) {
|
||||
return Result.error().code(e.getCode()).message(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户信息
|
||||
* */
|
||||
@RequestMapping("getUserInfo")
|
||||
@PreAuthorize("hasAnyAuthority('user:getUserInfo')")
|
||||
public Result<TSysUser> getUserInfo(){
|
||||
TSysUser user = getUser();
|
||||
return Result.ok().setData(user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前登录用户个人中心信息
|
||||
* */
|
||||
@RequestMapping("getPersonalInfo")
|
||||
@PermitAll
|
||||
public Result<TSysUser> getPersonalInfo(){
|
||||
TSysUser user = getUser();
|
||||
if (user == null) {
|
||||
return Result.error().message("用户未登录");
|
||||
}
|
||||
user.setPassword(null);
|
||||
return Result.ok().setData(user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改密码
|
||||
* */
|
||||
@RequestMapping("updatePassword")
|
||||
@PermitAll
|
||||
public Result updatePassword(TSysUser tSysUser, String oldPassword, String newPassword){
|
||||
try {
|
||||
if (StringUtils.isBlank(oldPassword) || StringUtils.isBlank(newPassword)) {
|
||||
return Result.error().message("旧密码和新密码不能为空");
|
||||
}
|
||||
QueryWrapper<TSysUser> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("del_flag",0);
|
||||
queryWrapper.eq("id", tSysUser.getId());
|
||||
TSysUser user = tSysUserService.getOne(queryWrapper);
|
||||
if (user == null) {
|
||||
return Result.error().message("用户不存在");
|
||||
}
|
||||
BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder();
|
||||
if (!bCryptPasswordEncoder.matches(oldPassword, user.getPassword())) {
|
||||
return Result.error().code(419).message("旧密码不正确");
|
||||
}
|
||||
user.setPassword(bCryptPasswordEncoder.encode(newPassword));
|
||||
user.setEncodeType("BCrypt");
|
||||
tSysUserService.updateById(user);
|
||||
return Result.ok();
|
||||
} catch (Exception e) {
|
||||
return Result.error().message("修改密码失败");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 重置密码
|
||||
* */
|
||||
@RequestMapping("resetPassword")
|
||||
@PermitAll
|
||||
public Result resetPassword(TSysUser tSysUser){
|
||||
try {
|
||||
TSysUser user = new TSysUser();
|
||||
user.setId(tSysUser.getId());
|
||||
BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder();
|
||||
user.setPassword(bCryptPasswordEncoder.encode("123456"));
|
||||
user.setEncodeType("BCrypt");
|
||||
tSysUserService.updateById(user);
|
||||
return Result.ok().message("密码已重置为 123456");
|
||||
} catch (Exception e) {
|
||||
return Result.error().message("重置密码失败");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户数据列表
|
||||
* */
|
||||
@RequestMapping("findPageList")
|
||||
@PermitAll
|
||||
public Result<TSysUser> findPageList(@Param("pageNum") long pageNum,
|
||||
@Param("pageSize") long pageSize,
|
||||
TSysUser tSysUser){
|
||||
QueryWrapper<TSysUser> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("del_flag",0);
|
||||
queryWrapper.eq(StringUtils.isNotBlank(tSysUser.getUsername()),"username", tSysUser.getUsername());
|
||||
Page<TSysUser> page = tSysUserService.page(new Page<>(pageNum,pageSize), queryWrapper);
|
||||
// 填充每个用户的角色ID,用于编辑回显
|
||||
if (page.getRecords() != null) {
|
||||
for (TSysUser user : page.getRecords()) {
|
||||
QueryWrapper<TSysUserRole> roleWrapper = new QueryWrapper<>();
|
||||
roleWrapper.eq("user_id", user.getId());
|
||||
List<TSysUserRole> userRoleList = tSysUserRoleMapper.selectList(roleWrapper);
|
||||
if (userRoleList != null && !userRoleList.isEmpty()) {
|
||||
List<String> roleIdList = new ArrayList<>();
|
||||
for (TSysUserRole ur : userRoleList) {
|
||||
roleIdList.add(String.valueOf(ur.getRoleId()));
|
||||
}
|
||||
user.setRoleIds(String.join(",", roleIdList));
|
||||
}
|
||||
}
|
||||
}
|
||||
return Result.ok().setData(page);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户列表数据
|
||||
* */
|
||||
@RequestMapping("add")
|
||||
@PermitAll
|
||||
public Result<TSysUser> add(TSysUser tSysUser,String userRoleStr){
|
||||
try {
|
||||
QueryWrapper<TSysUser> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("del_flag",0);
|
||||
queryWrapper.eq("username", tSysUser.getUsername());
|
||||
long count = tSysUserService.count(queryWrapper);
|
||||
if (count > 0){
|
||||
return Result.error().message("账号已存在!");
|
||||
}
|
||||
boolean save = tSysUserService.save(tSysUser, userRoleStr, getUsername());
|
||||
return Result.ok().setData(save);
|
||||
} catch (MyException e) {
|
||||
return Result.error().code(e.getCode()).message(e.getMessage());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@RequestMapping("update")
|
||||
@PermitAll
|
||||
public Result update(TSysUser tSysUser,String userRoleStr){
|
||||
try {
|
||||
tSysUserService.updateById(tSysUser);
|
||||
// 更新用户角色关联
|
||||
if (StringUtils.isNotBlank(userRoleStr)) {
|
||||
QueryWrapper<TSysUserRole> delWrapper = new QueryWrapper<>();
|
||||
delWrapper.eq("user_id", tSysUser.getId());
|
||||
tSysUserRoleMapper.delete(delWrapper);
|
||||
List<TSysUserRole> roleList = com.alibaba.fastjson.JSONArray.parseArray(userRoleStr, TSysUserRole.class);
|
||||
if (roleList != null && !roleList.isEmpty()) {
|
||||
for (TSysUserRole ur : roleList) {
|
||||
ur.setUserId(tSysUser.getId());
|
||||
ur.setCreateBy(getUsername());
|
||||
ur.setCreateTime(new java.util.Date());
|
||||
tSysUserRoleMapper.insert(ur);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
return Result.error();
|
||||
}
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
@RequestMapping("remove")
|
||||
@PermitAll
|
||||
public Result remove(TSysUser tSysUser){
|
||||
try {
|
||||
tSysUserService.removeById(tSysUser.getId());
|
||||
} catch (Exception e) {
|
||||
return Result.error();
|
||||
}
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user