/* * Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved. * * https://www.mall4j.com/ * * 未经允许,不可做商业用途! * * 版权所有,侵权必究! */ package com.yami.trading.sys.controller; import java.util.List; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.yami.trading.sys.model.SysRole; import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.yami.trading.common.util.PageParam; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yami.trading.sys.service.SysMenuService; import com.yami.trading.sys.service.SysRoleService; import com.yami.trading.common.annotation.SysLog; import cn.hutool.core.util.StrUtil; /** * 角色管理 * @author lgh */ @RestController @RequestMapping("/sys/role") @Api(tags = "角色管理") public class SysRoleController{ @Autowired private SysRoleService sysRoleService; @Autowired private SysMenuService sysMenuService; /** * 角色列表 */ @GetMapping("/page") // @PreAuthorize("@pms.hasPermission('sys:role:page')") public ResponseEntity> page(String roleName,PageParam page){ IPage sysRoles = sysRoleService.page(page,new LambdaQueryWrapper().like(StrUtil.isNotBlank(roleName),SysRole::getRoleName,roleName) .orderByDesc(SysRole::getCreateTime)); // for (SysRole s: sysRoles.getRecords()){ // List menuList = sysMenuService.listMenuIdByRoleId(s.getRoleId()); // } return ResponseEntity.ok(sysRoles); } /** * 角色列表 */ @GetMapping("/list") // @PreAuthorize("@pms.hasPermission('sys:role:list')") public ResponseEntity> list(){ List list = sysRoleService.list(); return ResponseEntity.ok(list); } /** * 角色信息 */ @GetMapping("/info/{roleId}") // @PreAuthorize("@pms.hasPermission('sys:role:info')") public ResponseEntity info(@PathVariable("roleId") Long roleId){ SysRole role = sysRoleService.getById(roleId); //查询角色对应的菜单 List menuList = sysMenuService.listMenuIdByRoleId(roleId); role.setMenuIdList(menuList); return ResponseEntity.ok(role); } /** * 保存角色 */ @SysLog("保存角色") @PostMapping // @PreAuthorize("@pms.hasPermission('sys:role:save')") public ResponseEntity save(@RequestBody SysRole role){ sysRoleService.saveRoleAndRoleMenu(role); return ResponseEntity.ok().build(); } /** * 修改角色 */ @SysLog("修改角色") @PutMapping // @PreAuthorize("@pms.hasPermission('sys:role:update')") public ResponseEntity update(@RequestBody SysRole role){ sysRoleService.updateRoleAndRoleMenu(role); return ResponseEntity.ok().build(); } /** * 删除角色 */ @SysLog("删除角色") @DeleteMapping // @PreAuthorize("@pms.hasPermission('sys:role:delete')") public ResponseEntity delete(@RequestBody Long[] roleIds){ sysRoleService.deleteBatch(roleIds); return ResponseEntity.ok().build(); } }