protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {
        if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
        {
            Literal dispatcher  = (Literal)repeater1.Controls[0].Controls[0].FindControl("dispatcher");
            Literal invoiceTo   = (Literal)repeater1.Controls[0].Controls[0].FindControl("invoiceTo");
            Literal orderedby   = (Literal)repeater1.Controls[0].Controls[0].FindControl("orderedby");
            Literal ponumber    = (Literal)repeater1.Controls[0].Controls[0].FindControl("ponumber");
            Literal jobnumber   = (Literal)repeater1.Controls[0].Controls[0].FindControl("jobnumber");
            Literal ordernumber = (Literal)repeater1.Controls[0].Controls[0].FindControl("ordernumber");
            Literal shipvia     = (Literal)repeater1.Controls[0].Controls[0].FindControl("shipvia");
            Literal shipto      = (Literal)repeater1.Controls[0].Controls[0].FindControl("shipto");
            Literal lease       = (Literal)repeater1.Controls[0].Controls[0].FindControl("lease");

            Literal date = (Literal)repeater1.Controls[0].Controls[0].FindControl("date");
            // Literal status = (Literal)repeater1.Controls[0].Controls[0].FindControl("status");
            Literal afe              = (Literal)repeater1.Controls[0].Controls[0].FindControl("afe");
            Literal area             = (Literal)repeater1.Controls[0].Controls[0].FindControl("area");
            Literal rig              = (Literal)repeater1.Controls[0].Controls[0].FindControl("rig");
            Literal well             = (Literal)repeater1.Controls[0].Controls[0].FindControl("well");
            Literal state            = (Literal)repeater1.Controls[0].Controls[0].FindControl("state");
            Literal parish           = (Literal)repeater1.Controls[0].Controls[0].FindControl("parish");
            Literal jobtype          = (Literal)repeater1.Controls[0].Controls[0].FindControl("jobtype");
            Literal contractor       = (Literal)repeater1.Controls[0].Controls[0].FindControl("contractor");
            Literal priceStrategy    = (Literal)repeater1.Controls[0].Controls[0].FindControl("priceStrategy");
            Literal alternateJobType = (Literal)repeater1.Controls[0].Controls[0].FindControl("ajobtype");
            Literal ajobtypeTitle    = (Literal)repeater1.Controls[0].Controls[0].FindControl("ajobtypeTitle");
            Label   LabelDTNumber    = (Label)repeater1.Controls[0].Controls[0].FindControl("LabelDTNumber");
            // Label LabelStatus = (Label)repeater1.Controls[0].Controls[0].FindControl("LabelStatus");

            dynamic        dataitem = e.Item.DataItem as dynamic;
            DeliveryTicket d        = (DeliveryTicket)dataitem;

            if (fixheaderonce == 0) //don't need to run this code evertime hence the variable fixheaderonce
            {
                dispatcher.Text  = d.Dispatcher;
                invoiceTo.Text   = d.InvoiceTo;
                orderedby.Text   = d.OrderedBy;
                ponumber.Text    = d.PONumber;
                jobnumber.Text   = d.JobNumber;
                ordernumber.Text = d.OrderNumber;
                shipvia.Text     = d.ShipVia;
                shipto.Text      = d.ShipTo;
                lease.Text       = d.Lease;

                date.Text       = d.DeliveryDate;
                state.Text      = d.State;
                afe.Text        = d.AFE;
                area.Text       = d.Area;
                rig.Text        = d.RigNum;
                well.Text       = d.WellNum;
                state.Text      = d.State;
                parish.Text     = d.Parish;
                jobtype.Text    = d.JobType;
                contractor.Text = d.Contractor;

                if (d.QuotePriceBook == 1)
                {
                    priceStrategy.Text = "Supreme Book Pricing";
                }

                if (d.QuotePriceBook == 2)
                {
                    priceStrategy.Text = "Customer Pricing";
                }

                if (d.QuotePriceBook == 3)
                {
                    alternateJobType.Text = d.AlternateJobType;
                    ajobtypeTitle.Text    = "Alternate Job Type:";
                    priceStrategy.Text    = "Alternate Customer - " + d.AlternateCustomerNumber;
                }


                LabelDTNumber.Text = d.DTNumber;
                //CreateUserID = d.CreateUserID;
                //QuoteStatus = d.Status;
                HasDiscrepancy = d.HasDisrepancy;
                fixheaderonce++;

                CheckBox hCheckBox1 = (CheckBox)repeater1.Controls[0].Controls[0].FindControl("CheckBox1");

                Panel PanelDiscrep = (Panel)repeater1.Controls[0].Controls[0].FindControl("PanelDiscrep");

                if (HasDiscrepancy)
                {
                    PanelDiscrep.Visible = true;
                }
            }
        }
        if (e.Item.ItemType == ListItemType.Footer)
        {
            Panel PanelDiscrep = (Panel)e.Item.FindControl("PanelDiscrep");
            if (HasDiscrepancy)
            {
                //Don'te show Approve / Reject buttons yet until after discrep acknowledgement has been made
                PanelDiscrep.Visible = true;
            }
            else
            {
                if (Session["DisAck"] != null)
                {
                    PanelDiscrep.Visible = true;
                    // CheckBox1.Enabled = false;
                }
            }
        }
    }
    public IEnumerable <DeliveryTicket> GetDTbyDTID(int DTID)
    {
        var DTs = new List <DeliveryTicket>();

        using (var connection = new SqlConnection(ConfigurationManager.ConnectionStrings["SSIRentConnectionString"].ConnectionString))
            using (SqlCommand command = connection.CreateCommand())
            {
                command.CommandType = CommandType.StoredProcedure;
                command.CommandText = "sp_DT_rptDeliveryTicket";
                command.Parameters.AddWithValue("@DTID", DTID);
                command.Connection.Open();
                try
                {
                    using (SqlDataReader dr = command.ExecuteReader())
                    {
                        while (dr.Read())
                        {
                            var DT = new DeliveryTicket
                            {
                                DTNumber                = dr["Delivery Ticket"].ToString(),
                                DeliveryDate            = dr["Delivery Date"].ToString(),
                                ItemDescription         = dr["Item Description"].ToString(),
                                OrderedBy               = dr["Ordered by"].ToString(),
                                Dispatcher              = dr["Dispatcher"].ToString(),
                                PONumber                = dr["PO Number"].ToString(),
                                JobNumber               = dr["Job Number"].ToString(),
                                OrderNumber             = dr["Order Number"].ToString(),
                                InvoiceTo               = dr["Invoice To"].ToString(),
                                ShipVia                 = dr["Ship Via"].ToString(),
                                ShipTo                  = dr["Ship to"].ToString(),
                                Lease                   = dr["Lease/OCSG"].ToString(),
                                AFE                     = dr["AFE#"].ToString(),
                                Area                    = dr["Area/Block"].ToString(),
                                RigNum                  = dr["Rig#"].ToString(),
                                WellNum                 = dr["Well#"].ToString(),
                                State                   = dr["State"].ToString(),
                                Parish                  = dr["Parish"].ToString(),
                                JobType                 = dr["Job Type"].ToString(),
                                Contractor              = dr["Contractor"].ToString(),
                                Quantity                = Convert.ToInt32(dr["Quantity"]),
                                MinRentalDays           = dr["Minimum Rental Days"] == DBNull.Value ? 0 : Convert.ToInt32(dr["Minimum Rental Days"]),
                                NetAddDay               = dr["Additional Day"] == DBNull.Value ? 0 : Convert.ToDouble(dr["Additional Day"]),
                                NetMin                  = dr["Minimum"] == DBNull.Value ? 0 : Convert.ToDouble(dr["Minimum"]),
                                HasDisrepancy           = dr["HasDiscrepancy"] == DBNull.Value ? false : Convert.ToBoolean(dr["HasDiscrepancy"]),
                                QuotePriceBook          = Convert.ToInt32(dr["Quote Price Book"]),
                                AlternateCustomerNumber = dr["AlternateCustomerNumber"].ToString(),
                                AlternateJobType        = dr["AlternateJobType"].ToString(),
                                AddOn                   = dr["AddOn"] == DBNull.Value ? false : Convert.ToBoolean(dr["AddOn"])
                                                          //DiscountRate = (Math.Round(Convert.ToDecimal(dr["DiscountRate"]), 2) * 100).ToString() + "%",
                                                          //EstimatedDays = dr["EstimatedDays"] == DBNull.Value ? 0 : Convert.ToInt32(dr["EstimatedDays"]),
                                                          //EstimatedDaysRental = dr["EstimatedDaysRental"] == DBNull.Value ? 0 : Convert.ToDouble(dr["EstimatedDaysRental"]),
                                                          //CalculateEstimatedDays = Convert.ToBoolean(dr["CalculateEstimatedDays"]),
                                                          //CreateUserID = Convert.ToInt32(dr["CreateUserID"]),

                                                          //  HasDiscrepancyReport = dr["HasDiscrepancyReport"] == DBNull.Value ? false : Convert.ToBoolean(dr["HasDiscrepancyReport"])
                            };

                            DTs.Add(DT);
                        }
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.InnerException);
                }

                return(DTs);
            }
    }