using System; using System.Collections.Generic; using System.Data; using System.Data.Common; using CB.Common; using CB.Entity; using CB.Interface.Infrastructure; namespace CB.Data.SqlServer { public class SysUserLogManage : Repository, ISysUserLogService { public SysUserLogManage(string interfaceId) : base(interfaceId) { } public override bool Save(SysUserLogInfo entity) { DbParameter[] pars = { DbHelper.MakeInParam(InterfaceId,"@statement",(DbType)SqlDbType.NVarChar,150,"INSERT INTO [SYS_SysUserLog]([UId],[UserName],[Title],[Contents],[AId],[IP])VALUES(@UId,@UserName,@Title,@Contents,@AId,@IP)"), DbHelper.MakeInParam(InterfaceId,"@params",(DbType)SqlDbType.NVarChar,100,@"@UId int,@UserName nchar(20),@Title nvarchar(200),@Contents nvarchar(max),@AId int,@IP nchar(50)"), DbHelper.MakeInParam(InterfaceId,"@UId",(DbType)SqlDbType.Int,4,entity.UId), DbHelper.MakeInParam(InterfaceId,"@UserName",(DbType)SqlDbType.NChar,20,entity.UserName), DbHelper.MakeInParam(InterfaceId,"@Title",(DbType)SqlDbType.NVarChar,200,entity.Title), DbHelper.MakeInParam(InterfaceId,"@Contents",(DbType)SqlDbType.NVarChar,entity.Contents.Length,entity.Contents), DbHelper.MakeInParam(InterfaceId,"@AId",(DbType)SqlDbType.Int,4,entity.AId), DbHelper.MakeInParam(InterfaceId,"@IP",(DbType)SqlDbType.NChar,50,entity.IP) }; return DbHelper.ExecuteNonQuery(InterfaceId,CommandType.StoredProcedure, "dbo.sp_executesql", pars) > 0 ? true : false; } public override bool Update(SysUserLogInfo entity) { throw new NotImplementedException(); } public override bool Delete(int Id) { throw new NotImplementedException(); } public override SysUserLogInfo Get(TKey key) { DbParameter[] pars = { DbHelper.MakeInParam(InterfaceId,"@statement",(DbType)SqlDbType.NVarChar,150,"SELECT [Id],[UId],[UserName],[Title],[Contents],[AId],[IP],[Addtime] FROM [SYS_SysUserLog] WHERE [Id]=@id"), DbHelper.MakeInParam(InterfaceId,"@params",(DbType)SqlDbType.NVarChar,10,@"@id int"), DbHelper.MakeInParam(InterfaceId,"@id",(DbType)SqlDbType.Int,4,key), }; SysUserLogInfo entity = null; using (IDataReader reader = DbHelper.ExecuteReader(InterfaceId,CommandType.StoredProcedure, "dbo.sp_executesql", pars)) { if (reader.Read()) entity = LoadEntity(reader); reader.Dispose(); } return entity; } public override IList ToList() { throw new NotImplementedException(); } public override IList ToList(SysUserLogInfo entity) { throw new NotImplementedException(); } public override IList ToPaging(SysUserLogInfo entity, int pageSize, int pageIndex, out int recordCount) { recordCount = 0; string where = " 1=1 "; if (0 != entity.AId) { where = string.Format("{0} AND [AId]={1}", where, entity.AId); } if (!string.IsNullOrEmpty(entity.UserName)) { where = string.Format("{0} AND [UserName] LIKE '%{1}%'", where, entity.UserName); } if (null != entity.StartDate && entity.StartDate.HasValue && DateTime.MinValue != entity.StartDate.Value) { where = string.Format("{0} AND [Addtime]>='{1}'", where, entity.StartDate.Value); } if (null != entity.EndDate && entity.EndDate.HasValue && DateTime.MaxValue != entity.EndDate.Value) { where = string.Format("{0} AND [addtime]<'{1}'", where, entity.EndDate.Value); } 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,"[SYS_SysUserLog]"), DbHelper.MakeInParam(InterfaceId,"@field",(DbType)SqlDbType.NVarChar,1000, "[Id],[UId],[UserName],[Title],[Contents],[AId],[IP],[Addtime]"), DbHelper.MakeInParam(InterfaceId,"@orderField",(DbType)SqlDbType.NVarChar,50,"[Id] DESC"), DbHelper.MakeInParam(InterfaceId,"@where",(DbType)SqlDbType.NVarChar,2000,where) }; IList list = new List(); 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.Dispose(); } return list; } protected override SysUserLogInfo LoadEntity(IDataReader reader) { return new SysUserLogInfo { Id = TypeConverter.ObjectToInt(reader["Id"]), UId = TypeConverter.ObjectToInt(reader["UId"]), UserName = reader["UserName"].ToString().Trim(), Title = reader["Title"].ToString(), Contents = reader["Contents"].ToString(), AId = TypeConverter.ObjectToInt(reader["AId"]), IP = reader["IP"].ToString().Trim(), Addtime = TypeConverter.ObjectToDateTime(reader["Addtime"], DateTime.MinValue) }; } protected override SysUserLogInfo LoadEntity(DataRow dr) { return new SysUserLogInfo { Id = TypeConverter.ObjectToInt(dr["Id"]), UId = TypeConverter.ObjectToInt(dr["UId"]), UserName = dr["UserName"].ToString().Trim(), Title = dr["Title"].ToString(), Contents = dr["Contents"].ToString(), AId = TypeConverter.ObjectToInt(dr["AId"]), IP = dr["IP"].ToString().Trim(), Addtime = TypeConverter.ObjectToDateTime(dr["Addtime"], DateTime.MinValue) }; } } }