admin 2 anos atrás
pai
commit
d3b487b0de

+ 7 - 7
src/Hotline.Api/Controllers/HomeController.cs

@@ -183,13 +183,13 @@ public class HomeController : BaseController
     /// 获取当前用户所有按钮
     /// </summary>
     /// <returns></returns>
-    [AllowAnonymous]
-    [HttpGet("get-my-auth-button")]
-    public async Task<IReadOnlyList<string>> GetUserAuthorityButtonByToken()
-    {
-        var roles = _sessionContext.Roles;
-        return await _systemAuthorityRepository.GetMyButton(roles);
-    }
+    //[AllowAnonymous]
+    //[HttpGet("get-my-auth-button")]
+    //public async Task<IReadOnlyList<string>> GetUserAuthorityButtonByToken()
+    //{
+    //    var roles = _sessionContext.Roles;
+    //    return await _systemAuthorityRepository.GetMyButton(roles);
+    //}
 
 
 

+ 7 - 0
src/Hotline.Api/Controllers/OrderController.cs

@@ -3,6 +3,7 @@ using Hotline.FlowEngine.Definitions;
 using Hotline.FlowEngine.Workflows;
 using Hotline.Orders;
 using Hotline.Orders.Notifications;
+using Hotline.Permissions;
 using Hotline.Repository.SqlSugar.Extensions;
 using Hotline.Settings;
 using Hotline.Settings.Hotspots;
@@ -70,6 +71,7 @@ public class OrderController : BaseController
     /// </summary>
     /// <param name="dto"></param>
     /// <returns></returns>
+    [Permission(EPermission.OrderQuery)]
     [HttpGet]
     public async Task<PagedDto<OrderDto>> Query([FromQuery] QueryOrderDto dto)
     {
@@ -102,6 +104,7 @@ public class OrderController : BaseController
     /// </summary>
     /// <param name="dto"></param>
     /// <returns></returns>
+    [Permission(EPermission.OrderHistory)]
     [HttpGet("history")]
     public async Task<PagedDto<OrderDto>> Query([FromQuery] QueryOrderHistoryDto dto)
     {
@@ -118,6 +121,7 @@ public class OrderController : BaseController
     /// </summary>
     /// <param name="id"></param>
     /// <returns></returns>
+    [Permission(EPermission.GetOrder)]
     [HttpGet("{id}")]
     public async Task<OrderDto> Get(string id)
     {
@@ -149,6 +153,7 @@ public class OrderController : BaseController
     /// </summary>
     /// <param name="dto"></param>
     /// <returns></returns>
+    [Permission(EPermission.OrderAdd)]
     [HttpPost]
     public async Task<string> Add([FromBody] AddOrderDto dto)
     {
@@ -162,6 +167,7 @@ public class OrderController : BaseController
     /// </summary>
     /// <param name="id"></param>
     /// <returns></returns>
+    [Permission(EPermission.OrderRemove)]
     [HttpDelete("{id}")]
     public async Task Remove(string id)
     {
@@ -177,6 +183,7 @@ public class OrderController : BaseController
     /// </summary>
     /// <param name="dto"></param>
     /// <returns></returns>
+    [Permission(EPermission.OrderUpdate)]
     [HttpPut]
     public async Task Update([FromBody] UpdateOrderDto dto)
     {

+ 72 - 72
src/Hotline.Api/Controllers/SysController.cs

@@ -24,7 +24,7 @@ namespace Hotline.Api.Controllers
         private readonly ISystemSettingRepository _systemSettingsRepository;
         private readonly ISystemSettingGroupRepository _systemSettingGroupRepository;
         private readonly ISystemMenuRepository _systemMenuRepository;
-        private readonly ISystemButtonRepository _systemButtonRepository;
+        //private readonly ISystemButtonRepository _systemButtonRepository;
         private readonly ISysDicTypeRepository _sysDicTypeRepository;
         private readonly ISysDicDataRepository _sysDicDataRepository;
         
@@ -44,7 +44,7 @@ namespace Hotline.Api.Controllers
             ISystemSettingRepository systemSettingsRepository,
             ISystemSettingGroupRepository systemSettingGroupRepository,
             ISystemMenuRepository systemMenuRepository,
-            ISystemButtonRepository systemButtonRepository,
+            //ISystemButtonRepository systemButtonRepository,
             ISysDicTypeRepository sysDicTypeRepository,
             ISysDicDataRepository sysDicDataRepository)
         {
@@ -52,7 +52,7 @@ namespace Hotline.Api.Controllers
             _systemSettingsRepository = systemSettingsRepository;
             _systemSettingGroupRepository = systemSettingGroupRepository;
             _systemMenuRepository = systemMenuRepository;
-            _systemButtonRepository = systemButtonRepository;
+            //_systemButtonRepository = systemButtonRepository;
             _sysDicTypeRepository = sysDicTypeRepository;
             _sysDicDataRepository = sysDicDataRepository;
         }
@@ -155,9 +155,9 @@ namespace Hotline.Api.Controllers
             if (ishavemenu)
                 throw UserFriendlyException.SameMessage("存在下级菜单,暂时不能删除");
             //检查是否存在按钮
-            var ishavebutton = await _systemButtonRepository.AnyAsync(x => x.MenuId == id);
-            if (ishavebutton)
-                throw UserFriendlyException.SameMessage("存在按钮权限,暂时不能删除");
+            //var ishavebutton = await _systemButtonRepository.AnyAsync(x => x.MenuId == id);
+            //if (ishavebutton)
+            //    throw UserFriendlyException.SameMessage("存在按钮权限,暂时不能删除");
 
             await _systemMenuRepository.RemoveAsync(id, false, HttpContext.RequestAborted);
         }
@@ -179,76 +179,76 @@ namespace Hotline.Api.Controllers
 
         #region 按钮管理
 
-        /// <summary>
-        /// 通过菜单ID获取按钮列表
-        /// </summary>
-        /// <param name="menuid"></param>
-        /// <returns></returns>
-        [Permission(EPermission.GetButtonByMenu)]
-        [HttpGet("getbuttonmenu")]
-        public async Task<IReadOnlyList<SystemButton>> GetButtonByMenu(string menuid)
-        {
-            return await _systemButtonRepository.QueryAsync(x => x.MenuId == menuid);
-        }
+        ///// <summary>
+        ///// 通过菜单ID获取按钮列表
+        ///// </summary>
+        ///// <param name="menuid"></param>
+        ///// <returns></returns>
+        //[Permission(EPermission.GetButtonByMenu)]
+        //[HttpGet("getbuttonmenu")]
+        //public async Task<IReadOnlyList<SystemButton>> GetButtonByMenu(string menuid)
+        //{
+        //    return await _systemButtonRepository.QueryAsync(x => x.MenuId == menuid);
+        //}
 
-        /// <summary>
-        /// 新增按钮
-        /// </summary>
-        /// <param name="dto"></param>
-        /// <returns></returns>
-        [Permission(EPermission.AddButton)]
-        [HttpPost("add-button")]
-        public async Task AddButton([FromBody] AddButtonDto dto)
-        {
-            var button = _mapper.Map<SystemButton>(dto);
-            await _systemButtonRepository.AddAsync(button);
-        }
+        ///// <summary>
+        ///// 新增按钮
+        ///// </summary>
+        ///// <param name="dto"></param>
+        ///// <returns></returns>
+        //[Permission(EPermission.AddButton)]
+        //[HttpPost("add-button")]
+        //public async Task AddButton([FromBody] AddButtonDto dto)
+        //{
+        //    var button = _mapper.Map<SystemButton>(dto);
+        //    await _systemButtonRepository.AddAsync(button);
+        //}
 
-        /// <summary>
-        /// 编辑按钮
-        /// </summary>
-        /// <param name="dto"></param>
-        /// <returns></returns>
-        [Permission(EPermission.UpdateButton)]
-        [HttpPost("update-button")]
-        public async Task UpdateButton([FromBody] UpdateButtonDto dto)
-        {
-            var button = await _systemButtonRepository.GetAsync(dto.Id, HttpContext.RequestAborted);
-            if (button is null)
-                throw UserFriendlyException.SameMessage("无效按钮");
-            _mapper.Map(dto, button);
-            await _systemButtonRepository.UpdateAsync(button);
-        }
+        ///// <summary>
+        ///// 编辑按钮
+        ///// </summary>
+        ///// <param name="dto"></param>
+        ///// <returns></returns>
+        //[Permission(EPermission.UpdateButton)]
+        //[HttpPost("update-button")]
+        //public async Task UpdateButton([FromBody] UpdateButtonDto dto)
+        //{
+        //    var button = await _systemButtonRepository.GetAsync(dto.Id, HttpContext.RequestAborted);
+        //    if (button is null)
+        //        throw UserFriendlyException.SameMessage("无效按钮");
+        //    _mapper.Map(dto, button);
+        //    await _systemButtonRepository.UpdateAsync(button);
+        //}
 
-        /// <summary>
-        /// 删除按钮
-        /// </summary>
-        /// <param name="id"></param>
-        /// <returns></returns>
-        [Permission(EPermission.RemoveButton)]
-        [HttpDelete("removebutton/{id}")]
-        public async Task RemoveButton(string id)
-        {
-            var button = await _systemButtonRepository.GetAsync(id, HttpContext.RequestAborted);
-            if (button is null)
-                throw UserFriendlyException.SameMessage("无效按钮");
-            await _systemButtonRepository.RemoveAsync(id, false, HttpContext.RequestAborted);
-        }
+        ///// <summary>
+        ///// 删除按钮
+        ///// </summary>
+        ///// <param name="id"></param>
+        ///// <returns></returns>
+        //[Permission(EPermission.RemoveButton)]
+        //[HttpDelete("removebutton/{id}")]
+        //public async Task RemoveButton(string id)
+        //{
+        //    var button = await _systemButtonRepository.GetAsync(id, HttpContext.RequestAborted);
+        //    if (button is null)
+        //        throw UserFriendlyException.SameMessage("无效按钮");
+        //    await _systemButtonRepository.RemoveAsync(id, false, HttpContext.RequestAborted);
+        //}
 
-        /// <summary>
-        /// 获取按钮对象
-        /// </summary>
-        /// <param name="id"></param>
-        /// <returns></returns>
-        [Permission(EPermission.GetButton)]
-        [HttpGet("button/{id}")]
-        public async Task<SystemButton> GetButton(string id)
-        {
-            var button = await _systemButtonRepository.GetAsync(id, HttpContext.RequestAborted);
-            if (button is null)
-                throw UserFriendlyException.SameMessage("无效按钮");
-            return button;
-        }
+        ///// <summary>
+        ///// 获取按钮对象
+        ///// </summary>
+        ///// <param name="id"></param>
+        ///// <returns></returns>
+        //[Permission(EPermission.GetButton)]
+        //[HttpGet("button/{id}")]
+        //public async Task<SystemButton> GetButton(string id)
+        //{
+        //    var button = await _systemButtonRepository.GetAsync(id, HttpContext.RequestAborted);
+        //    if (button is null)
+        //        throw UserFriendlyException.SameMessage("无效按钮");
+        //    return button;
+        //}
 
 
         #endregion

+ 17 - 0
src/Hotline.Api/Controllers/WorkflowController.cs

@@ -2,6 +2,7 @@
 using Hotline.FlowEngine.Definitions;
 using Hotline.FlowEngine.Workflows;
 using Hotline.Identity.Roles;
+using Hotline.Permissions;
 using Hotline.Repository.SqlSugar.Extensions;
 using Hotline.Settings;
 using Hotline.Share.Dtos;
@@ -66,6 +67,7 @@ public class WorkflowController : BaseController
     /// </summary>
     /// <param name="dto"></param>
     /// <returns></returns>
+    [Permission(EPermission.FlowDefinitionQuery)]
     [HttpGet("definition")]
     public async Task<PagedDto<DefinitionDto>> QueryDefinitions([FromQuery] PagedRequest dto)
     {
@@ -106,6 +108,7 @@ public class WorkflowController : BaseController
     /// </summary>
     /// <param name="id"></param>
     /// <returns></returns>
+    [Permission(EPermission.GetFlow)]
     [HttpGet("definition/{id}")]
     public async Task<DefinitionDto> GetDefinition(string id)
     {
@@ -119,6 +122,7 @@ public class WorkflowController : BaseController
     /// </summary>
     /// <param name="dto"></param>
     /// <returns></returns>
+    [Permission(EPermission.FlowDefinitionAdd)]
     [HttpPost("definition")]
     public async Task<string> AddDefinition([FromBody] AddDefinitionDto dto)
     {
@@ -130,6 +134,7 @@ public class WorkflowController : BaseController
     /// </summary>
     /// <param name="dto"></param>
     /// <returns></returns>
+    [Permission(EPermission.FlowDefinitionUpdate)]
     [HttpPut("definition")]
     public async Task UpdateDefinition([FromBody] UpdateDefinitionDto dto)
     {
@@ -154,6 +159,7 @@ public class WorkflowController : BaseController
     /// <param name="id"></param>
     /// <returns></returns>
     /// <exception cref="UserFriendlyException"></exception>
+    [Permission(EPermission.FlowDefinitionRemove)]
     [HttpDelete("definition/{id}")]
     public async Task RemoveDefinition(string id)
     {
@@ -168,6 +174,7 @@ public class WorkflowController : BaseController
     /// 发布(列表操作)
     /// </summary>
     /// <returns></returns>
+    [Permission(EPermission.FlowDefinitionPublish)]
     [HttpPost("definition/{id}/publish")]
     public async Task Publish(string id)
     {
@@ -178,6 +185,7 @@ public class WorkflowController : BaseController
     /// 发布(保存并发布)
     /// </summary>
     /// <returns></returns>
+    [Permission(EPermission.FlowDefinitionPublish)]
     [HttpPost("definition/publish")]
     public async Task Publish([FromBody] AddDefinitionDto dto)
     {
@@ -189,6 +197,7 @@ public class WorkflowController : BaseController
     /// </summary>
     /// <returns></returns>
     /// <exception cref="UserFriendlyException"></exception>
+    [Permission(EPermission.FlowDefinitionEnable)]
     [HttpPost("definition/{id}/enable")]
     public async Task Enable(string id)
     {
@@ -211,6 +220,7 @@ public class WorkflowController : BaseController
     /// </summary>
     /// <returns></returns>
     /// <exception cref="UserFriendlyException"></exception>
+    [Permission(EPermission.FlowDefinitionDisable)]
     [HttpPost("definition/{id}/disable")]
     public async Task Disable(string id)
     {
@@ -231,6 +241,7 @@ public class WorkflowController : BaseController
     /// </summary>
     /// <param name="dto"></param>
     /// <returns></returns>
+    [Permission(EPermission.FlowQuery)]
     [HttpGet]
     public async Task<PagedDto<WorkflowDto>> QueryPaged([FromQuery] QueryWorkflowPagedDto dto)
     {
@@ -257,6 +268,7 @@ public class WorkflowController : BaseController
     /// <summary>
     /// 办理节点
     /// </summary>
+    [Permission(EPermission.FlowNext)]
     [HttpPost("next")]
     public async Task Next([FromBody] NextWorkflowDto dto)
     {
@@ -266,6 +278,7 @@ public class WorkflowController : BaseController
     /// <summary>
     /// 退回(返回前一节点)
     /// </summary>
+    [Permission(EPermission.FlowPrevious)]
     [HttpPost("previous")]
     public async Task Previous([FromBody] PreviousWorkflowDto dto)
     {
@@ -290,6 +303,7 @@ public class WorkflowController : BaseController
     /// </summary>
     /// <param name="dto"></param>
     /// <returns></returns>
+    [Permission(EPermission.FlowJump)]
     [HttpPost("jump")]
     public async Task Jump([FromBody] RecallDto dto)
     {
@@ -303,6 +317,7 @@ public class WorkflowController : BaseController
     /// </summary>
     /// <param name="workflowId"></param>
     /// <returns></returns>
+    [Permission(EPermission.FlowTerminate)]
     [HttpPost("{workflowId}/terminate")]
     public async Task Terminate(string workflowId)
     {
@@ -314,6 +329,7 @@ public class WorkflowController : BaseController
     /// </summary>
     /// <param name="dto"></param>
     /// <returns></returns>
+    [Permission(EPermission.FlowSupplement)]
     [HttpPost("supplement")]
     public async Task Supplement([FromBody] SupplementDto dto)
     {
@@ -339,6 +355,7 @@ public class WorkflowController : BaseController
     /// </summary>
     /// <param name="workflowId"></param>
     /// <returns></returns>
+    [Permission(EPermission.FlowJump)]
     [HttpGet("{workflowId}/recall")]
     public async Task<IReadOnlyList<StepDefineDto>> GetRecallOptions(string workflowId)
     {

+ 16 - 16
src/Hotline.Repository.SqlSugar/System/SystemAuthorityRepository.cs

@@ -38,21 +38,21 @@ namespace Hotline.Repository.SqlSugar.System
         /// </summary>
         /// <param name="roles"></param>
         /// <returns></returns>
-        public async Task<IReadOnlyList<string>> GetMyButton(string[] roles)
-        {
-            if (roles.Contains("sysadmin_role"))
-            {
-                return await Db.Queryable<SystemButton>().Select(x => x.PermissionCode).ToListAsync();
-            }
-            var list = await Db.Queryable<SystemAuthority>()
-                .Where(x => roles.Contains(x.RoleCode)).ToListAsync();
-            var buttonarr = new List<string>();
-            foreach (var item in list)
-            {
-                buttonarr.AddRange(item.SystemButtonArr);
-            }
-            return buttonarr.Distinct().ToList();
-        }
+        //public async Task<IReadOnlyList<string>> GetMyButton(string[] roles)
+        //{
+        //    if (roles.Contains("sysadmin_role"))
+        //    {
+        //        return await Db.Queryable<SystemButton>().Select(x => x.PermissionCode).ToListAsync();
+        //    }
+        //    var list = await Db.Queryable<SystemAuthority>()
+        //        .Where(x => roles.Contains(x.RoleCode)).ToListAsync();
+        //    var buttonarr = new List<string>();
+        //    foreach (var item in list)
+        //    {
+        //        buttonarr.AddRange(item.SystemButtonArr);
+        //    }
+        //    return buttonarr.Distinct().ToList();
+        //}
 
         /// <summary>
         /// 获取当前用户所有功能点(包含菜单和按钮)
@@ -74,7 +74,7 @@ namespace Hotline.Repository.SqlSugar.System
             foreach (var item in list)
             {
                 permissionarr.AddRange(item.SystemMenuArr);
-                permissionarr.AddRange(item.SystemButtonArr);
+                //permissionarr.AddRange(item.SystemButtonArr);
             }
             return permissionarr.Distinct().ToList();
         }

+ 6 - 6
src/Hotline.Repository.SqlSugar/System/SystemButtonRepository.cs

@@ -10,10 +10,10 @@ using XF.Domain.Dependency;
 
 namespace Hotline.Repository.SqlSugar.System
 {
-    public class SystemButtonRepository : BaseRepository<SystemButton>, ISystemButtonRepository, IScopeDependency
-    {
-        public SystemButtonRepository(ISugarUnitOfWork<HotlineDbContext> uow, IDataPermissionFilterBuilder dataPermissionFilterBuilder) : base(uow, dataPermissionFilterBuilder)
-        {
-        }
-    }
+    //public class SystemButtonRepository : BaseRepository<SystemButton>, ISystemButtonRepository, IScopeDependency
+    //{
+    //    public SystemButtonRepository(ISugarUnitOfWork<HotlineDbContext> uow, IDataPermissionFilterBuilder dataPermissionFilterBuilder) : base(uow, dataPermissionFilterBuilder)
+    //    {
+    //    }
+    //}
 }

+ 2 - 2
src/Hotline.Repository.SqlSugar/System/SystemMenuRepository.cs

@@ -22,7 +22,7 @@ namespace Hotline.Repository.SqlSugar.System
         {
             var list = await Db.Queryable<SystemMenu>()
                 .OrderBy(x => x.DisplayOrder)
-                .Includes(t => t.ButtonArr)
+                //.Includes(t => t.ButtonArr)
                 .ToTreeAsync(x => x.children, it => it.ParentId, "");
             return list;
         }
@@ -58,7 +58,7 @@ namespace Hotline.Repository.SqlSugar.System
             else
             {
                 var menulist = await Db.Queryable<SystemMenu>()
-                    .Where(x => x.IsFast).ToListAsync();
+                    .Where(x => (x.IsFast && x.IsFast)).ToListAsync();
                 return menulist;
             }
 

+ 10 - 7
src/Hotline.Share/Dtos/Menu/MenuDto.cs

@@ -1,24 +1,27 @@
-namespace Hotline.Share.Dtos.Menu
+using Hotline.Share.Enums.Settings;
+
+namespace Hotline.Share.Dtos.Menu
 {
     public record AddMenuDto
     {
         public string PageName { get; set; }
         public int DisplayOrder { get; set; }
+        public EMenuType MenuType { get; set; }
         public string ParentId { get; set; }
         public string PermissionCode { get; set; }
-        public bool IsHide { get; set; }
+        public bool? IsHide { get; set; }
         public string Redirect { get; set; }
 
         public string Path { get; set; }
-        public bool IsKeepAlive { get; set; }
-        public bool IsAffix { get; set; }
-        public bool IsIframe { get; set; }
+        public bool? IsKeepAlive { get; set; }
+        public bool? IsAffix { get; set; }
+        public bool? IsIframe { get; set; }
         public string RuleName { get; set; }
         public string Component { get; set; }
         public string Icon { get; set; }
-        public bool IsLink { get; set; }
+        public bool? IsLink { get; set; }
         public string Link { get; set; }
-        public bool IsFast { get; set; }
+        public bool? IsFast { get; set; }
         public string FastIcon { get; set; }
     }
 

+ 15 - 0
src/Hotline.Share/Enums/Settings/EMenuType.cs

@@ -0,0 +1,15 @@
+
+using System.ComponentModel;
+
+namespace Hotline.Share.Enums.Settings
+{
+    public enum EMenuType
+    {
+        [Description("目录")]
+        Catalogue = 1,
+        [Description("菜单")]
+        Menu = 2,
+        [Description("按钮")]
+        Button = 3,
+    }
+}

+ 185 - 214
src/Hotline/Permissions/EPermission.cs

@@ -25,11 +25,11 @@ namespace Hotline.Permissions
         SystemManage = 100000,
 
         /// <summary>
-        /// 机构用户
+        /// 组织架构
         /// </summary>
-        [Display(GroupName = "系统管理", Name = "机构用户", Description = "机构用户")]
+        [Display(GroupName = "系统管理", Name = "组织架构", Description = "组织架构")]
         UserManage = 100100,
-        #region 用户管理
+        #region 用户管理(100100)
         /// <summary>
         /// 分页查询用户
         /// </summary>
@@ -61,7 +61,7 @@ namespace Hotline.Permissions
         [Display(GroupName = "用户管理", Name = "分页查询用户角色", Description = "分页查询用户角色")]
         GetUserRoles = 100106,
         #endregion
-        #region 角色管理
+        #region 角色管理(100200)
         /// <summary>
         /// 分页查询角色
         /// </summary>
@@ -118,7 +118,7 @@ namespace Hotline.Permissions
         GetDataAuthorityByRole = 100209,
         #endregion
         #endregion
-        #region 系统参数
+        #region 系统参数(100300)
 
         /// <summary>
         /// 获取系统参数列表
@@ -132,7 +132,7 @@ namespace Hotline.Permissions
         ModifySettings = 100301,
 
         #endregion
-        #region 菜单管理
+        #region 菜单管理(100400)
         /// <summary>
         /// 菜单管理
         /// </summary>
@@ -159,34 +159,7 @@ namespace Hotline.Permissions
         [Display(GroupName = "系统设置", Name = "获取菜单对象", Description = "获取菜单对象")]
         GetMenu = 100408,
         #endregion
-        #region 按钮管理
-        /// <summary>
-        /// 获取菜单按钮
-        /// </summary>
-        [Display(GroupName = "系统设置", Name = "获取菜单按钮", Description = "获取菜单按钮")]
-        GetButtonByMenu = 100404,
-        /// <summary>
-        /// 新增按钮
-        /// </summary>
-        [Display(GroupName = "系统设置", Name = "新增按钮", Description = "新增按钮")]
-        AddButton = 100405,
-        /// <summary>
-        /// 编辑按钮
-        /// </summary>
-        [Display(GroupName = "系统设置", Name = "编辑按钮", Description = "编辑按钮")]
-        UpdateButton = 100406,
-        /// <summary>
-        /// 删除按钮
-        /// </summary>
-        [Display(GroupName = "系统设置", Name = "删除按钮", Description = "删除按钮")]
-        RemoveButton = 100407,
-        /// <summary>
-        /// 获取按钮对象
-        /// </summary>
-        [Display(GroupName = "系统设置", Name = "获取按钮对象", Description = "获取按钮对象")]
-        GetButton = 100409,
-        #endregion
-        #region 组织架构管理
+        #region 组织架构管理(100500)
         /// <summary>
         /// 组织架构树形列表
         /// </summary>
@@ -213,32 +186,128 @@ namespace Hotline.Permissions
         [Display(GroupName = "系统设置", Name = "获取可用组织架构树形", Description = "获取可用组织架构树形")]
         GetCanUseOrg = 100504,
         #endregion
+        #region 配置管理(100600)
+
         #region 字典管理
         /// <summary>
         /// 字典类型列表
         /// </summary>
         [Display(GroupName = "系统设置", Name = "字典类型列表", Description = "字典类型列表")]
-        GetSysDicType = 100600,
+        GetSysDicType = 100601,
         /// <summary>
         /// 字典数据列表
         /// </summary>
         [Display(GroupName = "系统设置", Name = "字典数据列表", Description = "字典数据列表")]
-        GetSysDicData = 100601,
+        GetSysDicData = 100602,
         /// <summary>
         /// 获取字典对象
         /// </summary>
         [Display(GroupName = "系统设置", Name = "获取字典对象", Description = "获取字典对象")]
-        SysDicDataModel = 100602,
+        SysDicDataModel = 100603,
         /// <summary>
         /// 新增字典数据
         /// </summary>
         [Display(GroupName = "系统设置", Name = "新增字典数据", Description = "新增字典数据")]
-        AddDicData = 100603,
+        AddDicData = 100604,
         /// <summary>
         /// 修改字典数据
         /// </summary>
         [Display(GroupName = "系统设置", Name = "修改字典数据", Description = "修改字典数据")]
-        UpdateDicData = 100604,
+        UpdateDicData = 100605,
+
+        #endregion
+
+        #region 流程配置
+
+        /// <summary>
+        /// 查询流程模板
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "查询流程模板", Description = "查询流程模板")]
+        FlowDefinitionQuery = 100650,
+
+        /// <summary>
+        /// 新建流程模板
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "新建流程模板", Description = "新建流程模板")]
+        FlowDefinitionAdd = 100651,
+
+        /// <summary>
+        /// 删除流程模板
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "删除流程模板", Description = "删除流程模板")]
+        FlowDefinitionRemove = 100652,
+
+        /// <summary>
+        /// 更新流程模板
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "更新流程模板", Description = "更新流程模板")]
+        FlowDefinitionUpdate = 100653,
+
+        /// <summary>
+        /// 发布流程模板
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "发布流程模板", Description = "发布流程模板")]
+        FlowDefinitionPublish = 100654,
+
+        /// <summary>
+        /// 启用流程模板
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "启用流程模板", Description = "启用流程模板")]
+        FlowDefinitionEnable = 100655,
+
+        /// <summary>
+        /// 禁用流程模板
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "禁用流程模板", Description = "禁用流程模板")]
+        FlowDefinitionDisable = 100656,
+
+        /// <summary>
+        /// 流程查询
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "流程查询", Description = "流程查询")]
+        FlowQuery = 100657,
+
+        /// <summary>
+        /// 流程办理
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "流程办理", Description = "流程办理")]
+        FlowNext = 100658,
+
+        /// <summary>
+        /// 流程退回(返回前一节点)
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "流程退回", Description = "流程退回(返回前一节点)")]
+        FlowPrevious = 100659,
+
+        /// <summary>
+        /// 流程跳转(跳转至任意节点)
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "流程跳转", Description = "流程跳转(跳转至任意节点)")]
+        FlowJump = 100660,
+
+        /// <summary>
+        /// 流程终止
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "流程终止", Description = "流程终止")]
+        FlowTerminate = 100661,
+
+        /// <summary>
+        /// 流程补充
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "流程补充", Description = "流程补充")]
+        FlowSupplement = 100662,
+
+        /// <summary>
+        /// 流程流转记录查询
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "流程流转记录查询", Description = "流程流转记录查询")]
+        FlowTraceQuery = 100663,
+        /// <summary>
+        /// 获取流程详情
+        /// </summary>
+        [Display(GroupName = "Flow", Name = "获取流程详情", Description = "获取流程详情")]
+        GetFlow = 100664,
+        #endregion
         #endregion
 
         #endregion
@@ -440,7 +509,7 @@ namespace Hotline.Permissions
         #endregion
         #endregion
 
-        #region 知识库
+        #region 知识库(400)
         /// <summary>
         /// 知识库
         /// </summary>
@@ -451,86 +520,89 @@ namespace Hotline.Permissions
         /// <summary>
         /// 知识库管理
         /// </summary>
-        [Display(GroupName = "知识库", Name = "知识库管理", Description = "知识库管理")]
-        KnowledgeMange = 400100,
+        [Display(GroupName = "知识库",Name ="知识库管理", Description ="知识库管理")]
+        KnowledgeManage = 400100,
+
+        #region 知识库
+        /// <summary>
+        /// 知识库
+        /// </summary>
+        [Display(GroupName = "知识库", Name = "知识库", Description = "知识库")]
+        KnowledgeAllList = 400101,
 
-        #region 创建知识
         /// <summary>
         /// 创建知识
         /// </summary>
         [Display(GroupName = "知识库管理", Name = "创建知识", Description = "创建知识")]
-        EstablishKnowledge = 400110,
+        EstablishKnowledge = 400102,
         /// <summary>
         /// 提交审核按钮
         /// </summary>
         [Display(GroupName = "创建知识", Name = "提交审核按钮", Description = "提交审核按钮")]
-        AddKnowledge = 400111,
+        AddKnowledge = 400103,
         /// <summary>
         /// 保存草稿箱
         /// </summary>
         [Display(GroupName = "创建知识", Name = "保存草稿箱", Description = "保存草稿箱")]
-        AddKnowledgeTemp = 400112,
+        AddKnowledgeTemp = 400104,
         /// <summary>
         /// 知识预览
         /// </summary>
         [Display(GroupName = "创建知识", Name = "知识预览", Description = "知识预览")]
-        KnowledgePreview = 400113,
-        #endregion
-
-        #region 知识列表
-        /// <summary>
-        /// 全部知识
-        /// </summary>
-        [Display(GroupName = "知识库管理", Name = "全部知识", Description = "全部知识")]
-        KnowledgeAllList = 400120,
+        KnowledgePreview = 400105,
+       
         /// <summary>
         /// 知识修改
         /// </summary>
         [Display(GroupName = "知识库管理", Name = "知识修改", Description = "知识修改")]
-        KnowledgeUpdate = 400121,
+        KnowledgeUpdate = 400106,
         /// <summary>
         /// 知识删除
         /// </summary>
         [Display(GroupName = "知识库管理", Name = "知识删除", Description = "知识删除")]
-        KnowledgeDelete = 400122,
+        KnowledgeDelete = 400107,
         /// <summary>
         /// 知识下架
         /// </summary>
         [Display(GroupName = "已上架知识", Name = "知识下架", Description = "知识下架")]
-        KnowledgeOffShelf = 400130,
+        KnowledgeOffShelf = 400108,
         /// <summary>
         /// 知识上架
         /// </summary>
         [Display(GroupName = "已下架知识", Name = "知识上架", Description = "知识上架")]
-        KnowledgeOnTheShelf = 400140,
+        KnowledgeOnTheShelf = 400109,
+
+        #endregion
 
+        #region 我的删除申请
         /// <summary>
-        /// 我的草稿箱
+        /// 我的知识删除申请
         /// </summary>
-        [Display(GroupName = "知识库管理", Name = "我的草稿箱", Description = "我的草稿箱")]
-        KnowledgeMyDraftsList = 400150,
+        [Display(GroupName = "知识库管理", Name = "我的知识删除申请", Description = "我的知识删除申请")]
+        KnowledgeDeleteApply = 400120,
+
+        #endregion
+
+        #region 我的草稿
+
         /// <summary>
-        /// 新增草稿
+        /// 我的草稿箱
         /// </summary>
-        [Display(GroupName = "我的草稿箱", Name = "新增草稿", Description = "新增草稿")]
-        KnowledgeDraftsAdd = 400151,
+        [Display(GroupName = "知识库管理", Name = "我的草稿箱", Description = "我的草稿箱")]
+        KnowledgeMyDraftsList = 400130,
         /// <summary>
         /// 修改草稿
         /// </summary>
         [Display(GroupName = "我的草稿箱", Name = "修改草稿", Description = "修改草稿")]
-        KnowledgeDraftsUpdate = 400152,
+        KnowledgeDraftsUpdate = 400131,
         /// <summary>
         /// 删除草稿
         /// </summary>
         [Display(GroupName = "我的草稿箱", Name = "删除草稿", Description = "删除草稿")]
-        KnowledgeDraftsDelete = 400153,
+        KnowledgeDraftsDelete = 400132,
 
-        /// <summary>
-        /// 我的知识删除申请
-        /// </summary>
-        [Display(GroupName = "知识库管理", Name = "我的知识删除申请", Description = "我的知识删除申请")]
-        KnowledgeDeleteApply = 400160,
         #endregion
+
         #endregion
 
         #region 知识库基础设置
@@ -545,32 +617,32 @@ namespace Hotline.Permissions
         /// 类型管理
         /// </summary>
         [Display(GroupName = "知识库基础设置", Name = "类型管理", Description = "类型管理")]
-        KnowledgeTypeMange = 400210,
+        KnowledgeTypeMange = 400201,
         /// <summary>
         /// 添加分类
         /// </summary>
         [Display(GroupName = "类型管理", Name = "添加分类", Description = "添加分类")]
-        AddKnowledgeType = 400211,
+        AddKnowledgeType = 400202,
         /// <summary>
         /// 修改分类
         /// </summary>
         [Display(GroupName = "类型管理", Name = "修改分类", Description = "修改分类")]
-        UpdateKnowledgeType = 400212,
+        UpdateKnowledgeType = 400203,
         /// <summary>
         /// 删除分类
         /// </summary>
         [Display(GroupName = "类型管理", Name = "删除分类", Description = "删除分类")]
-        RemoveKnowledgeType = 400213,
+        RemoveKnowledgeType = 400204,
         /// <summary>
         /// 知识分类-启用、禁用切换
         /// </summary>
         [Display(GroupName = "类型管理", Name = "知识分类-启用、禁用切换", Description = "知识分类-启用、禁用切换")]
-        KnowledgeTypeChangeState = 400214,
+        KnowledgeTypeChangeState = 400205,
         /// <summary>
         ///  知识分类-禁用,并且下架知识
         /// </summary>
-        [Display(GroupName = "类型管理", Name = " 知识分类-禁用,并且下架知识", Description = " 知识分类-禁用,并且下架知识")]
-        KnowledgeTypeChangeStateAndOffShelf = 400215,
+        [Display(GroupName = "类型管理", Name = "知识分类-禁用,并且下架知识", Description = "知识分类-禁用,并且下架知识")]
+        KnowledgeTypeChangeStateAndOffShelf = 400206,
         #endregion
 
         #region 知识规范
@@ -578,17 +650,17 @@ namespace Hotline.Permissions
         /// 知识规范
         /// </summary>
         [Display(GroupName = "知识库基础设置", Name = "知识规范", Description = "知识规范")]
-        KnowledgeStandard = 400220,
+        KnowledgeStandard = 400210,
         /// <summary>
         /// 查询知识规范
         /// </summary>
         [Display(GroupName = "知识规范", Name = "查询知识规范", Description = "查询知识规范")]
-        KnowledgeStandardInfo = 400221,
+        KnowledgeStandardInfo = 400211,
         /// <summary>
         /// 修改知识规范
         /// </summary>
         [Display(GroupName = "知识规范", Name = "修改知识规范", Description = "修改知识规范")]
-        KnowledgeStandardUpdate = 400222,
+        KnowledgeStandardUpdate = 400212,
 
         #endregion
         #endregion
@@ -598,13 +670,8 @@ namespace Hotline.Permissions
         /// 知识库审核管理
         /// </summary>
         [Display(GroupName = "知识库", Name = "知识库审核管理", Description = "知识库审核管理")]
-        KnowledgeApprovalMange = 400300,
+        KnowledgeApprovedAllList = 400300,
 
-        /// <summary>
-        /// 审核管理全部
-        /// </summary>
-        [Display(GroupName = "知识库审核管理", Name = "审核管理全部", Description = "审核管理全部")]
-        KnowledgeApprovedAllList = 400310,
         #endregion
 
         #region 知识库申请管理
@@ -619,28 +686,23 @@ namespace Hotline.Permissions
         /// 我的知识申请
         /// </summary>
         [Display(GroupName = "知识库申请管理", Name = "我的知识申请", Description = "我的知识申请")]
-        MyKnowledgeApply = 400410,
+        MyKnowledgeApply = 400401,
 
-        /// <summary>
-        /// 我的全部知识申请
-        /// </summary>
-        [Display(GroupName = "我的知识申请", Name = "我的全部知识申请", Description = "我的全部知识申请")]
-        KnowledgeAllApply = 400411,
         /// <summary>
         /// 发起申请按钮
         /// </summary>
         [Display(GroupName = "我的知识申请", Name = "发起申请按钮", Description = "发起申请按钮")]
-        KnowledgeApplyAdd = 400412,
+        KnowledgeApplyAdd = 400402,
         /// <summary>
         /// 修改申请按钮
         /// </summary>
         [Display(GroupName = "我的知识申请", Name = "修改申请按钮", Description = "修改申请按钮")]
-        KnowledgeUpdateAdd = 400413,
+        KnowledgeUpdateAdd = 400403,
         /// <summary>
         /// 撤销操作按钮
         /// </summary>
         [Display(GroupName = "我的知识申请", Name = "撤销操作按钮", Description = "撤销操作按钮")]
-        KnowledgeApplyRevoke = 400414,
+        KnowledgeApplyRevoke = 400404,
         #endregion
 
         #region 知识申请处理
@@ -648,38 +710,23 @@ namespace Hotline.Permissions
         /// 知识申请处理
         /// </summary>
         [Display(GroupName = "知识库", Name = "知识申请处理", Description = "知识申请处理")]
-        KnowledgeApplyHandle = 400420,
+        KnowledgeApplyHandle = 400410,
 
-        /// <summary>
-        ///待处理
-        /// </summary>
-        [Display(GroupName = "知识申请处理", Name = "待处理", Description = "待处理")]
-        KnowledgeProcessingHandle = 400421,
-        /// <summary>
-        ///处理完成
-        /// </summary>
-        [Display(GroupName = "知识申请处理", Name = "处理完成", Description = "处理完成")]
-        KnowledgeEndHandle = 400422,
-        /// <summary>
-        ///已退回
-        /// </summary>
-        [Display(GroupName = "知识申请处理", Name = "已退回", Description = "已退回")]
-        KnowledgeReturnHandle = 400423,
         /// <summary>
         ///知识申请办理按钮
         /// </summary>
-        [Display(GroupName = "知识申请处理", Name = "知识申请办理按钮", Description = "知识申请办理按钮")]
-        KnowApplyHandle = 400424,
+        [Display(GroupName = "知识申请处理", Name = "知识申请办理", Description = "知识申请办理按钮")]
+        KnowApplyHandle = 400411,
         /// <summary>
         ///知识申请退回按钮
         /// </summary>
-        [Display(GroupName = "知识申请处理", Name = "知识申请退回按钮", Description = "知识申请退回按钮")]
-        KnowledgeApplyReturn = 400425,
+        [Display(GroupName = "知识申请处理", Name = "知识申请退回", Description = "知识申请退回按钮")]
+        KnowledgeApplyReturn = 400412,
         /// <summary>
-        ///知识申请删除按钮
+        /// 知识申请删除
         /// </summary>
-        [Display(GroupName = "知识申请处理", Name = "知识申请删除", Description = "知识申请删除")]
-        KnowledgeApplyDelete = 400426,
+        [Display(GroupName = "知识申请处理", Name = "知识申请删除",Description = "知识申请删除")]
+        KnowledgeApplyDelete = 400413,
 
         #endregion
 
@@ -696,127 +743,53 @@ namespace Hotline.Permissions
 
         #endregion
 
-        #region 工单(500)
+        #region 业务管理(500)
+
+        [Display(GroupName = "业务管理",Name ="业务管理",Description ="业务管理")]
+        Business = 500000,
+
+        #region 工单管理
 
         /// <summary>
         /// 查询工单
         /// </summary>
         [Display(GroupName = "Order", Name = "查询工单列表", Description = "查询工单列表")]
-        OrderQuery = 500000,
+        OrderQuery = 500100,
 
         /// <summary>
         /// 新建工单
         /// </summary>
         [Display(GroupName = "Order", Name = "新建工单", Description = "新建工单")]
-        OrderAdd = 500001,
+        OrderAdd = 500101,
 
         /// <summary>
         /// 删除工单
         /// </summary>
         [Display(GroupName = "Order", Name = "删除工单", Description = "删除工单")]
-        OrderRemove = 500002,
+        OrderRemove = 500102,
 
         /// <summary>
         /// 编辑工单
         /// </summary>
         [Display(GroupName = "Order", Name = "编辑工单", Description = "编辑工单")]
-        OrderUpdate = 500003,
+        OrderUpdate = 500103,
 
         /// <summary>
         /// 开启工单办理流程
         /// </summary>
         [Display(GroupName = "Order", Name = "开启工单办理流程", Description = "开启工单办理流程")]
-        OrderManageFlowStart = 500004,
-
-        #endregion
-
-        #region 流程(600)
-
+        OrderManageFlowStart = 500104,
         /// <summary>
-        /// 查询流程模板
+        /// 查询历史工单
         /// </summary>
-        [Display(GroupName = "Flow", Name = "查询流程模板", Description = "查询流程模板")]
-        FlowDefinitionQuery = 600000,
-
+        [Display(GroupName ="Order",Name = "查询历史工单列表", Description ="查询历史工单列表")]
+        OrderHistory  = 500105,
         /// <summary>
-        /// 新建流程模板
+        /// 获取工单详情
         /// </summary>
-        [Display(GroupName = "Flow", Name = "新建流程模板", Description = "新建流程模板")]
-        FlowDefinitionAdd = 600001,
-
-        /// <summary>
-        /// 删除流程模板
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "删除流程模板", Description = "删除流程模板")]
-        FlowDefinitionRemove = 600002,
-
-        /// <summary>
-        /// 更新流程模板
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "更新流程模板", Description = "更新流程模板")]
-        FlowDefinitionUpdate = 600003,
-
-        /// <summary>
-        /// 发布流程模板
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "发布流程模板", Description = "发布流程模板")]
-        FlowDefinitionPublish = 600004,
-
-        /// <summary>
-        /// 启用流程模板
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "启用流程模板", Description = "启用流程模板")]
-        FlowDefinitionEnable = 600005,
-
-        /// <summary>
-        /// 禁用流程模板
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "禁用流程模板", Description = "禁用流程模板")]
-        FlowDefinitionDisable = 600006,
-
-        /// <summary>
-        /// 流程查询
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "流程查询", Description = "流程查询")]
-        FlowQuery = 600100,
-
-        /// <summary>
-        /// 流程办理
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "流程办理", Description = "流程办理")]
-        FlowNext = 600101,
-
-        /// <summary>
-        /// 流程退回(返回前一节点)
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "流程退回", Description = "流程退回(返回前一节点)")]
-        FlowPrevious = 600102,
-
-        /// <summary>
-        /// 流程跳转(跳转至任意节点)
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "流程跳转", Description = "流程跳转(跳转至任意节点)")]
-        FlowJump = 600103,
-
-        /// <summary>
-        /// 流程终止
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "流程终止", Description = "流程终止")]
-        FlowTerminate = 600104,
-
-        /// <summary>
-        /// 流程补充
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "流程补充", Description = "流程补充")]
-        FlowSupplement = 600105,
-
-        /// <summary>
-        /// 流程流转记录查询
-        /// </summary>
-        [Display(GroupName = "Flow", Name = "流程流转记录查询", Description = "流程流转记录查询")]
-        FlowTraceQuery = 600106,
-
-
+        [Display(GroupName ="Order",Name ="获取工单详情",Description ="获取工单详情")]
+        GetOrder = 500106,
+        #endregion
 
         #endregion
 
@@ -964,7 +937,6 @@ namespace Hotline.Permissions
         TelPanel = 999125,
 
         #endregion
-
         #region 静音和取消静音
         /// <summary>
         /// 静音
@@ -977,7 +949,6 @@ namespace Hotline.Permissions
         [Display(GroupName = "公用", Name = "取消静音", Description = "取消静音")]
         UnMute = 999127,
         #endregion
-
         #endregion
 
 

+ 1 - 1
src/Hotline/Settings/ISystemAuthorityRepository.cs

@@ -16,7 +16,7 @@ namespace Hotline.Settings
         /// </summary>
         /// <param name="roles"></param>
         /// <returns></returns>
-        Task<IReadOnlyList<string>> GetMyButton(string[] roles);
+        //Task<IReadOnlyList<string>> GetMyButton(string[] roles);
 
         /// <summary>
         /// 获取当前用户所有功能点(包含菜单和按钮)

+ 3 - 3
src/Hotline/Settings/ISystemButtonRepository.cs

@@ -2,8 +2,8 @@
 
 namespace Hotline.Settings
 {
-    public interface ISystemButtonRepository: IRepository<SystemButton>
-    {
+    //public interface ISystemButtonRepository: IRepository<SystemButton>
+    //{
 
-    }
+    //}
 }

+ 9 - 9
src/Hotline/Settings/SystemAuthority.cs

@@ -28,13 +28,13 @@ namespace Hotline.Settings
         /// <summary>
         /// 功能点
         /// </summary>
-        [SugarColumn(ColumnDataType = "json", IsJson = true)]
-        public List<string> SystemButtonArr { get; set; }
+        //[SugarColumn(ColumnDataType = "json", IsJson = true)]
+        //public List<string> SystemButtonArr { get; set; }
 
         public List<string> GetAllPermissions()
         {
             var permissions = new List<string>(SystemMenuArr);
-            permissions.AddRange(SystemButtonArr);
+            //permissions.AddRange(SystemButtonArr);
             return permissions.Select(d=>Enum.Parse<EPermission>(d).ToString()).Distinct().ToList();
         }
     }
@@ -47,13 +47,13 @@ namespace Hotline.Settings
 
         public List<SystemMenuAuth> child { get; set; }
 
-        public List<SystemButtonAuth> btnarr { get; set; }
+        //public List<SystemButtonAuth> btnarr { get; set; }
     }
 
-    public class SystemButtonAuth
-    {
-        public string bcode { get; set; }
+    //public class SystemButtonAuth
+    //{
+    //    public string bcode { get; set; }
 
-        public string bname { get; set; }
-    }
+    //    public string bname { get; set; }
+    //}
 }

+ 21 - 21
src/Hotline/Settings/SystemButton.cs

@@ -5,29 +5,29 @@ using XF.Domain.Repository;
 
 namespace Hotline.Settings
 {
-    [Description("按钮表")]
-    public class SystemButton: CreationEntity
-    {
-        /// <summary>
-        /// 按钮名称
-        /// </summary>
-        public string BtnName { get; set; }
+    //[Description("按钮表")]
+    //public class SystemButton: CreationEntity
+    //{
+    //    /// <summary>
+    //    /// 按钮名称
+    //    /// </summary>
+    //    public string BtnName { get; set; }
 
-        /// <summary>
-        /// 排序
-        /// </summary>
-        public int DisplayOrder { get; set; }
+    //    /// <summary>
+    //    /// 排序
+    //    /// </summary>
+    //    public int DisplayOrder { get; set; }
 
-        /// <summary>
-        /// 菜单ID
-        /// </summary>
-        public string MenuId { get; set; }
+    //    /// <summary>
+    //    /// 菜单ID
+    //    /// </summary>
+    //    public string MenuId { get; set; }
 
-        /// <summary>
-        /// 功能点Code
-        /// </summary>
-        [SugarColumn(IsNullable =  true)]
-        public string PermissionCode { get; set; }
+    //    /// <summary>
+    //    /// 功能点Code
+    //    /// </summary>
+    //    [SugarColumn(IsNullable =  true)]
+    //    public string PermissionCode { get; set; }
 
-    }
+    //}
 }

+ 10 - 3
src/Hotline/Settings/SystemMenu.cs

@@ -1,4 +1,5 @@
 using Hotline.CallCenter.Calls;
+using Hotline.Share.Enums.Settings;
 using SqlSugar;
 using System.ComponentModel;
 using XF.Domain.Entities;
@@ -26,6 +27,11 @@ namespace Hotline.Settings
         [SugarColumn(IsNullable = true)]
         public string ParentId { get; set; }
 
+        /// <summary>
+        /// 类型
+        /// </summary>
+        public EMenuType? MenuType { get; set; }
+
         /// <summary>
         /// 功能点Code
         /// </summary>
@@ -84,6 +90,7 @@ namespace Hotline.Settings
         /// <summary>
         /// 组件路径
         /// </summary>
+        [SugarColumn(IsNullable = true)]
         public string Component { get; set; }
 
         /// <summary>
@@ -106,8 +113,8 @@ namespace Hotline.Settings
         [SugarColumn(IsIgnore = true)]
         public List<SystemMenu> children { get; set; }
 
-        [SugarColumn(IsIgnore = true)]
-        [Navigate(NavigateType.OneToMany, nameof(SystemButton.MenuId))]
-        public List<SystemButton> ButtonArr { get; set; }
+        //[SugarColumn(IsIgnore = true)]
+        //[Navigate(NavigateType.OneToMany, nameof(SystemButton.MenuId))]
+        //public List<SystemButton> ButtonArr { get; set; }
     }
 }