jiangping
2023-10-24 349bcef9a96391d22522a3409adf5a89e7e70a95
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
package doumeemes.api.system;
 
import doumeemes.api.BaseController;
import doumeemes.biz.system.SystemRoleBiz;
import doumeemes.core.annotation.pr.PreventRepeat;
import doumeemes.core.model.ApiResponse;
import doumeemes.core.constants.OperaType;
import doumeemes.core.model.PageData;
import doumeemes.core.model.PageWrap;
import doumeemes.core.utils.Constants;
import doumeemes.dao.system.dto.CreateRoleMenuDTO;
import doumeemes.dao.system.dto.CreateRolePermissionDTO;
import doumeemes.dao.system.dto.QuerySystemRoleDTO;
import doumeemes.dao.system.model.SystemDataPermission;
import doumeemes.dao.system.model.SystemRole;
import doumeemes.dao.system.vo.SystemRoleListVO;
import doumeemes.service.system.SystemRoleService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
 
import java.util.ArrayList;
import java.util.List;
 
/**
 * @author Eva.Caesar Liu
 * @date 2022/04/18 18:12
 */
@Api(tags = "系统角色")
@RestController
@RequestMapping("/system/role")
public class SystemRoleController extends BaseController {
 
    @Autowired
    private SystemRoleService systemRoleService;
 
    @Autowired
    private SystemRoleBiz systemRoleBiz;
 
    @PreventRepeat
    @ApiOperation("配置角色菜单")
    @PostMapping("/createRoleMenu")
    @RequiresPermissions("system:role:createRoleMenu")
    public ApiResponse createRoleMenu (@Validated @RequestBody CreateRoleMenuDTO dto) {
        systemRoleBiz.createRoleMenu(dto);
        return ApiResponse.success(null);
    }
 
    @PreventRepeat
    @ApiOperation("配置角色权限")
    @PostMapping("/createRolePermission")
    @RequiresPermissions("system:role:createRolePermission")
    public ApiResponse createRolePermission (@Validated @RequestBody CreateRolePermissionDTO dto) {
        systemRoleBiz.createRolePermission(dto);
        return ApiResponse.success(null);
    }
    @PreventRepeat
    @ApiOperation("配置角色数据权限")
    @PostMapping("/createRoleDataPermission")
    @RequiresPermissions("system:datapermission:create")
    public ApiResponse createRoleDataPermission (@Validated @RequestBody SystemDataPermission dto) {
        systemRoleBiz.createRoleDataPermission(dto);
        return ApiResponse.success(null);
    }
 
    @PreventRepeat
    @ApiOperation("新建")
    @PostMapping("/create")
    @RequiresPermissions("system:role:create")
    public ApiResponse create(@Validated(OperaType.Create.class) @RequestBody SystemRole systemRole) {
        return ApiResponse.success(systemRoleBiz.create(systemRole));
    }
 
    @ApiOperation("删除")
    @GetMapping("/delete/{id}")
    @RequiresPermissions("system:role:delete")
    public ApiResponse deleteById(@PathVariable Integer id) {
        systemRoleBiz.deleteById(id);
        return ApiResponse.success(null);
    }
 
    @ApiOperation("批量删除")
    @GetMapping("/delete/batch")
    @RequiresPermissions("system:role:delete")
    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
        String [] idArray = ids.split(",");
        List<Integer> idList = new ArrayList<>();
        for (String id : idArray) {
            idList.add(Integer.valueOf(id));
        }
        systemRoleBiz.deleteByIdInBatch(idList);
        return ApiResponse.success(null);
    }
 
    @ApiOperation("修改")
    @PostMapping("/updateById")
    @RequiresPermissions("system:role:update")
    public ApiResponse updateById(@Validated(OperaType.Update.class) @RequestBody SystemRole systemRole) {
        systemRoleBiz.updateById(systemRole);
        return ApiResponse.success(null);
    }
 
    @ApiOperation("分页查询")
    @PostMapping("/page")
    @RequiresPermissions("system:role:query")
    public ApiResponse<PageData<SystemRoleListVO>> findPage (@RequestBody PageWrap<QuerySystemRoleDTO> pageWrap) {
        return ApiResponse.success(systemRoleService.findPage(pageWrap));
    }
    @ApiOperation("分页查询")
    @PostMapping("/pageDefault")
    @RequiresPermissions("system:role:query")
    public ApiResponse<PageData<SystemRoleListVO>> pageDefault (@RequestBody PageWrap<QuerySystemRoleDTO> pageWrap) {
        pageWrap.getModel().setType(Constants.ROLETYPE.com_def);
        return ApiResponse.success(systemRoleService.findPage(pageWrap));
    }
 
    @ApiOperation("查询所有")
    @GetMapping("/all")
    @RequiresPermissions("system:role:query")
    public ApiResponse<List<SystemRole>> findAll () {
        SystemRole systemRole = new SystemRole();
        systemRole.setDeleted(Boolean.FALSE);
        return ApiResponse.success(systemRoleService.findList(systemRole));
    }
}