12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- const rolesService = require('../service/roles.service');
- const util = require('../utils/util');
- module.exports = {
- async list(ctx) {
- const { projectId, name = null, pageNum = 1, pageSize = 10 } = ctx.request.query;
- if (!projectId) {
- return ctx.throw(400, '项目ID不能为空');
- }
- const list = await rolesService.list(projectId, name, pageNum, pageSize);
- const { total } = await rolesService.listCount(projectId, name);
- util.success(ctx, {
- list,
- total,
- pageSize: +pageSize,
- pageNum: +pageNum,
- });
- },
- async listAll(ctx) {
- const { projectId } = ctx.request.query;
- if (!projectId || projectId == '0') {
- return ctx.throw(400, '项目ID不能为空');
- }
- const list = await rolesService.listAll(projectId);
- util.success(ctx, list);
- },
- async create(ctx) {
- const { projectId, name, remark } = ctx.request.body;
- if (!name) {
- return ctx.throw(400, '角色名称不能为空');
- }
- if (projectId == '0' || !projectId) {
- return ctx.throw(400, '请先创建项目');
- }
- if (!util.isNumber(projectId)) {
- return ctx.throw(400, 'projectId不合法');
- }
- const { userId, userName } = util.decodeToken(ctx);
- await rolesService.create(projectId, name, remark, userId, userName);
- util.success(ctx);
- },
- async delete(ctx) {
- const { id, projectId } = ctx.request.body;
- if (!id) {
- return ctx.throw(400, '角色ID不能为空');
- }
- if (!projectId) {
- return ctx.throw(400, '项目ID不能为空');
- }
- await rolesService.delete(id, projectId);
- util.success(ctx);
- },
- async update(ctx) {
- const { id, projectId, name, remark } = ctx.request.body;
- if (!id) {
- return ctx.throw(400, '角色ID不能为空');
- }
- if (!projectId) {
- return ctx.throw(400, '项目ID不能为空');
- }
- await rolesService.update(id, projectId, name, remark);
- util.success(ctx);
- },
- async updateLimits(ctx) {
- const { id, projectId, checked = '', halfChecked = '' } = ctx.request.body;
- if (!id) {
- return ctx.throw(400, '角色ID不能为空');
- }
- if (!projectId) {
- return ctx.throw(400, '项目ID不能为空');
- }
- await rolesService.updateLimits(id, projectId, checked, halfChecked);
- util.success(ctx);
- },
- };
|