Пример #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //可以在页面加载时设置页面的缓存为“SetNoStore()”,即无缓存
            Response.Cache.SetNoStore();

            if (CurrentShopCart == null)
            {
                Response.Write("购物车已清空,页面将<a href='../member/MyOrderList.aspx'>跳转</a>至账户中心!");
                Response.AddHeader("REFRESH", "3;URL='../member/MyOrderList.aspx'");
                Response.End();
            }

            if (!IsPostBack)
            {
                litSavedOrderId.Text = CurrentShopCart.RecentSavedOrderId.ToString();
                Context.Items.Remove("SavedOrderId");

                CommOrderBll   cobll = new CommOrderBll();
                CommOrderModel model = cobll.GetModel(litSavedOrderId.Text);
                if (model != null && String.IsNullOrEmpty(model.PayorderId) && model.PayMethod == PayMethType.支付宝)
                {
                    string url = "../alipay/StandardPay.aspx?orderId=" + litSavedOrderId.Text;
                    Response.Write("订单已生成,页面将<a href='" + url + "'>跳转</a>支付页面!");
                    Response.AddHeader("REFRESH", "3;URL='" + url + "'");
                }
            }
        }
Пример #2
0
        private void ShowOrderInfo(string orderId)
        {
            NoName.NetShop.ShopFlow.CommOrderBll bll = new NoName.NetShop.ShopFlow.CommOrderBll();
            CommOrderModel order = bll.GetModel(orderId, CurrentUser.UserId);

            if (order != null)
            {
                gvProducts.DataSource = bll.GetOrderItems(orderId);
                gvProducts.DataBind();
                gvActionLog.DataSource = bll.GetChangeLogs(orderId);
                gvActionLog.DataBind();

                lblOrderId.Text     = order.OrderId;
                lblUserId.Text      = order.UserId;
                lblOrderStatus.Text = order.OrderStatus.ToString();
                lblPayStatus.Text   = order.PayStatus.ToString();
                lblCreateTime.Text  = order.CreateTime.ToString("yyyy-MM-dd HH:mm");
                lblPayTime.Text     = order.PayTime == null ? "" : (order.PayTime ?? default(DateTime)).ToString("yyyy-MM-dd HH:mm");
                lblPayMethod.Text   = order.PayMethod.ToString();
                lblShipMethod.Text  = order.ShipMethod.ToString();
                lblProductFee.Text  = order.ProductFee.ToString("F2");
                lblShipFee.Text     = order.ShipFee.ToString("F2");
                lblDerateFee.Text   = order.DerateFee.ToString("F2");
                lblPaySum.Text      = order.Paysum.ToString("F2");
                lblAddress.Text     = order.RecieverProvince + order.RecieverCity + order.RecieverCounty + " " + order.AddressDetial + " 邮编:" + order.Postalcode;
                lblInvoice.Text     = order.IsNeedInvoice ? "需要发票,抬头为:" + order.InvoiceTitle : "不需要发票";
                lblUserNotes.Text   = order.UserNotes;
                lblTelePhone.Text   = order.RecieverPhone;
                lblReceName.Text    = order.RecieverName;
                lblEmail.Text       = order.RecieverEmail;

                ShowActions(order);
            }
        }
Пример #3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            CommOrderBll obll    = new CommOrderBll();
            string       orderId = Request.QueryString["orderId"];

            CommOrderModel            model = obll.GetModel(orderId);
            List <CommOrderItemModel> items = obll.GetOrderItems(orderId);
            string subject   = String.Join(",", (from s in items select s.ProductName).ToArray());
            int    quantity  = (from s in items select s.Quantity).Sum();
            string paymethod = (model.ShipMethod == ShipMethodType.EMS?"EMS":"Express");

            subject = String.IsNullOrEmpty(subject)?null:subject;
            string        agent = null;
            string        body  = null;
            AliPay        ap    = new AliPay();
            StandardGoods bp    = new StandardGoods(PayServiceType.trade_create_by_buyer.Key, AlipaySetting.Partner, AlipaySetting.NotifyUrl, AlipaySetting.ReturnUrl,
                                                    agent, AlipaySetting.EncodeType, AlipaySetting.Key, AlipaySetting.SignType, subject, body, model.OrderId,
                                                    model.Paysum, quantity, null, AlipaySetting.SellerEmail, null, null, null, null,
                                                    "POST", model.ShipFee, LogisticsPayment.SELLER_PAY.Key, "1");


            bp.Notify_Url      = AlipaySetting.NotifyUrl;
            bp.Return_Url      = AlipaySetting.ReturnUrl;
            bp.Receive_Address = model.FullAddress;
            bp.Receive_Phone   = model.RecieverPhone;
            bp.Receive_Zip     = model.Postalcode;
            bp.Receive_Name    = model.RecieverName;

            ap.CreateStandardTrade(AlipaySetting.PushUrl, bp, this);
        }
Пример #4
0
        /// <summary>
        /// 显示允许管理员操作的按钮
        /// 在线支付
        /// 未支付 —— 关闭订单
        /// 支付成功,—— 审核通过,开始备货
        /// 支付成功,—— 退款给买家,交易失败
        /// 开始备货,—— 发货
        /// 开始备货 —— 退款给买家,交易失败
        /// 已发货,—— 物流确认到货
        /// 已发货,—— 买家拒收,退款给买家,交易失败
        /// 物流确认到货,买家确认收货或超时 —— 交易完成
        ///
        /// 银行转帐,邮件汇款
        /// 未支付 —— 关闭订单
        /// 未支付 —— 买家付款成功
        /// 支付成功,—— 审核通过,开始备货
        /// 支付成功,—— 退款给买家,交易失败
        /// 开始备货,—— 发货
        /// 开始备货 —— 退款给买家,交易失败
        /// 已发货,—— 物流确认到货,交易完成
        /// 已发货,—— 买家拒收,退款给买家,交易失败
        /// 货到付款
        /// 未支付 —— 关闭订单
        /// 未支付 —— 审核通过,备货
        /// 备货中 —— 发货
        /// 发货中 —— 物流确认收货收款,交易成功
        /// 发货中 —— 买家未签收,交易失败
        /// </summary>
        /// <param name="order"></param>
        private void ShowActions(CommOrderModel order)
        {
            btnAskRefund.Visible    = false;
            btnCherrys.Visible      = false;
            btnGoPay.Visible        = false;
            txtActionRemark.Visible = false;

            if ((order.OrderStatus == OrderStatus.交易关闭 || order.OrderStatus == OrderStatus.交易失败 ||
                 order.OrderStatus == OrderStatus.交易完成) &&
                (order.PayStatus == PayStatus.支付成功))
            {
                return;
            }

            if (order.PayMethod == PayMethType.支付宝)
            {
                if (order.PayStatus == PayStatus.等待付款)
                {
                    btnGoPay.Visible = true;
                }
            }

            if (order.PayStatus == PayStatus.支付成功)
            {
                btnAskRefund.Visible    = true;
                txtActionRemark.Visible = true;
            }

            if (order.OrderStatus == OrderStatus.已发货)
            {
                btnCherrys.Visible = true;
            }
        }
Пример #5
0
        /// <summary>
        /// 买家申请退款
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void ap_WaitSellerAgree(object sender, NotifyEventArgs e)
        {
            log.Info("买家申请退款,订单号为:" + e.Out_Trade_No);
            CommOrderModel omodel = obll.GetModel(e.Out_Trade_No);

            if (omodel.PayMethod == PayMethType.支付宝)
            {
                if (obll.ChangePayStatus(e.Out_Trade_No, PayStatus.退款申请中))
                {
                    lbll.Add(e.Out_Trade_No, e.Trade_Status + " " + e.Refund_Status, PayStatus.退款申请中.ToString(), "alipay");
                }
            }
        }
Пример #6
0
        /// <summary>
        /// 退款成功
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void ap_RefundSuccess(object sender, NotifyEventArgs e)
        {
            log.Info("退款成功,订单号为:" + e.Out_Trade_No);
            CommOrderModel omodel = obll.GetModel(e.Out_Trade_No);

            if (omodel.PayMethod == PayMethType.支付宝)
            {
                if (obll.ChangePayStatus(e.Out_Trade_No, PayStatus.退款完成))
                {
                    lbll.Add(e.Out_Trade_No, e.Trade_Status + " " + e.Refund_Status, PayStatus.退款完成.ToString(), "alipay");
                }
            }
        }
        /// <summary>
        /// 置为订单完成,前置条件:物流已到货,且支付成功
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnFinish_Click(object sender, EventArgs e)
        {
            CommOrderBll      obll  = new CommOrderBll();
            OrderChangeLogBll lbll  = new OrderChangeLogBll();
            CommOrderModel    order = obll.GetModel(lblOrderId.Text);

            if (order != null && order.OrderStatus == OrderStatus.物流到货 && order.PayStatus == PayStatus.支付成功)
            {
                obll.ChangeOrderStatus(order.OrderId, OrderStatus.交易完成);
                lbll.Add(order.OrderId, txtActionRemark.Text.Trim(), OrderStatus.交易完成.ToString(),
                         Context.User.Identity.Name);
                ShowOrderInfo(lblOrderId.Text);
            }
        }
Пример #8
0
        /// <summary>
        /// 等待买家确认收货中
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void ap_WaitBuyerConfirmGoods(object sender, NotifyEventArgs e)
        {
            log.Info("等待买家确认收货中,订单号为:" + e.Out_Trade_No);
            CommOrderModel omodel = obll.GetModel(e.Out_Trade_No);

            if (omodel.PayMethod == PayMethType.支付宝)
            {
                if (obll.ChangeOrderStatus(e.Out_Trade_No, OrderStatus.买家确认))
                {
                    string remark = e.Trade_Status + " " + e.Refund_Status;
                    lbll.Add(e.Out_Trade_No, remark, OrderStatus.买家确认.ToString(), "alipay");
                }
            }
        }
Пример #9
0
        /// <summary>
        /// 交易中途关闭(未完成)
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void ap_TradeClosed(object sender, NotifyEventArgs e)
        {
            log.Info("交易中途关闭(未完成),订单号为:" + e.Out_Trade_No);
            CommOrderModel omodel = obll.GetModel(e.Out_Trade_No);

            if (omodel.PayMethod == PayMethType.支付宝)
            {
                if (obll.ChangeOrderStatus(e.Out_Trade_No, OrderStatus.交易关闭))
                {
                    string remark = e.Trade_Status + " " + e.Refund_Status;
                    lbll.Add(e.Out_Trade_No, remark, OrderStatus.交易关闭.ToString(), "alipay");
                }
            }
        }
Пример #10
0
        /// <summary>
        /// 置为退款完成,前置条件:退款申请中订单,不包括货到付款订单
        /// 如果是线上支付订单,需要调用接口完成退款操作(目前暂无接口)
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnAskRefund_Click(object sender, EventArgs e)
        {
            CommOrderBll      obll  = new CommOrderBll();
            OrderChangeLogBll lbll  = new OrderChangeLogBll();
            CommOrderModel    order = obll.GetModel(lblOrderId.Text);

            if (order != null && order.PayMethod != PayMethType.货到付款 && order.PayStatus == PayStatus.支付成功)
            {
                obll.ChangePayStatus(order.OrderId, PayStatus.退款申请中);
                lbll.Add(order.OrderId, txtActionRemark.Text.Trim(), PayStatus.退款申请中.ToString(),
                         Context.User.Identity.Name);
                ShowOrderInfo(lblOrderId.Text);
            }
        }
Пример #11
0
        /// <summary>
        /// 退款关闭
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void ap_RefundClose(object sender, NotifyEventArgs e)
        {
            log.Info("退款关闭,订单号为:" + e.Out_Trade_No);
            CommOrderModel omodel = obll.GetModel(e.Out_Trade_No);

            if (omodel.PayMethod == PayMethType.支付宝)
            {
                if (obll.ChangePayStatus(e.Out_Trade_No, PayStatus.支付成功))
                {
                    string remark = "退款关闭,订单重置为支付成功," + e.Trade_Status + " " + e.Refund_Status;
                    lbll.Add(e.Out_Trade_No, remark, PayStatus.支付成功.ToString(), "alipay");
                }
            }
        }
Пример #12
0
        /// <summary>
        /// 买家付款成功
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ap_WaitSellerSendGoods(object sender, NotifyEventArgs e)
        {
            log.Info("买家付款成功,等待卖家发货,订单号为:" + e.Out_Trade_No);
            CommOrderModel omodel = obll.GetModel(e.Out_Trade_No);

            if (omodel.PayMethod == PayMethType.支付宝)
            {
                if (obll.ChangePayStatus(e.Out_Trade_No, PayStatus.支付成功))
                {
                    string remark = e.Trade_Status + " " + e.Refund_Status;
                    lbll.Add(e.Out_Trade_No, remark, OrderStatus.交易关闭.ToString(), "alipay");
                }
            }
        }
Пример #13
0
        /// <summary>
        /// 交易创建,等待买家付款
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void ap_WaitBuyerPay(object sender, NotifyEventArgs e)
        {
            log.Info("交易创建,等待买家付款,订单号为:" + e.Out_Trade_No);
            CommOrderModel omodel = obll.GetModel(e.Out_Trade_No);

            if (omodel.PayMethod == PayMethType.支付宝)
            {
                if (obll.ChangeOrderStatus(e.Out_Trade_No, OrderStatus.已创建) && obll.SetPayOrderId(e.Out_Trade_No, e.Trade_No))
                {
                    string remark = e.Trade_Status + " " + e.Refund_Status;
                    lbll.Add(e.Out_Trade_No, remark, OrderStatus.已创建.ToString(), "alipay");
                }
            }
        }
        /// <summary>
        /// 置为备货状态,前置条件为:订单为初始创建,如果是货到付款,不需要判断支付状态,其他的需要为已支付状态
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnPrepareGoods_Click(object sender, EventArgs e)
        {
            CommOrderBll      obll  = new CommOrderBll();
            OrderChangeLogBll lbll  = new OrderChangeLogBll();
            CommOrderModel    order = obll.GetModel(lblOrderId.Text);

            if (order != null && order.OrderStatus == OrderStatus.已创建 &&
                (order.PayMethod == PayMethType.货到付款 || order.PayStatus == PayStatus.支付成功))
            {
                obll.ChangeOrderStatus(order.OrderId, OrderStatus.备货中);
                lbll.Add(order.OrderId, txtActionRemark.Text.Trim(), OrderStatus.备货中.ToString(),
                         Context.User.Identity.Name);
                ShowOrderInfo(lblOrderId.Text);
            }
        }
        /// <summary>
        /// 置为交易失败,前置条件为:货到付款订单,已发货;其他订单,已退款
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnFail_Click(object sender, EventArgs e)
        {
            CommOrderBll      obll  = new CommOrderBll();
            OrderChangeLogBll lbll  = new OrderChangeLogBll();
            CommOrderModel    order = obll.GetModel(lblOrderId.Text);

            if (order != null &&
                ((order.PayMethod == PayMethType.货到付款 && order.OrderStatus == OrderStatus.已发货) ||
                 (order.PayMethod != PayMethType.货到付款 && order.PayStatus == PayStatus.退款完成)))
            {
                obll.ChangeOrderStatus(order.OrderId, OrderStatus.交易失败);
                lbll.Add(order.OrderId, txtActionRemark.Text.Trim(), OrderStatus.交易失败.ToString(),
                         Context.User.Identity.Name);
                ShowOrderInfo(lblOrderId.Text);
            }
        }
Пример #16
0
        /// <summary>
        /// 修改交易价格
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void ap_ModifyTradeBaseTotalFee(object sender, NotifyEventArgs e)
        {
            log.Info("修改交易价格,订单号为:" + e.Out_Trade_No);
            CommOrderModel omodel = obll.GetModel(e.Out_Trade_No);

            if (omodel.PayMethod == PayMethType.支付宝)
            {
                if (e.Is_Total_Fee_Adjust == "T")
                {
                    if (obll.ModifyTotalFee(e.Out_Trade_No, e.Total_Fee ?? 0))
                    {
                        string remark = String.Format("修改订单金额,修改前总价为:{0},修改后的的总价为:{1},相关状态为:{2}",
                                                      omodel.Paysum, e.Total_Fee, e.Trade_Status + " " + e.Refund_Status);
                        lbll.Add(e.Out_Trade_No, remark, "议价", "alipay");
                    }
                }
            }
        }
Пример #17
0
        /// <summary>
        /// 置为买家签收(买家确认),隐含实现,如果为线上支付,则同时跳转至结算页面,前置条件:订单已发货
        /// 如果是货到付款订单,同时设置订单支付状态为已支付
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnCherrys_Click(object sender, EventArgs e)
        {
            CommOrderBll      obll  = new CommOrderBll();
            OrderChangeLogBll lbll  = new OrderChangeLogBll();
            CommOrderModel    order = obll.GetModel(lblOrderId.Text);

            if (order.OrderStatus == OrderStatus.已发货 || order.OrderStatus == OrderStatus.物流到货)
            {
                obll.ChangeOrderStatus(order.OrderId, OrderStatus.买家确认);
                lbll.Add(order.OrderId, txtActionRemark.Text.Trim(), OrderStatus.买家确认.ToString(),
                         Context.User.Identity.Name);

                if (order.PayMethod == PayMethType.支付宝)
                {
                    // 转向支付结算页面
                }
                ShowOrderInfo(lblOrderId.Text);
            }
        }
Пример #18
0
        protected void Page_Load(object sender, EventArgs e)
        {
            CommOrderBll obll    = new CommOrderBll();
            string       orderId = Request.QueryString["orderId"];

            CommOrderModel            model = obll.GetModel(orderId);
            List <CommOrderItemModel> items = obll.GetOrderItems(orderId);
            string subject   = "test product";
            int    quantity  = 1;
            string paymethod = (model.ShipMethod == ShipMethodType.EMS ? "EMS" : "EXPRESS");

            //        StandardGoods bp = new StandardGoods(PayServiceType.trade_create_by_buyer.Key, AlipaySetting.Partner,
            //AlipaySetting.Key,
            //AlipaySetting.SignType,
            //subject, model.OrderId, model.Paysum, quantity, AlipaySetting.SellerEmail, AlipaySetting.SellerId,
            //"POST", model.ShipFee, LogisticsPayment.BUYER_PAY.Key, "1");


            //string logistics_type = "POST";
            //string logistics_fee = TextBox2.Text;
            //string logistics_payment = "BUYER_PAY";
            //string logistics_type_1 = "EXPRESS";
            //string logistics_fee_1 = TextBox3.Text;
            //string logistics_payment_1 = "BUYER_PAY";


            //bp.Notify_Url = AlipaySetting.NotifyUrl;
            //bp.Return_Url = AlipaySetting.ReturnUrl;

            //按时构造订单号;

            string out_trade_no = model.OrderId;
            //业务参数赋值;
            string gateway             = AlipaySetting.PushUrl; //'支付接口
            string service             = PayServiceType.trade_create_by_buyer.Key;
            string partner             = AlipaySetting.Partner; //partner		合作伙伴ID			保留字段
            string sign_type           = AlipaySetting.SignType;
            string body                = "test order";          //body			商品描述
            string payment_type        = "1";                   //支付类型
            string price               = model.Paysum.ToString("f2");
            string show_url            = "http://dingding.uncc.cn/";
            string seller_email        = AlipaySetting.SellerEmail; //卖家账号
            string key                 = AlipaySetting.Key;         //partner账户的支付宝安全校验码
            string return_url          = AlipaySetting.ReturnUrl;   //服务器通知返回接口
            string notify_url          = AlipaySetting.NotifyUrl;   //服务器通知返回接口
            string _input_charset      = AlipaySetting.EncodeType;
            string logistics_type      = "POST";
            string logistics_fee       = model.ShipFee.ToString("f2");
            string logistics_payment   = LogisticsPayment.BUYER_PAY.Key;
            string logistics_type_1    = null;
            string logistics_fee_1     = null;
            string logistics_payment_1 = null;


            MyAliPay ap        = new MyAliPay();
            string   aliay_url = ap.CreatUrl(
                gateway,
                service,
                partner,
                sign_type,
                out_trade_no,
                subject,
                body,
                payment_type,
                price,
                show_url,
                seller_email,
                key,
                return_url,
                _input_charset,
                notify_url,
                logistics_type,
                logistics_fee,
                logistics_payment,
                logistics_type_1,
                logistics_fee_1,
                logistics_payment_1,
                quantity.ToString()
                );

            Response.Redirect(aliay_url);
        }
        /// <summary>
        /// 显示允许管理员操作的按钮
        /// 在线支付
        /// 未支付 —— 关闭订单
        /// 支付成功,—— 审核通过,开始备货
        /// 支付成功,—— 退款给买家,交易失败
        /// 开始备货,—— 发货
        /// 开始备货 —— 退款给买家,交易失败
        /// 已发货,—— 物流确认到货
        /// 已发货,—— 买家拒收,退款给买家,交易失败
        /// 物流确认到货,买家确认收货或超时 —— 交易完成
        ///
        /// 银行转帐,邮件汇款
        /// 未支付 —— 关闭订单
        /// 未支付 —— 买家付款成功
        /// 支付成功,—— 审核通过,开始备货
        /// 支付成功,—— 退款给买家,交易失败
        /// 开始备货,—— 发货
        /// 开始备货 —— 退款给买家,交易失败
        /// 已发货,—— 物流确认到货,交易完成
        /// 已发货,—— 买家拒收,退款给买家,交易失败
        /// 货到付款
        /// 未支付 —— 关闭订单
        /// 未支付 —— 审核通过,备货
        /// 备货中 —— 发货
        /// 发货中 —— 物流确认收货收款,交易成功
        /// 发货中 —— 买家未签收,交易失败
        /// </summary>
        /// <param name="order"></param>
        private void ShowActions(CommOrderModel order)
        {
            btnClose.Visible        = false;
            btnPrepareGoods.Visible = false;
            btnFail.Visible         = false;
            btnSend.Visible         = false;
            btnCherrys.Visible      = false;
            btnFinish.Visible       = false;
            btnPaySucc.Visible      = false;
            btnRefund.Visible       = false;
            txtActionRemark.Visible = false;

            if (order.OrderStatus == OrderStatus.交易关闭 || order.OrderStatus == OrderStatus.交易失败 ||
                order.OrderStatus == OrderStatus.交易完成)
            {
                return;
            }

            if (order.PayMethod == PayMethType.货到付款)
            {
                if (order.OrderStatus == OrderStatus.已创建)
                {
                    btnPrepareGoods.Visible = true;
                    btnClose.Visible        = true;
                    txtActionRemark.Visible = true;
                }
                else if (order.OrderStatus == OrderStatus.备货中)
                {
                    btnSend.Visible         = true;
                    btnClose.Visible        = true;
                    txtActionRemark.Visible = true;
                }
                else if (order.OrderStatus == OrderStatus.已发货)
                {
                    btnCherrys.Visible      = true;
                    btnFail.Visible         = true;
                    txtActionRemark.Visible = true;
                }
                else if (order.OrderStatus == OrderStatus.物流到货)
                {
                    btnFinish.Visible       = true;
                    txtActionRemark.Visible = true;
                }
            }

            if (order.PayMethod == PayMethType.银行转账 || order.PayMethod == PayMethType.邮局汇款)
            {
                if (order.PayStatus == PayStatus.等待付款)
                {
                    if (order.OrderStatus == OrderStatus.已创建)
                    {
                        btnClose.Visible        = true;
                        btnPaySucc.Visible      = true;
                        txtActionRemark.Visible = true;
                    }
                }
                else if (order.PayStatus == PayStatus.支付成功)
                {
                    if (order.OrderStatus == OrderStatus.已创建)
                    {
                        btnRefund.Visible       = true;
                        btnPrepareGoods.Visible = true;
                        txtActionRemark.Visible = true;
                    }
                    else if (order.OrderStatus == OrderStatus.备货中)
                    {
                        btnRefund.Visible       = true;
                        btnSend.Visible         = true;
                        txtActionRemark.Visible = true;
                    }
                    else if (order.OrderStatus == OrderStatus.已发货)
                    {
                        btnCherrys.Visible      = true;
                        txtActionRemark.Visible = true;
                    }
                    else if (order.OrderStatus == OrderStatus.物流到货 || order.OrderStatus == OrderStatus.买家确认)
                    {
                        btnFinish.Visible       = true;
                        txtActionRemark.Visible = true;
                    }
                }
                else if (order.PayStatus == PayStatus.退款申请中)
                {
                    btnRefund.Visible       = true;
                    txtActionRemark.Visible = true;
                }
                else if (order.PayStatus == PayStatus.退款完成)
                {
                    btnFail.Visible         = true;
                    txtActionRemark.Visible = true;
                }
            }

            #region 支付宝
            if (order.PayMethod == PayMethType.支付宝)
            {
                if (order.PayStatus == PayStatus.等待付款 && String.IsNullOrEmpty(order.PayorderId))
                {
                    txtActionRemark.Visible = true;
                    btnClose.Visible        = true;
                }
            }

            //if (order.PayMethod == PayMethType.支付宝)
            //{
            //    if (order.PayStatus == PayStatus.等待付款 && String.IsNullOrEmpty(order.PayorderId))
            //    {
            //        txtActionRemark.Visible = true;
            //        btnClose.Visible = true;
            //    }
            //    else if (order.PayStatus == PayStatus.支付成功)
            //    {

            //        btnRefund.Visible = true;

            //        if (order.OrderStatus == OrderStatus.已创建)
            //        {
            //            btnRefund.Visible = true;
            //            btnPrepareGoods.Visible = true;
            //            txtActionRemark.Visible = true;
            //            btnClose.Visible = true;
            //        }
            //        else if (order.OrderStatus == OrderStatus.备货中)
            //        {
            //            btnSend.Visible = true;
            //            txtActionRemark.Visible = true;
            //            if (order.PayStatus == PayStatus.退款申请中)
            //            {
            //                btnRefund.Visible = true;
            //            }
            //        }
            //        else if (order.OrderStatus == OrderStatus.已发货)
            //        {
            //            if (order.PayStatus == PayStatus.退款申请中)
            //            {
            //                btnRefund.Visible = true;
            //            }
            //            btnCherrys.Visible = true;
            //            txtActionRemark.Visible = true;
            //        }
            //        else if (order.OrderStatus == OrderStatus.物流到货)
            //        {
            //            btnFinish.Visible = true;
            //            txtActionRemark.Visible = true;
            //        }
            //        else if (order.OrderStatus == OrderStatus.买家确认)
            //        {
            //            btnFinish.Visible = true;
            //            txtActionRemark.Visible = true;
            //        }
            //    }
            //    else if (order.PayStatus == PayStatus.退款申请中)
            //    {
            //        txtActionRemark.Visible = true;
            //        btnRefund.Visible = true;
            //    }
            //    else if (order.PayStatus == PayStatus.退款完成)
            //    {
            //        txtActionRemark.Visible = true;
            //        btnFail.Visible = true;
            //    }
            //}
            #endregion
        }