重构代码:根据最新的Longbow.Caching.CacheManager方法重构,调整函数接口,支持相对过期时间
This commit is contained in:
parent
ba08d6ceac
commit
dddb07d623
|
@ -36,9 +36,8 @@ namespace Bootstrap.Admin.Controllers
|
|||
string password = user.password;
|
||||
if (LgbPrincipal.Authenticate(userName, password) || BootstrapUser.Authenticate(userName, password))
|
||||
{
|
||||
var interval = int.Parse(Math.Round(FormsAuthentication.Timeout.TotalSeconds).ToString(CultureInfo.InvariantCulture));
|
||||
var token = CacheManager.AddOrUpdate(string.Format("WebApi-{0}", userName), interval, k => new LoginInfo() { UserName = userName, Token = Guid.NewGuid().ToString() }, (k, info) => info, "WebApi 数据缓存");
|
||||
CacheManager.AddOrUpdate(token.Token, interval, k => token, (k, info) => info, "Token 数据缓存");
|
||||
var token = CacheManager.AddOrUpdate(string.Format("WebApi-{0}", userName), k => new LoginInfo() { UserName = userName, Token = Guid.NewGuid().ToString() }, (k, info) => info, "WebApi");
|
||||
CacheManager.AddOrUpdate(token.Token, k => token, (k, info) => info, "Token");
|
||||
return token;
|
||||
}
|
||||
return new LoginInfo() { UserName = userName };
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
using Bootstrap.Security;
|
||||
using Longbow.Caching;
|
||||
using Longbow.Caching.Configuration;
|
||||
using Longbow.ExceptionManagement;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
@ -123,7 +122,7 @@ namespace Bootstrap.DataAccess
|
|||
/// <returns></returns>
|
||||
public static IEnumerable<BootstrapDict> RetrieveCategories()
|
||||
{
|
||||
return CacheManager.GetOrAdd(RetrieveCategoryDataKey, CacheSection.RetrieveIntervalByKey(RetrieveCategoryDataKey), key =>
|
||||
return CacheManager.GetOrAdd(RetrieveCategoryDataKey, key =>
|
||||
{
|
||||
var ret = new List<BootstrapDict>();
|
||||
string sql = "select distinct Category from Dicts";
|
||||
|
@ -140,7 +139,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return ret;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveCategoryDataKey));
|
||||
});
|
||||
}
|
||||
/// <summary>
|
||||
///
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using Longbow.Caching;
|
||||
using Longbow.Caching.Configuration;
|
||||
using Longbow.Data;
|
||||
using Longbow.ExceptionManagement;
|
||||
using System;
|
||||
|
@ -53,7 +52,7 @@ namespace Bootstrap.DataAccess
|
|||
/// <returns></returns>
|
||||
public static IEnumerable<Exceptions> RetrieveExceptions()
|
||||
{
|
||||
return CacheManager.GetOrAdd(RetrieveExceptionsDataKey, CacheSection.RetrieveIntervalByKey(RetrieveExceptionsDataKey), key =>
|
||||
return CacheManager.GetOrAdd(RetrieveExceptionsDataKey, key =>
|
||||
{
|
||||
string sql = "select top 1000 * from Exceptions order by LogTime desc";
|
||||
List<Exceptions> exceptions = new List<Exceptions>();
|
||||
|
@ -81,7 +80,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return exceptions;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveExceptionsDataKey));
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using Longbow.Caching;
|
||||
using Longbow.Caching.Configuration;
|
||||
using Longbow.Data;
|
||||
using Longbow.ExceptionManagement;
|
||||
using System;
|
||||
|
@ -27,7 +26,7 @@ namespace Bootstrap.DataAccess
|
|||
/// <returns></returns>
|
||||
public static IEnumerable<Group> RetrieveGroups(int id = 0)
|
||||
{
|
||||
var ret = CacheManager.GetOrAdd(RetrieveGroupsDataKey, CacheSection.RetrieveIntervalByKey(RetrieveGroupsDataKey), key =>
|
||||
var ret = CacheManager.GetOrAdd(RetrieveGroupsDataKey, key =>
|
||||
{
|
||||
string sql = "select * from Groups";
|
||||
List<Group> groups = new List<Group>();
|
||||
|
@ -49,7 +48,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return groups;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveGroupsDataKey));
|
||||
});
|
||||
return id == 0 ? ret : ret.Where(t => id == t.Id);
|
||||
}
|
||||
/// <summary>
|
||||
|
@ -115,7 +114,7 @@ namespace Bootstrap.DataAccess
|
|||
public static IEnumerable<Group> RetrieveGroupsByUserId(int userId)
|
||||
{
|
||||
string key = string.Format("{0}-{1}", RetrieveGroupsByUserIdDataKey, userId);
|
||||
var ret = CacheManager.GetOrAdd(key, CacheSection.RetrieveIntervalByKey(RetrieveGroupsByUserIdDataKey), k =>
|
||||
var ret = CacheManager.GetOrAdd(key, k =>
|
||||
{
|
||||
string sql = "select g.ID,g.GroupName,g.[Description],case ug.GroupID when g.ID then 'checked' else '' end [status] from Groups g left join UserGroup ug on g.ID=ug.GroupID and UserID=@UserID";
|
||||
List<Group> groups = new List<Group>();
|
||||
|
@ -139,7 +138,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return groups;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveGroupsByUserIdDataKey));
|
||||
}, RetrieveGroupsByUserIdDataKey);
|
||||
return ret;
|
||||
}
|
||||
/// <summary>
|
||||
|
@ -197,7 +196,7 @@ namespace Bootstrap.DataAccess
|
|||
public static IEnumerable<Group> RetrieveGroupsByRoleId(int roleId)
|
||||
{
|
||||
string k = string.Format("{0}-{1}", RetrieveGroupsByRoleIdDataKey, roleId);
|
||||
return CacheManager.GetOrAdd(k, CacheSection.RetrieveIntervalByKey(RetrieveGroupsByRoleIdDataKey), key =>
|
||||
return CacheManager.GetOrAdd(k, key =>
|
||||
{
|
||||
List<Group> groups = new List<Group>();
|
||||
string sql = "select g.ID,g.GroupName,g.[Description],case rg.GroupID when g.ID then 'checked' else '' end [status] from Groups g left join RoleGroup rg on g.ID=rg.GroupID and RoleID=@RoleID";
|
||||
|
@ -221,7 +220,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return groups;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveGroupsByRoleIdDataKey));
|
||||
}, RetrieveGroupsByRoleIdDataKey);
|
||||
}
|
||||
/// <summary>
|
||||
/// 根据角色ID以及选定的部门ID,保到角色部门表
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using Longbow.Caching;
|
||||
using Longbow.Caching.Configuration;
|
||||
using Longbow.ExceptionManagement;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
@ -20,7 +19,7 @@ namespace Bootstrap.DataAccess
|
|||
/// <returns></returns>
|
||||
public static IEnumerable<Log> RetrieveLogs(string tId = null)
|
||||
{
|
||||
var ret = CacheManager.GetOrAdd(RetrieveLogsDataKey, CacheSection.RetrieveIntervalByKey(RetrieveLogsDataKey), key =>
|
||||
var ret = CacheManager.GetOrAdd(RetrieveLogsDataKey, key =>
|
||||
{
|
||||
string sql = "select top 1000 * from Logs";
|
||||
List<Log> logs = new List<Log>();
|
||||
|
@ -46,7 +45,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return logs;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveLogsDataKey));
|
||||
});
|
||||
return string.IsNullOrEmpty(tId) ? ret : ret.Where(t => tId.Equals(t.Id.ToString(), StringComparison.OrdinalIgnoreCase));
|
||||
}
|
||||
/// <summary>
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
using Bootstrap.Security;
|
||||
using Longbow.Caching;
|
||||
using Longbow.Caching.Configuration;
|
||||
using Longbow.Data;
|
||||
using Longbow.ExceptionManagement;
|
||||
using System;
|
||||
|
@ -91,7 +90,7 @@ namespace Bootstrap.DataAccess
|
|||
public static IEnumerable<BootstrapMenu> RetrieveMenusByRoleId(int roleId)
|
||||
{
|
||||
string key = string.Format("{0}-{1}", RetrieveMenusByRoleIdDataKey, roleId);
|
||||
return CacheManager.GetOrAdd(key, CacheSection.RetrieveIntervalByKey(RetrieveMenusByRoleIdDataKey), k =>
|
||||
return CacheManager.GetOrAdd(key, k =>
|
||||
{
|
||||
var menus = new List<BootstrapMenu>();
|
||||
try
|
||||
|
@ -114,7 +113,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return menus;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveMenusByRoleIdDataKey));
|
||||
}, RetrieveMenusByRoleIdDataKey);
|
||||
}
|
||||
/// <summary>
|
||||
/// 通过角色ID保存当前授权菜单
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
using Longbow;
|
||||
using Longbow.Caching;
|
||||
using Longbow.Caching.Configuration;
|
||||
using Longbow.ExceptionManagement;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
@ -23,7 +22,7 @@ namespace Bootstrap.DataAccess
|
|||
/// <returns></returns>
|
||||
private static IEnumerable<Message> RetrieveMessages(string userName)
|
||||
{
|
||||
var messageRet = CacheManager.GetOrAdd(RetrieveMessageDataKey, CacheSection.RetrieveIntervalByKey(RetrieveMessageDataKey), key =>
|
||||
var messageRet = CacheManager.GetOrAdd(RetrieveMessageDataKey, key =>
|
||||
{
|
||||
string sql = "select m.*, d.Name, isnull(i.Code + u.Icon, '~/Content/images/uploader/default.jpg'), u.DisplayName from [Messages] m left join Dicts d on m.Label = d.Code and d.Category = N'消息标签' and d.Define = 0 left join Dicts i on i.Category = N'头像地址' and i.Name = N'头像路径' and i.Define = 0 inner join Users u on m.[From] = u.UserName where [To] = @UserName or [From] = @UserName order by m.SendTime desc";
|
||||
List<Message> messages = new List<Message>();
|
||||
|
@ -57,7 +56,7 @@ namespace Bootstrap.DataAccess
|
|||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return messages;
|
||||
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveMessageDataKey));
|
||||
});
|
||||
return messageRet.OrderByDescending(n => n.SendTime);
|
||||
}
|
||||
/// <summary>
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
using Longbow;
|
||||
using Longbow.Caching;
|
||||
using Longbow.Caching.Configuration;
|
||||
using Longbow.ExceptionManagement;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
@ -22,7 +21,7 @@ namespace Bootstrap.DataAccess
|
|||
/// <returns></returns>
|
||||
public static IEnumerable<Notification> RetrieveNotifications()
|
||||
{
|
||||
var notifies = CacheManager.GetOrAdd(RetrieveNotificationsDataKey, CacheSection.RetrieveIntervalByKey(RetrieveNotificationsDataKey), key =>
|
||||
var notifies = CacheManager.GetOrAdd(RetrieveNotificationsDataKey, key =>
|
||||
{
|
||||
string sql = "select * from Notifications";
|
||||
List<Notification> notifications = new List<Notification>();
|
||||
|
@ -51,7 +50,7 @@ namespace Bootstrap.DataAccess
|
|||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return notifications;
|
||||
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveNotificationsDataKey));
|
||||
});
|
||||
notifies.AsParallel().ForAll(n =>
|
||||
{
|
||||
var ts = DateTime.Now - n.RegisterTime;
|
||||
|
|
|
@ -27,7 +27,7 @@ namespace Bootstrap.DataAccess
|
|||
/// <returns></returns>
|
||||
public static IEnumerable<Role> RetrieveRoles(int id = 0)
|
||||
{
|
||||
var ret = CacheManager.GetOrAdd(RetrieveRolesDataKey, CacheSection.RetrieveIntervalByKey(RetrieveRolesDataKey), key =>
|
||||
var ret = CacheManager.GetOrAdd(RetrieveRolesDataKey, key =>
|
||||
{
|
||||
string sql = "select * from Roles";
|
||||
List<Role> roles = new List<Role>();
|
||||
|
@ -49,7 +49,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return roles;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveRolesDataKey));
|
||||
});
|
||||
return id == 0 ? ret : ret.Where(t => id == t.Id);
|
||||
}
|
||||
/// <summary>
|
||||
|
@ -107,7 +107,7 @@ namespace Bootstrap.DataAccess
|
|||
public static IEnumerable<Role> RetrieveRolesByUserId(int userId)
|
||||
{
|
||||
string key = string.Format("{0}-{1}", RetrieveRolesByUserIdDataKey, userId);
|
||||
return CacheManager.GetOrAdd(key, CacheSection.RetrieveIntervalByKey(RetrieveRolesByUserIdDataKey), k =>
|
||||
return CacheManager.GetOrAdd(key, k =>
|
||||
{
|
||||
List<Role> roles = new List<Role>();
|
||||
string sql = "select r.ID, r.RoleName, r.[Description], case ur.RoleID when r.ID then 'checked' else '' end [status] from Roles r left join UserRole ur on r.ID = ur.RoleID and UserID = @UserID";
|
||||
|
@ -131,7 +131,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return roles;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveRolesByUserIdDataKey));
|
||||
}, RetrieveRolesByUserIdDataKey);
|
||||
}
|
||||
/// <summary>
|
||||
/// 删除角色表
|
||||
|
@ -196,7 +196,7 @@ namespace Bootstrap.DataAccess
|
|||
public static IEnumerable<Role> RetrieveRolesByMenuId(int menuId)
|
||||
{
|
||||
string key = string.Format("{0}-{1}", RetrieveRolesByMenuIdDataKey, menuId);
|
||||
var ret = CacheManager.GetOrAdd(key, CacheSection.RetrieveIntervalByKey(RetrieveRolesByMenuIdDataKey), k =>
|
||||
var ret = CacheManager.GetOrAdd(key, k =>
|
||||
{
|
||||
string sql = "select r.ID, r.RoleName, r.[Description], case ur.RoleID when r.ID then 'checked' else '' end [status] from Roles r left join NavigationRole ur on r.ID = ur.RoleID and NavigationID = @NavigationID";
|
||||
List<Role> roles = new List<Role>();
|
||||
|
@ -220,7 +220,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return roles;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveRolesByMenuIdDataKey));
|
||||
}, RetrieveRolesByMenuIdDataKey);
|
||||
return ret;
|
||||
}
|
||||
public static bool SavaRolesByMenuId(int id, string roleIds)
|
||||
|
@ -272,7 +272,7 @@ namespace Bootstrap.DataAccess
|
|||
public static IEnumerable<Role> RetrieveRolesByGroupId(int groupId)
|
||||
{
|
||||
string key = string.Format("{0}-{1}", RetrieveRolesByGroupIdDataKey, groupId);
|
||||
return CacheManager.GetOrAdd(key, CacheSection.RetrieveIntervalByKey(RetrieveRolesByGroupIdDataKey), k =>
|
||||
return CacheManager.GetOrAdd(key, k =>
|
||||
{
|
||||
List<Role> roles = new List<Role>();
|
||||
string sql = "select r.ID, r.RoleName, r.[Description], case ur.RoleID when r.ID then 'checked' else '' end [status] from Roles r left join RoleGroup ur on r.ID = ur.RoleID and GroupID = @GroupID";
|
||||
|
@ -296,7 +296,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return roles;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveRolesByGroupIdDataKey));
|
||||
}, RetrieveRolesByGroupIdDataKey);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using Longbow.Caching;
|
||||
using Longbow.Caching.Configuration;
|
||||
using Longbow.ExceptionManagement;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
@ -17,7 +16,7 @@ namespace Bootstrap.DataAccess
|
|||
/// <returns></returns>
|
||||
public static IEnumerable<Task> RetrieveTasks()
|
||||
{
|
||||
return CacheManager.GetOrAdd(RetrieveTasksDataKey, CacheSection.RetrieveIntervalByKey(RetrieveTasksDataKey), key =>
|
||||
return CacheManager.GetOrAdd(RetrieveTasksDataKey, key =>
|
||||
{
|
||||
string sql = "select top 1000 t.*, u.DisplayName from Tasks t inner join Users u on t.UserName = u.UserName order by AssignTime desc";
|
||||
List<Task> tasks = new List<Task>();
|
||||
|
@ -44,7 +43,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return tasks;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveTasksDataKey));
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
using Bootstrap.Security;
|
||||
using Longbow;
|
||||
using Longbow.Caching;
|
||||
using Longbow.Caching.Configuration;
|
||||
using Longbow.Data;
|
||||
using Longbow.ExceptionManagement;
|
||||
using Longbow.Security;
|
||||
|
@ -30,7 +29,7 @@ namespace Bootstrap.DataAccess
|
|||
/// <returns></returns>
|
||||
public static IEnumerable<User> RetrieveUsers()
|
||||
{
|
||||
return CacheManager.GetOrAdd(BootstrapUser.RetrieveUsersDataKey, CacheSection.RetrieveIntervalByKey(BootstrapUser.RetrieveUsersDataKey), key =>
|
||||
return CacheManager.GetOrAdd(BootstrapUser.RetrieveUsersDataKey, key =>
|
||||
{
|
||||
List<User> users = new List<User>();
|
||||
DbCommand cmd = DBAccessManager.SqlDBAccess.CreateCommand(CommandType.Text, "select ID, UserName, DisplayName, RegisterTime, ApprovedTime, ApprovedBy, Description from Users Where ApprovedTime is not null");
|
||||
|
@ -55,7 +54,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return users;
|
||||
}, CacheSection.RetrieveDescByKey(BootstrapUser.RetrieveUsersDataKey));
|
||||
});
|
||||
}
|
||||
/// <summary>
|
||||
/// 查询所有的新注册用户
|
||||
|
@ -63,7 +62,7 @@ namespace Bootstrap.DataAccess
|
|||
/// <returns></returns>
|
||||
public static IEnumerable<User> RetrieveNewUsers()
|
||||
{
|
||||
return CacheManager.GetOrAdd(RetrieveNewUsersDataKey, CacheSection.RetrieveIntervalByKey(RetrieveNewUsersDataKey), key =>
|
||||
return CacheManager.GetOrAdd(RetrieveNewUsersDataKey, key =>
|
||||
{
|
||||
string sql = "select ID, UserName, DisplayName, RegisterTime, [Description] from Users Where ApprovedTime is null and RejectedTime is null order by RegisterTime desc";
|
||||
List<User> users = new List<User>();
|
||||
|
@ -87,7 +86,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return users;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveNewUsersDataKey));
|
||||
});
|
||||
}
|
||||
/// <summary>
|
||||
/// 删除用户
|
||||
|
@ -161,7 +160,7 @@ namespace Bootstrap.DataAccess
|
|||
public static IEnumerable<User> RetrieveUsersByRoleId(int roleId)
|
||||
{
|
||||
string key = string.Format("{0}-{1}", RetrieveUsersByRoleIdDataKey, roleId);
|
||||
return CacheManager.GetOrAdd(key, CacheSection.RetrieveIntervalByKey(RetrieveUsersByNameDataKey), k =>
|
||||
return CacheManager.GetOrAdd(key, k =>
|
||||
{
|
||||
List<User> users = new List<User>();
|
||||
string sql = "select u.ID, u.UserName, u.DisplayName, case ur.UserID when u.ID then 'checked' else '' end [status] from Users u left join UserRole ur on u.ID = ur.UserID and RoleID = @RoleID where u.ApprovedTime is not null";
|
||||
|
@ -185,7 +184,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return users;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveUsersByRoleIdDataKey));
|
||||
}, RetrieveUsersByRoleIdDataKey);
|
||||
}
|
||||
/// <summary>
|
||||
/// 通过角色ID保存当前授权用户(插入)
|
||||
|
@ -239,7 +238,7 @@ namespace Bootstrap.DataAccess
|
|||
public static IEnumerable<User> RetrieveUsersByGroupId(int groupId)
|
||||
{
|
||||
string key = string.Format("{0}-{1}", RetrieveUsersByGroupIdDataKey, groupId);
|
||||
return CacheManager.GetOrAdd(key, CacheSection.RetrieveIntervalByKey(RetrieveUsersByGroupIdDataKey), k =>
|
||||
return CacheManager.GetOrAdd(key, k =>
|
||||
{
|
||||
List<User> users = new List<User>();
|
||||
string sql = "select u.ID, u.UserName, u.DisplayName, case ur.UserID when u.ID then 'checked' else '' end [status] from Users u left join UserGroup ur on u.ID = ur.UserID and GroupID =@groupId where u.ApprovedTime is not null";
|
||||
|
@ -263,7 +262,7 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
catch (Exception ex) { ExceptionManager.Publish(ex); }
|
||||
return users;
|
||||
}, CacheSection.RetrieveDescByKey(RetrieveUsersByRoleIdDataKey));
|
||||
}, RetrieveUsersByRoleIdDataKey);
|
||||
}
|
||||
/// <summary>
|
||||
/// 通过部门ID保存当前授权用户(插入)
|
||||
|
|
Loading…
Reference in New Issue