FineAdmin.Service/Permissions/ModuleService.cs
(开头部分) 5KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using FineAdmin.IService;
using FineAdmin.Model;
using FineAdmin.IRepository;
namespace FineAdmin.Service
{
public class ModuleService : BaseService<ModuleModel>, IModuleService
{
public IModuleRepository ModuleRepository { get; set; }
public IButtonService ButtonService { get; set; }
public IRoleAuthorizeService RoleAuthorizeService { get; set; }
public dynamic GetListByFilter(ModuleModel filter, PageInfo pageInfo)
{
throw new NotImplementedException();
}
/// <summary>
/// 获得菜单列表
/// </summary>
/// <param name="roleId"></param>
/// <returns></returns>
public dynamic GetModuleList(int roleId)
{
IEnumerable<ModuleModel> allMenus = GetModuleListByRoleId(roleId);
List<Tree> treeList = new List<Tree>();
var rootMenus = allMenus.Where(x => x.ParentId == 0).OrderBy(x => x.SortCode);
foreach (var item in rootMenus)
{
var _tree = new Tree { id = item.Id, title = item.FullName, href = item.UrlAddress, fontFamily = item.FontFamily, icon = item.Icon };
GetModuleListByModuleId(treeList, allMenus, _tree, item.Id);
treeList.Add(_tree);
}
var result = treeList;
return result;
}
/// <summary>
/// 根据一级菜单加载子菜单列表
/// </summary>
/// <param name="treeList"></param>
/// <param name="allMenus"></param>
/// <param name="tree"></param>
/// <param name="moduleId"></param>
private void GetModuleListByModuleId(List<Tree> treeList, IEnumerable<ModuleModel> allMenus, Tree tree, int moduleId)
{
var childMenus = allMenus.Where(x => x.ParentId == moduleId).OrderBy(x => x.SortCode);
if (childMenus != null && childMenus.Count() > 0)
{
List<Tree> _children = new List<Tree>();
foreach (var item in childMenus)
{
var _tree = new Tree { id = item.Id, title = item.FullName, href = item.UrlAddress, fontFamily = item.FontFamily, icon = item.Icon };
_children.Add(_tree);
tree.children = _children;
后面还有 82 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
