ZHJA_HJGL/HJGL_ZH/BLL/Common/ProjectSet/Project_RolePowerService.cs

75 lines
2.3 KiB
C#
Raw Normal View History

2024-05-08 17:17:11 +08:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BLL
{
public static class Project_RolePowerService
{
/// <summary>
/// 增加项目角色权限
/// </summary>
/// <param name="power"></param>
public static void SaveProject_RolePower(Model.Project_RolePower power)
{
Model.SGGLDB db = Funs.DB;
string newRolePower = BLL.SQLHelper.GetNewID(typeof(Model.Project_RolePower));
Model.Project_RolePower newPower = new Model.Project_RolePower();
newPower.RolePowerId = newRolePower;
newPower.RoleId = power.RoleId;
newPower.MenuId = power.MenuId;
newPower.ProjectId = power.ProjectId;
db.Project_RolePower.InsertOnSubmit(newPower);
db.SubmitChanges();
}
/// <summary>
/// 删除项目角色权限
/// </summary>
/// <param name="postId"></param>
public static void DeleteRolePower(string roleId, string systemValue, string projectId)
{
Model.SGGLDB db = Funs.DB;
var q = from x in db.Project_RolePower
join y in db.Sys_Menu on x.MenuId equals y.MenuId
where x.RoleId == roleId && y.MenuModule == systemValue && x.ProjectId == projectId
select x;
if (q.Count() > 0)
{
db.Project_RolePower.DeleteAllOnSubmit(q);
}
db.SubmitChanges();
}
/// <summary>
/// 根据角色主键获得对应的菜单权限
/// </summary>
/// <param name="roleId">角色主键</param>
/// <returns>菜单ID数组</returns>
public static string[] GetProject_RolePowerMenuIdByRoleId(string roleId, string projectId)
{
var q = Funs.DB.Project_RolePower.Where(e => e.RoleId == roleId && e.ProjectId == projectId);
string[] menuId = new string[q.Count()];
if (q.Count() > 0)
{
int i = 0;
foreach (var menu in q)
{
menuId[i] = menu.MenuId;
i++;
}
return menuId;
}
else
{
return null;
}
}
}
}