package com.gkhy.assess.admin.controller.web;
|
|
import com.gkhy.assess.common.annotation.RepeatSubmit;
|
import com.gkhy.assess.common.api.CommonResult;
|
import com.gkhy.assess.common.validate.AgencyGroup;
|
import com.gkhy.assess.common.validate.ExpertGroup;
|
import com.gkhy.assess.common.validate.MonitorGroup;
|
import com.gkhy.assess.system.domain.SysUser;
|
import com.gkhy.assess.system.service.SysUserService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
import org.apache.shiro.authz.annotation.Logical;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
@Api(tags = "用户前端控制器")
|
@RestController
|
@RequestMapping("/system/user")
|
public class SysUserController {
|
@Autowired
|
private SysUserService sysUserService;
|
|
|
@ApiOperation(value = "监管用户列表(分页)")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"),
|
@ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10")
|
})
|
@GetMapping("/monitorList")
|
public CommonResult monitorList(SysUser user){
|
return CommonResult.success(sysUserService.monitorList(user));
|
}
|
|
|
@ApiOperation(value = "机构用户列表(分页)")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"),
|
@ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10")
|
})
|
@GetMapping("/agencyList")
|
public CommonResult agencyList(SysUser user){
|
return CommonResult.success(sysUserService.agencyList(user));
|
}
|
|
|
@ApiOperation(value = "专家用户列表(分页)")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"),
|
@ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10")
|
})
|
@GetMapping("/expertList")
|
public CommonResult expertList(SysUser user){
|
return CommonResult.success(sysUserService.expertList(user));
|
}
|
|
@RepeatSubmit
|
@ApiOperation(value = "创建监管用户")
|
@PostMapping("/addMonitor")
|
public CommonResult addMonitor(@Validated(MonitorGroup.class) @RequestBody SysUser user){
|
return CommonResult.success(sysUserService.addMonitor(user));
|
}
|
|
|
@RepeatSubmit
|
@ApiOperation(value = "机构注册")
|
@PostMapping("/addAgency")
|
public CommonResult addAgency(@Validated(AgencyGroup.class) @RequestBody SysUser user){
|
return CommonResult.success(sysUserService.addAgency(user));
|
}
|
|
@RepeatSubmit
|
@RequiresPermissions(value={"system:assess:monitor","system:assess:agency"},logical = Logical.OR)
|
@ApiOperation(value = "创建专家")
|
@PostMapping("/addExpert")
|
public CommonResult addExpert(@Validated(ExpertGroup.class) @RequestBody SysUser user){
|
return CommonResult.success(sysUserService.addExpert(user));
|
}
|
|
@RepeatSubmit
|
@RequiresPermissions("system:assess:monitor")
|
@ApiOperation(value = "编辑监管用户")
|
@PutMapping("/editMonitor")
|
public CommonResult editMonitor(@RequestBody SysUser user){
|
return CommonResult.success(sysUserService.editMonitor(user));
|
}
|
|
@RepeatSubmit
|
@RequiresPermissions("system:assess:monitor")
|
@ApiOperation(value = "编辑机构")
|
@PutMapping("/editAgency")
|
public CommonResult editAgency(@RequestBody SysUser user){
|
return CommonResult.success(sysUserService.editAgency(user));
|
}
|
|
@RepeatSubmit
|
@RequiresPermissions(value={"system:assess:monitor","system:assess:agency"},logical = Logical.OR)
|
@ApiOperation(value = "编辑专家")
|
@PutMapping("/editExpert")
|
public CommonResult editExpert(@RequestBody SysUser user){
|
return CommonResult.success(sysUserService.editExpert(user));
|
}
|
|
@ApiOperation(value = "根据id获取用户详情")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "query", name = "userId", dataType = "int", required = true, value = "用户id")
|
})
|
@GetMapping("/getUserById")
|
public CommonResult getUserById(@RequestParam(required = true) Long userId){
|
return CommonResult.success(sysUserService.getUserInfoById(userId));
|
}
|
|
|
@ApiOperation(value = "校验用户名")
|
@PostMapping("/checkUserNameUnique")
|
public CommonResult checkLoginNameUnique(@RequestBody SysUser user)
|
{
|
return CommonResult.success(sysUserService.checkUsernameUnique(user));
|
}
|
|
|
@ApiOperation(value = "校验手机号")
|
@PostMapping("/checkPhoneUnique")
|
public CommonResult checkPhoneUnique(@RequestBody SysUser user)
|
{
|
return CommonResult.success(sysUserService.checkPhoneUnique(user));
|
}
|
|
@RepeatSubmit
|
@ApiOperation(value = "用户修改密码")
|
@PutMapping("/resetUserPwd")
|
public CommonResult resetUserPwd(@RequestBody SysUser user)
|
{
|
return CommonResult.success(sysUserService.resetUserPwd(user));
|
}
|
|
|
@RepeatSubmit
|
@RequiresPermissions(value={"system:assess:monitor","system:assess:agency"},logical = Logical.OR)
|
@ApiOperation(value = "用户状态修改,停用/启用")
|
@PostMapping("/changeStatus")
|
public CommonResult changeStatus(@RequestBody SysUser user)
|
{
|
return CommonResult.success(sysUserService.changeUserStatus(user));
|
}
|
|
@RepeatSubmit
|
@RequiresPermissions("system:assess:monitor")
|
@ApiOperation(value = "审批状态修改,审批状态(0暂存,1审核中,2审批通过,3审批驳回,4已作废)")
|
@PostMapping("/changeApprove")
|
public CommonResult changeApprove(@RequestBody SysUser user)
|
{
|
return CommonResult.success(sysUserService.changeApprove(user));
|
}
|
|
|
@RepeatSubmit
|
@RequiresPermissions(value={"system:assess:monitor","system:assess:agency"},logical = Logical.OR)
|
@ApiOperation(value = "根据id删除用户")
|
@DeleteMapping("/remove/{userId}")
|
public CommonResult removeUser(@PathVariable(name = "userId") Long userId)
|
{
|
return CommonResult.success(sysUserService.deleteUserById(userId));
|
}
|
|
|
|
|
}
|