using System; using System.Collections.Generic; using System.Data.Common; using System.Linq; using System.Text; using CB.Entity; using CB.Interface.Infrastructure; using System.Data; using CB.Common; namespace CB.Data.SqlServer { class LotteryManage : Repository, ILotteryService { public LotteryManage(string interfaceId) : base(interfaceId) { } public override bool Save(LotteryInfo entity) { DbParameter[] pars ={ DbHelper.MakeInParam(InterfaceId,"@Term",(DbType)SqlDbType.NChar,20,entity.Term), DbHelper.MakeInParam(InterfaceId,"@Cid",(DbType)SqlDbType.Int,4,entity.Cid), DbHelper.MakeInParam(InterfaceId,"@Name",(DbType)SqlDbType.NChar,20,entity.Name), DbHelper.MakeInParam(InterfaceId,"@Aid",(DbType)SqlDbType.Int,4,entity.Aid), DbHelper.MakeInParam(InterfaceId,"@Frequency",(DbType)SqlDbType.Bit,1,entity.Frequency), DbHelper.MakeInParam(InterfaceId,"@Status",(DbType)SqlDbType.Bit,1,entity.Status), DbHelper.MakeInParam(InterfaceId,"@OrderBy",(DbType)SqlDbType.Int,4,entity.OrderBy) }; return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId,CommandType.StoredProcedure, "usp_Lottery_save", pars)) > 0; } public override bool Update(LotteryInfo entity) { throw new NotImplementedException(); } public override bool Delete(int id) { DbParameter[] pars ={ DbHelper.MakeInParam(InterfaceId,"@Cid",(DbType)SqlDbType.Int,4,id) }; return TypeConverter.ObjectToInt(DbHelper.ExecuteScalar(InterfaceId,CommandType.StoredProcedure, "usp_Lottery_Delete", pars)) > 0; } public override LotteryInfo Get(TKey key) { LotteryInfo Entity = null; DbParameter[] para = { DbHelper.MakeInParam(InterfaceId,"@Cid",(DbType)SqlDbType.Int,4,key) }; using (IDataReader reader = DbHelper.ExecuteReader(InterfaceId,CommandType.Text, "Select TOP 1 [Cid], [Name], [Term], [Aid], [Frequency], [Status], [OrderBy], [Addtime] From [DT_Lottery] WHERE Cid= @Cid", para)) { if (reader.Read()) { Entity = LoadEntity(reader); } reader.Dispose(); } return Entity; } public override IList ToList() { IList list = new List(); using (DataTable dt = DbHelper.ExecuteDatatable(InterfaceId, "SELECT [Cid],[Name],[Term],[Aid],[Frequency],[Status],[OrderBy],[Addtime] FROM [DT_Lottery] WHERE [Status]=1 ORDER BY [OrderBy] ASC")) { if (null != dt && 0 < dt.Rows.Count) { foreach (DataRow dr in dt.Rows) { list.Add(LoadEntity(dr)); } } dt.Dispose(); } return list; } public override IList ToList(LotteryInfo entity) { throw new NotImplementedException(); } public override IList ToPaging(LotteryInfo entity, int pageSize, int pageIndex, out int recordCount) { string where = "1=1 "; if (null != entity) { if (entity.Name != "") where += " AND [Name] Like '%" + entity.Name + "%'"; } recordCount = 0; string field = "Cid, Name, Term, Aid, Frequency, Status, OrderBy, Addtime" , orderField = "Cid ASC" , tableName = "[DT_Lottery]"; DbParameter[] para = { 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,tableName), DbHelper.MakeInParam(InterfaceId,"@field",(DbType)SqlDbType.NVarChar,1000,field), DbHelper.MakeInParam(InterfaceId,"@orderField",(DbType)SqlDbType.NVarChar,50,orderField), DbHelper.MakeInParam(InterfaceId,"@where",(DbType)SqlDbType.NVarChar,2000,where) }; IList list = new List(); using (IDataReader reader = DbHelper.ExecuteReader(InterfaceId,CommandType.StoredProcedure, "usp_st_page", para)) { while (reader.Read()) { list.Add(LoadEntity(reader)); } if (reader.NextResult() && reader.Read()) { recordCount = reader.GetInt32(0); } reader.Dispose(); } return list; } protected override LotteryInfo LoadEntity(DataRow dr) { LotteryInfo entity = new LotteryInfo { Id = TypeConverter.ObjectToInt(dr["Cid"]), Cid = TypeConverter.ObjectToInt(dr["Cid"]), Term = dr["Term"].ToString().Trim(), Name = dr["Name"].ToString().Trim(), Aid = TypeConverter.ObjectToInt(dr["Aid"]), Frequency = TypeConverter.ObjectToBool(dr["Frequency"], false), Status = TypeConverter.ObjectToBool(dr["Status"], false), OrderBy = TypeConverter.ObjectToInt(dr["OrderBy"]), Addtime = TypeConverter.ObjectToDateTime(dr["Addtime"], DateTime.MinValue) }; return entity; } protected override LotteryInfo LoadEntity(IDataReader dr) { LotteryInfo entity = new LotteryInfo { Id = TypeConverter.ObjectToInt(dr["Cid"]), Cid = TypeConverter.ObjectToInt(dr["Cid"]), Term = dr["Term"].ToString().Trim(), Name = dr["Name"].ToString().Trim(), Aid = TypeConverter.ObjectToInt(dr["Aid"]), Frequency = TypeConverter.ObjectToBool(dr["Frequency"], false), Status = TypeConverter.ObjectToBool(dr["Status"], false), OrderBy = TypeConverter.ObjectToInt(dr["OrderBy"]), Addtime = TypeConverter.ObjectToDateTime(dr["Addtime"], DateTime.MinValue) }; return entity; } } }