package com.estate.expert.admin.controller.admin;
|
|
import com.estate.expert.admin.domain.common.request.BatchReq;
|
import com.estate.expert.admin.domain.user.User;
|
import com.estate.expert.admin.domain.user.UserDto;
|
import com.estate.expert.admin.domain.common.request.PageReq;
|
import com.estate.expert.admin.domain.common.response.PageResp;
|
import com.estate.expert.admin.domain.user.UserState;
|
import com.estate.expert.admin.service.UserService;
|
import com.estate.expert.common.domain.Session;
|
import com.estate.expert.common.rpc.Result;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiParam;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.annotation.Resource;
|
|
@Slf4j
|
@Api(tags = "管理后台/用户管理")
|
@CrossOrigin
|
@RequestMapping("/admin/user")
|
@RestController
|
@Validated
|
public class UserController {
|
|
@Resource
|
private UserService userService;
|
|
@ApiOperation(value = "用户列表", notes = "用户列表的介绍说明")
|
@PostMapping("/list")
|
public Result<PageResp<UserDto>> list(@ApiParam(value = "查询关键字") @RequestParam(value = "keyword", required = false) String keyword,
|
@ApiParam(value = "岗位ID") @RequestParam(value = "roleId", required = false) Integer roleId,
|
@ApiParam(value = "分页参数") @Validated @RequestBody PageReq pageReq) {
|
return Result.success(userService.list(keyword, roleId, pageReq));
|
}
|
|
@ApiOperation(value = "添加用户")
|
@PostMapping("/add")
|
public Result add(@ApiParam(hidden = true) Session session,
|
@Validated @RequestBody UserDto userDto) {
|
userService.add((User) session.getUser(), userDto);
|
return Result.success();
|
}
|
|
@ApiOperation(value = "修改用户")
|
@PostMapping("/edit")
|
public Result edit(@Validated @RequestBody UserDto userDto) {
|
userService.edit(userDto);
|
return Result.success();
|
}
|
|
@ApiOperation(value = "重置密码")
|
@GetMapping("/reset/pass")
|
public Result resetPass(@ApiParam(value = "用户ID") @RequestParam("id") Integer id) {
|
userService.resetPass(id);
|
return Result.success();
|
}
|
|
@ApiOperation(value = "修改状态")
|
@GetMapping("/modify/state")
|
public Result modifyState(@ApiParam(value = "用户ID") @RequestParam("id") Integer id,
|
@ApiParam(value = "状态") @RequestParam("state") UserState state) {
|
userService.modifyState(id, state);
|
return Result.success();
|
}
|
|
@ApiOperation(value = "批量删除", notes = "逻辑删除,非物理删除")
|
@PostMapping("/del")
|
public Result delete(@ApiParam(value = "用户ID") @RequestBody BatchReq request) {
|
userService.deleteAllById(request.getIds());
|
return Result.success();
|
}
|
|
}
|