//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++; } } } }
private void AddNextYear() { using (var scope = new TransactionScope()) { var currentYear = DateTime.Now.Year; var currentWeeks = new WeeklyProductionCapacityBO(ObjContext).GetAllObject(); if (currentWeeks.Any()) { if (currentWeeks.Count > 1) { var lastWeek = currentWeeks.OrderBy(w => w.WeekendDate).Last().WeekendDate; currentYear = lastWeek.Year == currentWeeks[currentWeeks.Count() - 2].WeekendDate.Year ? lastWeek.AddYears(1).Year : lastWeek.Year; } else { currentYear = currentWeeks.Last().WeekendDate.AddYears(1).Year; } } var currentYearStartDate = new DateTime(currentYear, 1, 1); while (currentYearStartDate.DayOfWeek != DayOfWeek.Tuesday) { currentYearStartDate = currentYearStartDate.AddDays(1); } var weekNumber = 1; while (currentYearStartDate.Year == currentYear) { var weeklyProductionCapacity = new WeeklyProductionCapacityBO(ObjContext) { WeekNo = weekNumber, WeekendDate = currentYearStartDate, SalesTarget = 0, HoursPerDay = (decimal)10.0, NoOfHolidays = 6, OrderCutOffDate = currentYearStartDate.AddDays(-18), EstimatedDateOfDespatch = currentYearStartDate, EstimatedDateOfArrival = currentYearStartDate.AddDays(3) }; weeklyProductionCapacity.Add(); var polodetails = new WeeklyProductionCapacityDetailsBO(ObjContext) { ItemType = 1, TotalCapacity = 5850, FivePcsCapacity = 100, SampleCapacity = 200, Workers = 65, Efficiency = (decimal)0.45 }; var outerwaredetails = new WeeklyProductionCapacityDetailsBO(ObjContext) { ItemType = 2, TotalCapacity = 450, FivePcsCapacity = 10, SampleCapacity = 20, Workers = 15, Efficiency = (decimal)0.25 }; weeklyProductionCapacity.WeeklyProductionCapacityDetailssWhereThisIsWeeklyProductionCapacity.Add(polodetails); weeklyProductionCapacity.WeeklyProductionCapacityDetailssWhereThisIsWeeklyProductionCapacity.Add(outerwaredetails); currentYearStartDate = currentYearStartDate.AddDays(7); weekNumber++; } ObjContext.SaveChanges(); scope.Complete(); } PopulateDataGrid(); //try //{ // using (var ts = new TransactionScope()) // { // var currentYear = DateTime.Now.Year.ToString(); // bool isLeap = false; // List<WeeklyProductionCapacityBO> lstWeeklyProdCap = (new WeeklyProductionCapacityBO()).SearchObjects(); // if (lstWeeklyProdCap.Count > 0) // { // currentYear = lstWeeklyProdCap.Last().WeekendDate.AddYears(1).Year.ToString(); // } // DateTime dFirst = DateTime.Parse("01 / 01 /" + currentYear); // DateTime dLast = DateTime.Parse("31 / 12 /" + currentYear); // if ((int.Parse(currentYear) % 4 == 0) && (int.Parse(currentYear) % 100 != 0) || (int.Parse(currentYear) % 400 == 0)) // { // isLeap = true; // } // int weekCount = (isLeap == true) ? this.GetWeeksInYear(int.Parse(currentYear), dLast) : int.Parse((dLast.Subtract(dFirst).Days / 7).ToString()); // //int id = this.GetWeeksInYear(int.Parse(currentYear), dLast); // DateTime firstTuesday = dFirst; // while (firstTuesday.DayOfWeek != DayOfWeek.Tuesday) // { // firstTuesday = firstTuesday.AddDays(1); // } // for (int i = 1; i <= weekCount; i++) // { // WeeklyProductionCapacityBO objProductionCapacity = new WeeklyProductionCapacityBO(this.ObjContext); // objProductionCapacity.WeekNo = i; // objProductionCapacity.WeekendDate = firstTuesday; // objProductionCapacity.Capacity = 0; // objProductionCapacity.Add(); // firstTuesday = firstTuesday.AddDays(7); // } // this.ObjContext.SaveChanges(); // ts.Complete(); // } //} //catch (Exception) //{ // //ignored //} }
private void ProcessForm(int queryId, bool isDelete) { try { using (var ts = new TransactionScope()) { var objProductionCapacity = new WeeklyProductionCapacityBO(ObjContext); if (queryId > 0) { objProductionCapacity.ID = queryId; objProductionCapacity.GetObject(); } if (isDelete) { objProductionCapacity.Delete(); } else { objProductionCapacity.NoOfHolidays = int.Parse(txtWorkingDays.Text); objProductionCapacity.HoursPerDay = decimal.Parse(txtWorkingHours.Text); objProductionCapacity.OrderCutOffDate = DateTime.Parse(txtOrderCutOffDate.Text); objProductionCapacity.EstimatedDateOfDespatch = DateTime.Parse(txtETD.Text); objProductionCapacity.EstimatedDateOfArrival = DateTime.Parse(txtETA.Text); objProductionCapacity.Notes = txtNotes.Text; objProductionCapacity.SalesTarget = decimal.Parse(txtSalesTaget.Text); foreach (RepeaterItem rptItem in rptItemTypes.Items) { var hdnProdCapDetailID = (HiddenField)rptItem.FindControl("hdnProdCapDetailID"); var hdnItemTypeID = (HiddenField)rptItem.FindControl("hdnItemTypeID"); var txtTotalCapacity = (TextBox)rptItem.FindControl("txtTotalCapacity"); var txt5PcsCapacity = (TextBox)rptItem.FindControl("txt5PcsCapacity"); var txtSampleCapacity = (TextBox)rptItem.FindControl("txtSampleCapacity"); var txtWorkers = (TextBox)rptItem.FindControl("txtWorkers"); var txtEfficiency = (TextBox)rptItem.FindControl("txtEfficiency"); var objProdCapDetailBO = new WeeklyProductionCapacityDetailsBO(ObjContext); if (int.Parse(hdnProdCapDetailID.Value) > 0) { objProdCapDetailBO.ID = int.Parse(hdnProdCapDetailID.Value); objProdCapDetailBO.GetObject(); } else { objProdCapDetailBO.WeeklyProductionCapacity = queryId; objProdCapDetailBO.ItemType = int.Parse(hdnItemTypeID.Value); } objProdCapDetailBO.TotalCapacity = int.Parse(txtTotalCapacity.Text) * objProductionCapacity.NoOfHolidays; objProdCapDetailBO.FivePcsCapacity = int.Parse(txt5PcsCapacity.Text) * objProductionCapacity.NoOfHolidays; objProdCapDetailBO.SampleCapacity = int.Parse(txtSampleCapacity.Text) * objProductionCapacity.NoOfHolidays; objProdCapDetailBO.Workers = int.Parse(txtWorkers.Text); objProdCapDetailBO.Efficiency = decimal.Parse(txtEfficiency.Text); } if (queryId == 0) { objProductionCapacity.Add(); } } ObjContext.SaveChanges(); ts.Complete(); } } catch (Exception ex) { IndicoLogging.log.Error("Error occurred while Adding or Editing or Deleting the details in Production Capacity", ex); } }