package com.monkeylessey.controller.system; import com.monkeylessey.group.Add; import com.monkeylessey.group.Update; import com.monkeylessey.sys.domain.form.ResetPwdForm; import com.monkeylessey.sys.domain.form.SysUserForm; import com.monkeylessey.sys.domain.form.SysUserStatusForm; import com.monkeylessey.response.Result; import com.monkeylessey.sys.domain.query.SysUserQuery; import com.monkeylessey.sys.service.SysUserService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; /** * 系统用户 前端控制器 * * @author 向培 * @since 2022-05-30 */ @Validated @RequiredArgsConstructor @Api(value = "系统用户", tags = "系统用户") @RestController @RequestMapping("/sys-user") public class SysUserController { private final SysUserService sysUserService; @PostMapping("/") @PreAuthorize("hasAuthority('user:add')") @ApiOperation(value = "添加系统用户", notes = "添加系统用户") public Result addSysUser(@RequestBody @Validated(Add.class) SysUserForm form) { return sysUserService.addSysUser(form); } @PutMapping("/") @PreAuthorize("hasAuthority('user:edit')") @ApiOperation(value = "修改系统用户", notes = "修改系统用户") public Result editSysUser(@RequestBody @Validated(Update.class) SysUserForm form) { return sysUserService.editSysUser(form); } @PutMapping("/pwd") @ApiOperation(value = "修改系统用户密码", notes = "修改系统用户密码") public Result updatePwd(@RequestBody @Validated ResetPwdForm form) { return sysUserService.updatePwd(form); } @PutMapping("/pwd/{userId}") @PreAuthorize("hasAuthority('user:reset')") @ApiOperation(value = "重置用户密码", notes = "重置用户密码") public Result resetUserPwd(@PathVariable("userId") Integer userId) { return sysUserService.resetUserPwd(userId); } @PutMapping("/status") @PreAuthorize("hasAuthority('user:forbidden')") @ApiOperation(value = "修改系统用户状态", notes = "修改系统用户状态") public Result editSysUserStatus(@RequestBody @Validated SysUserStatusForm form) { return sysUserService.editSysUserStatus(form); } @DeleteMapping("/{id}") @PreAuthorize("hasAuthority('user:del')") @ApiOperation(value = "删除系统用户", notes = "删除系统用户") public Result deleteSysUser(@PathVariable("id") String id) { return sysUserService.deleteSysUserById(id); } @DeleteMapping("/batch") @PreAuthorize("hasAuthority('user:del:batch')") @ApiOperation(value = "批量删除系统用户", notes = "批量删除系统用户") public Result deleteSysUserByIds(@RequestBody List ids) { return sysUserService.deleteSysUserByIds(ids); } @PreAuthorize("hasAuthority('user:page')") @GetMapping("/page") @ApiOperation(value = "系统用户分页", notes = "系统用户分页") public Result getSysUserPage(SysUserQuery query) { return sysUserService.getSysUserByPage(query); } @GetMapping("/{id}") @PreAuthorize("hasAuthority('user:detail')") @ApiOperation(value = "id查找", notes = "id查找") public Result getSysUserPage(@PathVariable("id") String id) { return sysUserService.getSysUserById(id); } }