BLL/AchieveBLL/MenuBLL.cs
(开头部分) 17KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using AchieveCommon;
using AchieveDALFactory;
using AchieveEntity;
using AchieveInterfaceDAL;
using System;
using System.Data;
using System.Text;
namespace AchieveBLL
{
/// <summary>
/// 菜单(BLL)
/// </summary>
public class MenuBLL
{
private IMenuDAL dal = DALFactory.GetMenuDAL();
public DataTable GetUserMenuData(int userId, int parentid)
{
return dal.GetUserMenuData(userId, parentid);
}
/// <summary>
/// 根据用户主键id查询用户可以访问的菜单 默认2层
/// </summary>
public string GetUserMenu(int id)
{
DataTable dt = dal.GetUserMenu(id);
StringBuilder sb = new StringBuilder();
sb.Append("[");
DataRow[] rows = dt.Select("menuparentid = 0"); //赋权限每个角色都必须有父节点的权限,否则一个都不输出了
if (rows.Length > 0)
{
for (int i = 0; i < rows.Length; i++)
{
string stateStr = "open";// "closed";
if (i == 0)
{
stateStr = "open";
}
sb.Append("{\"id\":\"" + rows[i]["menuid"].ToString() + "\",\"text\":\"" + rows[i]["menuname"].ToString() + "\",\"iconCls\":\"" + rows[i]["icon"].ToString() + "\",\"state\":\"" + stateStr + "\",\"children\":[");
sb.Append(GetChildMenuStr(dt, rows[i]["menuid"].ToString(), stateStr));
}
sb.Remove(sb.Length - 1, 1);
sb.Append("]");
}
else
{
sb.Append("]");
}
return sb.ToString();
}
public string GetChildMenuStr(DataTable dt, string menuid, string stateStr)
{
StringBuilder sb = new StringBuilder();
DataRow[] r_list = dt.Select(string.Format("menuparentid={0}", menuid));
if (r_list.Length > 0)
{
for (int j = 0; j < r_list.Length; j++)
后面还有 329 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。