public ActionResult VerAgendaProfissional(ViewModelAgendaProfissional viewModel) { return(RedirectToAction("Create", new { IdProf = viewModel.IdProf })); }
public ActionResult VerAgendaProfissional(int?profId1) { if (User.IsInRole("Profissional")) { profId1 = db.ProfissionalEntities.ToList().Find(a => a.Email == User.Identity.Name).Id; } var viewModel = new ViewModelAgendaProfissional(); if (profId1 == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var prof = db.ProfissionalEntities.ToList().Find(a => a.Id == profId1); var servicos = new List <int>(); foreach (var item in prof.Servicos) { servicos.Add(item.Id); } var agenda = new List <Agenda>(); foreach (var item in servicos) { agenda.AddRange(db.AgendaEntities.Where(a => a.Servico.Id == item)); } viewModel.NomeProf = prof.Name; viewModel.agenda = agenda; viewModel.IdProf = (int)profId1; viewModel.calendario = new List <ViewModeldatas>(); List <string> aux = new List <string>(); foreach (var item in viewModel.agenda) { if (item.Data.Month < 10) { aux.Add(item.Data.Year + "-0" + item.Data.Month + "-" + item.Data.Day); } else { aux.Add(item.Data.Year + "-" + item.Data.Month + "-" + item.Data.Day); } } foreach (var item in viewModel.agenda.Select(r => r.Data.Date).Distinct().ToList()) { int auxiliar = 0; string mes = ""; foreach (var item2 in aux) { if (item.Month < 10) { mes = "0" + item.Month; } else { mes = item.Month.ToString(); } if (item2 == item.Year + "-" + mes + "-" + item.Day) { if (auxiliar == 0) { if (item.Month < 10) { viewModel.calendario.Add(new ViewModeldatas() { data = item.Year + "-0" + item.Month + "-" + item.Day, quantidade = 1 }); } else { viewModel.calendario.Add(new ViewModeldatas() { data = item.Year + "-" + item.Month + "-" + item.Day, quantidade = 1 }); } } else if (auxiliar > 0) { viewModel.calendario.Where(a => a.data == item2).First().quantidade++; } viewModel.calendario = viewModel.calendario.Distinct().ToList(); auxiliar++; } } } return(View(viewModel)); }