Beispiel #1
0
        /// <summary>
        /// 插入一条记录到表PayReback,如果表中存在自增字段,则返回值为新记录的自增字段值,否则返回0
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="payReback">待插入的实体对象</param>
        public int AddPayReback(PayRebackEntity entity)
        {
            string    sql = @"insert into PayReback( [OrderCode],[BatchNo],[TradeNoLog],FinanceRefundId,[RebackFee],[Remack],[CreateTime],[RebackTime],[Status],[ReBackManId])VALUES
			            ( @OrderCode,@BatchNo,@TradeNoLog,@FinanceRefundId,@RebackFee,@Remack,@CreateTime,@RebackTime,@Status,@ReBackManId);
			SELECT SCOPE_IDENTITY();"            ;
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@OrderCode", DbType.Int64, entity.OrderCode);
            db.AddInParameter(cmd, "@BatchNo", DbType.Int64, entity.BatchNo);
            db.AddInParameter(cmd, "@TradeNoLog", DbType.String, entity.TradeNoLog);
            db.AddInParameter(cmd, "@RebackFee", DbType.Decimal, entity.RebackFee);
            db.AddInParameter(cmd, "@Remack", DbType.String, entity.Remack);
            db.AddInParameter(cmd, "@CreateTime", DbType.DateTime, entity.CreateTime);
            db.AddInParameter(cmd, "@RebackTime", DbType.DateTime, entity.RebackTime);
            db.AddInParameter(cmd, "@FinanceRefundId", DbType.Int32, entity.FinanceRefundId);
            db.AddInParameter(cmd, "@Status", DbType.Int32, entity.Status);
            db.AddInParameter(cmd, "@ReBackManId", DbType.Int32, entity.ReBackManId);
            object identity = db.ExecuteScalar(cmd);

            if (identity == null || identity == DBNull.Value)
            {
                return(0);
            }
            return(Convert.ToInt32(identity));
        }
Beispiel #2
0
        /// <summary>
        /// 读取记录列表。
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param>
        public IList <PayRebackEntity> GetPayRebackAll(string batchno)
        {
            string sql = @"SELECT  [Id],[OrderCode],[BatchNo],[TradeNoLog],[RebackFee],[Remack],[CreateTime],[RebackTime],[Status],[ReBackManId] from dbo.[PayReback] WITH(NOLOCK)	
                           where BatchNo=@BatchNo and status=0";
            IList <PayRebackEntity> entityList = new List <PayRebackEntity>();
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@BatchNo", DbType.String, batchno);
            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                while (reader.Read())
                {
                    PayRebackEntity entity = new PayRebackEntity();
                    entity.Id          = StringUtils.GetDbInt(reader["Id"]);
                    entity.OrderCode   = StringUtils.GetDbLong(reader["OrderCode"]);
                    entity.BatchNo     = StringUtils.GetDbLong(reader["BatchNo"]);
                    entity.TradeNoLog  = StringUtils.GetDbString(reader["TradeNoLog"]);
                    entity.RebackFee   = StringUtils.GetDbDecimal(reader["RebackFee"]);
                    entity.Remack      = StringUtils.GetDbString(reader["Remack"]);
                    entity.CreateTime  = StringUtils.GetDbDateTime(reader["CreateTime"]);
                    entity.RebackTime  = StringUtils.GetDbDateTime(reader["RebackTime"]);
                    entity.Status      = StringUtils.GetDbInt(reader["Status"]);
                    entity.ReBackManId = StringUtils.GetDbInt(reader["ReBackManId"]);
                    entityList.Add(entity);
                }
            }
            return(entityList);
        }
Beispiel #3
0
        /// <summary>
        /// 根据主键值读取记录。如果数据库不存在这条数据将返回null
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param>
        public PayRebackEntity GetPayRebackByTradeNoLog(string tradeNoLog)
        {
            string    sql = @"SELECT  [Id],[OrderCode],[BatchNo],[TradeNoLog],[RebackFee],[Remack],[CreateTime],[RebackTime],[Status],[ReBackManId]
							FROM
							dbo.[PayReback] WITH(NOLOCK)	
							WHERE [TradeNoLog]=@TradeNoLog"                            ;
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@TradeNoLog", DbType.String, tradeNoLog);
            PayRebackEntity entity = new PayRebackEntity();

            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                if (reader.Read())
                {
                    entity.Id          = StringUtils.GetDbInt(reader["Id"]);
                    entity.OrderCode   = StringUtils.GetDbLong(reader["OrderCode"]);
                    entity.BatchNo     = StringUtils.GetDbLong(reader["BatchNo"]);
                    entity.TradeNoLog  = StringUtils.GetDbString(reader["TradeNoLog"]);
                    entity.RebackFee   = StringUtils.GetDbDecimal(reader["RebackFee"]);
                    entity.Remack      = StringUtils.GetDbString(reader["Remack"]);
                    entity.CreateTime  = StringUtils.GetDbDateTime(reader["CreateTime"]);
                    entity.RebackTime  = StringUtils.GetDbDateTime(reader["RebackTime"]);
                    entity.Status      = StringUtils.GetDbInt(reader["Status"]);
                    entity.ReBackManId = StringUtils.GetDbInt(reader["ReBackManId"]);
                }
            }
            return(entity);
        }
 /// <summary>
 /// 插入一条记录到表PayReback,如果表中存在自增字段,则返回值为新记录的自增字段值,否则返回0。
 /// 该方法提供给界面等UI层调用
 /// </summary>
 /// <param name="payReback">要添加的PayReback数据实体对象</param>
 public int AddPayReback(PayRebackEntity payReback)
 {
     if (payReback.Id > 0)
     {
         return(UpdatePayReback(payReback));
     }
     else if (PayRebackBLL.Instance.IsExist(payReback))
     {
         return((int)CommonStatus.ADD_Fail_Exist);
     }
     else
     {
         return(PayRebackDA.Instance.AddPayReback(payReback));
     }
 }
Beispiel #5
0
        /// <summary>
        /// 判断当前节点是否已存在相同的
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public int ExistNum(PayRebackEntity entity)
        {
            ///id=0,判断总数,ID>0判断除自己之外的总数
            string sql = @"Select count(1) from dbo.[PayReback] WITH(NOLOCK) WHERE (FinanceRefundId = @FinanceRefundId AND Status = 1)
or FinanceRefundId = @FinanceRefundId AND BatchNo = @BatchNo";

            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@FinanceRefundId", DbType.Int64, entity.FinanceRefundId);
            db.AddInParameter(cmd, "@BatchNo", DbType.String, entity.BatchNo);
            object identity = db.ExecuteScalar(cmd);
            int    result   = StringUtils.GetDbInt(identity);

            return(result);
        }
Beispiel #6
0
        /// <summary>
        /// 根据主键值更新记录的全部字段(注意:该方法不会对自增字段、timestamp类型字段以及主键字段更新!如果要更新主键字段,请使用Update方法)。
        /// 如果数据库有数据被更新了则返回True,否则返回False
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="payReback">待更新的实体对象</param>
        public int UpdatePayReback(PayRebackEntity entity)
        {
            string    sql = @" UPDATE dbo.[PayReback] SET
                       [OrderCode]=@OrderCode,[BatchNo]=@BatchNo,[TradeNoLog]=@TradeNoLog,[RebackFee]=@RebackFee,[Remack]=@Remack,[CreateTime]=@CreateTime,[RebackTime]=@RebackTime,[Status]=@Status,[ReBackManId]=@ReBackManId
                       WHERE [Id]=@id";
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@Id", DbType.Int32, entity.Id);
            db.AddInParameter(cmd, "@OrderCode", DbType.Int64, entity.OrderCode);
            db.AddInParameter(cmd, "@BatchNo", DbType.Int64, entity.BatchNo);
            db.AddInParameter(cmd, "@TradeNoLog", DbType.String, entity.TradeNoLog);
            db.AddInParameter(cmd, "@RebackFee", DbType.Decimal, entity.RebackFee);
            db.AddInParameter(cmd, "@Remack", DbType.String, entity.Remack);
            db.AddInParameter(cmd, "@CreateTime", DbType.DateTime, entity.CreateTime);
            db.AddInParameter(cmd, "@RebackTime", DbType.DateTime, entity.RebackTime);
            db.AddInParameter(cmd, "@Status", DbType.Int32, entity.Status);
            db.AddInParameter(cmd, "@ReBackManId", DbType.Int32, entity.ReBackManId);
            return(db.ExecuteNonQuery(cmd));
        }
Beispiel #7
0
        /// <summary>
        /// 添加退款信息
        /// </summary>
        /// <returns></returns>
        public string AddPayReback()
        {
            ResultObj           obj           = new ResultObj();
            long                _batchno      = FormString.LongIntSafeQ("batchno");
            int                 _refundid     = FormString.IntSafeQ("refundid");
            long                _ordercode    = FormString.LongIntSafeQ("ordercode");
            string              _tradecode    = FormString.SafeQ("tradecode");
            decimal             _rebackfee    = FormString.DecimalSafeQ("rebackfee");
            string              _returnreason = FormString.SafeQ("returnreason", 1000);
            OrderEntity         orderentity   = OrderBLL.Instance.GetOrderByCode(_ordercode);
            FinanceRefundEntity Refundentity  = FinanceRefundBLL.Instance.GetFinanceRefund(_refundid);

            if (orderentity.ActPrice - orderentity.ReBackFee >= _rebackfee && Refundentity.RebackFee >= _rebackfee)
            {
                PayRebackEntity entity = new PayRebackEntity();
                entity.BatchNo         = _batchno;
                entity.OrderCode       = _ordercode;
                entity.TradeNoLog      = _tradecode;
                entity.RebackFee       = _rebackfee;
                entity.Remack          = _returnreason;
                entity.RebackTime      = DateTime.Now;
                entity.CreateTime      = DateTime.Now;
                entity.FinanceRefundId = _refundid;

                int _result = PayRebackBLL.Instance.AddPayReback(entity);
                if (_result > 0)
                {
                    obj.Status = (int)CommonStatus.Success;
                }
                else
                {
                    obj.Status = _result;
                }
            }
            else
            {
                obj.Status = (int)CommonStatus.AddPayRebackBig;
            }
            //int _result = OrderBLL.Instance.UpdateOrderRebackFee(_ordercode,_rebackfee);

            return(JsonJC.ObjectToJson(obj));
        }
 /// <summary>
 /// 更新一条PayReback记录。
 /// 该方法提供给界面等UI层调用
 /// </summary>
 /// <param name="payReback">待更新的实体对象</param>
 /// <param name="columns">要更新的列名,不提供任何列名时默认将更新主键之外的所有列</param>
 public int UpdatePayReback(PayRebackEntity payReback)
 {
     return(PayRebackDA.Instance.UpdatePayReback(payReback));
 }
 /// <summary>
 /// 判断对象是否存在
 /// </summary>
 /// <param name="dicEnum"></param>
 /// <returns></returns>
 public bool IsExist(PayRebackEntity payReback)
 {
     return(PayRebackDA.Instance.ExistNum(payReback) > 0);
 }
Beispiel #10
0
        /// <summary>
        /// 读取记录列表。
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param>
        public IList <PayRebackEntity> GetPayRebackList(int pagesize, int pageindex, ref int recordCount, string _batchno, int status)
        {
            string where = " where 1=1 ";
            if (!string.IsNullOrEmpty(_batchno))
            {
                where += " and BatchNo=@BatchNo ";
            }
            if (status != -1)
            {
                where += " and Status=@Status ";
            }
            string sql = @"SELECT   [Id],[OrderCode],[BatchNo],[TradeNoLog],[RebackFee],[Remack],[CreateTime],[RebackTime],[Status],[ReBackManId]
						FROM
						(SELECT ROW_NUMBER() OVER (ORDER BY Id desc) AS ROWNUMBER,
						 [Id],[OrderCode],[BatchNo],[TradeNoLog],[RebackFee],[Remack],[CreateTime],[RebackTime],[Status],[ReBackManId] from dbo.[PayReback] WITH(NOLOCK)	
						"                         + where + @" ) as temp 
						where rownumber BETWEEN ((@PageIndex - 1) * @PageSize + 1) AND @PageIndex * @PageSize"                        ;

            string sql2 = @"Select count(1) from dbo.[PayReback] with (nolock) " + where;
            IList <PayRebackEntity> entityList = new List <PayRebackEntity>();
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@PageIndex", DbType.Int32, pageindex);
            db.AddInParameter(cmd, "@PageSize", DbType.Int32, pagesize);
            if (!string.IsNullOrEmpty(_batchno))
            {
                db.AddInParameter(cmd, "@BatchNo", DbType.String, _batchno);
            }
            if (status != -1)
            {
                db.AddInParameter(cmd, "@Status", DbType.Int16, status);
            }
            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                while (reader.Read())
                {
                    PayRebackEntity entity = new PayRebackEntity();
                    entity.Id          = StringUtils.GetDbInt(reader["Id"]);
                    entity.OrderCode   = StringUtils.GetDbLong(reader["OrderCode"]);
                    entity.BatchNo     = StringUtils.GetDbLong(reader["BatchNo"]);
                    entity.TradeNoLog  = StringUtils.GetDbString(reader["TradeNoLog"]);
                    entity.RebackFee   = StringUtils.GetDbDecimal(reader["RebackFee"]);
                    entity.Remack      = StringUtils.GetDbString(reader["Remack"]);
                    entity.CreateTime  = StringUtils.GetDbDateTime(reader["CreateTime"]);
                    entity.RebackTime  = StringUtils.GetDbDateTime(reader["RebackTime"]);
                    entity.Status      = StringUtils.GetDbInt(reader["Status"]);
                    entity.ReBackManId = StringUtils.GetDbInt(reader["ReBackManId"]);
                    entityList.Add(entity);
                }
            }
            cmd = db.GetSqlStringCommand(sql2);
            if (!string.IsNullOrEmpty(_batchno))
            {
                db.AddInParameter(cmd, "@BatchNo", DbType.String, _batchno);
            }
            if (status != -1)
            {
                db.AddInParameter(cmd, "@Status", DbType.Int16, status);
            }
            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                if (reader.Read())
                {
                    recordCount = StringUtils.GetDbInt(reader[0]);
                }
                else
                {
                    recordCount = 0;
                }
            }
            return(entityList);
        }