public GroupCalcInput GetCalcInputForIndex(RmsAdapter rmsAdapter, Dictionary <int, string> roomsNumber, Dictionary <int, string> mealsNumber) { var result = rmsAdapter.GetGroupCalculationResult(); GroupCalcInput gc = new GroupCalcInput(); gc.Start = DateTime.Today; gc.End = DateTime.Today; gc.Inputs = new List <GroupCalcDayInput> { GetNewInput(DateTime.Today, roomsNumber, mealsNumber, result) }; return(gc); }
public GroupCalcInput GetInputPartialView(GroupCalcInput viewModel, RmsAdapter rmsAdapter) { var roomInfoResult = rmsAdapter.GetGroupCalculationResult(); if (viewModel.Inputs != null && viewModel.Inputs.Any() && viewModel.Inputs[0].RoomTypes.Any()) { var roomTotal = viewModel.Inputs[0].RoomTypes.ToDictionary(c => Convert.ToInt32(c.Key), c => c.Value.Name); var mealTotal = new Dictionary <int, string>(); if (viewModel.Inputs[0].MealTypes != null && viewModel.Inputs[0].MealTypes.Any()) { mealTotal = viewModel.Inputs[0].MealTypes.ToDictionary(c => Convert.ToInt32(c.Key), c => c.Value.Name); } for (DateTime i = viewModel.Start; i <= viewModel.End; i = i.AddDays(1)) { if (!viewModel.Inputs.Any(c => c.Date == i)) { viewModel.Inputs.Add(GetNewInput(i, roomTotal, mealTotal, roomInfoResult.Where(c => c.Date == i))); } } viewModel.Inputs.RemoveAll(c => c.Date < viewModel.Start || viewModel.End < c.Date); } viewModel.Inputs = viewModel.Inputs.OrderBy(c => c.Date).ToList(); return(viewModel); }