public IHttpActionResult PutConsentimientoInformado(ConsentimientoInformado consentimientoInformado) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.Entry(consentimientoInformado).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!ConsentimientoInformadoExists(consentimientoInformado.fecha, consentimientoInformado.hora, consentimientoInformado.tipoIdPaciente, consentimientoInformado.numeroIdPaciente, consentimientoInformado.codigoProcedimiento)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
// GET: ConsentimientoInformado/Create public IActionResult Create() { var i = (ClaimsIdentity)User.Identity; if (i.IsAuthenticated) { var permisos = i.Claims.Where(c => c.Type == "ConsentimientoInformado").Select(c => c.Value).SingleOrDefault().Split(";"); if (Convert.ToBoolean(permisos[1])) { ConsentimientoInformado consentimientoInformado = new ConsentimientoInformado(); //llenar combos de paciente y doctor select * from citaodontologica where HoraInicio >= '9:00' and HoraFin <= '10:30' //TimeSpan intInicial = new TimeSpan(fecha.Hour, fecha.Minute, 00); TimeSpan intInicial = new TimeSpan(19, 30, 00); TimeSpan intFinal = new TimeSpan(22, 30, 00); //ver estos condiciones. var c = _context.CitaOdontologica.Where(ci => ci.FechaInicio.Date == fecha.Date); c = c.Where(ci => ci.HoraInicio >= intInicial || ci.HoraFin <= intFinal); CitaOdontologica cita = c.FirstOrDefault(); //CitaOdontologica cita = _context.CitaOdontologica.Where(ci => ci.FechaInicio.Date == fecha.Date && ci.HoraInicio >= intInicial || ci.HoraFin <= intFinal).SingleOrDefault(); //-- fin ver las condiciones List <SelectListItem> Personal = null; List <SelectListItem> Paciente = null; if (cita == null) { Personal = new SelectList(_context.Personal.OrderBy(c => c.NombreCompleto).Where(c => c.Estado == true), "Codigo", "NombreCompleto").ToList(); Personal.Insert(0, vacio); Paciente = new SelectList(_context.Paciente.OrderBy(p => p.NombreCompleto).Where(p => p.Estado == true), "Codigo", "NombreCompleto").ToList(); Paciente.Insert(0, vacio); consentimientoInformado.CodigoCitaOdontologica = null; } else { Personal = new SelectList(_context.Personal.OrderBy(c => c.NombreCompleto).Where(c => c.Estado == true), "Codigo", "NombreCompleto", cita.CodigoPersonal).ToList(); Paciente = new SelectList(_context.Paciente.OrderBy(p => p.NombreCompleto).Where(p => p.Estado == true), "Codigo", "NombreCompleto", cita.CodigoPaciente).ToList(); consentimientoInformado.CodigoCitaOdontologica = cita.Codigo; } ViewData["CodigoPersonal"] = Personal; ViewData["CodigoPaciente"] = Paciente; var PlantillaCI = _context.PlantillaConsentimientoInformado.SingleOrDefault(); ViewData["Descripcion"] = PlantillaCI.Descripcion; return(View(consentimientoInformado)); } else { return(Redirect("../ConsentimientoInformado")); } } else { return(Redirect("../Identity/Account/Login")); } }
public IHttpActionResult GetConsentimientoInformado(DateTime fecha, TimeSpan hora, string tipoIdPaciente, int numeroIdPaciente, int codigoCUP) { ConsentimientoInformado consentimientoInformado = db.ConsentimientoInformado.Where(c => c.fecha == fecha & c.hora == hora && c.tipoIdPaciente == tipoIdPaciente && c.numeroIdPaciente == numeroIdPaciente && c.codigoProcedimiento == codigoCUP).FirstOrDefault(); if (consentimientoInformado == null) { return(NotFound()); } return(Ok(consentimientoInformado)); }
public IHttpActionResult PostConsentimientoInformado(ConsentimientoInformado consentimientoInformado) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.ConsentimientoInformado.Add(consentimientoInformado); try { db.SaveChanges(); } //catch (DbUpdateException) //{ // if (ConsentimientoInformadoExists(consentimientoInformado.fecha, consentimientoInformado.hora, consentimientoInformado.tipoIdPaciente, // consentimientoInformado.numeroIdPaciente, consentimientoInformado.codigoProcedimiento)) // { // return Conflict(); // } // else // { // throw; // } //} catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { System.Console.WriteLine("Property: {0} Error: {1}", validationError.PropertyName, validationError.ErrorMessage); } } } return(CreatedAtRoute("DefaultApi", new { id = consentimientoInformado.tipoIdPaciente }, consentimientoInformado)); }
public async Task <IActionResult> Edit(ConsentimientoInformado consentimientoInformado) { var i = (ClaimsIdentity)User.Identity; List <SelectListItem> Personal = new SelectList(_context.Personal.OrderBy(c => c.NombreCompleto).Where(c => c.Estado == true), "Codigo", "NombreCompleto", consentimientoInformado.CodigoPersonal).ToList(); List <SelectListItem> Paciente = new SelectList(_context.Paciente.OrderBy(p => p.NombreCompleto).Where(p => p.Estado == true), "Codigo", "NombreCompleto", consentimientoInformado.CodigoPaciente).ToList(); var PlantillaCI = _context.PlantillaConsentimientoInformado.SingleOrDefault(); ViewData["Descripcion"] = PlantillaCI.Descripcion; if (i.IsAuthenticated) { try { if (ModelState.IsValid) { try { consentimientoInformado.Codigo = Encriptacion.Decrypt(consentimientoInformado.Codigo); consentimientoInformado.Fecha = Funciones.ObtenerFechaActual("SA Pacific Standard Time"); _context.Update(consentimientoInformado); await _context.SaveChangesAsync(); await _auditoria.GuardarLogAuditoria(consentimientoInformado.Fecha, i.Name, "ConsentimientoInformado", consentimientoInformado.Codigo, "U"); ViewBag.Message = "Save"; Personal.Insert(0, vacio); ViewData["CodigoPersonal"] = Personal; Paciente.Insert(0, vacio); ViewData["CodigoPaciente"] = Paciente; ViewData["Descripcion"] = PlantillaCI.Descripcion; return(View(consentimientoInformado)); } catch (DbUpdateConcurrencyException) { throw; } } Personal.Insert(0, vacio); ViewData["CodigoPersonal"] = Personal; Paciente.Insert(0, vacio); ViewData["CodigoPaciente"] = Paciente; ViewData["Descripcion"] = PlantillaCI.Descripcion; return(View(consentimientoInformado)); } catch (Exception e) { string mensaje = e.Message; if (e.InnerException != null) { mensaje = MensajesError.UniqueKey(e.InnerException.Message); } ViewBag.Message = mensaje; Personal.Insert(0, vacio); ViewData["CodigoPersonal"] = Personal; Paciente.Insert(0, vacio); ViewData["CodigoPaciente"] = Paciente; ViewData["Descripcion"] = PlantillaCI.Descripcion; return(View(consentimientoInformado)); } } else { return(Redirect("../Identity/Account/Login")); } }
public async Task <IActionResult> Create(ConsentimientoInformado consentimientoInformado) { var i = (ClaimsIdentity)User.Identity; if (i.IsAuthenticated) { try { List <SelectListItem> Personal = new SelectList(_context.Personal.OrderBy(c => c.NombreCompleto).Where(c => c.Estado == true), "Codigo", "NombreCompleto").ToList(); Personal.Insert(0, vacio); ViewData["CodigoPersonal"] = Personal; List <SelectListItem> Paciente = new SelectList(_context.Paciente.OrderBy(p => p.NombreCompleto).Where(p => p.Estado == true), "Codigo", "NombreCompleto").ToList(); Paciente.Insert(0, vacio); ViewData["CodigoPaciente"] = Paciente; var PlantillaCI = _context.PlantillaConsentimientoInformado.SingleOrDefault(); ViewData["Descripcion"] = PlantillaCI.Descripcion; if (ModelState.IsValid) { //cita odontologica CitaOdontologica citaOdontologica = _context.CitaOdontologica.Where(ci => ci.Codigo == consentimientoInformado.CodigoCitaOdontologica).SingleOrDefault(); //_context.CitaOdontologica.Where(ci => ci.FechaInicio.Date == fecha.Date && ci.HoraInicio <= intInicial && ci.HoraFin >= intFinal && ci.CodigoPaciente == anamnesis.CodigoPaciente && ci.CodigoPersonal == anamnesis.CodigoPersonal).FirstOrDefault(); DateTime FechaCitaCreacion = Funciones.ObtenerFechaActual("SA Pacific Standard Time"); var transaction = _context.Database.BeginTransaction(); if (citaOdontologica == null) { CitaOdontologica cita = new CitaOdontologica(); Int64 maxCodigoHC = 0; maxCodigoHC = Convert.ToInt64(_context.CitaOdontologica.Max(f => f.Codigo)); maxCodigoHC += 1; cita.Codigo = maxCodigoHC.ToString("D8"); cita.CodigoPaciente = consentimientoInformado.CodigoPaciente; cita.CodigoPersonal = consentimientoInformado.CodigoPersonal; cita.FechaCreacion = FechaCitaCreacion; cita.Observaciones = null; cita.Estado = "N"; cita.FechaInicio = FechaCitaCreacion; cita.FechaFin = FechaCitaCreacion; cita.HoraInicio = new TimeSpan(FechaCitaCreacion.Hour, FechaCitaCreacion.Minute, 00); cita.HoraFin = new TimeSpan(FechaCitaCreacion.Hour, FechaCitaCreacion.Minute, 00); cita.UsuarioCreacion = i.Name; _context.Add(cita); await _context.SaveChangesAsync(); await _auditoria.GuardarLogAuditoria(cita.FechaCreacion, i.Name, "CitaOdontologica", cita.Codigo, "I"); consentimientoInformado.CodigoCitaOdontologica = cita.Codigo; } else { consentimientoInformado.CodigoCitaOdontologica = citaOdontologica.Codigo; } //consentimientoInformado Int64 maxCodigo = 0; maxCodigo = Convert.ToInt64(_context.ConsentimientoInformado.Max(f => f.Codigo)); maxCodigo += 1; consentimientoInformado.Codigo = maxCodigo.ToString("D8"); consentimientoInformado.Fecha = FechaCitaCreacion; _context.Add(consentimientoInformado); await _context.SaveChangesAsync(); transaction.Commit(); await _auditoria.GuardarLogAuditoria(consentimientoInformado.Fecha, i.Name, "ConsentimientoInformado", consentimientoInformado.Codigo, "I"); ViewBag.Message = "Save"; return(View(consentimientoInformado)); } return(View(consentimientoInformado)); } catch (Exception e) { string mensaje = e.Message; if (e.InnerException != null) { mensaje = MensajesError.UniqueKey(e.InnerException.Message); } ViewBag.Message = mensaje; List <SelectListItem> Personal = new SelectList(_context.Personal.OrderBy(c => c.NombreCompleto).Where(c => c.Estado == true), "Codigo", "NombreCompleto").ToList(); Personal.Insert(0, vacio); ViewData["CodigoPersonal"] = Personal; List <SelectListItem> Paciente = new SelectList(_context.Paciente.OrderBy(p => p.NombreCompleto).Where(p => p.Estado == true), "Codigo", "NombreCompleto").ToList(); Paciente.Insert(0, vacio); ViewData["CodigoPaciente"] = Paciente; var PlantillaCI = _context.PlantillaConsentimientoInformado.SingleOrDefault(); ViewData["Descripcion"] = PlantillaCI.Descripcion; return(View(consentimientoInformado)); } } else { return(Redirect("../Identity/Account/Login")); } }
public async Task <IActionResult> Edit(CitaOdontologica citaOdontologica, List <string> enfermedades) { var i = (ClaimsIdentity)User.Identity; var transaction = _context.Database.BeginTransaction(); DateTime fecha1 = Convert.ToDateTime("29/04/2020"); var fechaC = Funciones.ObtenerFecha(fecha1, "SA Pacific Standard Time"); var fechaU = Funciones.ObtenerFecha(Convert.ToDateTime(citaOdontologica.UltimaVisitaOdontologo), "SA Pacific Standard Time"); if (i.IsAuthenticated) { try { if (citaOdontologica.UltimaVisitaOdontologo >= Funciones.ObtenerFechaActual("SA Pacific Standard Time").Date) { var mensajeR = "La fecha debe ser menor a la actual."; if (!string.IsNullOrEmpty(mensajeR)) { ModelState.AddModelError("UltimaVisitaOdontologo", mensajeR); } } if (!String.IsNullOrEmpty(citaOdontologica.DescripcionReceta)) { if (String.IsNullOrEmpty(citaOdontologica.Indicaciones)) { var mensajeR = "Debe llenar las indicaciones para los medicamentos"; if (!string.IsNullOrEmpty(mensajeR)) { ModelState.AddModelError("Indicaciones", mensajeR); } } } if (!String.IsNullOrEmpty(citaOdontologica.Indicaciones)) { if (String.IsNullOrEmpty(citaOdontologica.DescripcionReceta)) { var mensajeR = "Debe llenar los medicamentos"; if (!string.IsNullOrEmpty(mensajeR)) { ModelState.AddModelError("DescripcionReceta", mensajeR); } } } if (ModelState.IsValid) { //guardar los imagenes de las firmas String FirmaConsentimiento = string.Empty; String FirmaDiagnostico = string.Empty; if (citaOdontologica.FirmaC != null) { if (GetMimeTypes().SingleOrDefault(p => p.Value == citaOdontologica.FirmaC.ContentType && p.Key == "." + citaOdontologica.FirmaC.FileName.Split(".")[citaOdontologica.FirmaC.FileName.Split(".").Count() - 1]).Value != null) { FirmaConsentimiento = UploadFile(citaOdontologica.FirmaC, Encriptacion.Decrypt(citaOdontologica.Codigo), citaOdontologica.Identificacion, "CI"); } else { citaOdontologica.FirmaC = null; ViewData["ExtensionArchivo"] = "Extensión del documento incorrecto"; } } if (citaOdontologica.FirmaD != null) { if (GetMimeTypes().SingleOrDefault(p => p.Value == citaOdontologica.FirmaD.ContentType && p.Key == "." + citaOdontologica.FirmaC.FileName.Split(".")[citaOdontologica.FirmaC.FileName.Split(".").Count() - 1]).Value != null) { FirmaDiagnostico = UploadFile(citaOdontologica.FirmaD, Encriptacion.Decrypt(citaOdontologica.Codigo), citaOdontologica.Identificacion, "DG"); } else { citaOdontologica.FirmaC = null; ViewData["ExtensionArchivo"] = "Extensión del documento incorrecto"; } } DateTime fecha = Funciones.ObtenerFechaActual("SA Pacific Standard Time"); citaOdontologica.Codigo = Encriptacion.Decrypt(citaOdontologica.Codigo); //anamnesis Anamnesis anamnesis = new Anamnesis(); Int64 maxCodigoAnamnesis = 0; maxCodigoAnamnesis = Convert.ToInt64(_context.Anamnesis.Max(f => f.Codigo)); maxCodigoAnamnesis += 1; anamnesis.Codigo = maxCodigoAnamnesis.ToString("D8"); anamnesis.CodigoCitaOdontologica = citaOdontologica.Codigo; anamnesis.MotivoConsulta = citaOdontologica.MotivoConsulta; anamnesis.EnfermedadActual = citaOdontologica.EnfermedadActual; anamnesis.Alerta = citaOdontologica.Alerta; anamnesis.Alergico = citaOdontologica.Alergico; anamnesis.AntecedentesQuirurgicos = citaOdontologica.AntecedentesQuirurgicos; anamnesis.Alergico = citaOdontologica.Alergico; anamnesis.Medicamentos = citaOdontologica.Medicamentos; anamnesis.Habitos = citaOdontologica.Habitos; anamnesis.AntecedentesFamiliares = citaOdontologica.AntecedentesFamiliares; anamnesis.Fuma = citaOdontologica.Fuma; anamnesis.Embarazada = citaOdontologica.Embarazada; anamnesis.UltimaVisitaOdontologo = citaOdontologica.UltimaVisitaOdontologo; anamnesis.Endocrino = citaOdontologica.Endocrino; anamnesis.Traumatologico = citaOdontologica.Traumatologico; anamnesis.Fecha = fecha; _context.Anamnesis.Add(anamnesis); var anamnesisEnf = _context.AnamnesisEnfermedad.Where(a => a.CodigoAnamnesis == anamnesis.Codigo).ToList(); foreach (var item in anamnesisEnf) { _context.AnamnesisEnfermedad.Remove(item); } _context.SaveChanges(); //guardar AnamenesisEnefermedad Int64 maxCodigoAe = 0; maxCodigoAe = Convert.ToInt64(_context.AnamnesisEnfermedad.Max(f => f.Codigo)); foreach (var enf in enfermedades) { AnamnesisEnfermedad anamnesisEnfermedad = new AnamnesisEnfermedad(); maxCodigoAe += 1; anamnesisEnfermedad.Codigo = maxCodigoAe.ToString("D8"); anamnesisEnfermedad.CodigoAnamnesis = anamnesis.Codigo; anamnesisEnfermedad.CodigoEnfermedad = enf; _context.AnamnesisEnfermedad.Add(anamnesisEnfermedad); } _context.SaveChanges(); //diagnostico Diagnostico diagnostico = new Diagnostico(); Int64 maxCodigoDiag = 0; maxCodigoDiag = Convert.ToInt64(_context.Diagnostico.Max(f => f.Codigo)); maxCodigoDiag += 1; diagnostico.Codigo = maxCodigoDiag.ToString("D8"); diagnostico.CodigoCitaOdontologica = citaOdontologica.Codigo; diagnostico.Fecha = fecha; diagnostico.Pieza = citaOdontologica.Pieza; diagnostico.Observacion = citaOdontologica.Observacion; diagnostico.Firma = FirmaDiagnostico; diagnostico.Acuerdo = true; diagnostico.Recomendacion = citaOdontologica.Recomendacion; _context.Diagnostico.Add(diagnostico); var diagnosticoCie10 = _context.DiagnosticoCie10.Where(a => a.CodigoDiagnostico == diagnostico.Codigo).ToList(); foreach (var item in diagnosticoCie10) { _context.DiagnosticoCie10.Remove(item); } _context.SaveChanges(); //guardar diagnosticoCie10 Int64 maxCodigoCie = 0; maxCodigoCie = Convert.ToInt64(_context.DiagnosticoCie10.Max(f => f.Codigo)); maxCodigoCie += 1; DiagnosticoCie10 diagCie10 = new DiagnosticoCie10(); diagCie10.Codigo = maxCodigoCie.ToString("D8"); diagCie10.CodigoDiagnostico = diagnostico.Codigo; diagCie10.CodigoCie10 = citaOdontologica.CodigoDiagnosticoCie10; _context.DiagnosticoCie10.Add(diagCie10); _context.SaveChanges(); //consentimiento informado ConsentimientoInformado consentimientoInformado = new ConsentimientoInformado(); Int64 maxCodigoCi = 0; maxCodigoCi = Convert.ToInt64(_context.ConsentimientoInformado.Max(f => f.Codigo)); maxCodigoCi += 1; consentimientoInformado.Codigo = maxCodigoCi.ToString("D8"); consentimientoInformado.CodigoCitaOdontologica = citaOdontologica.Codigo; consentimientoInformado.Descripcion = citaOdontologica.Descripcion; consentimientoInformado.Firma = FirmaConsentimiento; //citaOdontologica.FirmaConcentimiento; consentimientoInformado.Acuerdo = true; //citaOdontologica.AcuerdoConsentimiento; consentimientoInformado.Fecha = fecha; _context.Add(consentimientoInformado); _context.SaveChanges(); var codigoReceta = ""; Boolean registroReceta = false; if (!((string.IsNullOrEmpty(citaOdontologica.DescripcionReceta)) && (string.IsNullOrEmpty(citaOdontologica.Indicaciones)))) { //receta medica RecetaMedica recetaMedica = new RecetaMedica(); Int64 maxCodigoR = 0; maxCodigoR = Convert.ToInt64(_context.RecetaMedica.Max(f => f.Codigo)); maxCodigoR += 1; recetaMedica.Codigo = maxCodigoR.ToString("D8"); recetaMedica.CodigoCitaOdontologica = citaOdontologica.Codigo; recetaMedica.Descripcion = citaOdontologica.DescripcionReceta; recetaMedica.Fecha = fecha; if (citaOdontologica.CodigoPlantillaRecetaMedica == "0") { recetaMedica.CodigoPlantillaRecetaMedica = null; } else { recetaMedica.CodigoPlantillaRecetaMedica = citaOdontologica.CodigoPlantillaRecetaMedica; } recetaMedica.Indicaciones = citaOdontologica.Indicaciones; codigoReceta = recetaMedica.Codigo; _context.Add(recetaMedica); _context.SaveChanges(); registroReceta = true; } CitaOdontologica citaAntigua = _context.CitaOdontologica.SingleOrDefault(p => p.Codigo == citaOdontologica.Codigo); citaAntigua.Codigo = citaOdontologica.Codigo; citaAntigua.CodigoPaciente = citaOdontologica.CodigoPaciente; citaAntigua.CodigoPersonal = citaOdontologica.CodigoPersonal; citaAntigua.FechaCreacion = citaOdontologica.FechaCreacion; citaAntigua.Observaciones = citaOdontologica.Observaciones; citaAntigua.Estado = "A"; citaAntigua.FechaInicio = citaOdontologica.FechaInicio; citaAntigua.FechaFin = citaOdontologica.FechaFin; citaAntigua.HoraInicio = citaOdontologica.HoraInicio; citaAntigua.HoraFin = citaOdontologica.HoraFin; citaAntigua.UsuarioCreacion = i.Name; citaAntigua.RegistroRecetaMedica = registroReceta; _context.Update(citaAntigua); _context.SaveChanges(); await _auditoria.GuardarLogAuditoria(fecha, i.Name, "Anamnesis", anamnesis.Codigo, "I"); await _auditoria.GuardarLogAuditoria(fecha, i.Name, "Diagnostico", diagnostico.Codigo, "I"); await _auditoria.GuardarLogAuditoria(fecha, i.Name, "ConsentmientoInformado", consentimientoInformado.Codigo, "I"); if (!string.IsNullOrEmpty(codigoReceta)) { await _auditoria.GuardarLogAuditoria(fecha, i.Name, "Receta", codigoReceta, "I"); } await _auditoria.GuardarLogAuditoria(fecha, i.Name, "CitaOdontologica", citaOdontologica.Codigo, "I"); transaction.Commit(); //cargar los datos var paciente = _context.Paciente.Where(p => p.Codigo == citaOdontologica.CodigoPaciente).Include(p => p.Facultad).Include(p => p.Carrera).SingleOrDefault(); //datos del paciente ViewData["Cedula"] = paciente.Identificacion; ViewData["Nombre"] = paciente.NombreCompleto; ViewData["Direccion"] = paciente.Direccion; ViewData["Correo"] = paciente.MailEpn; ViewData["Telefono"] = paciente.Celular; if (paciente.Facultad == null) { ViewData["Facultad"] = ""; ViewData["Carrera"] = ""; } else { ViewData["Facultad"] = paciente.Facultad.Nombre; ViewData["Carrera"] = paciente.Carrera.Nombre; } ViewData["CodigoCitaOdontologica"] = citaOdontologica.Codigo; //paciente List <SelectListItem> TipoIdentificacion = new SelectList(_context.TipoIdentificacion.OrderBy(f => f.Nombre), "Codigo", "Nombre").ToList(); ViewData["CodigoTipoIdentificacion"] = TipoIdentificacion; List <SelectListItem> Facultad = new SelectList(_context.Facultad.OrderBy(f => f.Nombre), "Codigo", "Nombre").ToList(); Facultad.Insert(0, vacio); ViewData["CodigoFacultad"] = Facultad; //anamnesis List <SelectListItem> Enfermedades = null; Enfermedades = new SelectList(_context.Enfermedad.OrderBy(c => c.Nombre).Where(c => c.Estado == true), "Codigo", "Nombre").ToList(); ViewData["AnamnesisEnfermedad"] = Enfermedades; //diagnostico List <SelectListItem> Cie10 = new SelectList(_context.Cie10.OrderBy(f => f.CodigoInterno), "Codigo", "CodigoNombre").ToList(); //.Where(f => f.Nombre.StartsWith("C")).ToList(); //QUITAR LUEGO ; Cie10.Insert(0, vacio); ViewData["CIE10"] = Cie10; //consentimiento informado var PlantillaCI = _context.PlantillaConsentimientoInformado.Where(c => c.Nombre.Contains("Consentimiento Informado")).SingleOrDefault(); ViewData["Descripcion"] = PlantillaCI.Descripcion; //receta medica List <SelectListItem> PlantillaRM = new SelectList(_context.PlantillaRecetaMedica.OrderBy(c => c.Nombre), "Codigo", "Nombre").ToList(); PlantillaRM.Insert(0, vacio); ViewData["CodigoPlantillaReceta"] = PlantillaRM; //imagen ViewBag.Message = "Save"; return(View(citaOdontologica)); } else { //cargar los datos var paciente = _context.Paciente.Where(p => p.Codigo == citaOdontologica.CodigoPaciente).Include(p => p.Facultad).Include(p => p.Carrera).SingleOrDefault(); //datos del paciente ViewData["Cedula"] = paciente.Identificacion; ViewData["Nombre"] = paciente.NombreCompleto; ViewData["Direccion"] = paciente.Direccion; ViewData["Correo"] = paciente.MailEpn; ViewData["Telefono"] = paciente.Celular; if (paciente.Facultad == null) { ViewData["Facultad"] = ""; ViewData["Carrera"] = ""; } else { ViewData["Facultad"] = paciente.Facultad.Nombre; ViewData["Carrera"] = paciente.Carrera.Nombre; } ViewData["CodigoCitaOdontologica"] = citaOdontologica.Codigo; //paciente List <SelectListItem> TipoIdentificacion = new SelectList(_context.TipoIdentificacion.OrderBy(f => f.Nombre), "Codigo", "Nombre").ToList(); ViewData["CodigoTipoIdentificacion"] = TipoIdentificacion; List <SelectListItem> Facultad = new SelectList(_context.Facultad.OrderBy(f => f.Nombre), "Codigo", "Nombre").ToList(); Facultad.Insert(0, vacio); ViewData["CodigoFacultad"] = Facultad; //anamnesis List <SelectListItem> Enfermedades = null; Enfermedades = new SelectList(_context.Enfermedad.OrderBy(c => c.Nombre).Where(c => c.Estado == true), "Codigo", "Nombre").ToList(); ViewData["AnamnesisEnfermedad"] = Enfermedades; //diagnostico List <SelectListItem> Cie10 = new SelectList(_context.Cie10.OrderBy(f => f.CodigoInterno), "Codigo", "CodigoNombre").ToList(); //.Where(f => f.Nombre.StartsWith("C")).ToList(); //QUITAR LUEGO ; Cie10.Insert(0, vacio); ViewData["CIE10"] = Cie10; //consentimiento informado var PlantillaCI = _context.PlantillaConsentimientoInformado.Where(c => c.Nombre.Contains("Consentimiento Informado")).SingleOrDefault(); ViewData["Descripcion"] = PlantillaCI.Descripcion; //receta medica List <SelectListItem> PlantillaRM = new SelectList(_context.PlantillaRecetaMedica.OrderBy(c => c.Nombre), "Codigo", "Nombre").ToList(); PlantillaRM.Insert(0, vacio); ViewData["CodigoPlantillaReceta"] = PlantillaRM; try { var odontograma = await _context.Odontograma.SingleOrDefaultAsync(f => f.CodigoCitaOdontologica == Encriptacion.Decrypt(citaOdontologica.Codigo)); _context.Odontograma.Remove(odontograma); await _context.SaveChangesAsync(); } catch (Exception e) { string mens = e.Message; ViewBag.Message = mens; } ViewBag.Message = "Debe revisar los datos de Anamnesis o Receta Medica"; return(View(citaOdontologica)); } } catch (Exception e) { string mensaje = e.Message; if (e.InnerException != null) { mensaje = MensajesError.UniqueKey(e.InnerException.Message); } ViewBag.Message = mensaje; transaction.Rollback(); //eliminar el odontograma si hay algun error //citaOdontologica.Codigo = Encriptacion.Decrypt(citaOdontologica.Codigo); var odontograma = await _context.Odontograma.SingleOrDefaultAsync(f => f.CodigoCitaOdontologica == citaOdontologica.Codigo); _context.Odontograma.Remove(odontograma); await _context.SaveChangesAsync(); //cargar los datos var paciente = _context.Paciente.Where(p => p.Codigo == citaOdontologica.CodigoPaciente).Include(p => p.Facultad).Include(p => p.Carrera).SingleOrDefault(); //datos del paciente ViewData["Cedula"] = paciente.Identificacion; ViewData["Nombre"] = paciente.NombreCompleto; ViewData["Direccion"] = paciente.Direccion; ViewData["Correo"] = paciente.MailEpn; ViewData["Telefono"] = paciente.Celular; if (paciente.Facultad == null) { ViewData["Facultad"] = ""; ViewData["Carrera"] = ""; } else { ViewData["Facultad"] = paciente.Facultad.Nombre; ViewData["Carrera"] = paciente.Carrera.Nombre; } ViewData["CodigoCitaOdontologica"] = citaOdontologica.Codigo; //paciente List <SelectListItem> TipoIdentificacion = new SelectList(_context.TipoIdentificacion.OrderBy(f => f.Nombre), "Codigo", "Nombre").ToList(); ViewData["CodigoTipoIdentificacion"] = TipoIdentificacion; List <SelectListItem> Facultad = new SelectList(_context.Facultad.OrderBy(f => f.Nombre), "Codigo", "Nombre").ToList(); Facultad.Insert(0, vacio); ViewData["CodigoFacultad"] = Facultad; //anamnesis List <SelectListItem> Enfermedades = null; Enfermedades = new SelectList(_context.Enfermedad.OrderBy(c => c.Nombre).Where(c => c.Estado == true), "Codigo", "Nombre").ToList(); ViewData["AnamnesisEnfermedad"] = Enfermedades; //diagnostico List <SelectListItem> Cie10 = new SelectList(_context.Cie10.OrderBy(f => f.CodigoInterno), "Codigo", "CodigoNombre").ToList(); //.Where(f => f.Nombre.StartsWith("C")).ToList(); //QUITAR LUEGO ; Cie10.Insert(0, vacio); ViewData["CIE10"] = Cie10; //consentimiento informado var PlantillaCI = _context.PlantillaConsentimientoInformado.Where(c => c.Nombre.Contains("Consentimiento Informado")).SingleOrDefault(); ViewData["Descripcion"] = PlantillaCI.Descripcion; //receta medica List <SelectListItem> PlantillaRM = new SelectList(_context.PlantillaRecetaMedica.OrderBy(c => c.Nombre), "Codigo", "Nombre").ToList(); PlantillaRM.Insert(0, vacio); ViewData["CodigoPlantillaReceta"] = PlantillaRM; //fin cargar datos return(View(citaOdontologica)); } } else { return(Redirect("../Identity/Account/Login")); } }