From c983d4642b2aeeceb6442badaebd1b7bab7943eb Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期四, 15 二月 2024 16:52:14 +0800 Subject: [PATCH] # --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/sys/controller/RoleController.java | 94 ++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 84 insertions(+), 10 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/sys/controller/RoleController.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/sys/controller/RoleController.java index 244ef07..0aadef7 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/sys/controller/RoleController.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/sys/controller/RoleController.java @@ -1,13 +1,18 @@ package com.zy.asrs.wcs.sys.controller; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.zy.asrs.framework.common.Cools; import com.zy.asrs.framework.common.R; import com.zy.asrs.wcs.common.annotation.OperationLog; -import com.zy.asrs.wcs.sys.entity.User; +import com.zy.asrs.wcs.common.domain.BaseParam; +import com.zy.asrs.wcs.common.domain.PageParam; +import com.zy.asrs.wcs.sys.entity.Role; +import com.zy.asrs.wcs.sys.service.RoleService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; -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 org.springframework.web.bind.annotation.*; + +import java.util.Arrays; /** * Created by vincent on 2/13/2024 @@ -16,11 +21,80 @@ @RequestMapping("/api") public class RoleController extends BaseController { - @PreAuthorize("hasAuthority('sys:auth:user')") - @OperationLog - @PutMapping("/role/page") - public R updateInfo(@RequestBody User user) { - return R.ok(); + @Autowired + private RoleService roleService; + + @PreAuthorize("hasAuthority('sys:role:list')") + @PostMapping("/role/page") + public R page(@RequestBody BaseParam param) { + PageParam<Role, BaseParam> page = new PageParam<>(param); + return R.ok().add(roleService.page(page, page.getWrapper())); + } + + @PreAuthorize("hasAuthority('sys:role:list')") + @PostMapping("/role/list") + public R list(@RequestBody BaseParam param) { + return R.ok().add(roleService.list()); + } + + @PreAuthorize("hasAuthority('sys:role:list')") + @GetMapping("/role/{id}") + public R get(@PathVariable("id") Long id) { + return R.ok().add(roleService.getById(id)); + } + + @PreAuthorize("hasAuthority('sys: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("瑙掕壊鏍囪瘑宸插瓨鍦�"); + } + if (!roleService.save(role)) { + return R.error("娣诲姞澶辫触"); + } + return R.ok("娣诲姞鎴愬姛"); + } + + @PreAuthorize("hasAuthority('sys: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("瑙掕壊鍚嶇О宸插瓨鍦�"); + } + if (!roleService.updateById(role)) { + return R.error("淇敼澶辫触"); + } + return R.ok("淇敼鎴愬姛"); + } + + @PreAuthorize("hasAuthority('sys:role:remove')") + @OperationLog("鍒犻櫎瑙掕壊") + @PostMapping("/role/remove/{ids}") + public R remove(@PathVariable Long[] ids) { + if (!roleService.removeByIds(Arrays.asList(ids))) { + return R.error("鍒犻櫎澶辫触"); + } + return R.ok("鍒犻櫎鎴愬姛"); + } + + @PreAuthorize("hasAuthority('sys:role:list')") + @PostMapping("/role/export") + public R export(@RequestBody Role role) { + return R.ok("瀵煎嚭鎴愬姛"); } } -- Gitblit v1.9.1