public List <BEReportPodructCategoryByProgramationView> GetProductByCategoryByProgramation(int productCategoryId, int year, int month, int headquartersId, int dietId, int week) { _database = new MySQLDatabase(connectionString); List <BEReportPodructCategoryByProgramationView> listProgramation = new DA_Programation(_database).GetProductByCategoryByProgramation(productCategoryId, year, month, headquartersId, dietId, week); return(listProgramation); }
public List <BEReportCategoryByProgramationView> GetCategoryByProgramation(int year, int month, int headquartersId, int dietId) { _database = new MySQLDatabase(connectionString); List <BEReportCategoryByProgramationView> listProgramation = new DA_Programation(_database).GetCategoryByProgramation(year, month, headquartersId, dietId); return(listProgramation); }
public BE_Programation CreateProgramation(BE_Programation bE_Programation) { _database = new MySQLDatabase(connectionString); var newProgramation = new DA_Programation(_database).CreateProgramation(bE_Programation); if (newProgramation.detail != null) { foreach (var detail in newProgramation.detail) { detail.programationId = newProgramation.programationId; CreateProgramationDetail(detail); } } return(newProgramation); }
public BE_Programation UpdateProgramation(BE_Programation bE_Programation) { _database = new MySQLDatabase(connectionString); var updatedProgramation = new DA_Programation(_database).UpdateProgramation(bE_Programation); if (updatedProgramation.detail != null) { DeleteProgramationDetailByProgramationId(updatedProgramation.programationId); foreach (var detail in updatedProgramation.detail) { detail.programationId = updatedProgramation.programationId; CreateProgramationDetail(detail); } } return(updatedProgramation); }
public List <RequestResumenByWeekOfMonth> GetRequestResumen(int year, int month, int headquartersId, int dietId) { _database = new MySQLDatabase(connectionString); var listProgramationDetail = new DA_Programation(_database).GetProgramationDetailResumen(year, month, headquartersId, dietId); List <RequestResumenByWeekOfMonth> ListRequestResumenByWeek = new List <RequestResumenByWeekOfMonth>(); List <RequestResumen> ListRequestResumen = new List <RequestResumen>(); List <RequestByWeekOfMonth> ListRequestByWeekOfMonth = new List <RequestByWeekOfMonth>(); util _util = new util(); foreach (var item in listProgramationDetail) { var validate = ListRequestByWeekOfMonth.Find(x => x.WeekOfMonth.WeekOfMonth == item.weekOfMonth); if (validate == null) { RequestByWeekOfMonth rwm = new RequestByWeekOfMonth(); rwm.WeekOfMonth = _util.GetWeekOfMonth(item.date); rwm.listRequest.Add(item); ListRequestByWeekOfMonth.Add(rwm); } else { ListRequestByWeekOfMonth.Find(x => x.WeekOfMonth.WeekOfMonth == item.weekOfMonth).listRequest.Add(item); } } List <RequestResumen> lrr = null; foreach (var listByWeek in ListRequestByWeekOfMonth) { lrr = new List <RequestResumen>(); RequestResumen rr = null; decimal totalToWeek = 0; foreach (var item in listByWeek.listRequest) { rr = new RequestResumen(); var validProductCategoryId = lrr.Find(x => x.productCategoryId == item.productCategoryId); if (validProductCategoryId == null) { rr.headquartersName = item.headquartersName; rr.dietName = item.dietName; rr.productCategoryId = item.productCategoryId; rr.productCategoryName = item.productCategoryName; rr.amount = item.productCost; rr.dateFormat = item.dateFormat; totalToWeek += item.productCost; lrr.Add(rr); } else { lrr.Find(x => x.productCategoryId == item.productCategoryId).amount += item.productCost; totalToWeek += item.productCost; } } foreach (var p in lrr) { p.percentage = (totalToWeek == 0) ? 0 : Math.Round((p.amount / totalToWeek) * 100, 2); } RequestResumenByWeekOfMonth rrwm = new RequestResumenByWeekOfMonth(); rrwm.WeekOfMonth = listByWeek.WeekOfMonth; rrwm.listRequest = lrr; ListRequestResumenByWeek.Add(rrwm); } List <RequestResumenByWeekOfMonth> orderList = ListRequestResumenByWeek.OrderBy(x => x.WeekOfMonth.WeekOfMonth).ToList(); return(orderList); }
public List <ProgramationResumenByWeekOfMonth> GetProgramationResumen(int year, int month, int headquartersId, int dietId) { _database = new MySQLDatabase(connectionString); var listProgramation = new DA_Programation(_database).GetProgramationResumen(year, month, headquartersId, dietId); List <ProgramationByWeekOfMonth> ListProgramationByWeek = new List <ProgramationByWeekOfMonth>(); List <ProgramationResumenByWeekOfMonth> ListProgramationResumenByWeek = new List <ProgramationResumenByWeekOfMonth>(); util _util = new util(); foreach (var item in listProgramation) { var validate = ListProgramationByWeek.Find(x => x.WeekOfMonth.WeekOfMonth == item.weekOfMonth); if (validate == null) { ProgramationByWeekOfMonth pwm = new ProgramationByWeekOfMonth(); pwm.WeekOfMonth = _util.GetWeekOfMonth(item.date); pwm.listProgramation.Add(item); ListProgramationByWeek.Add(pwm); } else { ListProgramationByWeek.Find(x => x.WeekOfMonth.WeekOfMonth == item.weekOfMonth).listProgramation.Add(item); } } List <ProgramationResumen> lpr = null; foreach (var listByWeek in ListProgramationByWeek) { lpr = new List <ProgramationResumen>(); ProgramationResumen pr = null; foreach (var item in listByWeek.listProgramation) { pr = new ProgramationResumen(); var validFeedingTimeId = lpr.Find(x => x.feedingTimeId == item.feedingTimeId); if (validFeedingTimeId == null) { pr.feedingTimeId = item.feedingTimeId; pr.feedingTimeName = item.feedingTimeName; pr.monday.date = listByWeek.WeekOfMonth.MondayDate; pr.monday.dateFormat = listByWeek.WeekOfMonth.MondayDateFormat; pr.tuesday.date = listByWeek.WeekOfMonth.TuesdayDate; pr.tuesday.dateFormat = listByWeek.WeekOfMonth.TuesdayDateFormat; pr.wednesday.date = listByWeek.WeekOfMonth.WednesdayDate; pr.wednesday.dateFormat = listByWeek.WeekOfMonth.WednesdayDateFormat; pr.thursday.date = listByWeek.WeekOfMonth.ThursdayDate; pr.thursday.dateFormat = listByWeek.WeekOfMonth.ThursdayDateFormat; pr.friday.date = listByWeek.WeekOfMonth.FridayDate; pr.friday.dateFormat = listByWeek.WeekOfMonth.FridayDateFormat; pr.saturday.date = listByWeek.WeekOfMonth.SaturdayDate; pr.saturday.dateFormat = listByWeek.WeekOfMonth.SaturdayDateFormat; pr.sunday.date = listByWeek.WeekOfMonth.SundayDate; pr.sunday.dateFormat = listByWeek.WeekOfMonth.SundayDateFormat; switch (item.dayOfWeek) { case DayOfWeek.Monday: pr.monday.programation.Add(item); break; case DayOfWeek.Tuesday: pr.tuesday.programation.Add(item); break; case DayOfWeek.Wednesday: pr.wednesday.programation.Add(item); break; case DayOfWeek.Thursday: pr.thursday.programation.Add(item); break; case DayOfWeek.Friday: pr.friday.programation.Add(item); break; case DayOfWeek.Saturday: pr.saturday.programation.Add(item); break; case DayOfWeek.Sunday: pr.sunday.programation.Add(item); break; } lpr.Add(pr); } else { switch (item.dayOfWeek) { case DayOfWeek.Monday: lpr.Find(x => x.feedingTimeId == item.feedingTimeId).monday.programation.Add(item); break; case DayOfWeek.Tuesday: lpr.Find(x => x.feedingTimeId == item.feedingTimeId).tuesday.programation.Add(item); break; case DayOfWeek.Wednesday: lpr.Find(x => x.feedingTimeId == item.feedingTimeId).wednesday.programation.Add(item); break; case DayOfWeek.Thursday: lpr.Find(x => x.feedingTimeId == item.feedingTimeId).thursday.programation.Add(item); break; case DayOfWeek.Friday: lpr.Find(x => x.feedingTimeId == item.feedingTimeId).friday.programation.Add(item); break; case DayOfWeek.Saturday: lpr.Find(x => x.feedingTimeId == item.feedingTimeId).saturday.programation.Add(item); break; case DayOfWeek.Sunday: lpr.Find(x => x.feedingTimeId == item.feedingTimeId).sunday.programation.Add(item); break; } } } ProgramationResumenByWeekOfMonth prwm = new ProgramationResumenByWeekOfMonth(); prwm.WeekOfMonth = listByWeek.WeekOfMonth; prwm.listProgramation = lpr; ListProgramationResumenByWeek.Add(prwm); } List <ProgramationResumenByWeekOfMonth> orderList = ListProgramationResumenByWeek.OrderBy(x => x.WeekOfMonth.WeekOfMonth).ToList(); return(orderList); }