Esempio n. 1
0
        private void btnEditRates_Click(object sender, EventArgs e)
        {
            if (this.grdSubbies.Items.Count > 0)
            {
                Button editRates = (Button)sender;
                if (editRates.Text == "Edit Rates")
                {
                    foreach (GridItem item in grdSubbies.MasterTableView.Items)
                    {
                        if (item is GridEditableItem)
                        {
                            GridEditableItem editableItem = item as GridDataItem;
                            editableItem.Edit = true;
                        }
                    }
                    this.btnEditRates.Text       = "Update Rates";
                    this.btnEditRatesBottom.Text = "Update Rates";
                }
                else
                {
                    List <Entities.SubContractorDataItem> subbyList = this.GetDataSource();

                    foreach (GridEditableItem editedItem in grdSubbies.EditItems)
                    {
                        // UpdateRate if it has changed

                        HtmlInputText txtRate          = editedItem.FindControl("txtSubContractRate") as HtmlInputText;
                        int           jobSubContractID = int.Parse(editedItem.GetDataKeyValue("JobSubContractID").ToString());

                        // get the data item so we can compare the rate before it was changed
                        Entities.SubContractorDataItem subbyDataItem =
                            subbyList.Find(delegate(Entities.SubContractorDataItem item)
                        {
                            return(item.JobSubContractID == jobSubContractID);
                        });

                        CultureInfo culture = new CultureInfo(subbyDataItem.LCID);

                        decimal rate = 0;
                        if (Decimal.TryParse(txtRate.Value, System.Globalization.NumberStyles.Currency, culture, out rate))
                        {
                            if (rate != subbyDataItem.Rate)
                            {
                                Facade.IJobSubContractor facSub = new Facade.Job();

                                // update the jobSubcontract rate in the database and in viewstate
                                facSub.UpdateRate(jobSubContractID, rate, this.User.Identity.Name);
                            }
                        }

                        editedItem.Edit = false;
                    }
                    this.btnEditRates.Text       = "Edit Rates";
                    this.btnEditRatesBottom.Text = "Edit Rates";
                }

                this.grdSubbies.DataSource = this.GetDataSource();
                this.grdSubbies.DataBind();
            }
        }
Esempio n. 2
0
        private void grdSubbies_ItemCreated(object sender, GridItemEventArgs e)
        {
            if (e.Item.IsInEditMode)
            {
                if (e.Item.DataItem != null)
                {
                    Entities.SubContractorDataItem subbyDataItem = (Entities.SubContractorDataItem)e.Item.DataItem;
                    GridEditableItem         item    = e.Item as GridEditableItem;
                    GridTemplateColumnEditor editor  = (GridTemplateColumnEditor)item.EditManager.GetColumnEditor("Rate");
                    HtmlInputText            txtRate = (HtmlInputText)editor.ContainerControl.FindControl("txtSubContractRate");

                    CultureInfo culture = new CultureInfo(subbyDataItem.LCID);
                    txtRate.Value = subbyDataItem.ForeignRate.ToString("C", culture);
                }
            }
        }
        private void btnRefresh_Click(object sender, EventArgs e)
        {
            grdSubbies.Rebind();

            #region Organisation Totals

            foreach (GridDataItem item in grdSubbies.MasterTableView.Items)
            {
                Entities.SubContractorDataItem dataItem = item.DataItem as Entities.SubContractorDataItem;
                if (AllOrganisationTotals.Exists(aot => aot.OrganisationID == dataItem.SubContractorID && aot.LCID == dataItem.LCID))
                {
                    OrganisationTotals existingOrganisation = AllOrganisationTotals.Find(aot => aot.OrganisationID == dataItem.SubContractorID && aot.LCID == dataItem.LCID);
                    AllOrganisationTotals.Remove(existingOrganisation);
                    existingOrganisation.OrganisationTotal += dataItem.ForeignRate;
                    AllOrganisationTotals.Add(existingOrganisation);
                }
                else
                {
                    OrganisationTotals newOrganisation = new OrganisationTotals(dataItem.SubContractorID, dataItem.LCID, dataItem.SubContractorName, dataItem.ForeignRate);
                    AllOrganisationTotals.Add(newOrganisation);
                }
            }
            #endregion
        }
Esempio n. 4
0
        protected void grdSubbies_ItemDataBound(object sender, GridItemEventArgs e)
        {
            if (e.Item is GridDataItem)
            {
                Entities.SubContractorDataItem dataItem = e.Item.DataItem as Entities.SubContractorDataItem;
                e.Item.Style["background-color"] = Orchestrator.WebUI.Utilities.GetJobStateColourForHTML((eJobState)dataItem.JobStateID);

                #region From/To

                HtmlGenericControl spnFrom = (HtmlGenericControl)e.Item.FindControl("spnFrom");
                HtmlGenericControl spnTo   = (HtmlGenericControl)e.Item.FindControl("spnTo");

                spnFrom.InnerHtml = dataItem.Source.Replace("\r\n", "</br>");
                spnTo.InnerHtml   = dataItem.Destination.Replace("\r\n", "</br>");

                #endregion

                #region Rate Link
                Label lblSubContractRate = e.Item.FindControl("lblSubContractRate") as Label;

                if (lblSubContractRate != null)
                {
                    CultureInfo culture = new CultureInfo(dataItem.LCID);
                    lblSubContractRate.Text = dataItem.ForeignRate.ToString("C", culture);
                }
                #endregion

                #region Run/Order ID

                var plcRunOrOrderID = (PlaceHolder)e.Item.FindControl("plcRunOrOrderID");
                if (plcRunOrOrderID != null && dataItem.References.Any())
                {
                    char[] characters = { 'j', 'o', 'J', 'O' };

                    // Due to the way the data items are constructed, the order or job id will be the final item in the References list
                    var id = dataItem.References.Last();

                    string href = string.Format(
                        "javascript:{0}({1});",
                        dataItem.ReportDataItemType == Entities.eSubContractorDataItem.Job ? "viewJobDetails" : "viewOrderProfile",
                        id.TrimStart(characters));

                    plcRunOrOrderID.Controls.Add(new HtmlAnchor {
                        HRef = href, InnerText = id
                    });
                }

                #endregion

                #region Run ID

                var plcRunID = (PlaceHolder)e.Item.FindControl("plcRunID");
                if (plcRunID != null && dataItem.JobId > 0)
                {
                    string href = string.Format(
                        "javascript:viewJobDetails({0});",
                        dataItem.JobId);

                    plcRunID.Controls.Add(new HtmlAnchor {
                        HRef = href, InnerText = dataItem.JobId.ToString()
                    });
                }

                #endregion
            }
        }
        void grdSubbies_ItemDataBound(object sender, GridItemEventArgs e)
        {
            if (e.Item is GridDataItem)
            {
                char[] characters = { 'j', 'o', 'J', 'O' };
                Entities.SubContractorDataItem dataItem = e.Item.DataItem as Entities.SubContractorDataItem;
                e.Item.Style["background-color"] = Orchestrator.WebUI.Utilities.GetJobStateColourForHTML((eJobState)dataItem.JobStateID);

                #region From/To

                HtmlGenericControl spnFrom = (HtmlGenericControl)e.Item.FindControl("spnFrom");
                HtmlGenericControl spnTo   = (HtmlGenericControl)e.Item.FindControl("spnTo");

                spnFrom.InnerHtml = dataItem.Source.Replace("\r\n", "</br>");
                spnTo.InnerHtml   = dataItem.Destination.Replace("\r\n", "</br>");

                #endregion

                #region Rate Link

                Label lblSubContractRate = e.Item.FindControl("lblSubContractRate") as Label;
                Label lblOrderRate       = e.Item.FindControl("lblOrderRate") as Label;

                if (lblSubContractRate != null)
                {
                    lblSubContractRate.Text = dataItem.ForeignRate.ToString("C", new CultureInfo(dataItem.LCID));
                }
                if (lblOrderRate != null)
                {
                    lblOrderRate.Text = dataItem.OrderRate.ToString("C", new CultureInfo(dataItem.LCID));
                }
                ;

                #endregion

                #region Addtional References

                HtmlAnchor lnkJobRef = e.Item.FindControl("lnkJobRef") as HtmlAnchor;
                if (lnkJobRef != null)
                {
                    Entities.eSubContractorDataItem reportDataItemType = dataItem.ReportDataItemType;

                    switch (reportDataItemType)
                    {
                    case Entities.eSubContractorDataItem.Job:
                        foreach (string s in dataItem.References)
                        {
                            lnkJobRef.HRef      = string.Format("javascript:viewJobDetails({0});", s.TrimStart(characters));
                            lnkJobRef.InnerText = s;
                        }
                        break;

                    case Entities.eSubContractorDataItem.Order:
                        foreach (string s in dataItem.References)
                        {
                            lnkJobRef.HRef      = string.Format("javascript:viewOrderProfile({0});", s.TrimStart(characters));
                            lnkJobRef.InnerText = s;
                        }
                        break;

                    default:
                        break;
                    }
                }

                #endregion

                #region Run Id field

                HtmlAnchor lnkRunId = e.Item.FindControl("lnkRunId") as HtmlAnchor;
                if (lnkRunId != null)
                {
                    if (dataItem.JobId > 0)
                    {
                        lnkRunId.HRef      = string.Format("javascript:viewJobDetails({0});", dataItem.JobId);
                        lnkRunId.InnerText = dataItem.JobId.ToString();
                    }
                }

                #endregion
            }
        }