1107
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
const formRules = require("../util/formRules.js");
|
||||
module.exports = {
|
||||
/**
|
||||
* 新增权限
|
||||
* @url admin/system/permission/sys/add 前端调用的url参数地址
|
||||
* data 请求参数 说明
|
||||
* @param {String} permission_id 权限Id,唯一标识
|
||||
* @param {String} permission_name 权限名称,展示用
|
||||
* @param {String} comment 备注
|
||||
* @param {String} url 云函数路径
|
||||
* @param {String} icon 图标
|
||||
* @param {Number} sort 排序(越大越在前面)
|
||||
* @param {String} parent_id 父级id
|
||||
* @param {Boolean} enable 是否启用
|
||||
* @param {Boolean} match_mode 0:完整路径 1:通配符 2:正则表达式
|
||||
* @param {Boolean} curd_category 0:未分类 1:增 2:删 3:改 4:查 5:特殊
|
||||
* @param {Boolean} level 0:未分类 1:子弹级 2:炸弹级 3:榴弹级 4:核弹级
|
||||
* res 返回参数说明
|
||||
* @param {Number} code 错误码,0表示成功
|
||||
* @param {String} msg 详细信息
|
||||
*/
|
||||
main: async (event) => {
|
||||
let { data = {}, userInfo, util, filterResponse, originalParam } = event;
|
||||
let { customUtil, uniID, config, pubFun, vk, db, _ } = util;
|
||||
let { uid } = data;
|
||||
let res = { code: 0, msg: '' };
|
||||
// 业务逻辑开始-----------------------------------------------------------
|
||||
let {
|
||||
permission_id,
|
||||
permission_name,
|
||||
comment,
|
||||
url,
|
||||
icon,
|
||||
sort = 0,
|
||||
parent_id,
|
||||
enable = true,
|
||||
match_mode = 0,
|
||||
curd_category,
|
||||
level
|
||||
} = data;
|
||||
// 参数合法校验开始-----------------------------------------------------------
|
||||
let formRulesRes = await formRules.add(event);
|
||||
if (formRulesRes.code !== 0) {
|
||||
return formRulesRes;
|
||||
}
|
||||
// 参数合法校验结束-----------------------------------------------------------
|
||||
let dbName = "uni-id-permissions";
|
||||
// 检测permission_id是否存在
|
||||
let num = await vk.baseDao.count({
|
||||
dbName,
|
||||
whereJson: {
|
||||
permission_id
|
||||
}
|
||||
});
|
||||
if (num > 0) {
|
||||
return { code: -1, msg: `标识【${permission_id}】不能重复!` };
|
||||
}
|
||||
let dataJson = {
|
||||
permission_id,
|
||||
permission_name,
|
||||
comment,
|
||||
url,
|
||||
icon,
|
||||
sort,
|
||||
parent_id,
|
||||
enable,
|
||||
match_mode,
|
||||
curd_category,
|
||||
level
|
||||
};
|
||||
// 检测parent_id是否不存在
|
||||
if (vk.pubfn.isNotNull(parent_id)) {
|
||||
let num = await vk.baseDao.count({
|
||||
dbName,
|
||||
whereJson: {
|
||||
permission_id: parent_id
|
||||
}
|
||||
});
|
||||
if (num <= 0) {
|
||||
return { code: -1, msg: `父标识【${parent_id}】不存在!` };
|
||||
}
|
||||
} else{
|
||||
delete dataJson.parent_id;
|
||||
}
|
||||
if(url === "" || JSON.stringify(url) === '[""]'){
|
||||
delete dataJson.url;
|
||||
}
|
||||
// 执行数据库API请求
|
||||
res.id = await vk.baseDao.add({
|
||||
dbName,
|
||||
dataJson
|
||||
});
|
||||
return res;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
module.exports = {
|
||||
/**
|
||||
* 删除权限
|
||||
* @url admin/system/permission/sys/delete 前端调用的url参数地址
|
||||
* data 请求参数 说明
|
||||
* @param {String} permission_id 权限Id,唯一标识
|
||||
* res 返回参数说明
|
||||
* @param {Number} code 错误码,0表示成功
|
||||
* @param {String} msg 详细信息
|
||||
*/
|
||||
main: async (event) => {
|
||||
let { data = {}, userInfo, util, filterResponse, originalParam } = event;
|
||||
let { customUtil, uniID, config, pubFun, vk, db, _ } = util;
|
||||
let { uid } = data;
|
||||
let res = { code: 0, msg: '' };
|
||||
// 业务逻辑开始-----------------------------------------------------------
|
||||
let { permission_id } = data;
|
||||
if (vk.pubfn.isNullOne(permission_id)) {
|
||||
return { code: -1, msg: 'permission_id不能为空' };
|
||||
}
|
||||
let dbName = "uni-id-permissions";
|
||||
// 检查是否有子项
|
||||
let num = await vk.baseDao.count({
|
||||
dbName,
|
||||
whereJson: {
|
||||
parent_id: permission_id
|
||||
}
|
||||
});
|
||||
if (num > 0) {
|
||||
return { code: -1, msg: '该项含有子项,请先删除子项!' };
|
||||
}
|
||||
res = uniID.deletePermission({
|
||||
permissionID: permission_id
|
||||
});
|
||||
res.msg = res.message;
|
||||
return res;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
'use strict';
|
||||
module.exports = {
|
||||
/**
|
||||
* 获取权限列表
|
||||
* @url admin/system/permission/sys/getAll 前端调用的url参数地址
|
||||
* res 返回参数说明
|
||||
* @param {Number} code 错误码,0表示成功
|
||||
* @param {String} msg 详细信息
|
||||
*/
|
||||
main: async (event) => {
|
||||
let { data = {}, userInfo, util, filterResponse, originalParam } = event;
|
||||
let { customUtil, uniID, config, pubFun, vk, db, _ } = util;
|
||||
let { uid } = data;
|
||||
let res = { code: 0, msg: "" };
|
||||
// 业务逻辑开始-----------------------------------------------------------
|
||||
res = await vk.system.sysDao.listPermissionToTree({
|
||||
pageIndex: 1,
|
||||
pageSize: 500,
|
||||
whereJson: {
|
||||
parent_id: _.in([null, ""]),
|
||||
permission_id: _.exists(true)
|
||||
},
|
||||
treeProps: {
|
||||
level: 3
|
||||
}
|
||||
});
|
||||
// 业务逻辑结束-----------------------------------------------------------
|
||||
return res;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,97 @@
|
||||
const formRules = require("../util/formRules.js");
|
||||
module.exports = {
|
||||
/**
|
||||
* 修改权限
|
||||
* @url admin/system/permission/sys/update 前端调用的url参数地址
|
||||
* data 请求参数 说明
|
||||
* @param {String} permission_id 权限Id,唯一标识
|
||||
* @param {String} permission_name 权限名称,展示用
|
||||
* @param {String} comment 备注
|
||||
* @param {String} url 云函数路径
|
||||
* @param {String} icon 图标
|
||||
* @param {Number} sort 排序(越大越在前面)
|
||||
* @param {String} parent_id 父级id
|
||||
* @param {Boolean} enable 是否启用
|
||||
* @param {Number} match_mode 0:完整路径 1:通配符 2:正则表达式
|
||||
* @param {Number} curd_category 0:未分类 1:增 2:删 3:改 4:查 5:特殊
|
||||
* @param {Number} level 0:未分类 1:子弹级 2:炸弹级 3:榴弹级 4:核弹级
|
||||
* res 返回参数说明
|
||||
* @param {Number} code 错误码,0表示成功
|
||||
* @param {String} msg 详细信息
|
||||
*/
|
||||
main: async (event) => {
|
||||
let { data = {}, userInfo, util, filterResponse, originalParam } = event;
|
||||
let { customUtil, uniID, config, pubFun, vk, db, _ } = util;
|
||||
let { uid } = data;
|
||||
let res = { code: 0, msg: '' };
|
||||
// 业务逻辑开始-----------------------------------------------------------
|
||||
let {
|
||||
permission_id,
|
||||
permission_name,
|
||||
comment,
|
||||
url,
|
||||
icon,
|
||||
sort = 0,
|
||||
parent_id,
|
||||
enable = true,
|
||||
match_mode = 0,
|
||||
curd_category,
|
||||
level
|
||||
} = data;
|
||||
// 参数合法校验开始-----------------------------------------------------------
|
||||
let formRulesRes = await formRules.update(event);
|
||||
if (formRulesRes.code !== 0) {
|
||||
return formRulesRes;
|
||||
}
|
||||
// 参数合法校验结束-----------------------------------------------------------
|
||||
let dbName = "uni-id-permissions";
|
||||
let dataJson = {
|
||||
permission_name,
|
||||
comment,
|
||||
url,
|
||||
icon,
|
||||
sort,
|
||||
parent_id,
|
||||
enable,
|
||||
match_mode,
|
||||
curd_category,
|
||||
level
|
||||
};
|
||||
// 检测parent_id是否不存在
|
||||
if (vk.pubfn.isNotNull(parent_id)) {
|
||||
let num = await vk.baseDao.count({
|
||||
dbName,
|
||||
whereJson: {
|
||||
permission_id: parent_id
|
||||
}
|
||||
});
|
||||
if (num <= 0) {
|
||||
return { code: -1, msg: `父标识【${parent_id}】不存在!` };
|
||||
}
|
||||
let info = await vk.baseDao.findByWhereJson({
|
||||
dbName,
|
||||
whereJson: {
|
||||
permission_id
|
||||
}
|
||||
});
|
||||
if (vk.pubfn.isNotNull(info) && info.permission_id === parent_id) {
|
||||
return { code: -1, msg: `不可以设置自己为父级` };
|
||||
}
|
||||
} else {
|
||||
dataJson["parent_id"] = _.remove();
|
||||
}
|
||||
if (url === "" || JSON.stringify(url) === '[""]') {
|
||||
dataJson["url"] = _.remove();
|
||||
}
|
||||
// 执行数据库API请求
|
||||
res.num = await vk.baseDao.update({
|
||||
dbName,
|
||||
whereJson: {
|
||||
permission_id
|
||||
},
|
||||
dataJson
|
||||
});
|
||||
return res;
|
||||
}
|
||||
|
||||
}
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
module.exports = {
|
||||
/**
|
||||
* 修改基础信息
|
||||
* @url admin/system/permission/sys/updateBase 前端调用的url参数地址
|
||||
* data 请求参数 说明
|
||||
* @param {String} _id id
|
||||
* @param {Number} sort 排序
|
||||
* @param {Boolean} enable 是否启用
|
||||
* res 返回参数说明
|
||||
* @param {Number} code 错误码,0表示成功
|
||||
* @param {String} msg 详细信息
|
||||
*/
|
||||
main: async (event) => {
|
||||
let { data = {}, userInfo, util, filterResponse, originalParam } = event;
|
||||
let { customUtil, uniID, config, pubFun, vk, db, _ } = util;
|
||||
let { uid } = data;
|
||||
let res = { code: 0, msg: '' };
|
||||
// 业务逻辑开始-----------------------------------------------------------
|
||||
let {
|
||||
_id,
|
||||
sort,
|
||||
enable,
|
||||
} = data;
|
||||
if (vk.pubfn.isNull(_id)) return { code: -1, msg: "_id不能为空" };
|
||||
|
||||
let dbName = "uni-id-permissions";
|
||||
|
||||
// 执行数据库API请求
|
||||
res.num = await vk.baseDao.updateById({
|
||||
dbName,
|
||||
id: _id,
|
||||
dataJson: {
|
||||
sort,
|
||||
enable,
|
||||
},
|
||||
});
|
||||
return res;
|
||||
}
|
||||
|
||||
}
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
module.exports = {
|
||||
/**
|
||||
* 修改权限分类
|
||||
* @url admin/system/permission/sys/updateCategory 前端调用的url参数地址
|
||||
* data 请求参数 说明
|
||||
* @param {String} _id 权限Id
|
||||
* @param {Number} curd_category 0:未分类 1:增 2:删 3:改 4:查 5:特殊
|
||||
* res 返回参数说明
|
||||
* @param {Number} code 错误码,0表示成功
|
||||
* @param {String} msg 详细信息
|
||||
*/
|
||||
main: async (event) => {
|
||||
let { data = {}, userInfo, util, filterResponse, originalParam } = event;
|
||||
let { customUtil, uniID, config, pubFun, vk, db, _ } = util;
|
||||
let { uid } = data;
|
||||
let res = { code: 0, msg: '' };
|
||||
// 业务逻辑开始-----------------------------------------------------------
|
||||
let {
|
||||
_id,
|
||||
curd_category=0,
|
||||
} = data;
|
||||
let dbName = "uni-id-permissions";
|
||||
// 执行数据库API请求
|
||||
res.num = await vk.baseDao.updateById({
|
||||
dbName,
|
||||
id:_id,
|
||||
dataJson:{
|
||||
curd_category
|
||||
}
|
||||
});
|
||||
return res;
|
||||
}
|
||||
|
||||
}
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
module.exports = {
|
||||
/**
|
||||
* 修改权限等级
|
||||
* @url admin/system/permission/sys/updateLevel 前端调用的url参数地址
|
||||
* data 请求参数 说明
|
||||
* @param {String} _id 权限Id
|
||||
* @param {Number} level 0:未分类 1:子弹级 2:炸弹级 3:榴弹级 4:核弹级
|
||||
* res 返回参数说明
|
||||
* @param {Number} code 错误码,0表示成功
|
||||
* @param {String} msg 详细信息
|
||||
*/
|
||||
main: async (event) => {
|
||||
let { data = {}, userInfo, util, filterResponse, originalParam } = event;
|
||||
let { customUtil, uniID, config, pubFun, vk, db, _ } = util;
|
||||
let { uid } = data;
|
||||
let res = { code: 0, msg: '' };
|
||||
// 业务逻辑开始-----------------------------------------------------------
|
||||
let {
|
||||
_id,
|
||||
level=0,
|
||||
} = data;
|
||||
let dbName = "uni-id-permissions";
|
||||
// 执行数据库API请求
|
||||
res.num = await vk.baseDao.updateById({
|
||||
dbName,
|
||||
id:_id,
|
||||
dataJson:{
|
||||
level
|
||||
}
|
||||
});
|
||||
return res;
|
||||
}
|
||||
|
||||
}
|
||||
+46
@@ -0,0 +1,46 @@
|
||||
'use strict';
|
||||
/**
|
||||
* 表单验证
|
||||
*/
|
||||
class Util {
|
||||
constructor() {
|
||||
|
||||
}
|
||||
/**
|
||||
* 添加
|
||||
*/
|
||||
async add(event) {
|
||||
let { data = {}, userInfo, util } = event;
|
||||
let { vk } = util;
|
||||
let res = { code: 0, msg: '' };
|
||||
|
||||
// 验证规则开始 -----------------------------------------------------------
|
||||
let rules = {
|
||||
permission_id: [
|
||||
{ required: true, message: '权限标识不能为空', trigger: 'blur' },
|
||||
],
|
||||
permission_name: [
|
||||
{ required: true, message: '权限名称不能为空', trigger: 'blur' },
|
||||
],
|
||||
sort: [
|
||||
{ type: 'number', message: '排序值必须为数字' }
|
||||
]
|
||||
};
|
||||
// 验证规则结束 -----------------------------------------------------------
|
||||
|
||||
// 开始进行验证
|
||||
res = vk.pubfn.formValidate({
|
||||
data: data,
|
||||
rules: rules
|
||||
});
|
||||
// 返回验证结果
|
||||
return res;
|
||||
}
|
||||
/**
|
||||
* 修改
|
||||
*/
|
||||
async update(event) {
|
||||
return this.add(event);
|
||||
}
|
||||
}
|
||||
module.exports = new Util
|
||||
Reference in New Issue
Block a user