/// <summary> /// 判断当前节点是否已存在相同的 /// </summary> /// <param name="entity"></param> /// <returns></returns> public int ExistNum(MemGiftLogEntity entity) { ///id=0,判断总数,ID>0判断除自己之外的总数 string sql = @"Select count(1) from dbo.[MemGiftLog] WITH(NOLOCK) "; string where = "where "; if (entity.Id == 0) { } else { } sql = sql + where; DbCommand cmd = db.GetSqlStringCommand(sql); if (entity.Id > 0) { db.AddInParameter(cmd, "@Id", DbType.Int32, entity.Id); } object identity = db.ExecuteScalar(cmd); if (identity == null || identity == DBNull.Value) { return(0); } return(Convert.ToInt32(identity)); }
/// <summary> /// 根据主键值更新记录的全部字段(注意:该方法不会对自增字段、timestamp类型字段以及主键字段更新!如果要更新主键字段,请使用Update方法)。 /// 如果数据库有数据被更新了则返回True,否则返回False /// </summary> /// <param name="db">数据库操作对象</param> /// <param name="memGiftLog">待更新的实体对象</param> public int UpdateMemGiftLog(MemGiftLogEntity entity) { string sql = @" UPDATE dbo.[MemGiftLog] SET [MemId]=@MemId,[Remark]=@Remark,[CreateTme]=@CreateTme,[Status]=@Status WHERE [Id]=@id"; DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd, "@Id", DbType.Int32, entity.Id); db.AddInParameter(cmd, "@MemId", DbType.Int32, entity.MemId); db.AddInParameter(cmd, "@Remark", DbType.String, entity.Remark); db.AddInParameter(cmd, "@CreateTme", DbType.DateTime, entity.CreateTme); db.AddInParameter(cmd, "@Status", DbType.Int32, entity.Status); return(db.ExecuteNonQuery(cmd)); }
/// <summary> /// 订单完成送券,送优惠券 /// </summary> /// <param name="ordercode"></param> /// <returns></returns> public int ProvideCouponsByOrder(long ordercode) { int num = 0; OrderEntity orderen = OrderBLL.Instance.GetOrderByCode(ordercode); if (orderen != null && (orderen.Status == (int)OrderStatus.Finished)) { ///获取限量乐购的总金额 decimal totalprice = OrderDetailBLL.Instance.GetTotalPrice(ordercode, (int)ProductType.SpecialPrice); if (totalprice >= 200) { int i = (int)totalprice / 200; for (int j = 0; j < i; j++) { MemCouponsEntity memcouentity = new MemCouponsEntity(); memcouentity.MemId = orderen.MemId; memcouentity.CouponsId = (int)DicCouponsEnum.Cash10_11; memcouentity.CreateTime = DateTime.Now; memcouentity.EndTime = DateTime.Now.AddDays(60); memcouentity.Status = 1; memcouentity.Num = 1; MemCouponsBLL.Instance.AddMemCoupons(memcouentity); num++; } } else if (totalprice >= 200) { MemCouponsEntity memcouentity = new MemCouponsEntity(); memcouentity.MemId = orderen.MemId; memcouentity.CouponsId = (int)DicCouponsEnum.Cash5_6; memcouentity.CreateTime = DateTime.Now; memcouentity.EndTime = DateTime.Now.AddDays(60); memcouentity.Status = 1; memcouentity.Num = 1; MemCouponsBLL.Instance.AddMemCoupons(memcouentity); num++; } if (num > 0) { MemGiftLogEntity gift = new MemGiftLogEntity(); gift.MemId = orderen.MemId; gift.CreateTme = DateTime.Now; gift.Status = 1; gift.Remark = "购物送券:Code:" + ordercode.ToString(); MemGiftLogBLL.Instance.AddMemGiftLog(gift); } } return(num); }
/// <summary> /// 插入一条记录到表MemGiftLog,如果表中存在自增字段,则返回值为新记录的自增字段值,否则返回0 /// </summary> /// <param name="db">数据库操作对象</param> /// <param name="memGiftLog">待插入的实体对象</param> public int AddMemGiftLog(MemGiftLogEntity entity) { string sql = @"insert into MemGiftLog( [MemId],[Remark],[CreateTme],[Status])VALUES ( @MemId,@Remark,@CreateTme,@Status); SELECT SCOPE_IDENTITY();" ; DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd, "@MemId", DbType.Int32, entity.MemId); db.AddInParameter(cmd, "@Remark", DbType.String, entity.Remark); db.AddInParameter(cmd, "@CreateTme", DbType.DateTime, entity.CreateTme); db.AddInParameter(cmd, "@Status", DbType.Int32, entity.Status); object identity = db.ExecuteScalar(cmd); if (identity == null || identity == DBNull.Value) { return(0); } return(Convert.ToInt32(identity)); }
/// <summary> /// 读取记录列表。 /// </summary> /// <param name="db">数据库操作对象</param> /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param> public IList <MemGiftLogEntity> GetMemGiftLogList(int pagesize, int pageindex, ref int recordCount) { string sql = @"SELECT [Id],[MemId],[Remark],[CreateTme],[Status] FROM (SELECT ROW_NUMBER() OVER (ORDER BY Id desc) AS ROWNUMBER, [Id],[MemId],[Remark],[CreateTme],[Status] from dbo.[MemGiftLog] WITH(NOLOCK) WHERE 1=1 ) as temp where rownumber BETWEEN ((@PageIndex - 1) * @PageSize + 1) AND @PageIndex * @PageSize" ; string sql2 = @"Select count(1) from dbo.[MemGiftLog] with (nolock) "; IList <MemGiftLogEntity> entityList = new List <MemGiftLogEntity>(); DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd, "@PageIndex", DbType.Int32, pageindex); db.AddInParameter(cmd, "@PageSize", DbType.Int32, pagesize); using (IDataReader reader = db.ExecuteReader(cmd)) { while (reader.Read()) { MemGiftLogEntity entity = new MemGiftLogEntity(); entity.Id = StringUtils.GetDbInt(reader["Id"]); entity.MemId = StringUtils.GetDbInt(reader["MemId"]); entity.Remark = StringUtils.GetDbString(reader["Remark"]); entity.CreateTme = StringUtils.GetDbDateTime(reader["CreateTme"]); entity.Status = StringUtils.GetDbInt(reader["Status"]); entityList.Add(entity); } } cmd = db.GetSqlStringCommand(sql2); using (IDataReader reader = db.ExecuteReader(cmd)) { if (reader.Read()) { recordCount = StringUtils.GetDbInt(reader[0]); } else { recordCount = 0; } } return(entityList); }
/// <summary> /// 读取记录列表。 /// </summary> /// <param name="db">数据库操作对象</param> /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param> public IList <MemGiftLogEntity> GetMemGiftLogAll() { string sql = @"SELECT [Id],[MemId],[Remark],[CreateTme],[Status] from dbo.[MemGiftLog] WITH(NOLOCK) "; IList <MemGiftLogEntity> entityList = new List <MemGiftLogEntity>(); DbCommand cmd = db.GetSqlStringCommand(sql); using (IDataReader reader = db.ExecuteReader(cmd)) { while (reader.Read()) { MemGiftLogEntity entity = new MemGiftLogEntity(); entity.Id = StringUtils.GetDbInt(reader["Id"]); entity.MemId = StringUtils.GetDbInt(reader["MemId"]); entity.Remark = StringUtils.GetDbString(reader["Remark"]); entity.CreateTme = StringUtils.GetDbDateTime(reader["CreateTme"]); entity.Status = StringUtils.GetDbInt(reader["Status"]); entityList.Add(entity); } } return(entityList); }
/// <summary> /// 根据主键值读取记录。如果数据库不存在这条数据将返回null /// </summary> /// <param name="db">数据库操作对象</param> /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param> public MemGiftLogEntity GetMemGiftLog(int id) { string sql = @"SELECT [Id],[MemId],[Remark],[CreateTme],[Status] FROM dbo.[MemGiftLog] WITH(NOLOCK) WHERE [Id]=@id" ; DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd, "@Id", DbType.Int32, id); MemGiftLogEntity entity = new MemGiftLogEntity(); using (IDataReader reader = db.ExecuteReader(cmd)) { if (reader.Read()) { entity.Id = StringUtils.GetDbInt(reader["Id"]); entity.MemId = StringUtils.GetDbInt(reader["MemId"]); entity.Remark = StringUtils.GetDbString(reader["Remark"]); entity.CreateTme = StringUtils.GetDbDateTime(reader["CreateTme"]); entity.Status = StringUtils.GetDbInt(reader["Status"]); } } return(entity); }
/// <summary> /// 更新一条MemGiftLog记录。 /// 该方法提供给界面等UI层调用 /// </summary> /// <param name="memGiftLog">待更新的实体对象</param> /// <param name="columns">要更新的列名,不提供任何列名时默认将更新主键之外的所有列</param> public int UpdateMemGiftLog(MemGiftLogEntity memGiftLog) { return(MemGiftLogDA.Instance.UpdateMemGiftLog(memGiftLog)); }
/// <summary> /// 插入一条记录到表MemGiftLog,如果表中存在自增字段,则返回值为新记录的自增字段值,否则返回0。 /// 该方法提供给界面等UI层调用 /// </summary> /// <param name="memGiftLog">要添加的MemGiftLog数据实体对象</param> public int AddMemGiftLog(MemGiftLogEntity memGiftLog) { return(MemGiftLogDA.Instance.AddMemGiftLog(memGiftLog)); }
/// <summary> /// 判断对象是否存在 /// </summary> /// <param name="dicEnum"></param> /// <returns></returns> public bool IsExist(MemGiftLogEntity memGiftLog) { return(MemGiftLogDA.Instance.ExistNum(memGiftLog) > 0); }