SysAuthorityManage.cs 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Data.Common;
  5. using CB.Common;
  6. using CB.Entity;
  7. using CB.Interface.Infrastructure;
  8. namespace CB.Data.SqlServer
  9. {
  10. public class SysAuthorityManage : Repository<SysAuthorityInfo>, ISysAuthorityService
  11. {
  12. public SysAuthorityManage(string interfaceId)
  13. : base(interfaceId)
  14. {
  15. }
  16. public override bool Save(SysAuthorityInfo entity)
  17. {
  18. DbParameter[] pars =
  19. {
  20. DbHelper.MakeInParam(InterfaceId,"@Name",(DbType)SqlDbType.NChar,20,entity.Name),
  21. DbHelper.MakeInParam(InterfaceId,"@Url",(DbType)SqlDbType.NVarChar,200,entity.Url),
  22. DbHelper.MakeInParam(InterfaceId,"@PageName",(DbType)SqlDbType.NVarChar,50,entity.PageName),
  23. DbHelper.MakeInParam(InterfaceId,"@ParentId",(DbType)SqlDbType.Int,4,entity.ParentId),
  24. DbHelper.MakeInParam(InterfaceId,"@AuthorType",(DbType)SqlDbType.Int,4,entity.AuthorType),
  25. DbHelper.MakeInParam(InterfaceId,"@OrderBy",(DbType)SqlDbType.Int,4,entity.OrderBy),
  26. DbHelper.MakeInParam(InterfaceId,"@RightsPageType",(DbType)SqlDbType.Int,4,entity.PageType)
  27. };
  28. return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId, CommandType.StoredProcedure, "usp_SysAuthority_save", pars)) > 0 ? true : false;
  29. }
  30. public override bool Update(SysAuthorityInfo entity)
  31. {
  32. DbParameter[] pars =
  33. {
  34. DbHelper.MakeInParam(InterfaceId,"@Name",(DbType)SqlDbType.NChar,20,entity.Name),
  35. DbHelper.MakeInParam(InterfaceId,"@Url",(DbType)SqlDbType.NVarChar,200,entity.Url),
  36. DbHelper.MakeInParam(InterfaceId,"@PageName",(DbType)SqlDbType.NVarChar,50,entity.PageName),
  37. DbHelper.MakeInParam(InterfaceId,"@ParentId",(DbType)SqlDbType.Int,4,entity.ParentId),
  38. DbHelper.MakeInParam(InterfaceId,"@AuthorType",(DbType)SqlDbType.Int,4,entity.AuthorType),
  39. DbHelper.MakeInParam(InterfaceId,"@OrderBy",(DbType)SqlDbType.Int,4,entity.OrderBy),
  40. DbHelper.MakeInParam(InterfaceId,"@AId",(DbType)SqlDbType.Int,4,entity.AId),
  41. DbHelper.MakeInParam(InterfaceId,"@RightsPageType",(DbType)SqlDbType.Int,4,entity.PageType)
  42. };
  43. return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId, CommandType.StoredProcedure, "usp_SysAuthority_update", pars)) > 0 ? true : false;
  44. }
  45. public override bool Delete(int Id)
  46. {
  47. DbParameter[] pars =
  48. {
  49. DbHelper.MakeInParam(InterfaceId,"@statement",(DbType)SqlDbType.NVarChar,50,"DELETE FROM [SYS_SysAuthority] WHERE [AId]=@aid"),
  50. DbHelper.MakeInParam(InterfaceId,"@params",(DbType)SqlDbType.NVarChar,10,"@aid int"),
  51. DbHelper.MakeInParam(InterfaceId,"@aid",(DbType)SqlDbType.Int,4,Id)
  52. };
  53. return DbHelper.ExecuteNonQuery(InterfaceId, CommandType.StoredProcedure, "dbo.sp_executesql", pars) > 0 ? true : false;
  54. }
  55. public override SysAuthorityInfo Get<TKey>(TKey key)
  56. {
  57. throw new NotImplementedException();
  58. }
  59. public override IList<SysAuthorityInfo> ToList()
  60. {
  61. DbParameter[] pars ={
  62. DbHelper.MakeInParam(InterfaceId,"@statement",(DbType)SqlDbType.NVarChar,200,"SELECT [AId],[Name],[Url],[PageName],[ParentId],[Depth],[AuthorType],[OrderBy],[Addtime],[RightsPageType] FROM [SYS_SysAuthority] ORDER BY [OrderBy]"),
  63. };
  64. IList<SysAuthorityInfo> list = new List<SysAuthorityInfo>();
  65. using (IDataReader reader = DbHelper.ExecuteReader(InterfaceId, CommandType.StoredProcedure, "[dbo].[sp_executesql]", pars))
  66. {
  67. while (reader.Read())
  68. {
  69. list.Add(LoadEntity(reader));
  70. }
  71. reader.Dispose();
  72. }
  73. return list;
  74. }
  75. public override IList<SysAuthorityInfo> ToList(SysAuthorityInfo entity)
  76. {
  77. throw new NotImplementedException();
  78. }
  79. public override IList<SysAuthorityInfo> ToPaging(SysAuthorityInfo entity, int pageSize, int pageIndex, out int recordCount)
  80. {
  81. throw new NotImplementedException();
  82. }
  83. public bool UpdateUserGroupAuthority(int groupId, string authority)
  84. {
  85. return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId, CommandType.Text, string.Format("DELETE FROM [SYS_SysGroupAuthority] WHERE [GroupId]={0};INSERT INTO [SYS_SysGroupAuthority]([GroupId],[AId]) SELECT {0},[AId] FROM [SYS_SysAuthority] WHERE [AId] IN ({1});SELECT @@ROWCOUNT;", groupId, authority))) > 0 ? true : false;
  86. }
  87. protected override SysAuthorityInfo LoadEntity(IDataReader reader)
  88. {
  89. return new SysAuthorityInfo
  90. {
  91. AId = TypeConverter.ObjectToInt(reader["AId"]),
  92. Name = reader["Name"].ToString().Trim(),
  93. Url = reader["Url"].ToString(),
  94. PageName = reader["PageName"].ToString(),
  95. ParentId = TypeConverter.ObjectToInt(reader["ParentId"]),
  96. Depth = TypeConverter.ObjectToInt(reader["Depth"]),
  97. AuthorType = (AuthorityType)Enum.Parse(typeof(AuthorityType), reader["AuthorType"].ToString()),
  98. OrderBy = TypeConverter.ObjectToInt(reader["OrderBy"]),
  99. Addtime = TypeConverter.ObjectToDateTime(reader["Addtime"], DateTime.MinValue),
  100. PageType = TypeConverter.StringToEnum<AuthorityPageType>(reader["RightsPageType"].ToString())
  101. };
  102. }
  103. protected override SysAuthorityInfo LoadEntity(DataRow dr)
  104. {
  105. return new SysAuthorityInfo
  106. {
  107. AId = TypeConverter.ObjectToInt(dr["AId"]),
  108. Name = dr["Name"].ToString().Trim(),
  109. Url = dr["Url"].ToString(),
  110. PageName = dr["PageName"].ToString(),
  111. ParentId = TypeConverter.ObjectToInt(dr["ParentId"]),
  112. Depth = TypeConverter.ObjectToInt(dr["Depth"]),
  113. AuthorType = (AuthorityType)Enum.Parse(typeof(AuthorityType), dr["AuthorType"].ToString()),
  114. OrderBy = TypeConverter.ObjectToInt(dr["OrderBy"]),
  115. Addtime = TypeConverter.ObjectToDateTime(dr["Addtime"], DateTime.MinValue),
  116. PageType = TypeConverter.StringToEnum<AuthorityPageType>(dr["RightsPageType"].ToString())
  117. };
  118. }
  119. }
  120. }