C#.NET 大型通用信息化系統集成快速開發平台 4.0 版本 - 用戶權限樹的實現 -- 權限遞歸樹


業務系統里經常會需要計算類似的樹形權限樹的業務需求

 

1:往往會有一些需求,a 對 b 有權限, b對c 有權限, 等等。

2:還需要很直觀的看到,整個權限的樹形關系,一目了然的那種。

3:程序調用簡單,寫代碼很容易能調用我們寫好的函數。

4:程序穩定,bug 少,考慮周全。

直接上圖:

在模塊菜單定義里,需要一個數據權限項的設定,設定方式如下圖

代碼調用方法:

            BasePermissionScopeManager permissionScopeManager = new Business.BasePermissionScopeManager(BaseSystemInfo.UserInfo);
            // 目標用戶的主鍵
            string userId = "133";
            // 對什么權限進行權限樹運算?
            string permissionCode = "Resource.ManagePermission";
            // 權限的名稱可以為null,可以忽略的參數
            string permissionName = "管理權限";
            // 獲取到用戶權限樹遞歸的用戶主鍵
            string[] userIds = permissionScopeManager.GetPermissionTreeUserIds(userId, permissionCode, permissionName);
            // 顯示輸出用戶主鍵列表,你可以任意加工這些參數結果數據了
            foreach (var user in userIds)
            {
                System.Console.WriteLine("user:" + user);
            }


每個功能看了,我們都有能力實現,但是很多時候沒那么多時間,因為你平時還需要干什么多事情,更有價值的事情,有些功能你看一下2個小時就會用了,但是你自己實現一下需要2周才能開發好,若你的生命又是很有價值,那你可以考慮有償購買一個組件源碼,然后用2個小時把問題搞定了就可以了。因為組件有1000個功能,你沒連續的2000個小時從頭到尾都實現好。因為你的生命很寶貴,你需要有時間去談戀愛,陪孩子,陪客戶,管理項目,學習提高自己,鍛煉身體,合理的休息。

 

當生命沒多少價值時,浪費就浪費了,重復建設就重復建設了,就當是鍛煉,提高自己了就可以了。反正有的是時間,最不值錢的就是時間。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM