// GET: ConsultaTerapia/Edit/5 public async Task <IActionResult> Edit(int?id) { if (id == null) { return(NotFound()); } var consultaTerapia = await _context.ConsultaTerapias .Include(c => c.Diagnostico) .Include(c => c.Medico) .Include(c => c.Terapia) .Include(c => c.Paciente) .FirstOrDefaultAsync(m => m.ConsultaTerapiaId == id); if (consultaTerapia == null) { return(NotFound()); } if (consultaTerapia.CantidadTerapiaSemana >= 2 && !consultaTerapia.SeccionesPorSemana) { consultaTerapia.CantidadTerapiaSemana = 1; } var consultaTerapiaView = new ConsultaTerapiaViewModel { ConsultaTerapiaId = consultaTerapia.ConsultaTerapiaId, PacienteId = consultaTerapia.PacienteId, Paciente = consultaTerapia.Paciente, FechaActual = DateTime.Now, MedicoId = consultaTerapia.MedicoId, Medico = consultaTerapia.Medico, DiagnosticoId = consultaTerapia.DiagnosticoId, Diagnostico = consultaTerapia.Diagnostico, Terapia = consultaTerapia.Terapia, TerapiaId = consultaTerapia.TerapiaId, Cedula = consultaTerapia.Paciente.Cedula, PacienteNombre = consultaTerapia.Paciente.PacienteNombre, DadoDeAlta = consultaTerapia.DadoDeAlta, CantidadTerapiaSemana = consultaTerapia.CantidadTerapiaSemana + 1, TotalSecciones = consultaTerapia.TotalSecciones + 1 }; var listaDiagnosticos = await this._context.Diagnosticos.AsNoTracking() .Include(x => x.Especialidad) .Where(x => x.DiagnosticoId == consultaTerapiaView.DiagnosticoId && x.EspecialidadId == consultaTerapiaView.Diagnostico.EspecialidadId) .ToListAsync(); var listaMedicos = await ListaMedicos(consultaTerapiaView.DiagnosticoId); var listaTerapias = await ListaTerapias(consultaTerapia.DiagnosticoId); ViewData["DiagnosticoId"] = new SelectList(listaDiagnosticos, "DiagnosticoId", "DiagnosticoNombre", consultaTerapia.DiagnosticoId); ViewData["MedicoId"] = new SelectList(listaMedicos, "MedicoId", "Nombre", consultaTerapia.MedicoId); ViewData["TerapiaId"] = new SelectList(listaTerapias, "TerapiaId", "TerapiaNombre", consultaTerapia.TerapiaId); return(View(consultaTerapiaView)); }
public async Task <IActionResult> Create([Bind("ConsultaTerapiaId,Cedula,PacienteNombre,DiagnosticoId,MedicoId,TerapiaId,DadoDeAlta,CantidadTerapiaSemana,TotalSecciones")] ConsultaTerapiaViewModel consultaTerapia) { if (ModelState.IsValid) { var paciente = await _context.Pacientes .FirstOrDefaultAsync(m => m.Cedula == consultaTerapia.Cedula); if (!PacienteExists(consultaTerapia.Cedula)) { paciente = new Paciente { Cedula = consultaTerapia.Cedula, PacienteNombre = consultaTerapia.PacienteNombre }; _context.Add(paciente); await _context.SaveChangesAsync(); } var objConsultaTerapia = new ConsultaTerapia { PacienteId = paciente.PacienteId, FechaActual = DateTime.Now, MedicoId = consultaTerapia.MedicoId, DiagnosticoId = consultaTerapia.DiagnosticoId, TerapiaId = consultaTerapia.TerapiaId, DadoDeAlta = consultaTerapia.DadoDeAlta, CantidadTerapiaSemana = consultaTerapia.CantidadTerapiaSemana, TotalSecciones = consultaTerapia.TotalSecciones + 1 }; _context.Add(objConsultaTerapia); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } var listaMedicos = await ListaMedicos(consultaTerapia.DiagnosticoId); var listaTerapias = await ListaTerapias(consultaTerapia.DiagnosticoId); ViewData["DiagnosticoId"] = new SelectList(_context.Diagnosticos, "DiagnosticoId", "DiagnosticoNombre", consultaTerapia.DiagnosticoId); ViewData["MedicoId"] = new SelectList(listaMedicos, "MedicoId", "Nombre", consultaTerapia.MedicoId); ViewData["TerapiaId"] = new SelectList(listaTerapias, "TerapiaId", "TerapiaNombre", consultaTerapia.TerapiaId); return(View(consultaTerapia)); }
public async Task <IActionResult> Edit(int id, [Bind("ConsultaTerapiaId,PacienteId,Cedula,PacienteNombre,DiagnosticoId,MedicoId,TerapiaId,DadoDeAlta,CantidadTerapiaSemana,TotalSecciones")] ConsultaTerapiaViewModel consultaTerapia) { if (id != consultaTerapia.ConsultaTerapiaId) { return(NotFound()); } if (ModelState.IsValid) { try { consultaTerapia.FechaActual = DateTime.Now; _context.Update(consultaTerapia); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ConsultaTerapiaExists(consultaTerapia.ConsultaTerapiaId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } var listaDiagnosticos = await this._context.Diagnosticos.AsNoTracking() .Include(x => x.Especialidad) .Where(x => x.DiagnosticoId == consultaTerapia.DiagnosticoId && x.EspecialidadId == consultaTerapia.Diagnostico.EspecialidadId) .ToListAsync(); var listaMedicos = await ListaMedicos(consultaTerapia.DiagnosticoId); var listaTerapias = await ListaTerapias(consultaTerapia.DiagnosticoId); ViewData["DiagnosticoId"] = new SelectList(listaDiagnosticos, "DiagnosticoId", "DiagnosticoNombre", consultaTerapia.DiagnosticoId); ViewData["MedicoId"] = new SelectList(listaMedicos, "MedicoId", "Nombre", consultaTerapia.MedicoId); ViewData["TerapiaId"] = new SelectList(listaTerapias, "TerapiaId", "TerapiaNombre", consultaTerapia.TerapiaId); return(View(consultaTerapia)); }