|
@@ -1,23 +1,27 @@
|
|
|
package com.usky.controller.sys;
|
|
|
|
|
|
+import com.usky.entity.sys.SysRoleDTO;
|
|
|
import com.usky.entity.sys.SysUserDTO;
|
|
|
+import com.usky.entity.sys.vo.SysDeptVO;
|
|
|
+import com.usky.entity.sys.vo.SysRoleVO;
|
|
|
import com.usky.entity.sys.vo.SysUserVO;
|
|
|
+import com.usky.service.sys.RoleService;
|
|
|
import com.usky.service.user.UserService;
|
|
|
-import com.usky.utils.Page;
|
|
|
-import com.usky.utils.Result;
|
|
|
-import com.usky.utils.ShiroUtils;
|
|
|
+import com.usky.utils.*;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiImplicitParam;
|
|
|
import io.swagger.annotations.ApiImplicitParams;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
+import lombok.extern.java.Log;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
|
|
+import org.aspectj.weaver.ast.Var;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.web.bind.annotation.PostMapping;
|
|
|
-import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
-import org.springframework.web.bind.annotation.RequestParam;
|
|
|
-import org.springframework.web.bind.annotation.RestController;
|
|
|
+import org.springframework.validation.annotation.Validated;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @author laowo
|
|
@@ -29,12 +33,62 @@ import java.util.List;
|
|
|
@RestController
|
|
|
@RequestMapping("sys/user")
|
|
|
public class UserController {
|
|
|
+
|
|
|
+
|
|
|
@Autowired
|
|
|
private UserService userService;
|
|
|
+ @Autowired
|
|
|
+ private RoleService roleService;
|
|
|
+
|
|
|
+ private final String prefix = "sys/user";
|
|
|
+
|
|
|
+ @ApiOperation("用户管理-页面鉴权")
|
|
|
+ @RequiresPermissions("system:user:view")
|
|
|
+ @GetMapping()
|
|
|
+ public String user() {
|
|
|
+ return prefix + "/user";
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
@ApiOperation(value = "系统-用户添加")
|
|
|
+ @ApiImplicitParams({
|
|
|
+ @ApiImplicitParam(name = "loginName", value = "登录名", required = true, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "status", value = "账户状态 0正常 1 停用", required = false, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "phonenumber", value = "手机号", required = false, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "deptId", value = "部门id", required = true, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "password", value = "密码", required = true, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "roleIds", value = "角色", required = false, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "userName", value = "用户名", required = true, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "remark", value = "备注", required = false, paramType = "query"),
|
|
|
+ })
|
|
|
@PostMapping("addUser")
|
|
|
- public Result<?> addUser(SysUserDTO user) {
|
|
|
+ public Result<?> addUser(
|
|
|
+ @RequestParam(value = "loginName", required = true) String loginName,
|
|
|
+ @RequestParam(value = "status", required = false) String status,
|
|
|
+ @RequestParam(value = "phonenumber", required = true) String phonenumber,
|
|
|
+ @RequestParam(value = "deptId", required = true) Integer deptId,
|
|
|
+ @RequestParam(value = "password", required = true) String password,
|
|
|
+ @RequestParam(value = "userName", required = true) String userName,
|
|
|
+ @RequestParam(value = "roleIds", required = true) String roleIds,
|
|
|
+ @RequestParam(value = "remark", required = false) String remark
|
|
|
+ ) {
|
|
|
+ //登录名校验
|
|
|
+ List<SysUserVO> sysUserVOList = userService.listAll(new SysUserVO(), null, loginName, null, null, null, null);
|
|
|
+ if (ListUtil.isNotBlank(sysUserVOList)) {
|
|
|
+ return Result.error("登录名已存在");
|
|
|
+ }
|
|
|
+ List<SysUserVO> phone = userService.listAll(new SysUserVO(), null, null, phonenumber, null, null, null);
|
|
|
+ if (ListUtil.isNotBlank(phone)) {
|
|
|
+ return Result.error("手机号已存在");
|
|
|
+ }
|
|
|
+ SysUserVO user = new SysUserVO();
|
|
|
+ user.setLoginName(loginName);
|
|
|
+ user.setDeptId(deptId);
|
|
|
+ user.setRemark(remark);
|
|
|
+ user.setUserName(userName);
|
|
|
+ user.setPassword(password);
|
|
|
+ user.setStatus(status);
|
|
|
+ user.setRoleIds(roleIds);
|
|
|
userService.addUser(user);
|
|
|
return Result.OK();
|
|
|
}
|
|
@@ -53,7 +107,7 @@ public class UserController {
|
|
|
@ApiImplicitParam(name = "pageSize", value = "页数据条数", required = false, paramType = "query"),
|
|
|
@ApiImplicitParam(name = "pageNo", value = "当前页", required = false, paramType = "query"),
|
|
|
})
|
|
|
- @RequiresPermissions("system:user:list")
|
|
|
+ @RequiresPermissions("system:user:list")
|
|
|
public Page<SysUserVO> list(
|
|
|
@RequestParam(value = "status", required = false) Integer status,
|
|
|
@RequestParam(value = "loginName", required = false) String loginName,
|
|
@@ -65,8 +119,72 @@ public class UserController {
|
|
|
@RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo
|
|
|
) {
|
|
|
SysUserVO sysUserVO = new SysUserVO();
|
|
|
- return userService.list(sysUserVO,status, loginName, phonenumber, startTime, endTime, deptId, pageSize, pageNo);
|
|
|
+ return userService.list(sysUserVO, status, loginName, phonenumber, startTime, endTime, deptId, pageSize, pageNo);
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "用户查询-全部 -可用于导出")
|
|
|
+ @PostMapping("listAll")
|
|
|
+ @ApiImplicitParams({
|
|
|
+ // @ApiImplicitParam(name = "loginName", value = "登录名", required = true, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "loginName", value = "登录名", required = false, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "status", value = "账户状态 0正常 1 停用", required = false, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "phonenumber", value = "手机号", required = false, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "startTime", value = "开始时间", required = false, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "endTime", value = "结束时间", required = false, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "deptId", value = "部门id", required = false, paramType = "query"),
|
|
|
+ })
|
|
|
+ @RequiresPermissions("system:user:list")
|
|
|
+ public Result<List<SysUserVO>> listAll(
|
|
|
+ @RequestParam(value = "status", required = false) Integer status,
|
|
|
+ @RequestParam(value = "loginName", required = false) String loginName,
|
|
|
+ @RequestParam(value = "phonenumber", required = false) String phonenumber,
|
|
|
+ @RequestParam(value = "startTime", required = false) String startTime,
|
|
|
+ @RequestParam(value = "endTime", required = false) String endTime,
|
|
|
+ @RequestParam(value = "deptId", required = false) Integer deptId
|
|
|
+ ) {
|
|
|
+ List<SysUserVO> sysUserVOList = userService.listAll(new SysUserVO(), status, loginName, phonenumber, startTime, endTime, deptId);
|
|
|
+ return Result.OK(sysUserVOList);
|
|
|
}
|
|
|
|
|
|
|
|
|
+ @ApiOperation(value = "修改用户")
|
|
|
+ @RequiresPermissions("system:user:edit")
|
|
|
+ @PostMapping("/edit")
|
|
|
+ @ResponseBody
|
|
|
+ @ApiImplicitParams({
|
|
|
+ @ApiImplicitParam(name = "status", value = "账户状态 0正常 1 停用", required = false, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "phonenumber", value = "手机号", required = true, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "deptId", value = "部门id", required = true, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "roleIds", value = "角色", required = true, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "userName", value = "用户名", required = true, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "remark", value = "备注", required = false, paramType = "query"),
|
|
|
+ @ApiImplicitParam(name = "userId", value = "用户id", required = true, paramType = "query")
|
|
|
+ })
|
|
|
+ public Result<?> editSave(
|
|
|
+ @RequestParam(value = "status", required = false) String status,
|
|
|
+ @RequestParam(value = "phonenumber", required = false) String phonenumber,
|
|
|
+ @RequestParam(value = "deptId") Integer deptId,
|
|
|
+ @RequestParam(value = "userName", required = false) String userName,
|
|
|
+ @RequestParam(value = "roleIds", required = false) String roleIds,
|
|
|
+ @RequestParam(value = "userId", required = true) Integer userId,
|
|
|
+ @RequestParam(value = "remark", required = false) String remark
|
|
|
+ ) {
|
|
|
+ if (StringUtils.isNotBlank(phonenumber)) {
|
|
|
+ //用户手机号校验
|
|
|
+ List<SysUserDTO> user = userService.queryUserByPhone(phonenumber);
|
|
|
+ if (ListUtil.isNotBlank(user)) {
|
|
|
+ return Result.error("手机号已存在!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ SysUserVO user = new SysUserVO();
|
|
|
+ user.setStatus(status);
|
|
|
+ user.setRemark(remark);
|
|
|
+ user.setUserName(userName);
|
|
|
+ user.setDeptId(deptId);
|
|
|
+ user.setUserId(userId);
|
|
|
+ user.setRoleIds(roleIds);
|
|
|
+ user.setPhonenumber(phonenumber);
|
|
|
+ userService.updateUser(user);
|
|
|
+ return Result.OK();
|
|
|
+ }
|
|
|
}
|