package com.whyc.controller; import com.whyc.dto.Response; import com.whyc.pojo.*; import com.whyc.service.RoleMenuService; import com.whyc.service.RolePermissionService; import com.whyc.service.RoleService; import com.whyc.service.UserRoleService; import com.whyc.util.CommonUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.CacheEvict; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.util.List; import java.util.Map; @RequestMapping("role") @RestController @Slf4j @Api(tags = "角色") public class RoleController { @Autowired private RoleService roleService; @Autowired private UserRoleService userRoleService; @Autowired private RolePermissionService rolePermissionService; @Autowired private RoleMenuService roleMenuService; @GetMapping("all") @ApiOperation(value = "查询所有角色") public Response getRoleAll(){ List roles = roleService.getAll(); return new Response().set(1,roles); } @PostMapping @ApiOperation(value = "新增角色") public Response add(@RequestBody Role role){ roleService.add(role); return new Response().setMsg(1,"新增成功"); } /** * TODO 采用caffeine重写 */ @PostMapping("bindingUserWithRole") @ApiOperation(value = "绑定用户和角色") @CacheEvict(cacheNames = {"userBridge"},key="'getAuthorizationInfo'+#p0") //清除 public boolean bindingUserWithRole(@RequestParam int userId,int roleId){ return userRoleService.bindingUserWithRole(userId,roleId); } /** * TODO 采用caffeine重写 */ @PostMapping("bindingUserWithRoleBatch") @ApiOperation(value = "批量绑定用户和角色",notes = "传入userId和roleId的数组") @CacheEvict(cacheNames = {"userBridge"},allEntries = true) //全部清除 public boolean bindingUserWithRoleBatch(@RequestBody List userRoles){ return userRoleService.bindingUserWithRoleBatch(userRoles); } /**===============角色与权限================**/ /* @PostMapping("bindingRoleWithPermission") @ApiOperation(value = "绑定角色-权限") @CacheEvict(cacheNames = {"userBridge"},allEntries = true) //全部清除 public boolean bindingRoleWithPermission(@RequestParam int roleId,int permissionId){ return rolePermissionService.bindingUserWithRole(roleId,permissionId); }*/ /** * TODO 采用caffeine重写 */ @PostMapping("bindingRoleWithPermissionBatch") @ApiOperation(value = "批量绑定角色-权限",notes = "传入roleId和privilegeId的数组") @CacheEvict(cacheNames = {"userBridge"},allEntries = true) //全部清除 public boolean bindingRoleWithPermissionBatch(@RequestBody List rolePermissions){ return rolePermissionService.bindingUserWithRoleBatch(rolePermissions); } }