You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
105 lines
4.4 KiB
105 lines
4.4 KiB
// 菜单权限映射(按 menu_type 排序)
|
|
export const permissionMapping = {
|
|
System_Management: 1, // 系统管理
|
|
|
|
// menu_type 2: 主功能菜单
|
|
Workbench: 2, // 工作台
|
|
Financial_Audit: 3, // 财务审核
|
|
Exchange_Rate_Management: 4, // 汇率管理
|
|
Recharge_Management: 5, // 充值管理
|
|
Consumption_Management: 6, // 消耗管理
|
|
Refund_Management: 7, // 退款管理
|
|
Customer_Account_Details: 8, // 客户账户明细
|
|
History: 56, // 历史数据查询
|
|
|
|
|
|
Permission_Management: 9, // 权限管理
|
|
|
|
// menu_type 3: 子功能菜单
|
|
Gold_Coin_Recharge: 34, // 金币充值
|
|
Gold_Coin_Consumption: 35, // 金币消耗
|
|
Gold_Coin_Refund: 37, // 金币退款
|
|
Gold_Coin_Audit: 40, // 金币审核
|
|
|
|
Golden_Bean_Recharge: 41, // 金豆充值
|
|
Golden_Bean_Consumption: 42, // 金豆消耗
|
|
Golden_Bean_Audit: 43, // 金豆审核
|
|
|
|
Gold_Coin_Customer_Account_Details: 44, // 金币客户账户明细
|
|
Golden_Bean_Customer_Account_Details: 45, // 金豆客户账户明细
|
|
|
|
// menu_type 4: 功能操作权限
|
|
Workbench_Display: 10, // 工作台展示
|
|
View_Recharge_Audit: 11, // 查看充值审核 // 有这个页面权限的就有
|
|
Recharge_Approval: 12, // 充值审批 //细致划分
|
|
View_Refund_Audit: 13, // 查看退款审核 // 有这个页面权限的就有
|
|
Refund_Approval: 14, // 退款审批 //细致划分
|
|
|
|
Exchange_Rate_View: 15, // 汇率查看
|
|
Exchange_Rate_Modification: 16, // 汇率修改
|
|
|
|
Submit_Gold_Coin_Recharge: 17, // 提交金币充值 // coinRecharge页面
|
|
View_Gold_Coin_Recharge_Details: 18, // 查看金币充值明细 // coinRecharge页面
|
|
|
|
Submit_Gold_Coin_Consumption: 19, // 提交金币消耗 // coinConsume页面
|
|
View_Gold_Coin_Consumption_Details: 20, // 查看金币消耗明细 // coinConsume页面
|
|
|
|
Submit_Gold_Coin_Refund: 21, // 提交金币退款 // coinRefund页面
|
|
View_Gold_Coin_Refund_Details: 22, // 查看金币退款明细 // coinRefund页面
|
|
|
|
View_Gold_Coin_Details: 23, // 查看金币明细 //usergold页面
|
|
View_Gold_Coin_Balance: 24, // 查看金币余额 //usergold页面
|
|
|
|
View_Permission: 25, // 查看权限
|
|
Add_User: 26, // 新增用户
|
|
|
|
Change_Status: 27, // 改变状态
|
|
Modify_Permission: 28, // 修改权限
|
|
Delete_User: 29, // 删除用户
|
|
|
|
View_Role: 30, // 查看角色
|
|
Edit_Role: 36, // 编辑角色
|
|
|
|
Recharge_Audit: 31, // 充值审核(金币) // audit页面
|
|
Refund_Audit: 32, // 退款审核(金币) // audit页面,
|
|
|
|
History_Query: 57, // 历史数据查询
|
|
|
|
|
|
// 新增的金豆相关权限
|
|
Submit_Golden_Bean_Recharge: 46, // 提交金豆充值
|
|
View_Golden_Bean_System_Recharge_Details: 47, // 查看金豆系统充值明细
|
|
View_Golden_Bean_Online_Recharge_Details: 48, // 查看金豆线上充值明细
|
|
Submit_Golden_Bean_Consumption: 49, // 提交金豆消耗
|
|
View_Golden_Bean_Live_Consumption_Details: 50, // 查看金豆直播消耗明细
|
|
View_Golden_Bean_Fan_Consumption_Details: 51, // 查看金豆铁粉消耗明细
|
|
View_Golden_Bean_Article_Video_Consumption_Details: 52, // 查看金豆文章/视频消耗明细
|
|
View_Golden_Bean_Balance: 53, // 查看金豆余额
|
|
View_Golden_Bean_Recharge_Audit: 54, // 查看金豆充值审核
|
|
Golden_Bean_Recharge_Approval: 55 // 金豆充值审批
|
|
};
|
|
|
|
// 递归查找菜单中是否存在目标id
|
|
export const findMenuById = (menuList, targetId) => {
|
|
for (const menu of menuList) {
|
|
if (menu.id === targetId) {
|
|
return true; // 找到目标菜单
|
|
}
|
|
// 如果有子菜单,递归查找
|
|
if (menu.children && menu.children.length > 0) {
|
|
const found = findMenuById(menu.children, targetId);
|
|
if (found) return true;
|
|
}
|
|
}
|
|
return false;
|
|
};
|
|
|
|
// 递归判断某个 menuId 是否存在
|
|
export const hasMenuPermission = (tree, targetId) => {
|
|
for (const node of tree) {
|
|
console.log(node.id)
|
|
if (node.id === targetId) return true;
|
|
if (node.children && hasMenuPermission(node.children, targetId)) return true;
|
|
}
|
|
return false;
|
|
};
|