void availableNumberGrid_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                DollarSaverDB.CertificateNumberRow certNumber = (DollarSaverDB.CertificateNumberRow)e.Row.DataItem;

                /*
                 * if (CurrentUser.Role == AdminRole.Root) {
                 *  HyperLink certificateNumberLink = (HyperLink)e.Row.FindControl("certificateNumberLink");
                 *  certificateNumberLink.Text = certNumber.Number;
                 *  //certificateNumberLink.NavigateUrl = "~/admin/ViewCertificate.aspx?id=" + certNumber.CertificateNumberId;
                 *
                 *  String queryString = "id=" + certNumber.CertificateNumberId + "&void=true";
                 *  String encryptedString = Server.UrlEncode(Cipher.Encrypt(queryString));
                 *  certificateNumberLink.NavigateUrl = "~/ViewCertificate.aspx?x=" + encryptedString;
                 *
                 *  certificateNumberLink.Visible = true;
                 * } else {
                 * */
                Label certificateNumberLabel = (Label)e.Row.FindControl("certificateNumberLabel");
                certificateNumberLabel.Text    = certNumber.Number;
                certificateNumberLabel.Visible = true;
                //}
            }
        }
Ejemplo n.º 2
0
        void numberGrid_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                DollarSaverDB.CertificateNumberRow certNumber = (DollarSaverDB.CertificateNumberRow)e.Row.DataItem;

                HyperLink certificateLink = (HyperLink)e.Row.FindControl("certificateLink");

                String queryString = "id=" + certNumber.CertificateNumberId + "&order_id=" + order.OrderId;

                String encryptedString = Server.UrlEncode(Cipher.Encrypt(queryString));

                certificateLink.NavigateUrl = "~/ViewCertificate.aspx?x=" + encryptedString;
                certificateLink.Text        = certNumber.Number;
            }
        }
        void numberGrid_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                DollarSaverDB.CertificateNumberRow certNumber = (DollarSaverDB.CertificateNumberRow)e.Row.DataItem;

                Label       nonPrintableLabel  = (Label)e.Row.FindControl("nonPrintableLabel");
                HyperLink   certificateLink    = (HyperLink)e.Row.FindControl("certificateLink");
                HiddenField certNumberIdHidden = (HiddenField)e.Row.FindControl("certNumberIdHidden");

                certNumberIdHidden.Value = certNumber.CertificateNumberId.ToString();

                if (certNumber.LineItem.DeliveryType == DeliveryType.Print)
                {
                    certificateLink.Visible   = true;
                    nonPrintableLabel.Visible = false;

                    String queryString = "id=" + certNumber.CertificateNumberId + "&order_id=" + order.OrderId;

                    String encryptedString = Server.UrlEncode(Cipher.Encrypt(queryString));

                    certificateLink.NavigateUrl = "~/ViewCertificate.aspx?x=" + encryptedString;
                    certificateLink.Text        = certNumber.Number;
                }
                else
                {
                    certificateLink.Visible   = false;
                    nonPrintableLabel.Visible = true;

                    nonPrintableLabel.Text = "Not Printable";

                    if (certNumber.LineItem.DeliveryType == DeliveryType.Ship)
                    {
                        nonPrintableLabel.Text += " - Mail to Customer";
                    }
                    else if (certNumber.LineItem.DeliveryType == DeliveryType.PickUp)
                    {
                        nonPrintableLabel.Text += " - Pick Up";
                    }
                }
            }
        }
        void numberRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                DollarSaverDB.CertificateNumberRow certNumber = (DollarSaverDB.CertificateNumberRow)e.Item.DataItem;

                Label     certificateNameLabel = (Label)e.Item.FindControl("certificateNameLabel");
                Label     numberLabel          = (Label)e.Item.FindControl("numberLabel");
                HyperLink certificateLink      = (HyperLink)e.Item.FindControl("certificateLink");

                certificateNameLabel.Text = certNumber.LineItem.Certificate.Advertiser.Name;
                numberLabel.Text          = certNumber.Number;

                String queryString = "id=" + certNumber.CertificateNumberId + "&order_id=" + Order.OrderId;

                String encryptedString = Server.UrlEncode(Cipher.Encrypt(queryString));


                certificateLink.NavigateUrl = "~/ViewCertificate.aspx?x=" + encryptedString + "&backBtn=Y";
            }
        }
        private void LoadCertificateNumber()
        {
            CertificateNumberTableAdapter certificateNumberAdapter = new CertificateNumberTableAdapter();

            int id       = 0;
            int orderId  = 0;
            int sampleId = 0;

            String cipherText = Request.QueryString["x"];

            if (cipherText != null && cipherText != String.Empty)
            {
                try {
                    String plainText = Server.UrlDecode(Cipher.Decrypt(cipherText));

                    String[] keysAndValues = plainText.Split('&');

                    foreach (String keyAndValueStr in keysAndValues)
                    {
                        String[] keyAndValue = keyAndValueStr.Split('=');

                        if (keyAndValue.Length == 2)
                        {
                            if (keyAndValue[0] == "id")
                            {
                                try {
                                    id = Convert.ToInt32(keyAndValue[1]);
                                } catch { }
                            }
                            else if (keyAndValue[0] == "order_id")
                            {
                                try {
                                    orderId = Convert.ToInt32(keyAndValue[1]);
                                } catch { }
                            }
                            else if (keyAndValue[0] == "sample_id")
                            {
                                try {
                                    sampleId = Convert.ToInt32(keyAndValue[1]);
                                } catch { }
                            }
                        }
                    }
                } catch { }
            }

            if (sampleId == 0)
            {
                if (id == 0 || orderId == 0)
                {
                    // check for old parameters for backward compatibility
                    // viewcertificate?orderNum=13651&certNum=755426&backBtn=no
                    orderId = GetValueFromQueryString("orderNum");
                    id      = 0;

                    // cut off backward compatibility after certain order id
                    if (orderId < 17000)
                    {
                        String number = Convert.ToString(Request.QueryString["certNum"]);

                        if (orderId == 0 || number == String.Empty)
                        {
                            return;
                        }

                        DollarSaverDB.CertificateNumberDataTable numberSearch = certificateNumberAdapter.GetBackward(orderId, number);

                        if (numberSearch.Count == 1)
                        {
                            id = numberSearch[0].CertificateNumberId;
                        }
                        else
                        {
                            return;
                        }
                    }
                }

                DollarSaverDB.CertificateNumberDataTable certNumberTable = certificateNumberAdapter.GetCertificateNumber(id);

                if (certNumberTable.Count != 1)
                {
                    return;
                }

                DollarSaverDB.CertificateNumberRow checkCertNumber = certNumberTable[0];

                OrderTableAdapter orderAdapter = new OrderTableAdapter();

                DollarSaverDB.OrderDataTable orderTable = orderAdapter.GetOrder(orderId);

                if (orderTable.Count != 1)
                {
                    return;
                }

                DollarSaverDB.OrderRow order = orderTable[0];

                if (order.OrderStatusId != (int)OrderStatus.Complete)
                {
                    return;
                }

                if (checkCertNumber.IsOrderLineItemIdNull() || !order.LineItems.Contains(checkCertNumber.OrderLineItemId))
                {
                    return;
                }

                certNumber  = checkCertNumber;
                certificate = certNumber.Certificate;
            }
            else
            {
                CertificateTableAdapter            certAdapter      = new CertificateTableAdapter();
                DollarSaverDB.CertificateDataTable certificateTable = certAdapter.GetCertificate(sampleId);

                if (certificateTable.Count != 1)
                {
                    return;
                }

                certificate = certificateTable[0];
            }
        }
        void saveButton_Click(object sender, EventArgs e)
        {
            OrderLineItemTableAdapter     lineItemAdapter          = new OrderLineItemTableAdapter();
            CertificateNumberTableAdapter certificateNumberAdapter = new CertificateNumberTableAdapter();

            decimal subtotal = 0.0m;

            foreach (RepeaterItem item in lineItemRepeater.Items)
            {
                if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem)
                {
                    HiddenField lineItemIdHidden            = (HiddenField)item.FindControl("lineItemIdHidden");
                    int         lineItemId                  = Convert.ToInt32(lineItemIdHidden.Value);
                    DollarSaverDB.OrderLineItemRow lineItem = lineItemAdapter.GetOrderLineItem(lineItemId)[0];


                    //DropDownList qtyList = (DropDownList)item.FindControl("qtyList");
                    //int qty = Convert.ToInt32(qtyList.SelectedValue);


                    /*
                     * if (lineItem.Quantity != qty) {
                     *
                     *
                     *  int returnedQty = lineItem.Quantity - qty;
                     *  certificateNumberAdapter.Return(lineItem.OrderLineItemId, returnedQty);
                     *
                     *  if (qty == 0) {
                     *      lineItem.Returned = true;
                     *      lineItemAdapter.Update(lineItem);
                     *  } else {
                     *      lineItem.Quantity = qty;
                     *      lineItemAdapter.Update(lineItem);
                     *
                     *      DollarSaverDB.OrderLineItemRow returnedItem = order.ReturnedLineItems.GetLineItem(lineItem.CertificateId);
                     *
                     *      if (returnedItem != null) {
                     *          returnedItem.Quantity += returnedQty;
                     *          lineItemAdapter.Update(returnedItem);
                     *      } else {
                     *          lineItemAdapter.Insert(lineItem.OrderId, -1, returnedQty, lineItem.CertificateId,
                     *              lineItem.ShortName, lineItem.Description, lineItem.FaceValue, lineItem.Discount, lineItem.DiscountTypeId, lineItem.Printable, true);
                     *      }
                     *  }
                     *
                     * }
                     */

                    GridView numberGrid = (GridView)item.FindControl("numberGrid");

                    int returnedQty = 0;
                    foreach (GridViewRow certNumberRow in numberGrid.Rows)
                    {
                        CheckBox deleteBox = (CheckBox)certNumberRow.FindControl("deleteBox");

                        if (deleteBox.Checked)
                        {
                            returnedQty++;

                            HiddenField certNumberIdHidden = (HiddenField)certNumberRow.FindControl("certNumberIdHidden");
                            int         certNumberId       = Convert.ToInt32(certNumberIdHidden.Value);

                            DollarSaverDB.CertificateNumberRow certNumber =
                                certificateNumberAdapter.GetCertificateNumber(certNumberId)[0];

                            certNumber.SetOrderLineItemIdNull();
                            certificateNumberAdapter.Update(certNumber);
                        }
                    }


                    if (returnedQty > 0)
                    {
                        DollarSaverDB.OrderLineItemRow returnedItem = order.ReturnedLineItems.GetLineItem(lineItem.CertificateId);

                        if (returnedItem != null)
                        {
                            returnedItem.Quantity += returnedQty;
                            lineItemAdapter.Update(returnedItem);

                            if (returnedQty == lineItem.Quantity)
                            {
                                lineItemAdapter.Delete(lineItem.OrderLineItemId);
                            }
                            else
                            {
                                lineItem.Quantity -= returnedQty;
                                lineItemAdapter.Update(lineItem);
                                subtotal += lineItem.Total;
                            }
                        }
                        else
                        {
                            if (returnedQty == lineItem.Quantity)
                            {
                                lineItem.Returned = true;
                                lineItemAdapter.Update(lineItem);
                            }
                            else
                            {
                                lineItemAdapter.Insert(lineItem.OrderId, -1, returnedQty, lineItem.CertificateId,
                                                       lineItem.ShortName, lineItem.Description, lineItem.FaceValue, lineItem.Discount, lineItem.DiscountTypeId, lineItem.DeliveryTypeId, lineItem.DeliveryNote, true);

                                lineItem.Quantity -= returnedQty;
                                lineItemAdapter.Update(lineItem);
                                subtotal += lineItem.Total;
                            }
                        }
                    }
                    else
                    {
                        subtotal += lineItem.Total;
                    }
                }
            }

            order.SubTotal   = subtotal;
            order.GrandTotal = subtotal;

            OrderTableAdapter orderAdapter = new OrderTableAdapter();

            orderAdapter.Update(order);

            InfoMessage = "Order updated";
            Response.Redirect("~/admin/OrderView.aspx?id=" + orderId);
        }