using System; using System.Collections.Generic; using System.Linq; using System.Text; using CB.Entity; using System.Data; using System.Data.Common; using System.Data.SqlClient; using CB.Common; using CB.Interface; namespace CB.Data.SqlServer { public class TrendToolConfigManage : Repository, ITrendToolConfigService { public TrendToolConfigManage(string interfaceId) : base(interfaceId) { } public override bool Save(TrendToolConfigInfo entity) { SqlParameter[] para = new SqlParameter[] { new SqlParameter("@configID",entity.ConfigID) ,new SqlParameter("@pageID", entity.PageID) ,new SqlParameter("@FilterTypeName",entity.FilterTypeName) ,new SqlParameter("@FilterHeader",entity.FilterHeader) ,new SqlParameter("@FilterRemark",entity.FilterRemark) ,new SqlParameter("@FilterFunEnum",entity.FilterFunEnum) ,new SqlParameter("@FilterOrder",entity.FilterOrder) ,new SqlParameter("@FilterNumber",entity.FilterNumber) ,new SqlParameter("@IncludeHtml",entity.IncludeHtml) ,new SqlParameter("@PageGroup",entity.PageGroup) ,new SqlParameter("@IsNorm",entity.IsNorm) ,new SqlParameter("@IsBaseData",entity.IsBaseData) ,new SqlParameter("@FilterStatus",entity.FilterStatus) ,new SqlParameter("@FilterIsSave",entity.FilterIsSave) }; return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId,CommandType.StoredProcedure, "usp_TrendToolConfig_save", para)) > 0 ? true : false; } public override bool Update(TrendToolConfigInfo entity) { SqlParameter[] para = new SqlParameter[] { new SqlParameter("@configID",entity.ConfigID) ,new SqlParameter("@pageID", entity.PageID) ,new SqlParameter("@FilterTypeName",entity.FilterTypeName) ,new SqlParameter("@FilterHeader",entity.FilterHeader) ,new SqlParameter("@FilterRemark",entity.FilterRemark) ,new SqlParameter("@FilterFunEnum",entity.FilterFunEnum) ,new SqlParameter("@FilterOrder",entity.FilterOrder) ,new SqlParameter("@FilterNumber",entity.FilterNumber) ,new SqlParameter("@IncludeHtml",entity.IncludeHtml) ,new SqlParameter("@PageGroup",entity.PageGroup) ,new SqlParameter("@IsNorm",entity.IsNorm) ,new SqlParameter("@IsBaseData",entity.IsBaseData) ,new SqlParameter("@FilterStatus",entity.FilterStatus) ,new SqlParameter("@FilterIsSave",entity.FilterIsSave) }; return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId,CommandType.StoredProcedure, "usp_TrendToolConfig_save", para)) > 0 ? true : false; } public override bool Delete(int Id) { SqlParameter[] para = new SqlParameter[] { new SqlParameter("@configID",Id) }; return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId,CommandType.StoredProcedure, "usp_TrendToolConfig_del", para)) > 0 ? true : false; } public override TrendToolConfigInfo Get(TKey key) { SqlParameter[] parameters = new SqlParameter[] { new SqlParameter("@ConfigID", key) }; using (DataTable dt = DbHelper.ExecuteDatatable(InterfaceId,CommandType.StoredProcedure, "usp_TrendToolConfig_Select", parameters)) { TrendToolConfigInfo list = new TrendToolConfigInfo(); if (dt != null && dt.Rows.Count > 0) { DataRow dr = dt.Rows[0]; list = LoadEntity(dr); } return list; } } public override IList ToList() { throw new NotImplementedException(); } /// /// 根据页面id获取过滤工具列表 /// /// /// /// public override IList ToList(TrendToolConfigInfo entity) { SqlParameter[] para = new SqlParameter[] { new SqlParameter("@pageID", entity.PageID) ,new SqlParameter("@PageGroup",entity.PageGroup)}; using (DataTable dt = DbHelper.ExecuteDatatable(InterfaceId,CommandType.StoredProcedure, "usp_TrendToolConfig_List_Select", para)) { List lists = new List(); for (int i = 0; i < dt.Rows.Count; i++) { lists.Add(LoadEntity(dt.Rows[i])); } return lists; } } public override IList ToPaging(TrendToolConfigInfo entity, int pageSize, int pageIndex, out int recordCount) { recordCount = 0; IList list = new List(); string where = "1=1 "; if (0 < entity.PageID) { where += " AND [PageID]=" + entity.PageID; } if (entity.FilterStatus != FilterStatus.None) { where += " AND [FilterStatus]=" + Convert.ToInt32(entity.FilterStatus).ToString(); } where += " AND [FilterTypeName] like '%" + entity.FilterTypeName + "%'"; DbParameter[] pars ={ DbHelper.MakeInParam(InterfaceId,"@pageSize",(DbType)SqlDbType.Int,4,pageSize), DbHelper.MakeInParam(InterfaceId,"@page",(DbType)SqlDbType.Int,4,pageIndex), DbHelper.MakeInParam(InterfaceId,"@tableName",(DbType)SqlDbType.NVarChar,500,"[DT_TrendToolConfig]"), DbHelper.MakeInParam(InterfaceId,"@field",(DbType)SqlDbType.NVarChar,1000, @"[ConfigID] ,[PageID] ,[FilterTypeName] ,[FilterHeader] ,[FilterRemark] ,[FilterFunEnum] ,[FilterOrder] ,[FilterNumber] ,[IncludeHtml] ,[PageGroup] ,[IsNorm] ,[IsBaseData] ,[FilterStatus] ,[FilterIsSave]"), DbHelper.MakeInParam(InterfaceId,"@orderField",(DbType)SqlDbType.NVarChar,50,"FilterOrder ASC,IsNorm,FilterStatus DESC"), DbHelper.MakeInParam(InterfaceId,"@where",(DbType)SqlDbType.NVarChar,2000,where) }; using (IDataReader reader = DbHelper.ExecuteReader(InterfaceId,CommandType.StoredProcedure, "usp_st_page", pars)) { while (reader.Read()) { list.Add(LoadEntity(reader)); } if (reader.NextResult() && reader.Read()) { recordCount = reader.GetInt32(0); } reader.Close(); } return list; } protected override TrendToolConfigInfo LoadEntity(IDataReader reader) { TrendToolConfigInfo info = new TrendToolConfigInfo(); info.Id = TypeConverter.ObjectToInt(reader["ConfigID"]); info.ConfigID = TypeConverter.ObjectToInt(reader["ConfigID"]); info.PageID = TypeConverter.ObjectToInt(reader["PageID"]); info.FilterTypeName = reader["FilterTypeName"].ToString().Trim(); info.IsBaseData = TypeConverter.ObjectToBool(reader["IsBaseData"], false); info.FilterHeader = reader["FilterHeader"].ToString(); info.FilterRemark = reader["FilterRemark"].ToString(); info.FilterOrder = TypeConverter.ObjectToInt(reader["FilterOrder"]); info.FilterNumber = reader["FilterNumber"].ToString(); info.FilterStatus = TypeConverter.StringToEnum(reader["FilterStatus"].ToString()); info.FilterIsSave = TypeConverter.ObjectToBool(reader["FilterIsSave"], false); string fun = reader["FilterFunEnum"].ToString(); info.FilterFunEnum = (FilterType)Enum.Parse(typeof(FilterType), string.IsNullOrEmpty(fun) ? "0" : fun); string IsNorm = reader["IsNorm"].ToString(); info.IsNorm = (FilterNorm)Enum.Parse(typeof(FilterNorm), string.IsNullOrEmpty(IsNorm) ? "0" : IsNorm); info.IncludeHtml = reader["IncludeHtml"].ToString().ToLower(); info.PageGroup = TypeConverter.ObjectToInt(reader["PageGroup"]); return info; } /// /// 数据转换实体 /// /// /// protected override TrendToolConfigInfo LoadEntity(DataRow dr) { TrendToolConfigInfo info = new TrendToolConfigInfo(); info.Id = TypeConverter.ObjectToInt(dr["ConfigID"]); info.ConfigID = TypeConverter.ObjectToInt(dr["ConfigID"]); info.PageID = TypeConverter.ObjectToInt(dr["PageID"]); info.FilterTypeName = dr["FilterTypeName"].ToString().Trim(); info.IsBaseData = TypeConverter.ObjectToBool(dr["IsBaseData"], false); info.FilterHeader = dr["FilterHeader"].ToString(); info.FilterRemark = dr["FilterRemark"].ToString(); info.FilterOrder = TypeConverter.ObjectToInt(dr["FilterOrder"]); info.FilterNumber = dr["FilterNumber"].ToString(); info.FilterStatus = TypeConverter.StringToEnum(dr["FilterStatus"].ToString()); info.FilterIsSave = TypeConverter.ObjectToBool(dr["FilterIsSave"], false); string fun = dr["FilterFunEnum"].ToString(); info.FilterFunEnum = (FilterType)Enum.Parse(typeof(FilterType), string.IsNullOrEmpty(fun) ? "0" : fun); string IsNorm = dr["IsNorm"].ToString(); info.IsNorm = (FilterNorm)Enum.Parse(typeof(FilterNorm), string.IsNullOrEmpty(IsNorm) ? "0" : IsNorm); info.IncludeHtml = dr["IncludeHtml"].ToString().ToLower(); info.PageGroup = TypeConverter.ObjectToInt(dr["PageGroup"]); return info; } } }