/// <summary> /// 获取模块菜单表,从缓存读取 /// 没有缓存也可以用的。 /// </summary> /// <param name="systemCode">系统编号</param> /// <param name="refreshCache">是否刷新缓存</param> /// <returns>菜单</returns> public List <BaseModuleEntity> GetEntitiesByCache(string systemCode = "Base", bool refreshCache = false) { List <BaseModuleEntity> result = null; var tableName = systemCode + "Module"; var cacheKey = "List." + systemCode + ".Module"; //var cacheTime = default(TimeSpan); var cacheTime = TimeSpan.FromMilliseconds(86400000); result = CacheUtil.Cache <List <BaseModuleEntity> >(cacheKey, () => { var moduleManager = new BaseModuleManager(DbHelper, UserInfo, tableName); // 读取目标表中的数据 var parametersWhere = new List <KeyValuePair <string, object> > { //有效的菜单 new KeyValuePair <string, object>(BaseModuleEntity.FieldEnabled, 1), //没被删除的菜单 new KeyValuePair <string, object>(BaseModuleEntity.FieldDeleted, 0) }; // parameters.Add(new KeyValuePair<string, object>(BaseModuleEntity.FieldIsVisible, 1)); CurrentTableName = tableName; return(moduleManager.GetList <BaseModuleEntity>(parametersWhere, BaseModuleEntity.FieldSortCode)); }, true, refreshCache, cacheTime); return(result); }
/// <summary> /// 获取列表 /// </summary> /// <param name="userInfo">用户</param> /// <returns>列表</returns> public List <BaseModuleEntity> GetList(BaseUserInfo userInfo) { List <BaseModuleEntity> result = new List <BaseModuleEntity>(); var parameter = ServiceInfo.Create(userInfo, MethodBase.GetCurrentMethod()); ServiceUtil.ProcessUserCenterReadDb(userInfo, parameter, (dbHelper) => { string tableName = userInfo.SystemCode + "Module"; // 获得列表 var manager = new BaseModuleManager(dbHelper, userInfo, tableName); List <KeyValuePair <string, object> > parameters = new List <KeyValuePair <string, object> >(); parameters.Add(new KeyValuePair <string, object>(BaseModuleEntity.FieldDeletionStateCode, 0)); result = manager.GetList <BaseModuleEntity>(parameters, BaseModuleEntity.FieldSortCode); }); return(result); }
/// <summary> /// 获取角色拥有的权限列表 /// </summary> /// <param name="systemCode">系统编号</param> /// <param name="roleId">角色主键</param> /// <returns>列表</returns> public List <BaseModuleEntity> GetPermissionList(string systemCode, string roleId) { List <BaseModuleEntity> result = null; string[] permissionIds = GetPermissionIds(systemCode, roleId); if (permissionIds != null && permissionIds.Length > 0) { List <KeyValuePair <string, object> > parameters = new List <KeyValuePair <string, object> >(); parameters.Add(new KeyValuePair <string, object>(BaseModuleEntity.FieldId, permissionIds)); parameters.Add(new KeyValuePair <string, object>(BaseModuleEntity.FieldEnabled, 1)); parameters.Add(new KeyValuePair <string, object>(BaseModuleEntity.FieldDeletionStateCode, 0)); string tableName = systemCode + "Module"; BaseModuleManager moduleManager = new BaseModuleManager(tableName); result = moduleManager.GetList <BaseModuleEntity>(parameters); } return(result); }
/// <summary> /// 获取角色拥有的权限列表 /// </summary> /// <param name="systemCode">系统编号</param> /// <param name="roleId">角色主键</param> /// <param name="resourceCategory">资源类别(User,Role)</param> /// <returns>列表</returns> public List <BaseModuleEntity> GetPermissionList(string systemCode, string roleId, string resourceCategory) { List <BaseModuleEntity> result = null; var permissionIds = GetPermissionIds(systemCode, roleId, resourceCategory); if (permissionIds != null && permissionIds.Length > 0) { var parameters = new List <KeyValuePair <string, object> > { new KeyValuePair <string, object>(BaseModuleEntity.FieldId, permissionIds), new KeyValuePair <string, object>(BaseModuleEntity.FieldEnabled, 1), new KeyValuePair <string, object>(BaseModuleEntity.FieldDeleted, 0) }; var tableName = systemCode + "Module"; var moduleManager = new BaseModuleManager(DbHelper, UserInfo, tableName); result = moduleManager.GetList <BaseModuleEntity>(parameters); } return(result); }
/// <summary> /// 获取范围权限项列表 /// </summary> /// <param name="userInfo">用户</param> /// <returns>列表</returns> public List <BaseModuleEntity> GetScopePermissionList(BaseUserInfo userInfo) { var result = new List <BaseModuleEntity>(); var parameter = ServiceInfo.Create(userInfo, MethodBase.GetCurrentMethod()); ServiceUtil.ProcessUserCenterReadDb(userInfo, parameter, (dbHelper) => { var tableName = userInfo.SystemCode + "Module"; var manager = new BaseModuleManager(dbHelper, userInfo, tableName); var parameters = new List <KeyValuePair <string, object> > { new KeyValuePair <string, object>(BaseModuleEntity.FieldDeleted, 0), new KeyValuePair <string, object>(BaseModuleEntity.FieldIsScope, 1), new KeyValuePair <string, object>(BaseModuleEntity.FieldEnabled, 1), new KeyValuePair <string, object>(BaseModuleEntity.FieldIsVisible, 1) }; result = manager.GetList <BaseModuleEntity>(parameters, BaseModuleEntity.FieldSortCode); }); return(result); }