Example #1
0
        /// <summary>
        /// 更新支付单、订单支付通道
        /// </summary>
        /// <param name="view">订单支付信息(PaymentOrderID,PayChannel)</param>
        /// <returns>Sql语句</returns>
        public ResultModel UpdatePayChannel(Domain.WebModel.Models.Orders.PaymentOrderView view)
        {
            ResultModel result = new ResultModel();

            List <string> sqls = new List <string>();

            sqls.Add(string.Format(" UPDATE PaymentOrder SET PayChannel={0},OrderNO='{1}',RechargeAmount={2} WHERE PaymentOrderID='{3}'",
                                   view.PayChannel,
                                   view.OrderNO,
                                   view.RechargeAmount,
                                   SqlFilterUtil.ReplaceSqlChar(view.PaymentOrderID)));
            int payType = view.PayChannel == (int)OrderEnums.PayChannel.Balance
                                                ? (int)OrderEnums.PayType.BalancePay
                                                : (int)OrderEnums.PayType.ThirdPay;
            string orderSql = string.Format(@" UPDATE dbo.[Order] SET PayChannel='{0}', PayType='{1}' WHERE OrderID IN (SELECT b.OrderID FROM PaymentOrder  
                                            AS a INNER JOIN dbo.PaymentOrder_Orders AS b ON a.PaymentOrderID=b.PaymentOrderID AND a.PaymentOrderID='{2}')"
                                            , view.PayChannel, payType, view.PaymentOrderID);

            sqls.Add(orderSql);

            string sql = SqlTransactionUtil.GenerateTransSql(sqls);

            //执行sql
            var     queryResult = _database.RunSqlQuery(x => x.ToResultSets(sql));
            dynamic source      = queryResult[0][0];

            result.IsValid = source.Count > 0;
            return(result);
        }
Example #2
0
        /// <summary>
        /// 生成订单支付信息新增Sql语句
        /// </summary>
        /// <param name="view">订单支付信息</param>
        /// <returns>Sql语句</returns>
        internal string GenerateInsertSql(Domain.WebModel.Models.Orders.PaymentOrderView view)
        {
            StringBuilder sqlBuilder = new StringBuilder(" INSERT INTO [PaymentOrder]([PaymentOrderID],[UserID],[ProductAmount],[RealAmount],[Flag],[CreateDT],[PayType],[PayChannel],[outOrderId],[OrderNO],[RechargeAmount])");

            sqlBuilder.AppendFormat(" VALUES  ( '{0}',{1},{2},{3},{4},'{5}',{6},{7} ,'{8}','{9}',{10}) ",
                                    SqlFilterUtil.ReplaceSqlChar(view.PaymentOrderID),
                                    view.UserID,
                                    view.ProductAmount,
                                    view.RealAmount,
                                    view.Flag,
                                    view.CreateDT.DateTimeToString(),
                                    view.PayType,
                                    view.PayChannel,
                                    SqlFilterUtil.ReplaceSqlChar(view.outOrderId),
                                    view.OrderNO,
                                    view.RechargeAmount
                                    );
            return(sqlBuilder.ToString());
        }
Example #3
0
        /// <summary>
        /// 生成支付单状态更新Sql语句
        /// </summary>
        /// <param name="view">订单支付信息(PaymentOrderID,Flag)</param>
        /// <returns>Sql语句</returns>
        internal string GenerateUpdateStatusSql(Domain.WebModel.Models.Orders.PaymentOrderView view)
        {
            string sql = string.Format(" UPDATE PaymentOrder SET Flag={0} WHERE PaymentOrderID='{1}'", view.Flag, SqlFilterUtil.ReplaceSqlChar(view.PaymentOrderID));

            return(sql);
        }