TrendToolItemConfigManage.cs 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. using System;
  2. using CB.Interface;
  3. using CB.Entity;
  4. using System.Data.SqlClient;
  5. using System.Data;
  6. using System.Collections.Generic;
  7. using CB.Common;
  8. namespace CB.Data.SqlServer
  9. {
  10. class TrendToolItemConfigManage : Repository<TrendToolItemConfigInfo>, ITrendToolItemConfigService
  11. {
  12. public TrendToolItemConfigManage(string interfaceId)
  13. : base(interfaceId)
  14. {
  15. }
  16. public override bool Save(TrendToolItemConfigInfo entity)
  17. {
  18. SqlParameter[] para = new SqlParameter[] {
  19. new SqlParameter("@ItemID",entity.ItemID)
  20. ,new SqlParameter("@configID",entity.ConfigID)
  21. ,new SqlParameter("@FilterCode",entity.FilterCode)
  22. ,new SqlParameter("@SpecialCode",entity.SpecialCode)
  23. ,new SqlParameter("@FilterCodeGroup",entity.FilterCodeGroup)
  24. ,new SqlParameter("@FilterRemark",entity.FilterRemark)
  25. ,new SqlParameter("@LineCount",entity.LineCount)
  26. ,new SqlParameter("@NameControl",entity.NameControl)
  27. ,new SqlParameter("@IsControlArea",entity.IsControlArea)
  28. ,new SqlParameter("@ControlArea",entity.ControlArea)
  29. ,new SqlParameter("@ElementName",entity.ElementName)
  30. ,new SqlParameter("@ElementType",entity.ElementType)
  31. ,new SqlParameter("@ElementValue",entity.ElementValue)
  32. ,new SqlParameter("@ElementCount",entity.ElementCount)
  33. ,new SqlParameter("@IsCheckeds",entity.IsCheckeds)
  34. ,new SqlParameter("@AttrOther",entity.AttrOther)
  35. ,new SqlParameter("@HasLabel",entity.HasLabel)
  36. ,new SqlParameter("@LabelValue",entity.LabelValue)
  37. ,new SqlParameter("@CreateTime",entity.CreateTime)
  38. ,new SqlParameter("@LastUpdate",entity.LastUpdate)
  39. ,new SqlParameter("@ItemOrder",entity.ItemOrder)
  40. ,new SqlParameter("@Status",entity.Status)
  41. };
  42. return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId,CommandType.StoredProcedure, "usp_TrendToolItemConfig_update", para)) > 0 ? true : false;
  43. }
  44. public override bool Update(TrendToolItemConfigInfo entity)
  45. {
  46. SqlParameter[] para = new SqlParameter[] {
  47. new SqlParameter("@ItemID",entity.ItemID)
  48. ,new SqlParameter("@configID",entity.ConfigID)
  49. ,new SqlParameter("@FilterCode",entity.FilterCode)
  50. ,new SqlParameter("@SpecialCode",entity.SpecialCode)
  51. ,new SqlParameter("@FilterCodeGroup",entity.FilterCodeGroup)
  52. ,new SqlParameter("@FilterRemark",entity.FilterRemark)
  53. ,new SqlParameter("@LineCount",entity.LineCount)
  54. ,new SqlParameter("@NameControl",entity.NameControl)
  55. ,new SqlParameter("@IsControlArea",entity.IsControlArea)
  56. ,new SqlParameter("@ControlArea",entity.ControlArea)
  57. ,new SqlParameter("@ElementName",entity.ElementName)
  58. ,new SqlParameter("@ElementType",entity.ElementType)
  59. ,new SqlParameter("@ElementValue",entity.ElementValue)
  60. ,new SqlParameter("@ElementCount",entity.ElementCount)
  61. ,new SqlParameter("@IsCheckeds",entity.IsCheckeds)
  62. ,new SqlParameter("@AttrOther",entity.AttrOther)
  63. ,new SqlParameter("@HasLabel",entity.HasLabel)
  64. ,new SqlParameter("@LabelValue",entity.LabelValue)
  65. ,new SqlParameter("@CreateTime",entity.CreateTime)
  66. ,new SqlParameter("@LastUpdate",entity.LastUpdate)
  67. ,new SqlParameter("@ItemOrder",entity.ItemOrder)
  68. ,new SqlParameter("@Status",entity.Status)
  69. };
  70. return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId,CommandType.StoredProcedure, "usp_TrendToolItemConfig_update", para)) > 0 ? true : false;
  71. }
  72. public override bool Delete(int Id)
  73. {
  74. SqlParameter[] para = new SqlParameter[] {
  75. new SqlParameter("@ItemID",Id)
  76. };
  77. return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId,CommandType.StoredProcedure, "usp_TrendToolItemConfig_del", para)) > 0 ? true : false;
  78. }
  79. public override TrendToolItemConfigInfo Get<TKey>(TKey key)
  80. {
  81. SqlParameter[] parameters = new SqlParameter[] { new SqlParameter("@ItemID", key) };
  82. using (DataTable dt = DbHelper.ExecuteDatatable(InterfaceId,CommandType.StoredProcedure, "usp_TrendToolItemConfig_Select", parameters))
  83. {
  84. TrendToolItemConfigInfo list = new TrendToolItemConfigInfo();
  85. if (dt != null && dt.Rows.Count > 0)
  86. {
  87. DataRow dr = dt.Rows[0];
  88. list = LoadEntity(dr);
  89. }
  90. return list;
  91. }
  92. }
  93. public override IList<TrendToolItemConfigInfo> ToList()
  94. {
  95. throw new NotImplementedException();
  96. }
  97. /// <summary>
  98. /// 获取工具对应每项的明细信息
  99. /// </summary>
  100. /// <param name="entity"></param>
  101. /// <returns></returns>
  102. public override IList<TrendToolItemConfigInfo> ToList(TrendToolItemConfigInfo entity)
  103. {
  104. SqlParameter[] parameters = { new SqlParameter("@ConfigID", entity.ConfigID) };
  105. using (DataTable dt = DbHelper.ExecuteDatatable(InterfaceId,CommandType.StoredProcedure, "usp_TrendToolItemConfig_List_Select", parameters))
  106. {
  107. List<TrendToolItemConfigInfo> lists = new List<TrendToolItemConfigInfo>();
  108. for (int i = 0; i < dt.Rows.Count; i++)
  109. {
  110. lists.Add(LoadEntity(dt.Rows[i]));
  111. }
  112. return lists;
  113. }
  114. }
  115. public override IList<TrendToolItemConfigInfo> ToPaging(TrendToolItemConfigInfo entity, int pageSize, int pageIndex, out int recordCount)
  116. {
  117. throw new NotImplementedException();
  118. }
  119. /// <summary>
  120. /// 获取过滤器的name列表
  121. /// </summary>
  122. /// <param name="PageID"></param>
  123. /// <returns></returns>
  124. public TrendToolFilterName GetToolFilterName(int ConfigID)
  125. {
  126. SqlParameter[] parameters = { new SqlParameter("@ConfigID", ConfigID) };
  127. using (DataTable dt = DbHelper.ExecuteDatatable(InterfaceId,CommandType.StoredProcedure, "usp_TrendToolFilterName_Select", parameters))
  128. {
  129. TrendToolFilterName filter = LoadFilterEntity(dt);
  130. return filter;
  131. }
  132. }
  133. /// <summary>
  134. /// 将数据转换成TrendToolItemConfigInfo对象
  135. /// </summary>
  136. /// <param name="dr"></param>
  137. /// <returns></returns>
  138. protected override TrendToolItemConfigInfo LoadEntity(DataRow dr)
  139. {
  140. return new TrendToolItemConfigInfo
  141. {
  142. Id = TypeConverter.ObjectToInt(dr["ItemID"]),
  143. ItemID = TypeConverter.ObjectToInt(dr["ItemID"]),
  144. ConfigID = TypeConverter.ObjectToInt(dr["ConfigID"]),
  145. FilterCode = dr["FilterCode"].ToString(),
  146. SpecialCode = dr["SpecialCode"].ToString(),
  147. FilterCodeGroup = dr["FilterCodeGroup"].ToString(),
  148. FilterRemark = dr["FilterRemark"].ToString(),
  149. LineCount = TypeConverter.ObjectToInt(dr["LineCount"]),
  150. NameControl = TypeConverter.ObjectToBool(dr["NameControl"], false),
  151. IsControlArea = TypeConverter.ObjectToBool(dr["IsControlArea"], false),
  152. ControlArea = dr["ControlArea"].ToString(),
  153. ElementName = dr["ElementName"].ToString(),
  154. ElementType = dr["ElementType"].ToString(),
  155. ElementValue = dr["ElementValue"].ToString(),
  156. ElementCount = TypeConverter.ObjectToInt(dr["ElementCount"]),
  157. IsCheckeds = dr["IsCheckeds"].ToString(),
  158. AttrOther = dr["AttrOther"].ToString(),
  159. HasLabel = TypeConverter.ObjectToBool(dr["HasLabel"], false),
  160. LabelValue = dr["LabelValue"].ToString(),
  161. CreateTime = TypeConverter.ObjectToDateTime(dr["CreateTime"]),
  162. LastUpdate = TypeConverter.ObjectToDateTime(dr["LastUpdate"]),
  163. ItemOrder = TypeConverter.ObjectToInt(dr["ItemOrder"]),
  164. Status = TypeConverter.ObjectToBool(dr["Status"], false),
  165. };
  166. }
  167. /// <summary>
  168. /// 将数据转换成TrendToolFilterName对象
  169. /// </summary>
  170. /// <param name="dt"></param>
  171. /// <returns></returns>
  172. private TrendToolFilterName LoadFilterEntity(DataTable dt)
  173. {
  174. TrendToolFilterName fn = new TrendToolFilterName();
  175. List<Filter> contents = new List<Filter>();
  176. for (int i = 0; i < dt.Rows.Count; i++)
  177. {
  178. DataRow dr = dt.Rows[i];
  179. Filter filter = new Filter();
  180. filter.FilterCode = dr["FilterCode"].ToString();
  181. filter.FilterName = ToolUtility.FilterNamePrefix + dr["ItemID"].ToString();
  182. filter.IsControlArea = dr["IsControlArea"] != null ? TypeConverter.ObjectToBool(dr["IsControlArea"], false) : false;
  183. if (filter.IsControlArea)
  184. filter.ControlArea = dr["ControlArea"].ToString();
  185. filter.SpecialCode = dr["SpecialCode"].ToString().ToLower();
  186. if (filter.FilterCode.ToLower().Trim() == "header")
  187. fn.FilterHeader = filter;
  188. else if (filter.FilterCode.ToLower().Trim() == "content")
  189. contents.Add(filter);
  190. }
  191. fn.FilterContent = contents;
  192. return fn;
  193. }
  194. }
  195. }