package com.mzl.flower.web.system; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.mzl.flower.base.BaseController; import com.mzl.flower.base.R; import com.mzl.flower.base.ReturnDataDTO; import com.mzl.flower.dto.request.system.CreateRoleDTO; import com.mzl.flower.dto.request.system.SearchRoleDTO; import com.mzl.flower.dto.request.system.UpdateRoleDTO; import com.mzl.flower.dto.response.system.RoleDTO; import com.mzl.flower.dto.response.system.RoleListDTO; import com.mzl.flower.service.system.RoleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @RestController @RequestMapping("/api/role") @Api(value = "角色管理", tags = "角色管理") @Validated public class RoleController extends BaseController { @Autowired private RoleService roleService; @GetMapping("/list") @ApiOperation(value = "查询角色列表") public ResponseEntity>> searchRole(@ModelAttribute SearchRoleDTO dto, Page page) { return returnData(R.SUCCESS.getCode(), roleService.searchRole(dto, page)); } @PostMapping("/list/new") @ApiOperation(value = "新增角色") public ResponseEntity addRole(@RequestBody @Validated CreateRoleDTO dto) { return returnData(R.SUCCESS.getCode(), roleService.addRole(dto)); } @GetMapping("/list/view") @ApiImplicitParams({ @ApiImplicitParam(name = "id", value = "角色ID", required = true, dataType = "String", paramType = "query") }) @ApiOperation(value = "查询角色详情") public ResponseEntity> getRole(String id) { return returnData(R.SUCCESS.getCode(), roleService.getRoleDetail(id)); } @PostMapping("/list/edit") @ApiOperation(value = "编辑角色") public ResponseEntity updateRole(@RequestBody @Validated UpdateRoleDTO dto) { roleService.updateRole(dto); return returnData(R.SUCCESS.getCode(), null); } @GetMapping("/list/delete") @ApiImplicitParams({ @ApiImplicitParam(name = "id", value = "角色ID", required = true, dataType = "String", paramType = "query") }) @ApiOperation(value = "删除角色") public ResponseEntity deleteRole(String id) { roleService.deleteRole(id); return returnData(R.SUCCESS.getCode(), null); } }