public Disponibilidad(int horaDesde, int horaHasta, DiasEnum dia) { HoraDesde = horaDesde; HoraHasta = horaHasta; Dia = dia; Descripcion = dia.ToString() + " de " + horaDesde + " a " + horaHasta; }
public IActionResult AgregarDisponibilidad(int desde, int hasta, DiasEnum dia, string rol) { Disponibilidad dis = new Disponibilidad(desde, hasta, dia); _context.Disponibilidades.Add(dis); _context.SaveChanges(); ViewData["Disponibilidades"] = new MultiSelectList(_context.Disponibilidades, "Id", "Descripcion"); return(RedirectToAction("Create", "Profesionales")); }
public static string FechaToString(DateTime fecha) { string retorno; DiasEnum nombreDia = ObtenerDiaPorDayOfWeek(fecha.DayOfWeek); string mes = getMesPorNumero(fecha.Month); int dia = fecha.Day; retorno = nombreDia.ToString() + " " + dia + " de " + mes; return(retorno); }
public async Task <IActionResult> AgregarDisponibilidad(int desde, int hasta, DiasEnum dia) { if (desde > hasta) { TempData["Error"] = "La hora desde debe ser mayor a la de finalizacion"; return(RedirectToAction("Create", "Profesionales")); } Disponibilidad dis = new Disponibilidad(desde, hasta, dia); _context.Disponibilidades.Add(dis); _context.SaveChanges(); ViewData["Disponibilidades"] = new MultiSelectList(_context.Disponibilidades, "Id", "Descripcion"); if (User.IsInRole(nameof(RolesEnum.ADMINISTRADOR))) { return(RedirectToAction("Create", "Profesionales")); } else { int profesionalId = int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value); var profesional = await _context.Profesionales .Include(p => p.Disponibilidades) .Where(p => p.Id == profesionalId) .SingleOrDefaultAsync(); if (profesional == null) { return(NotFound()); } ViewData["DiasSemana"] = new SelectList(Enum.GetValues(typeof(DiasEnum)).Cast <DiasEnum>()); ViewData["Disponibilidades"] = new MultiSelectList(_context.Disponibilidades.Where(d => d.IdProfesional == 0 || d.IdProfesional == profesionalId), "Id", "Descripcion", profesional.Disponibilidades.Select(d => d.Id).ToList()); return(RedirectToAction("Disponibilidades", "Profesionales")); } }