using System; using System.Collections.Generic; using System.Linq; using System.Text; using CB.Entity; using CB.Interface.Infrastructure; using System.Data.Common; using System.Data; using CB.Common; namespace CB.Data.SqlServer { public class GD11X5TrendChartDataManage: Repository, IGD11X5TrendChartDataService { public GD11X5TrendChartDataManage(string interfaceId) : base(interfaceId) { } public override bool Save(TrendChartData entity) { DbParameter[] pars ={ DbHelper.MakeInParam(InterfaceId,"@ChartId",(DbType)SqlDbType.Int,4,entity.ChartId), DbHelper.MakeInParam(InterfaceId,"@Term",(DbType)SqlDbType.Int,4,entity.Term), DbHelper.MakeInParam(InterfaceId,"@RecordCount",(DbType)SqlDbType.Int,0,entity.RecordCount), DbHelper.MakeInParam(InterfaceId,"@AllMaxMiss",(DbType)SqlDbType.NVarChar,0,entity.AllMaxMiss.ArrayToString()), DbHelper.MakeInParam(InterfaceId,"@AllTimes",(DbType)SqlDbType.NVarChar,0,entity.AllTimes.ArrayToString()), DbHelper.MakeInParam(InterfaceId,"@AllAvgMiss",(DbType)SqlDbType.NVarChar,0,entity.AllAvgMiss.ArrayToString()), DbHelper.MakeInParam(InterfaceId,"@LastMiss",(DbType)SqlDbType.NVarChar,0,entity.LastMiss.ArrayToString()), DbHelper.MakeInParam(InterfaceId,"@LocalMiss",(DbType)SqlDbType.NVarChar,0,entity.LocalMiss.ArrayToString()), DbHelper.MakeInParam(InterfaceId,"@HtmlData",(DbType)SqlDbType.NVarChar,0,entity.HtmlData), DbHelper.MakeInParam(InterfaceId,"@ChartType",(DbType)SqlDbType.Int,4,entity.ChartType) }; return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId, CommandType.StoredProcedure, "usp_GD11X5TrendChartData_save", pars)) > 0; } public override bool Update(TrendChartData entity) { throw new NotImplementedException(); } public override bool Delete(int Id) { throw new NotImplementedException(); } public override TrendChartData Get(TKey key) { throw new NotImplementedException(); } public override IList ToList() { throw new NotImplementedException(); } public override IList ToList(TrendChartData entity) { throw new NotImplementedException(); } public override IList ToPaging(TrendChartData entity, int pageSize, int pageIndex, out int recordCount) { throw new NotImplementedException(); } public IList ToList(TrendChartSearchField entity) { IList list = new List(); DbParameter[] pars ={ DbHelper.MakeInParam(InterfaceId,"@ChartId",(DbType)SqlDbType.Int,4,entity.ChartId), DbHelper.MakeInParam(InterfaceId,"@ChartType",(DbType)SqlDbType.Int,4,entity.ChartType), DbHelper.MakeInParam(InterfaceId,"@Record",(DbType)SqlDbType.Int,4,entity.Record), DbHelper.MakeInParam(InterfaceId,"@startQi",(DbType)SqlDbType.Int,4,entity.StartTerm), DbHelper.MakeInParam(InterfaceId,"@endQi",(DbType)SqlDbType.Int,4,entity.EndTerm), DbHelper.MakeInParam(InterfaceId,"@Year",(DbType)SqlDbType.Int,4,entity.Year), }; using (DataTable dt = DbHelper.ExecuteDatatable(InterfaceId, CommandType.StoredProcedure, "usp_GD11X5TrendChartData_list_select", pars)) { if (null != dt && 0 < dt.Rows.Count) { foreach (DataRow dr in dt.Rows) { list.Add(LoadEntity(dr)); } } dt.Dispose(); } return list; } public TrendChartData GetTrendChartDataByTerm(int chartId, TrendChartType chartType, long term) { TrendChartData entity = null; DbParameter[] para = { 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].[GP_11x5_GuangDongTrendChartData] WHERE [ChartId]=@cid AND [Term]=@qi AND [ChartType]=@chartType ORDER BY [Term] ASC"), DbHelper.MakeInParam(InterfaceId,"@params",(DbType)SqlDbType.NVarChar,50,"@cid int,@qi int,@chartType int"), DbHelper.MakeInParam(InterfaceId,"@cid",(DbType)SqlDbType.Int,4,chartId), DbHelper.MakeInParam(InterfaceId,"@qi",(DbType)SqlDbType.Int,4,term), DbHelper.MakeInParam(InterfaceId,"@chartType",(DbType)SqlDbType.Int,4,chartType) }; using (IDataReader reader = DbHelper.ExecuteReader(InterfaceId, CommandType.StoredProcedure, "dbo.[sp_executesql]", para)) { while (reader.Read()) { entity = LoadEntity(reader); } reader.Close(); } return entity; } protected override TrendChartData LoadEntity(DataRow dr) { return new TrendChartData { Id = TypeConverter.ObjectToInt(dr["Id"]), ChartId = TypeConverter.ObjectToInt(dr["ChartId"]), Term = TypeConverter.ObjectToInt(dr["Term"]), RecordCount = TypeConverter.ObjectToInt(dr["RecordCount"]), AllMaxMiss = dr["AllMaxMiss"].ToString().Split('|'), AllTimes = dr["AllTimes"].ToString().Split('|'), AllAvgMiss = dr["AllAvgMiss"].ToString().Split('|'), LastMiss = dr["LastMiss"].ToString().Split('|'), LocalMiss = dr["LocalMiss"].ToString().Split('|'), HtmlData = dr["HtmlData"].ToString().Trim(), ChartType = (TrendChartType)Enum.Parse(typeof(TrendChartType), dr["ChartType"].ToString()), Addtime = TypeConverter.ObjectToDateTime(dr["Addtime"], DateTime.MinValue) }; } protected override TrendChartData LoadEntity(IDataReader reader) { return new TrendChartData { Id = TypeConverter.ObjectToInt(reader["Id"]), ChartId = TypeConverter.ObjectToInt(reader["ChartId"]), Term = TypeConverter.ObjectToInt(reader["Term"]), RecordCount = TypeConverter.ObjectToInt(reader["RecordCount"]), AllMaxMiss = reader["AllMaxMiss"].ToString().Split('|'), AllTimes = reader["AllTimes"].ToString().Split('|'), AllAvgMiss = reader["AllAvgMiss"].ToString().Split('|'), LastMiss = reader["LastMiss"].ToString().Split('|'), LocalMiss = reader["LocalMiss"].ToString().Split('|'), HtmlData = reader["HtmlData"].ToString().Trim(), ChartType = (TrendChartType)Enum.Parse(typeof(TrendChartType), reader["ChartType"].ToString()), Addtime = TypeConverter.ObjectToDateTime(reader["Addtime"], DateTime.MinValue) }; } } }