From c635d78b479510ebe2556a420948effcd30a0731 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期六, 21 十二月 2024 18:40:43 +0800 Subject: [PATCH] 新建德森项目分支 --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/system/controller/RoleController.java | 366 ++++++++++++++++++++++++++-------------------------- 1 files changed, 183 insertions(+), 183 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/system/controller/RoleController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/system/controller/RoleController.java index b369601..ee19543 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/system/controller/RoleController.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/system/controller/RoleController.java @@ -1,183 +1,183 @@ -package com.zy.asrs.wms.system.controller; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.zy.asrs.framework.common.Cools; -import com.zy.asrs.framework.common.R; -import com.zy.asrs.framework.exception.CoolException; -import com.zy.asrs.wms.common.annotation.CacheData; -import com.zy.asrs.wms.common.annotation.OperationLog; -import com.zy.asrs.wms.common.domain.BaseParam; -import com.zy.asrs.wms.common.domain.KeyValVo; -import com.zy.asrs.wms.common.domain.PageParam; -import com.zy.asrs.wms.system.controller.param.RoleScopeParam; -import com.zy.asrs.wms.system.entity.Role; -import com.zy.asrs.wms.system.entity.RoleMenu; -import com.zy.asrs.wms.system.service.RoleMenuService; -import com.zy.asrs.wms.system.service.RoleService; -import com.zy.asrs.wms.utils.ExcelUtil; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; - -/** - * Created by vincent on 2/13/2024 - */ -@RestController -@RequestMapping("/api") -public class RoleController extends BaseController { - - @Autowired - private RoleService roleService; - @Autowired - private RoleMenuService roleMenuService; - - @PreAuthorize("hasAuthority('system:role:list')") - @PostMapping("/role/page") - @CacheData(tableName = {"sys_role"}) - public R page(@RequestBody Map<String, Object> map) { - BaseParam baseParam = buildParam(map, BaseParam.class); - PageParam<Role, BaseParam> pageParam = new PageParam<>(baseParam, Role.class); - return R.ok().add(roleService.page(pageParam, pageParam.buildWrapper(true, (wrapper) -> wrapper.orderByAsc("create_time")))); - } - - @PreAuthorize("hasAuthority('system:role:list')") - @PostMapping("/role/list") - @CacheData(tableName = {"sys_role"}) - public R list(@RequestBody Map<String, Object> map) { - return R.ok().add(roleService.list()); - } - - @PreAuthorize("hasAuthority('system:role:list')") - @GetMapping("/role/{id}") - @CacheData(tableName = {"sys_role"}) - public R get(@PathVariable("id") Long id) { - return R.ok().add(roleService.getById(id)); - } - - @PreAuthorize("hasAuthority('system:role:save')") - @OperationLog("娣诲姞瑙掕壊") - @PostMapping("/role/save") - public R save(@RequestBody Role role) { - if (!Cools.isEmpty(role.getName()) - && roleService.count(new LambdaQueryWrapper<Role>().eq(Role::getName, role.getName())) > 0) { - return R.error("瑙掕壊鍚嶇О宸插瓨鍦�"); - } - if (!Cools.isEmpty(role.getCode()) - && roleService.count(new LambdaQueryWrapper<Role>().eq(Role::getCode, role.getCode())) > 0) { - return R.error("瑙掕壊鏍囪瘑宸插瓨鍦�"); - } - role.setCreateTime(new Date()); - role.setUpdateTime(new Date()); - if (!roleService.save(role)) { - return R.error("娣诲姞澶辫触"); - } - return R.ok("娣诲姞鎴愬姛"); - } - - @PreAuthorize("hasAuthority('system:role:update')") - @OperationLog("淇敼瑙掕壊") - @PostMapping("/role/update") - public R update(@RequestBody Role role) { - if (!Cools.isEmpty(role.getCode()) && roleService.count(new LambdaQueryWrapper<Role>() - .eq(Role::getCode, role.getCode()) - .ne(Role::getId, role.getId())) > 0) { - return R.error("瑙掕壊鏍囪瘑宸插瓨鍦�"); - } - if (!Cools.isEmpty(role.getName()) && roleService.count(new LambdaQueryWrapper<Role>() - .eq(Role::getName, role.getName()) - .ne(Role::getId, role.getId())) > 0) { - return R.error("瑙掕壊鍚嶇О宸插瓨鍦�"); - } - role.setUpdateTime(new Date()); - if (!roleService.updateById(role)) { - return R.error("淇敼澶辫触"); - } - return R.ok("淇敼鎴愬姛"); - } - - @PreAuthorize("hasAuthority('system:role:remove')") - @OperationLog("鍒犻櫎瑙掕壊") - @PostMapping("/role/remove/{ids}") - @Transactional - public R remove(@PathVariable Long[] ids) { - for (Long roleId : ids) { - if (roleId == 1) { - throw new CoolException("瓒呯骇绠$悊鍛樼姝㈠垹闄�"); - } - - if (!roleService.removeById(roleId)) { - throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�"); - } - if (!roleMenuService.remove(new LambdaQueryWrapper<RoleMenu>().eq(RoleMenu::getRoleId, roleId))) { - throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�"); - } - } - return R.ok("鍒犻櫎鎴愬姛"); - } - - @PreAuthorize("hasAuthority('system:role:list')") - @PostMapping("/role/query") - public R query(@RequestParam(required = false) String condition) { - List<KeyValVo> vos = new ArrayList<>(); - LambdaQueryWrapper<Role> wrapper = new LambdaQueryWrapper<>(); - if (!Cools.isEmpty(condition)) { - wrapper.like(Role::getName, condition); - } - roleService.page(new Page<>(1, 30), wrapper).getRecords().forEach( - item -> vos.add(new KeyValVo(item.getId(), item.getName())) - ); - return R.ok().add(vos); - } - - @PreAuthorize("hasAuthority('system:role:list')") - @PostMapping("/role/export") - public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception { - ExcelUtil.build(ExcelUtil.create(roleService.list(), Role.class), response); - } - - @PreAuthorize("hasAuthority('system:role:list')") - @GetMapping("/role/scope/list") - public R scopeList(@RequestParam Long roleId) { -// List<RoleMenu> list = roleMenuService.list(new LambdaQueryWrapper<RoleMenu>().eq(RoleMenu::getRoleId, roleId)); -// if (!Cools.isEmpty(list)) { -// return R.ok().add(list.stream().map(RoleMenu::getMenuId).collect(Collectors.toList())); -// } - return R.ok().add(roleMenuService.listStrictlyMenuByRoleId(roleId)); - } - - @PreAuthorize("hasAuthority('system:role:update')") - @OperationLog("鍒嗛厤鏉冮檺") - @PostMapping("/role/scope/update") - @Transactional - public R scopeUpdate(@RequestBody RoleScopeParam param) { - Long roleId = param.getId(); - List<Long> menuIds = new ArrayList<>(param.getMenuIds().getChecked()); - menuIds.addAll(param.getMenuIds().getHalfChecked()); - roleMenuService.remove(new LambdaQueryWrapper<RoleMenu>().eq(RoleMenu::getRoleId, roleId)); - for (Long menuId : menuIds) { - if (!roleMenuService.save(new RoleMenu(roleId, menuId))) { - throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�"); - } - } - return R.ok("鍒嗛厤鎴愬姛"); - } - - @PreAuthorize("hasAuthority('system:role:list')") - @GetMapping("/role/list/name/{ids}") - public R listName(@PathVariable Long[] ids) { - List<String> nameList = new ArrayList<>(); - for (Long id : ids) { - nameList.add(roleService.getById(id).getName()); - } - return R.ok().add(nameList); - } - -} +package com.zy.asrs.wms.system.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zy.asrs.framework.common.Cools; +import com.zy.asrs.framework.common.R; +import com.zy.asrs.framework.exception.CoolException; +import com.zy.asrs.wms.common.annotation.CacheData; +import com.zy.asrs.wms.common.annotation.OperationLog; +import com.zy.asrs.wms.common.domain.BaseParam; +import com.zy.asrs.wms.common.domain.KeyValVo; +import com.zy.asrs.wms.common.domain.PageParam; +import com.zy.asrs.wms.system.controller.param.RoleScopeParam; +import com.zy.asrs.wms.system.entity.Role; +import com.zy.asrs.wms.system.entity.RoleMenu; +import com.zy.asrs.wms.system.service.RoleMenuService; +import com.zy.asrs.wms.system.service.RoleService; +import com.zy.asrs.wms.utils.ExcelUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Map; + +/** + * Created by vincent on 2/13/2024 + */ +@RestController +@RequestMapping("/api") +public class RoleController extends BaseController { + + @Autowired + private RoleService roleService; + @Autowired + private RoleMenuService roleMenuService; + + @PreAuthorize("hasAuthority('system:role:list')") + @PostMapping("/role/page") + @CacheData(tableName = {"sys_role"}) + public R page(@RequestBody Map<String, Object> map) { + BaseParam baseParam = buildParam(map, BaseParam.class); + PageParam<Role, BaseParam> pageParam = new PageParam<>(baseParam, Role.class); + return R.ok().add(roleService.page(pageParam, pageParam.buildWrapper(true, (wrapper) -> wrapper.orderByAsc("create_time")))); + } + + @PreAuthorize("hasAuthority('system:role:list')") + @PostMapping("/role/list") + @CacheData(tableName = {"sys_role"}) + public R list(@RequestBody Map<String, Object> map) { + return R.ok().add(roleService.list()); + } + + @PreAuthorize("hasAuthority('system:role:list')") + @GetMapping("/role/{id}") + @CacheData(tableName = {"sys_role"}) + public R get(@PathVariable("id") Long id) { + return R.ok().add(roleService.getById(id)); + } + + @PreAuthorize("hasAuthority('system:role:save')") + @OperationLog("娣诲姞瑙掕壊") + @PostMapping("/role/save") + public R save(@RequestBody Role role) { + if (!Cools.isEmpty(role.getName()) + && roleService.count(new LambdaQueryWrapper<Role>().eq(Role::getName, role.getName())) > 0) { + return R.error("瑙掕壊鍚嶇О宸插瓨鍦�"); + } + if (!Cools.isEmpty(role.getCode()) + && roleService.count(new LambdaQueryWrapper<Role>().eq(Role::getCode, role.getCode())) > 0) { + return R.error("瑙掕壊鏍囪瘑宸插瓨鍦�"); + } + role.setCreateTime(new Date()); + role.setUpdateTime(new Date()); + if (!roleService.save(role)) { + return R.error("娣诲姞澶辫触"); + } + return R.ok("娣诲姞鎴愬姛"); + } + + @PreAuthorize("hasAuthority('system:role:update')") + @OperationLog("淇敼瑙掕壊") + @PostMapping("/role/update") + public R update(@RequestBody Role role) { + if (!Cools.isEmpty(role.getCode()) && roleService.count(new LambdaQueryWrapper<Role>() + .eq(Role::getCode, role.getCode()) + .ne(Role::getId, role.getId())) > 0) { + return R.error("瑙掕壊鏍囪瘑宸插瓨鍦�"); + } + if (!Cools.isEmpty(role.getName()) && roleService.count(new LambdaQueryWrapper<Role>() + .eq(Role::getName, role.getName()) + .ne(Role::getId, role.getId())) > 0) { + return R.error("瑙掕壊鍚嶇О宸插瓨鍦�"); + } + role.setUpdateTime(new Date()); + if (!roleService.updateById(role)) { + return R.error("淇敼澶辫触"); + } + return R.ok("淇敼鎴愬姛"); + } + + @PreAuthorize("hasAuthority('system:role:remove')") + @OperationLog("鍒犻櫎瑙掕壊") + @PostMapping("/role/remove/{ids}") + @Transactional + public R remove(@PathVariable Long[] ids) { + for (Long roleId : ids) { + if (roleId == 1) { + throw new CoolException("瓒呯骇绠$悊鍛樼姝㈠垹闄�"); + } + + if (!roleService.removeById(roleId)) { + throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�"); + } + if (!roleMenuService.remove(new LambdaQueryWrapper<RoleMenu>().eq(RoleMenu::getRoleId, roleId))) { + throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�"); + } + } + return R.ok("鍒犻櫎鎴愬姛"); + } + + @PreAuthorize("hasAuthority('system:role:list')") + @PostMapping("/role/query") + public R query(@RequestParam(required = false) String condition) { + List<KeyValVo> vos = new ArrayList<>(); + LambdaQueryWrapper<Role> wrapper = new LambdaQueryWrapper<>(); + if (!Cools.isEmpty(condition)) { + wrapper.like(Role::getName, condition); + } + roleService.page(new Page<>(1, 30), wrapper).getRecords().forEach( + item -> vos.add(new KeyValVo(item.getId(), item.getName())) + ); + return R.ok().add(vos); + } + + @PreAuthorize("hasAuthority('system:role:list')") + @PostMapping("/role/export") + public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception { + ExcelUtil.build(ExcelUtil.create(roleService.list(), Role.class), response); + } + + @PreAuthorize("hasAuthority('system:role:list')") + @GetMapping("/role/scope/list") + public R scopeList(@RequestParam Long roleId) { +// List<RoleMenu> list = roleMenuService.list(new LambdaQueryWrapper<RoleMenu>().eq(RoleMenu::getRoleId, roleId)); +// if (!Cools.isEmpty(list)) { +// return R.ok().add(list.stream().map(RoleMenu::getMenuId).collect(Collectors.toList())); +// } + return R.ok().add(roleMenuService.listStrictlyMenuByRoleId(roleId)); + } + + @PreAuthorize("hasAuthority('system:role:update')") + @OperationLog("鍒嗛厤鏉冮檺") + @PostMapping("/role/scope/update") + @Transactional + public R scopeUpdate(@RequestBody RoleScopeParam param) { + Long roleId = param.getId(); + List<Long> menuIds = new ArrayList<>(param.getMenuIds().getChecked()); + menuIds.addAll(param.getMenuIds().getHalfChecked()); + roleMenuService.remove(new LambdaQueryWrapper<RoleMenu>().eq(RoleMenu::getRoleId, roleId)); + for (Long menuId : menuIds) { + if (!roleMenuService.save(new RoleMenu(roleId, menuId))) { + throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�"); + } + } + return R.ok("鍒嗛厤鎴愬姛"); + } + + @PreAuthorize("hasAuthority('system:role:list')") + @GetMapping("/role/list/name/{ids}") + public R listName(@PathVariable Long[] ids) { + List<String> nameList = new ArrayList<>(); + for (Long id : ids) { + nameList.add(roleService.getById(id).getName()); + } + return R.ok().add(nameList); + } + +} -- Gitblit v1.9.1