//last modified by - rusith
        private void PopulateProductionCapacityDetails(int proCapID)
        {
            if (IsNotRefresh)
            {
                var objProCap = new WeeklyProductionCapacityBO();
                objProCap.ID = proCapID;
                objProCap.GetObject();

                lblWeekNo.Text          = objProCap.WeekNo + "-" + objProCap.WeekendDate.Year;
                lblFridayOfWeekPop.Text = objProCap.WeekendDate.ToString("dd MMMM yyyy");

                this.txtWorkingDays.Text = objProCap.NoOfHolidays.ToString();
                txtWorkingHours.Text     = objProCap.HoursPerDay.ToString();
                txtOrderCutOffDate.Text  = objProCap.OrderCutOffDate.HasValue ? objProCap.OrderCutOffDate.Value.ToString("dd MMMM yyyy") : string.Empty;
                txtETD.Text        = objProCap.EstimatedDateOfDespatch.HasValue ? objProCap.EstimatedDateOfDespatch.Value.ToString("dd MMMM yyyy") : string.Empty;
                txtETA.Text        = objProCap.EstimatedDateOfArrival.HasValue ? objProCap.EstimatedDateOfArrival.Value.ToString("dd MMMM yyyy") : string.Empty;
                txtNotes.Text      = objProCap.Notes;
                txtSalesTaget.Text = objProCap.SalesTarget.GetValueOrDefault().ToString();

                var objCapacity = new WeeklyProductionCapacityDetailsBO {
                    WeeklyProductionCapacity = proCapID
                };
                var lstCapDetails = objCapacity.SearchObjects();
                var lstTypes      = (new ItemTypeBO()).SearchObjects();

                var lstProductCapacityDetails = lstTypes.Select(objType => new KeyValuePair <ItemTypeBO, KeyValuePair <WeeklyProductionCapacityBO, WeeklyProductionCapacityDetailsBO> >(objType, new KeyValuePair <WeeklyProductionCapacityBO, WeeklyProductionCapacityDetailsBO>(objProCap, lstCapDetails.FirstOrDefault(m => m.ItemType == objType.ID)))).ToList();

                rptItemTypes.DataSource = lstProductCapacityDetails;
                rptItemTypes.DataBind();
                ViewState["IsPopulateModel"] = true;
            }
            else
            {
                ViewState["IsPopulateModel"] = false;
                ViewState["IsPageValid"]     = true;
            }
        }
        protected void RadGridProductionCapacities_ItemDataBound(object sender, GridItemEventArgs e)
        {
            if (e.Item is GridDataItem)
            {
                var item = e.Item as GridDataItem;

                if (item.ItemIndex > -1 && item.DataItem is WeeklyProductionCapacityBO)
                {
                    var objProductionCapacity = (WeeklyProductionCapacityBO)item.DataItem;

                    var lblWeekNumber = (Label)item.FindControl("lblWeekNumber");
                    lblWeekNumber.Text = objProductionCapacity.WeekNo + "-" + objProductionCapacity.WeekendDate.Year;
                    var day = objProductionCapacity.WeekendDate.DayOfYear;
                    if (DateTime.Now.Year == objProductionCapacity.WeekendDate.Year && (DateTime.Now.DayOfYear <= day && DateTime.Now.DayOfYear >= day - 6))
                    {
                        item.BackColor = Color.Orange;
                    }

                    var linkEdit = (HtmlAnchor)item.FindControl("linkEdit");
                    linkEdit.Attributes.Add("qid", objProductionCapacity.ID.ToString());

                    var litPoloProdCap    = (Literal)item.FindControl("litPoloProdCap");
                    var litPolo5PcsCap    = (Literal)item.FindControl("litPolo5PcsCap");
                    var litPoloSamplesCap = (Literal)item.FindControl("litPoloSamplesCap");
                    var litPoloWorkers    = (Literal)item.FindControl("litPoloWorkers");
                    var litPoloEfficiency = (Literal)item.FindControl("litPoloEfficiency");

                    var litOuterProdCap    = (Literal)item.FindControl("litOuterProdCap");
                    var litOuter5PcsCap    = (Literal)item.FindControl("litOuter5PcsCap");
                    var litOuterSamplesCap = (Literal)item.FindControl("litOuterSamplesCap");
                    var litOuterWorkers    = (Literal)item.FindControl("litOuterWorkers");
                    var litOuterEfficiency = (Literal)item.FindControl("litOuterEfficiency");

                    var objProdCapDetail = new WeeklyProductionCapacityDetailsBO {
                        WeeklyProductionCapacity = objProductionCapacity.ID
                    };
                    var lstDetails = objProdCapDetail.SearchObjects();

                    var objPolosDetail = lstDetails.FirstOrDefault(m => m.ItemType == 1);
                    var objOuterDetail = lstDetails.FirstOrDefault(m => m.ItemType == 2);

                    if (objPolosDetail != null)
                    {
                        litPoloProdCap.Text    = string.Format("{0:N0}", objPolosDetail.TotalCapacity);
                        litPolo5PcsCap.Text    = string.Format("{0:N0}", objPolosDetail.FivePcsCapacity);
                        litPoloSamplesCap.Text = string.Format("{0:N0}", objPolosDetail.SampleCapacity);
                        litPoloWorkers.Text    = string.Format("{0:N0}", objPolosDetail.Workers);
                        litPoloEfficiency.Text = string.Format("{0:N}", objPolosDetail.Efficiency);
                    }

                    if (objOuterDetail != null)
                    {
                        litOuterProdCap.Text    = string.Format("{0:N0}", objOuterDetail.TotalCapacity);
                        litOuter5PcsCap.Text    = string.Format("{0:N0}", objOuterDetail.FivePcsCapacity);
                        litOuterSamplesCap.Text = string.Format("{0:N0}", objOuterDetail.SampleCapacity);
                        litOuterWorkers.Text    = string.Format("{0:N0}", objOuterDetail.Workers);
                        litOuterEfficiency.Text = string.Format("{0:N}", objOuterDetail.Efficiency);
                    }

                    var i = 0;
                    foreach (TableCell cell in item.Cells)
                    {
                        if (i > 8 && i < 14)
                        {
                            cell.BackColor = Color.PowderBlue;
                        }
                        else if (i > 13 && i < 19)
                        {
                            cell.BackColor = Color.Moccasin;
                        }

                        i++;
                    }
                }
            }
        }