コード例 #1
0
        protected void listOrders_ItemDataBound(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == System.Web.UI.WebControls.ListItemType.Item || e.Item.ItemType == System.Web.UI.WebControls.ListItemType.AlternatingItem)
            {
                OrderStatus     orderStatus = (OrderStatus)System.Web.UI.DataBinder.Eval(e.Item.DataItem, "OrderStatus");
                System.DateTime t           = (System.Web.UI.DataBinder.Eval(e.Item.DataItem, "FinishDate") == System.DBNull.Value) ? System.DateTime.Now.AddYears(-1) : ((System.DateTime)System.Web.UI.DataBinder.Eval(e.Item.DataItem, "FinishDate"));
                string          a           = "";
                if (System.Web.UI.DataBinder.Eval(e.Item.DataItem, "Gateway") != null && !(System.Web.UI.DataBinder.Eval(e.Item.DataItem, "Gateway") is System.DBNull))
                {
                    a = (string)System.Web.UI.DataBinder.Eval(e.Item.DataItem, "Gateway");
                }
                System.Web.UI.WebControls.HyperLink hyperLink = (System.Web.UI.WebControls.HyperLink)e.Item.FindControl("hplinkorderreview");

                System.Web.UI.HtmlControls.HtmlAnchor linkNowPay = (System.Web.UI.HtmlControls.HtmlAnchor)e.Item.FindControl("hlinkPay");

                ImageLinkButton confirmOrder = (ImageLinkButton)e.Item.FindControl("lkbtnConfirmOrder");
                ImageLinkButton cancelOrder  = (ImageLinkButton)e.Item.FindControl("lkbtnCloseOrder");
                System.Web.UI.HtmlControls.HtmlAnchor lkbtnApplyForRefund  = (System.Web.UI.HtmlControls.HtmlAnchor)e.Item.FindControl("lkbtnApplyForRefund");
                System.Web.UI.HtmlControls.HtmlAnchor lkbtnApplyForReturn  = (System.Web.UI.HtmlControls.HtmlAnchor)e.Item.FindControl("lkbtnApplyForReturn");
                System.Web.UI.HtmlControls.HtmlAnchor lkbtnNotPay          = (System.Web.UI.HtmlControls.HtmlAnchor)e.Item.FindControl("lkbtnNotPay");
                System.Web.UI.HtmlControls.HtmlAnchor lkbtnApplyForReplace = (System.Web.UI.HtmlControls.HtmlAnchor)e.Item.FindControl("lkbtnApplyForReplace");

                System.Web.UI.WebControls.Repeater repeater = (System.Web.UI.WebControls.Repeater)e.Item.FindControl("rpProduct");
                //查看物流
                System.Web.UI.WebControls.Label label = (System.Web.UI.WebControls.Label)e.Item.FindControl("Logistics");
                if (hyperLink != null)
                {
                    hyperLink.Visible = (orderStatus == OrderStatus.Finished);
                }

                SiteSettings masterSettings = SettingsManager.GetMasterSettings(true);

                //未付款
                lkbtnNotPay.Visible = (orderStatus == OrderStatus.WaitBuyerPay);
                //退货
                lkbtnApplyForReturn.Visible = (orderStatus == OrderStatus.Finished && t >= System.DateTime.Now.AddDays((double)(-(double)masterSettings.EndOrderDays)));

                //退款
                lkbtnApplyForRefund.Visible = (orderStatus == OrderStatus.BuyerAlreadyPaid || orderStatus == OrderStatus.SellerAlreadySent);
                //换货
                lkbtnApplyForReplace.Visible = (orderStatus == OrderStatus.Finished && t >= System.DateTime.Now.AddDays((double)(-(double)masterSettings.EndOrderDays)));

                /*1.等待买家付款(WaitBuyerPay) ->        未付款/取消
                 * 2.已付款,等待发货(BuyerAlreadyPaid) -> 退款
                 * 3.已发货(SellerAlreadySent)          ->退款,确认收货,查看物流
                 * 4.订单已完成(Finished)  -> 退货/换货 查看物流
                 */

                if (repeater != null)
                {
                    string orderId = ((DataRowView)e.Item.DataItem).Row["OrderId"].ToString();
                    if (!string.IsNullOrEmpty(orderId))
                    {
                        DataTable dt = TradeHelper.GetOrderItemThumbnailsUrl(orderId);
                        repeater.DataSource = dt;
                        repeater.DataBind();
                    }
                }
            }
        }
コード例 #2
0
        protected void listOrders_ItemDataBound(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == System.Web.UI.WebControls.ListItemType.Item || e.Item.ItemType == System.Web.UI.WebControls.ListItemType.AlternatingItem)
            {
                OrderStatus orderStatus = (OrderStatus)System.Web.UI.DataBinder.Eval(e.Item.DataItem, "OrderStatus");

                System.DateTime t = (System.Web.UI.DataBinder.Eval(e.Item.DataItem, "FinishDate") == System.DBNull.Value) ? System.DateTime.Now.AddYears(-1) : ((System.DateTime)System.Web.UI.DataBinder.Eval(e.Item.DataItem, "FinishDate"));
                string          a = "";
                if (System.Web.UI.DataBinder.Eval(e.Item.DataItem, "Gateway") != null && !(System.Web.UI.DataBinder.Eval(e.Item.DataItem, "Gateway") is System.DBNull))
                {
                    a = (string)System.Web.UI.DataBinder.Eval(e.Item.DataItem, "Gateway");
                }

                System.Web.UI.WebControls.HyperLink hyperLink = (System.Web.UI.WebControls.HyperLink)e.Item.FindControl("hplinkorderreview");

                System.Web.UI.HtmlControls.HtmlAnchor linkNowPay = (System.Web.UI.HtmlControls.HtmlAnchor)e.Item.FindControl("hlinkPay");

                ImageLinkButton confirmOrder = (ImageLinkButton)e.Item.FindControl("lkbtnConfirmOrder");
                ImageLinkButton cancelOrder  = (ImageLinkButton)e.Item.FindControl("lkbtnCloseOrder");


                //ImageLinkButton refundOrder = (ImageLinkButton)e.Item.FindControl("lkbtnRefund");
                System.Web.UI.WebControls.LinkButton  refundOrder          = (System.Web.UI.WebControls.LinkButton)e.Item.FindControl("lkbtnRefund");
                System.Web.UI.HtmlControls.HtmlAnchor lkbtnApplyForRefund  = (System.Web.UI.HtmlControls.HtmlAnchor)e.Item.FindControl("lkbtnApplyForRefund");
                System.Web.UI.HtmlControls.HtmlAnchor lkbtnApplyForReturn  = (System.Web.UI.HtmlControls.HtmlAnchor)e.Item.FindControl("lkbtnApplyForReturn");
                System.Web.UI.HtmlControls.HtmlAnchor lkbtnNotPay          = (System.Web.UI.HtmlControls.HtmlAnchor)e.Item.FindControl("lkbtnNotPay");
                System.Web.UI.HtmlControls.HtmlAnchor lkbtnApplyForReplace = (System.Web.UI.HtmlControls.HtmlAnchor)e.Item.FindControl("lkbtnApplyForReplace");
                lb_refundtitle = (System.Web.UI.WebControls.Label)e.Item.FindControl("lb_refundtitle");
                System.Web.UI.WebControls.Repeater repeater = (System.Web.UI.WebControls.Repeater)e.Item.FindControl("rpProduct");
                //查看物流
                //System.Web.UI.WebControls.Label label = (System.Web.UI.WebControls.Label)e.Item.FindControl("Logistics");
                if (hyperLink != null)
                {
                    hyperLink.Visible = (orderStatus == OrderStatus.Finished);
                }


                //立即付款
                linkNowPay.Visible = (orderStatus == OrderStatus.WaitBuyerPay && a != "ecdev.plugins.payment.podrequest");
                //确认收货
                confirmOrder.Visible = (orderStatus == OrderStatus.SellerAlreadySent);
                if (cancelOrder != null)
                {
                    //取消订单
                    cancelOrder.Visible = (orderStatus == OrderStatus.WaitBuyerPay);
                }
                string SourceOrderId = ((DataRowView)e.Item.DataItem).Row["SourceOrderId"].ToString();
                string orderId       = ((DataRowView)e.Item.DataItem).Row["OrderId"].ToString();
                string IsRefund      = ((DataRowView)e.Item.DataItem).Row["IsRefund"].ToString();

                //申请退款
                if (repeater != null && orderStatus == OrderStatus.BuyerAlreadyPaid)
                {
                    string PayDate = ((DataRowView)e.Item.DataItem).Row["PayDate"].ToString();
                    if (!string.IsNullOrWhiteSpace(PayDate))
                    {
                        if (Convert.ToDateTime(PayDate) > DateTime.Now.AddMinutes(-OrderRefundTime) && IsRefund == "0")//可以取消
                        {
                            refundOrder.Visible       = true;
                            refundOrder.OnClientClick = "return IsRefund('" + orderId + "','" + SourceOrderId + "')";
                        }
                    }
                }
                if (IsRefund == "1")
                {
                    this.lb_refundtitle.Visible = true;
                    this.lb_refundtitle.Text    = "退款成功";
                }
                if (IsRefund == "2")
                {
                    this.lb_refundtitle.Visible = true;
                    this.lb_refundtitle.Text    = "退款中";
                }
                SiteSettings masterSettings = SettingsManager.GetMasterSettings(true);
                //未付款
                lkbtnNotPay.Visible = (orderStatus == OrderStatus.WaitBuyerPay);
                //退货
                //lkbtnApplyForReturn.Visible = (orderStatus == OrderStatus.Finished && t >= System.DateTime.Now.AddDays((double)(-(double)masterSettings.EndOrderDays)));

                //退款
                //lkbtnApplyForRefund.Visible = (orderStatus == OrderStatus.BuyerAlreadyPaid || orderStatus == OrderStatus.SellerAlreadySent);
                //object payDate = System.Web.UI.DataBinder.Eval(e.Item.DataItem, "PayDate");
                //if (OrderInfo.IsInClearance(payDate))
                //{
                //    lkbtnApplyForReturn.Visible = true;
                //    lkbtnApplyForRefund.Visible = false;
                //}
                //换货
                //lkbtnApplyForReplace.Visible = (orderStatus == OrderStatus.Finished && t >= System.DateTime.Now.AddDays((double)(-(double)masterSettings.EndOrderDays)));

                /*1.等待买家付款(WaitBuyerPay) ->        未付款/取消
                 * 2.已付款,等待发货(BuyerAlreadyPaid) -> 退款
                 * 3.已发货(SellerAlreadySent)          ->退款,确认收货,查看物流
                 * 4.订单已完成(Finished)  -> 退货/换货 查看物流
                 */

                //
                if (repeater != null)
                {
                    if (!string.IsNullOrEmpty(orderId))
                    {
                        DataTable dt = TradeHelper.GetOrderItemThumbnailsUrl(orderId);
                        repeater.DataSource = dt;
                        repeater.DataBind();
                    }
                }
                if (orderStatus == OrderStatus.SellerAlreadySent || orderStatus == OrderStatus.Finished || orderStatus == OrderStatus.Returned || orderStatus == OrderStatus.ApplyForReplacement || orderStatus == OrderStatus.ApplyForReturns)
                {
                    //查看物流
                    //label.Visible = true;
                }
            }
        }