From 6eae571797421e5dda9d8d934394089a19178554 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期三, 20 三月 2024 13:47:36 +0800 Subject: [PATCH] 临时切换角色按钮 --- ycl-server/src/main/java/com/ycl/system/controller/SysRoleController.java | 90 ++++++++++++++++++++++----------------------- 1 files changed, 44 insertions(+), 46 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/system/controller/SysRoleController.java b/ycl-server/src/main/java/com/ycl/system/controller/SysRoleController.java index 1f2cbbf..21f5fc4 100644 --- a/ycl-server/src/main/java/com/ycl/system/controller/SysRoleController.java +++ b/ycl-server/src/main/java/com/ycl/system/controller/SysRoleController.java @@ -1,6 +1,7 @@ package com.ycl.system.controller; import annotation.Log; +import ch.qos.logback.core.rolling.helper.IntegerTokenConverter; import com.ycl.system.AjaxResult; import com.ycl.system.domain.SysUserRole; import com.ycl.system.entity.SysDept; @@ -9,15 +10,19 @@ import com.ycl.system.model.LoginUser; import com.ycl.system.page.TableDataInfo; import com.ycl.system.service.*; +import com.ycl.utils.SecurityUtils; import com.ycl.utils.StringUtils; import com.ycl.utils.poi.ExcelUtil; import enumeration.BusinessType; import jakarta.servlet.http.HttpServletResponse; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import java.util.ArrayList; +import java.util.Arrays; import java.util.List; /** @@ -27,7 +32,7 @@ */ @RestController @RequestMapping("/system/role") -public class SysRoleController extends BaseController{ +public class SysRoleController extends BaseController { @Autowired private ISysRoleService roleService; @@ -45,8 +50,7 @@ @PreAuthorize("@ss.hasPermi('system:role:list')") @GetMapping("/list") - public TableDataInfo list(SysRole role) - { + public TableDataInfo list(SysRole role) { startPage(); List<SysRole> list = roleService.selectRoleList(role); return getDataTable(list); @@ -55,8 +59,7 @@ @Log(title = "瑙掕壊绠$悊", businessType = BusinessType.EXPORT) @PreAuthorize("@ss.hasPermi('system:role:export')") @PostMapping("/export") - public void export(HttpServletResponse response, SysRole role) - { + public void export(HttpServletResponse response, SysRole role) { List<SysRole> list = roleService.selectRoleList(role); ExcelUtil<SysRole> util = new ExcelUtil<SysRole>(SysRole.class); util.exportExcel(response, list, "瑙掕壊鏁版嵁"); @@ -67,8 +70,7 @@ */ @PreAuthorize("@ss.hasPermi('system:role:query')") @GetMapping(value = "/{roleId}") - public AjaxResult getInfo(@PathVariable Long roleId) - { + public AjaxResult getInfo(@PathVariable Long roleId) { roleService.checkRoleDataScope(roleId); return success(roleService.selectRoleById(roleId)); } @@ -79,14 +81,10 @@ @PreAuthorize("@ss.hasPermi('system:role:add')") @Log(title = "瑙掕壊绠$悊", businessType = BusinessType.INSERT) @PostMapping - public AjaxResult add(@Validated @RequestBody SysRole role) - { - if (!roleService.checkRoleNameUnique(role)) - { + public AjaxResult add(@Validated @RequestBody SysRole role) { + if (!roleService.checkRoleNameUnique(role)) { return error("鏂板瑙掕壊'" + role.getRoleName() + "'澶辫触锛岃鑹插悕绉板凡瀛樺湪"); - } - else if (!roleService.checkRoleKeyUnique(role)) - { + } else if (!roleService.checkRoleKeyUnique(role)) { return error("鏂板瑙掕壊'" + role.getRoleName() + "'澶辫触锛岃鑹叉潈闄愬凡瀛樺湪"); } role.setCreateBy(getUsername()); @@ -100,26 +98,20 @@ @PreAuthorize("@ss.hasPermi('system:role:edit')") @Log(title = "瑙掕壊绠$悊", businessType = BusinessType.UPDATE) @PutMapping - public AjaxResult edit(@Validated @RequestBody SysRole role) - { + public AjaxResult edit(@Validated @RequestBody SysRole role) { roleService.checkRoleAllowed(role); roleService.checkRoleDataScope(role.getRoleId()); - if (!roleService.checkRoleNameUnique(role)) - { + if (!roleService.checkRoleNameUnique(role)) { return error("淇敼瑙掕壊'" + role.getRoleName() + "'澶辫触锛岃鑹插悕绉板凡瀛樺湪"); - } - else if (!roleService.checkRoleKeyUnique(role)) - { + } else if (!roleService.checkRoleKeyUnique(role)) { return error("淇敼瑙掕壊'" + role.getRoleName() + "'澶辫触锛岃鑹叉潈闄愬凡瀛樺湪"); } role.setUpdateBy(getUsername()); - - if (roleService.updateRole(role) > 0) - { + + if (roleService.updateRole(role) > 0) { // 鏇存柊缂撳瓨鐢ㄦ埛鏉冮檺 LoginUser loginUser = getLoginUser(); - if (StringUtils.isNotNull(loginUser.getUser()) && !loginUser.getUser().isAdmin()) - { + if (StringUtils.isNotNull(loginUser.getUser()) && !loginUser.getUser().isAdmin()) { loginUser.setPermissions(permissionService.getMenuPermission(loginUser.getUser())); loginUser.setUser(userService.selectUserByUserName(loginUser.getUser().getUserName())); tokenService.setLoginUser(loginUser); @@ -135,8 +127,7 @@ @PreAuthorize("@ss.hasPermi('system:role:edit')") @Log(title = "瑙掕壊绠$悊", businessType = BusinessType.UPDATE) @PutMapping("/dataScope") - public AjaxResult dataScope(@RequestBody SysRole role) - { + public AjaxResult dataScope(@RequestBody SysRole role) { roleService.checkRoleAllowed(role); roleService.checkRoleDataScope(role.getRoleId()); return toAjax(roleService.authDataScope(role)); @@ -148,8 +139,7 @@ @PreAuthorize("@ss.hasPermi('system:role:edit')") @Log(title = "瑙掕壊绠$悊", businessType = BusinessType.UPDATE) @PutMapping("/changeStatus") - public AjaxResult changeStatus(@RequestBody SysRole role) - { + public AjaxResult changeStatus(@RequestBody SysRole role) { roleService.checkRoleAllowed(role); roleService.checkRoleDataScope(role.getRoleId()); role.setUpdateBy(getUsername()); @@ -162,8 +152,7 @@ @PreAuthorize("@ss.hasPermi('system:role:remove')") @Log(title = "瑙掕壊绠$悊", businessType = BusinessType.DELETE) @DeleteMapping("/{roleIds}") - public AjaxResult remove(@PathVariable Long[] roleIds) - { + public AjaxResult remove(@PathVariable Long[] roleIds) { return toAjax(roleService.deleteRoleByIds(roleIds)); } @@ -172,8 +161,7 @@ */ @PreAuthorize("@ss.hasPermi('system:role:query')") @GetMapping("/optionselect") - public AjaxResult optionselect() - { + public AjaxResult optionselect() { return success(roleService.selectRoleAll()); } @@ -182,8 +170,7 @@ */ @PreAuthorize("@ss.hasPermi('system:role:list')") @GetMapping("/authUser/allocatedList") - public TableDataInfo allocatedList(SysUser user) - { + public TableDataInfo allocatedList(SysUser user) { startPage(); List<SysUser> list = userService.selectAllocatedList(user); return getDataTable(list); @@ -194,8 +181,7 @@ */ @PreAuthorize("@ss.hasPermi('system:role:list')") @GetMapping("/authUser/unallocatedList") - public TableDataInfo unallocatedList(SysUser user) - { + public TableDataInfo unallocatedList(SysUser user) { startPage(); List<SysUser> list = userService.selectUnallocatedList(user); return getDataTable(list); @@ -207,8 +193,7 @@ @PreAuthorize("@ss.hasPermi('system:role:edit')") @Log(title = "瑙掕壊绠$悊", businessType = BusinessType.GRANT) @PutMapping("/authUser/cancel") - public AjaxResult cancelAuthUser(@RequestBody SysUserRole userRole) - { + public AjaxResult cancelAuthUser(@RequestBody SysUserRole userRole) { return toAjax(roleService.deleteAuthUser(userRole)); } @@ -218,8 +203,7 @@ @PreAuthorize("@ss.hasPermi('system:role:edit')") @Log(title = "瑙掕壊绠$悊", businessType = BusinessType.GRANT) @PutMapping("/authUser/cancelAll") - public AjaxResult cancelAuthUserAll(Long roleId, Long[] userIds) - { + public AjaxResult cancelAuthUserAll(Long roleId, Long[] userIds) { return toAjax(roleService.deleteAuthUsers(roleId, userIds)); } @@ -229,8 +213,7 @@ @PreAuthorize("@ss.hasPermi('system:role:edit')") @Log(title = "瑙掕壊绠$悊", businessType = BusinessType.GRANT) @PutMapping("/authUser/selectAll") - public AjaxResult selectAuthUserAll(Long roleId, Long[] userIds) - { + public AjaxResult selectAuthUserAll(Long roleId, Long[] userIds) { roleService.checkRoleDataScope(roleId); return toAjax(roleService.insertAuthUsers(roleId, userIds)); } @@ -240,11 +223,26 @@ */ @PreAuthorize("@ss.hasPermi('system:role:query')") @GetMapping(value = "/deptTree/{roleId}") - public AjaxResult deptTree(@PathVariable("roleId") Long roleId) - { + public AjaxResult deptTree(@PathVariable("roleId") Long roleId) { AjaxResult ajax = AjaxResult.success(); ajax.put("checkedKeys", deptService.selectDeptListByRoleId(roleId)); ajax.put("depts", deptService.selectDeptTreeList(new SysDept())); return ajax; } + //TODO + @GetMapping("/exchange/{roleId}") + public AjaxResult exchange(@PathVariable Integer roleId) { + roleService.exchange(roleId); + // 鏇存柊缂撳瓨鐢ㄦ埛鏉冮檺 + LoginUser loginUser = getLoginUser(); + SysUser user = loginUser.getUser(); + List<SysRole> roles = user.getRoles(); + SysRole sysRole = roles.get(0); + sysRole.setRoleId(Long.parseLong(roleId+"")); + user.setRoles(Arrays.asList(sysRole)); + loginUser.setUser(user); + tokenService.setLoginUser(loginUser); + return success(); + } } + -- Gitblit v1.8.0