主管能夠看下屬的數據,這個是常常用到的一個權限,無論是大公司,仍是小公司都須要的功能。數組
經過如下2個方法,能夠任意達到想要的效果了,設置簡單靈活,還能遞歸運算下屬,有時候簡單好用就是硬道理。性能
#region public List<BaseUserEntity> public List<BaseUserEntity> GetListByManager(BaseUserInfo userInfo, string managerId) 按上級主管獲取下屬用戶列表 /// <summary> /// 按上級主管獲取下屬用戶列表 /// </summary> /// <param name="userInfo">用戶主鍵</param> /// <param name="managerId">主管主鍵</param> /// <returns>用戶列表</returns> public List<BaseUserEntity> GetListByManager(BaseUserInfo userInfo, string managerId) { var parameter = ServiceParameter.CreateWithMessage(userInfo , MethodBase.GetCurrentMethod() , this.serviceName , AppMessage.UserService_GetDataTableByIds); List<BaseUserEntity> entityList = new List<BaseUserEntity>(); ServiceUtil.ProcessUserCenterReadDb(userInfo, parameter, (dbHelper) => { var userManager = new BaseUserManager(dbHelper, userInfo); entityList = userManager.GetListByManager(managerId); }); return entityList; } #endregion #region public string[] GetIdsByManager(string managerId) 按上級主管獲取下屬用戶主鍵數組 /// <summary> /// 按上級主管獲取下屬用戶主鍵數組 /// </summary> /// <param name="userInfo">用戶主鍵</param> /// <param name="managerId">主管主鍵</param> /// <returns>用戶主鍵數組</returns> public string[] GetIdsByManager(BaseUserInfo userInfo, string managerId) { var parameter = ServiceParameter.CreateWithMessage(userInfo , MethodBase.GetCurrentMethod() , this.serviceName , AppMessage.UserService_GetDataTableByIds); string[] entityList = null; ServiceUtil.ProcessUserCenterReadDb(userInfo, parameter, (dbHelper) => { var userManager = new BaseUserManager(dbHelper, userInfo); entityList = userManager.GetIdsByManager(managerId); }); return entityList; } #endregion
感謝中通快遞股份有限公司,全面應用通用權限管理系統快速開發平臺,讓咱們的軟件愈來愈強大,愈來愈高性能。this