package com.estate.expert.admin.controller.admin; import com.estate.expert.admin.domain.common.request.BatchReq; import com.estate.expert.admin.domain.common.request.PageReq; import com.estate.expert.admin.domain.role.PermissionData; import com.estate.expert.admin.domain.role.RoleDto; import com.estate.expert.admin.domain.user.User; import com.estate.expert.admin.service.RoleService; 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/role") @RestController @Validated public class RoleController { @Resource private RoleService roleService; @ApiOperation(value = "岗位列表") @PostMapping("/list") public Result list(@ApiParam(value = "查询关键字") @RequestParam(value = "keyword", required = false) String keyword, @ApiParam(value = "分页参数") @Validated @RequestBody PageReq pageReq) { return Result.success(roleService.list(keyword, pageReq)); } @ApiOperation(value = "添加岗位") @PostMapping("/add") public Result add(@ApiParam(hidden = true) Session session, @Validated @RequestBody RoleDto roleDto) { roleService.add((User) session.getUser(), roleDto); return Result.success(); } @ApiOperation(value = "修改岗位") @PostMapping("/edit") public Result edit(@Validated @RequestBody RoleDto roleDto) { roleService.edit(roleDto); return Result.success(); } @ApiOperation(value = "批量删除", notes = "逻辑删除,非物理删除") @PostMapping("/del") public Result del(@Validated @RequestBody BatchReq batchReq) { roleService.deleteAllById(batchReq.getIds()); return Result.success(); } @ApiOperation(value = "权限列表") @GetMapping("/permission/list") public Result permissions() { return Result.success(PermissionData.allPermissions()); } @ApiOperation(value = "权限树") @GetMapping("/permission/tree") public Result permissionTree() { return Result.success(PermissionData.Data); } }