TCQXCTrendChartDataManage.cs 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  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 TCQXCTrendChartDataManage : Repository<TrendChartData>, ITCQXCTrendChartDataService
  11. {
  12. public TCQXCTrendChartDataManage(string interfaceId)
  13. : base(interfaceId)
  14. {
  15. }
  16. public override bool Save(TrendChartData entity)
  17. {
  18. DbParameter[] pars ={
  19. DbHelper.MakeInParam(InterfaceId,"@ChartId",(DbType)SqlDbType.Int,4,entity.ChartId),
  20. DbHelper.MakeInParam(InterfaceId,"@Term",(DbType)SqlDbType.Int,4,entity.Term),
  21. DbHelper.MakeInParam(InterfaceId,"@RecordCount",(DbType)SqlDbType.Int,0,entity.RecordCount),
  22. DbHelper.MakeInParam(InterfaceId,"@AllMaxMiss",(DbType)SqlDbType.NVarChar,0,entity.AllMaxMiss.ArrayToString()),
  23. DbHelper.MakeInParam(InterfaceId,"@AllTimes",(DbType)SqlDbType.NVarChar,0,entity.AllTimes.ArrayToString()),
  24. DbHelper.MakeInParam(InterfaceId,"@AllAvgMiss",(DbType)SqlDbType.NVarChar,0,entity.AllAvgMiss.ArrayToString()),
  25. DbHelper.MakeInParam(InterfaceId,"@LastMiss",(DbType)SqlDbType.NVarChar,0,entity.LastMiss.ArrayToString()),
  26. DbHelper.MakeInParam(InterfaceId,"@LocalMiss",(DbType)SqlDbType.NVarChar,0,entity.LocalMiss.ArrayToString()),
  27. DbHelper.MakeInParam(InterfaceId,"@HtmlData",(DbType)SqlDbType.NVarChar,0,entity.HtmlData),
  28. DbHelper.MakeInParam(InterfaceId,"@ChartType",(DbType)SqlDbType.Int,4,entity.ChartType)
  29. };
  30. return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId,CommandType.StoredProcedure, "usp_TCQXCTrendChartData_save", pars)) > 0;
  31. }
  32. public override bool Update(TrendChartData entity)
  33. {
  34. throw new NotImplementedException();
  35. }
  36. public override bool Delete(int Id)
  37. {
  38. throw new NotImplementedException();
  39. }
  40. public override TrendChartData Get<TKey>(TKey key)
  41. {
  42. throw new NotImplementedException();
  43. }
  44. public override IList<TrendChartData> ToList()
  45. {
  46. throw new NotImplementedException();
  47. }
  48. public override IList<TrendChartData> ToList(TrendChartData entity)
  49. {
  50. throw new NotImplementedException();
  51. }
  52. public override IList<TrendChartData> ToPaging(TrendChartData entity, int pageSize, int pageIndex, out int recordCount)
  53. {
  54. throw new NotImplementedException();
  55. }
  56. public IList<TrendChartData> ToList(TrendChartSearchField entity)
  57. {
  58. IList<TrendChartData> list = new List<TrendChartData>();
  59. DbParameter[] pars ={
  60. DbHelper.MakeInParam(InterfaceId,"@ChartId",(DbType)SqlDbType.Int,4,entity.ChartId),
  61. DbHelper.MakeInParam(InterfaceId,"@ChartType",(DbType)SqlDbType.Int,4,entity.ChartType),
  62. DbHelper.MakeInParam(InterfaceId,"@Record",(DbType)SqlDbType.Int,4,entity.Record),
  63. DbHelper.MakeInParam(InterfaceId,"@startQi",(DbType)SqlDbType.Int,4,entity.StartTerm),
  64. DbHelper.MakeInParam(InterfaceId,"@endQi",(DbType)SqlDbType.Int,4,entity.EndTerm),
  65. DbHelper.MakeInParam(InterfaceId,"@Year",(DbType)SqlDbType.Int,4,entity.Year),
  66. };
  67. using (DataTable dt = DbHelper.ExecuteDatatable(InterfaceId,CommandType.StoredProcedure, "usp_TCQXCTrendChartData_list_select", pars))
  68. {
  69. if (null != dt && 0 < dt.Rows.Count)
  70. {
  71. foreach (DataRow dr in dt.Rows)
  72. {
  73. list.Add(LoadEntity(dr));
  74. }
  75. }
  76. dt.Dispose();
  77. }
  78. return list;
  79. }
  80. public TrendChartData GetTrendChartDataByTerm(int chartId, TrendChartType chartType, long term)
  81. {
  82. TrendChartData entity = null;
  83. DbParameter[] para =
  84. {
  85. DbHelper.MakeInParam(InterfaceId,"@statement",(DbType)SqlDbType.NVarChar,500,"SELECT TOP 1 [Id] ,[ChartId] ,[Term],[RecordCount],[AllMaxMiss] ,[AllTimes],[AllAvgMiss] ,[LastMiss] ,[LocalMiss],[HtmlData],[ChartType],[Addtime] FROM [dbo].[DT_TCQXCTrendChartData] WHERE [ChartId]=@cid AND [Term]=@qi AND [ChartType]=@chartType ORDER BY [Term] ASC"),
  86. DbHelper.MakeInParam(InterfaceId,"@params",(DbType)SqlDbType.NVarChar,50,"@cid int,@qi int,@chartType int"),
  87. DbHelper.MakeInParam(InterfaceId,"@cid",(DbType)SqlDbType.Int,4,chartId),
  88. DbHelper.MakeInParam(InterfaceId,"@qi",(DbType)SqlDbType.Int,4,term),
  89. DbHelper.MakeInParam(InterfaceId,"@chartType",(DbType)SqlDbType.Int,4,chartType)
  90. };
  91. using (IDataReader reader = DbHelper.ExecuteReader(InterfaceId,CommandType.StoredProcedure, "dbo.[sp_executesql]", para))
  92. {
  93. while (reader.Read())
  94. {
  95. entity = LoadEntity(reader);
  96. }
  97. reader.Close();
  98. }
  99. return entity;
  100. }
  101. protected override TrendChartData LoadEntity(IDataReader reader)
  102. {
  103. return new TrendChartData
  104. {
  105. Id = TypeConverter.ObjectToInt(reader["Id"]),
  106. ChartId = TypeConverter.ObjectToInt(reader["ChartId"]),
  107. Term = TypeConverter.ObjectToInt(reader["Term"]),
  108. RecordCount = TypeConverter.ObjectToInt(reader["RecordCount"]),
  109. AllMaxMiss = reader["AllMaxMiss"].ToString().Split('|'),
  110. AllTimes = reader["AllTimes"].ToString().Split('|'),
  111. AllAvgMiss = reader["AllAvgMiss"].ToString().Split('|'),
  112. LastMiss = reader["LastMiss"].ToString().Split('|'),
  113. LocalMiss = reader["LocalMiss"].ToString().Split('|'),
  114. HtmlData = reader["HtmlData"].ToString().Trim(),
  115. ChartType = (TrendChartType)Enum.Parse(typeof(TrendChartType), reader["ChartType"].ToString()),
  116. Addtime = TypeConverter.ObjectToDateTime(reader["Addtime"], DateTime.MinValue)
  117. };
  118. }
  119. protected override TrendChartData LoadEntity(DataRow dr)
  120. {
  121. return new TrendChartData
  122. {
  123. Id = TypeConverter.ObjectToInt(dr["Id"]),
  124. ChartId = TypeConverter.ObjectToInt(dr["ChartId"]),
  125. Term = TypeConverter.ObjectToInt(dr["Term"]),
  126. RecordCount = TypeConverter.ObjectToInt(dr["RecordCount"]),
  127. AllMaxMiss = dr["AllMaxMiss"].ToString().Split('|'),
  128. AllTimes = dr["AllTimes"].ToString().Split('|'),
  129. AllAvgMiss = dr["AllAvgMiss"].ToString().Split('|'),
  130. LastMiss = dr["LastMiss"].ToString().Split('|'),
  131. LocalMiss = dr["LocalMiss"].ToString().Split('|'),
  132. HtmlData = dr["HtmlData"].ToString().Trim(),
  133. ChartType = (TrendChartType)Enum.Parse(typeof(TrendChartType), dr["ChartType"].ToString()),
  134. Addtime = TypeConverter.ObjectToDateTime(dr["Addtime"], DateTime.MinValue)
  135. };
  136. }
  137. }
  138. }