Esempio n. 1
0
        public CreatedPartRequestHeader CreatePartialRequest(string orderNo, string exernalDocumentNo, string lineDetails, string notes,
                                                             string shippingDetails, string email, int zendeskTicketNo)
        {
            CreatedPartialRequest    cpr  = new CreatedPartialRequest();
            CreatedPartRequestHeader cprh = new CreatedPartRequestHeader();

            cpr = webService.CreatePartRequest(orderNo, exernalDocumentNo, lineDetails, notes, shippingDetails, email, zendeskTicketNo);

            cprh = CreatePartialRequestHeader(cpr);
            return(cprh);
        }
Esempio n. 2
0
        protected void BtnCreatePartRequest_Click(object sender, EventArgs e)
        {
            StringBuilder lineBuild     = new StringBuilder();
            StringBuilder shippingBuild = new StringBuilder();
            string        lineError     = "";

            try
            {
                no = tcNo.Text;
                externalDocumentNo = tcDocNo.Text;
                notes = txtNotes.Text;
                email = txtCustEmail.Text;

                string validateMsg   = ValidateInput();
                bool   allValidLines = true;
                int    rowCount      = 0;
                int    controlCount  = 0;

                if (!String.IsNullOrWhiteSpace(txtZendeskTicketNo.Text) || !String.IsNullOrEmpty(txtZendeskTicketNo.Text))
                {
                    if (txtZendeskTicketNo.Text.Length == 7)
                    {
                        int.TryParse(txtZendeskTicketNo.Text, out zendeskTicketNo);
                    }
                    else
                    {
                        validateMsg = "Zendesk Ticket # should be 7 numeric characters.";
                    }
                }

                if (validateMsg == "All Input Valid")
                {
                    foreach (TableRow row in tblCreateReturnOrderTableDetails.Rows)
                    {
                        rowCount++;
                        string itemNo      = string.Empty;
                        string desc        = string.Empty;
                        int    qtyLine     = 0;
                        int    actionQty   = 0;
                        int    partRequest = 0;
                        string reason      = string.Empty;

                        controlCount = 0;

                        foreach (TableCell cell in row.Cells)
                        {
                            if (cell.ID.Contains("itemNo_"))
                            {
                                itemNo = cell.Text.ToString();
                            }

                            if (cell.ID.Contains("desc_"))
                            {
                                desc = cell.Text.ToString();
                            }

                            if (cell.ID.Contains("itemQuantity_"))
                            {
                                int.TryParse(cell.Text.ToString(), out qtyLine);
                            }

                            foreach (Control c in cell.Controls)
                            {
                                controlCount++;

                                if (c.GetType() == typeof(TextBox))
                                {
                                    string value = ((TextBox)c).Text;
                                    int.TryParse(value, out actionQty);
                                }

                                if (c.GetType() == typeof(DropDownList))
                                {
                                    int index = ((DropDownList)c).SelectedIndex;

                                    if (c.ID.Contains("ddlPartRequest_"))
                                    {
                                        partRequest = ((DropDownList)c).SelectedIndex;
                                    }

                                    if (c.ID.Contains("ddlReason_"))
                                    {
                                        /* v7.1 - 3 October 2018 - Neil Jansen
                                         * Updated logic to filter out incorrect catagories for Return Reason Code
                                         */

                                        List <ReturnReason> sr = (List <ReturnReason>)Session["ReturnReasons"];
                                        List <ReturnReason> rl = new List <ReturnReason>();
                                        foreach (ReturnReason item in sr)
                                        {
                                            if (item.Category == "Part Request" || item.Category == "")
                                            {
                                                rl.Add(item);
                                            }
                                        }
                                        reason = (rl)[index].ReasonCode;
                                    }
                                }
                            }

                            string lineValidMessage = string.Empty;

                            if ((rowCount > 1 && controlCount == 3 && actionQty != 0))
                            {
                                lineValidMessage = ValidateLine(itemNo, qtyLine, actionQty, partRequest, reason);

                                if (lineValidMessage == "Valid Line Input")
                                {
                                    lineBuild.Append(itemNo).Append(":");
                                    lineBuild.Append(desc).Append(":");
                                    lineBuild.Append(actionQty).Append(":");
                                    lineBuild.Append(partRequest).Append(":");
                                    lineBuild.Append(reason).Append(",");
                                }
                                else
                                {
                                    allValidLines = false;

                                    if (lineError == "")
                                    {
                                        lineError = lineValidMessage;
                                    }
                                }
                            }
                        }
                    }

                    if (allValidLines)
                    {
                        string lineValues             = lineBuild.ToString();
                        CreatedPartRequestHeader cprh = new CreatedPartRequestHeader();

                        SendService ss = new SendService();

                        cprh = ss.CreatePartialRequest(no, externalDocumentNo, lineValues, notes, "", email, zendeskTicketNo);

                        Session["CreatedPartRequest"] = cprh;
                        Session["NoUserInteraction"]  = true;

                        Session["CopyRowTable"]     = null;
                        Session["PartRequestTable"] = null;

                        ClientScript.RegisterStartupScript(this.GetType(), "returnPartRequest", "alert('" + cprh.QuoteNo + "');", true);
                        ClientScript.RegisterStartupScript(this.GetType(), "openCreatedPartRequest", "OpenCreatedPartRequest();", true);
                    }
                    else
                    {
                        ClientScript.RegisterStartupScript(this.GetType(), "lineError", "alert('" + lineError + "');", true);
                    }
                }
                else
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "validateMsg", "alert('" + validateMsg + "');", true);
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex.Message, ex);
                ClientScript.RegisterStartupScript(this.GetType(), "errorAlert", "alert('" + ex.Message.Replace("'", "\"") + "');", true);

                if (ex.Message.ToLower().Contains("session"))
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "closeErrorAlert", "parent.window.close();", true);
                }
            }
        }
Esempio n. 3
0
        protected CreatedPartRequestHeader CreatePartialRequestHeader(CreatedPartialRequest cp)
        {
            CreatedPartRequestHeader cprh = new CreatedPartRequestHeader();
            string quoteNo                       = string.Empty;
            string externalDocumentNo            = string.Empty;
            string quoteDate                     = string.Empty;
            string channelName                   = string.Empty;
            string shipMethod                    = string.Empty;
            string partReqOrderNo                = string.Empty;
            string shipToName                    = string.Empty;
            string shipToAddress1                = string.Empty;
            string shipToAddress2                = string.Empty;
            string shipToContact                 = string.Empty;
            string shipToCity                    = string.Empty;
            string shipToZip                     = string.Empty;
            string shipToState                   = string.Empty;
            string shipToCountry                 = string.Empty;
            List <CreatedPartRequestLines> lines = new List <CreatedPartRequestLines>();

            if (cp.SalesHeader != null)
            {
                quoteNo            = cp.SalesHeader[0].No;
                externalDocumentNo = cp.SalesHeader[0].ExtDocNo;
                quoteDate          = cp.SalesHeader[0].DocDate;
                channelName        = cp.SalesHeader[0].SellToCustomerName;
                shipMethod         = cp.SalesHeader[0].ShippingAgent;
                shipMethod        += " " + cp.SalesHeader[0].ShippingService;
                lines          = CreatePartialRequestLines(cp);
                shipToName     = cp.SalesHeader[0].ShipToName;
                shipToAddress1 = cp.SalesHeader[0].ShipToAddress;
                shipToAddress2 = cp.SalesHeader[0].ShipToAddress2;
                shipToContact  = cp.SalesHeader[0].ShipToContact;
                shipToCity     = cp.SalesHeader[0].ShipToCity;
                shipToZip      = cp.SalesHeader[0].ShipToZip;
                shipToState    = cp.SalesHeader[0].ShipToState;
                shipToCountry  = cp.SalesHeader[0].ShipToCountry;

                if (cp.ExtendedSalesHeader != null)
                {
                    for (int esh = 0; esh < cp.ExtendedSalesHeader.Length; esh++)
                    {
                        if (cp.ExtendedSalesHeader[esh].QuoteNo == quoteNo)
                        {
                            partReqOrderNo = cp.ExtendedSalesHeader[esh].PartRequestOrderNo;
                        }
                    }
                }

                cprh.QuoteNo            = quoteNo;
                cprh.ExternalDocumentNo = externalDocumentNo;
                cprh.QuoteDate          = quoteDate;
                cprh.ChannelName        = channelName;
                cprh.ShipMethod         = shipMethod;
                cprh.PartRequestOrderNo = partReqOrderNo;
                cprh.PartRequestLines   = lines;
                cprh.ShipToName         = shipToName;
                cprh.ShipToAddress1     = shipToAddress1;
                cprh.ShipToAddress2     = shipToAddress2;
                cprh.ShipToContact      = shipToContact;
                cprh.ShipToCity         = shipToCity;
                cprh.ShipToZip          = shipToZip;
                cprh.ShipToState        = shipToState;
                cprh.ShipToCountry      = shipToCountry;

                quoteNo            = string.Empty;
                externalDocumentNo = string.Empty;
                quoteDate          = string.Empty;
                channelName        = string.Empty;
                shipMethod         = string.Empty;
                partReqOrderNo     = string.Empty;
                shipToAddress1     = string.Empty;
                shipToAddress2     = string.Empty;
                shipToContact      = string.Empty;
                shipToCity         = string.Empty;
                shipToZip          = string.Empty;
                shipToState        = string.Empty;
                shipToCountry      = string.Empty;
                lines = new List <CreatedPartRequestLines>();
            }


            return(cprh);
        }