BaseClass.cs 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. using System.Collections.Generic;
  2. using System.Linq;
  3. using MySystem.Models.Bs;
  4. using System.Data;
  5. using AppConfig;
  6. namespace MySystem
  7. {
  8. /// <summary>
  9. /// 基础功能方法
  10. /// </summary>
  11. public class BaseClass
  12. {
  13. #region 菜单权限json
  14. /// <summary>
  15. /// 菜单权限json
  16. /// </summary>
  17. /// <returns></returns>
  18. public static string GetRightJson()
  19. {
  20. WebCMSEntities bsdb = new WebCMSEntities();
  21. string result = "[";
  22. List<RightDic> list = bsdb.RightDic.ToList();
  23. List<RightDic> Level1 = list.Where(m => m.RightLevel == 1).ToList();
  24. foreach (RightDic sub1 in Level1)
  25. {
  26. result += "{\"title\": \"" + sub1.Title + "\",\"name\": \"" + sub1.Name + "\",\"id\": \"" + sub1.Id + "\", \"spread\": false, \"children\": [";
  27. List<RightDic> Level2 = list.Where(m => m.RightLevel == 2 && m.Id.StartsWith(sub1.Id)).ToList();
  28. if (Level2.Count > 0)
  29. {
  30. foreach (RightDic sub2 in Level2)
  31. {
  32. result += "{\"title\": \"" + sub2.Title + "\",\"name\": \"" + sub2.Name + "\",\"id\": \"" + sub2.Id + "\", \"spread\": false, \"children\": [";
  33. List<RightDic> Level3 = list.Where(m => m.RightLevel == 3 && m.Id.StartsWith(sub2.Id)).ToList();
  34. if (Level3.Count > 0)
  35. {
  36. foreach (RightDic sub3 in Level3)
  37. {
  38. result += "{\"title\": \"" + sub3.Title + "\",\"name\": \"" + sub3.Name + "\",\"id\": \"" + sub3.Id + "\", \"spread\": false, \"children\": [";
  39. string rightString = ForOperateRight(sub3.Id);
  40. if (!string.IsNullOrEmpty(rightString))
  41. {
  42. result += rightString;
  43. }
  44. // else
  45. // {
  46. // result += "{title: '基本权限', id: '" + sub3.Id + "_base'}";
  47. // }
  48. result += "]},";
  49. }
  50. result = result.TrimEnd(',');
  51. }
  52. else
  53. {
  54. string rightString = ForOperateRight(sub2.Id);
  55. if (!string.IsNullOrEmpty(rightString))
  56. {
  57. result += rightString;
  58. }
  59. // else
  60. // {
  61. // result += "{title: '基本权限', id: '" + sub2.Id + "_base'}";
  62. // }
  63. }
  64. result += "]},";
  65. }
  66. result = result.TrimEnd(',');
  67. }
  68. else
  69. {
  70. result += ForOperateRight(sub1.Id);
  71. string rightString = ForOperateRight(sub1.Id);
  72. if (!string.IsNullOrEmpty(rightString))
  73. {
  74. result += rightString;
  75. }
  76. // else
  77. // {
  78. // result += "{title: '基本权限', id: '" + sub1.Id + "_base'}";
  79. // }
  80. }
  81. result += "]},";
  82. }
  83. result = result.TrimEnd(',');
  84. result += "]";
  85. return result;
  86. }
  87. //读取当前菜单有哪些权限
  88. public static string ForOperateRight(string Id)
  89. {
  90. WebCMSEntities bsdb = new WebCMSEntities();
  91. string result = "";
  92. List<MenuRight> rights = bsdb.MenuRight.Where(m => m.MenuId.StartsWith(Id)).OrderBy(m => m.MenuId).ToList();
  93. foreach (MenuRight right in rights)
  94. {
  95. result += "{\"title\": \"" + right.Name + "\",\"id\": \"" + right.MenuId + "\"},";
  96. }
  97. RightDic rightDic = bsdb.RightDic.FirstOrDefault(m => m.Id == Id) ?? new RightDic();
  98. if (!string.IsNullOrEmpty(rightDic.OtherRight))
  99. {
  100. string[] OtherRightList = rightDic.OtherRight.Split('\n');
  101. foreach (string SubOtherRight in OtherRightList)
  102. {
  103. string[] SubOtherRightData = SubOtherRight.Split('_');
  104. result += "{\"title\": \"" + SubOtherRightData[1] + "\",\"id\": \"" + Id + "_" + SubOtherRightData[0] + "\"},";
  105. }
  106. }
  107. result = result.TrimEnd(',');
  108. return result;
  109. }
  110. #endregion
  111. #region 获取当前系统操作人信息
  112. /// <summary>
  113. /// 获取当前系统操作人信息
  114. /// </summary>
  115. /// <returns></returns>
  116. public static string GetOperatorInfo()
  117. {
  118. var Operator = LoginSession.sysAdminName + "-" + LoginSession.sysRealName;
  119. return Operator;
  120. }
  121. #endregion
  122. }
  123. }