public string ObtenerDatosOdontogramaDetalle(string codigoOdontograma) { string codigoD = Encriptacion.Decrypt(codigoOdontograma); Odontograma odontograma = _context.Odontograma.Include(a => a.OdontogramaDetalle) .SingleOrDefault(f => f.Codigo == codigoD); List <OdontogramaDetalle> listaDetalle = new List <OdontogramaDetalle>(); foreach (var item in odontograma.OdontogramaDetalle) { OdontogramaDetalle detalle = new OdontogramaDetalle(); detalle.Codigo = item.Codigo; detalle.CodigoOdontograma = item.CodigoOdontograma; detalle.Pieza = item.Pieza; detalle.Region = item.Region; detalle.Enfermedad = item.Enfermedad; detalle.Valor = item.Valor; detalle.Diagnostico = item.Diagnostico; listaDetalle.Add(detalle); } return(JsonConvert.SerializeObject(listaDetalle)); //return View(odontograma); }
[HttpPost] //public async Task<string> Create(Odontograma odontograma , IFormFile svg742, string hola, IFormFile imagen) public async Task <string> Create(List <Odontograma> odontograma) { var i = (ClaimsIdentity)User.Identity; try { //guardar el odontograma Odontograma odont = new Odontograma(); Int64 maxCodigo = 0; maxCodigo = Convert.ToInt64(_context.Odontograma.Max(f => f.Codigo)); maxCodigo += 1; odont.Codigo = maxCodigo.ToString("D8"); odont.CodigoCitaOdontologica = Encriptacion.Decrypt(odontograma[0].CodigoCitaOdontologica); odont.FechaActualizacion = fecha; odont.Observaciones = null; odont.Estado = "I"; _context.Odontograma.Add(odont); //guardar odontogramaDetalle Int64 maxCodigoOd = 0; maxCodigoOd = Convert.ToInt64(_context.OdontogramaDetalle.Max(f => f.Codigo)); foreach (var detalle in odontograma[0].OdontogramaDetalle) { OdontogramaDetalle odontDetalle = new OdontogramaDetalle(); maxCodigoOd += 1; odontDetalle.Codigo = maxCodigoOd.ToString("D8"); odontDetalle.CodigoOdontograma = odont.Codigo; odontDetalle.Pieza = detalle.Pieza; odontDetalle.Region = detalle.Region; odontDetalle.Enfermedad = detalle.Enfermedad; odontDetalle.Valor = detalle.Valor; odontDetalle.Diagnostico = detalle.Diagnostico; _context.OdontogramaDetalle.Add(odontDetalle); } await _context.SaveChangesAsync(); await _auditoria.GuardarLogAuditoria(fecha, i.Name, "Odontograma", odont.Codigo, "I"); //ViewBag.Message = "Guardado"; return(" Se Guardado Correctamente"); } catch (Exception e) { string mensaje = e.Message; if (e.InnerException != null) { mensaje = MensajesError.UniqueKey(e.InnerException.Message); } //ViewBag.Message = mensaje; return(mensaje); } }
public async Task <string> Edit(List <Odontograma> odontograma) { var i = (ClaimsIdentity)User.Identity; List <SelectListItem> Personal = new SelectList(_context.Personal.OrderBy(c => c.NombreCompleto).Where(c => c.Estado == true), "Codigo", "NombreCompleto", odontograma[0].CodigoPersonal).ToList(); List <SelectListItem> Paciente = new SelectList(_context.Paciente.OrderBy(p => p.NombreCompleto).Where(p => p.Estado == true), "Codigo", "NombreCompleto", odontograma[0].CodigoPaciente).ToList(); if (i.IsAuthenticated) { try { if (ModelState.IsValid) { try { var transaction = _context.Database.BeginTransaction(); //actualizar odontograma odontograma[0].Codigo = Encriptacion.Decrypt(odontograma[0].Codigo); Odontograma odontogramaAntiguo = _context.Odontograma.SingleOrDefault(p => p.Codigo == odontograma[0].Codigo); odontogramaAntiguo.Codigo = odontograma[0].Codigo; odontogramaAntiguo.CodigoCitaOdontologica = odontograma[0].CodigoCitaOdontologica; odontogramaAntiguo.FechaActualizacion = fecha; odontogramaAntiguo.Observaciones = null; odontogramaAntiguo.Estado = "A"; var tipoComprobantesImpuesto = _context.OdontogramaDetalle.Where(a => a.CodigoOdontograma == odontograma[0].Codigo).ToList(); foreach (var item in tipoComprobantesImpuesto) { _context.OdontogramaDetalle.Remove(item); } _context.SaveChanges(); //guardar odontogramaDetalle Int64 maxCodigoOd = 0; maxCodigoOd = Convert.ToInt64(_context.OdontogramaDetalle.Max(f => f.Codigo)); foreach (var detalle in odontograma[0].OdontogramaDetalle) { OdontogramaDetalle odontDetalle = new OdontogramaDetalle(); maxCodigoOd += 1; odontDetalle.Codigo = maxCodigoOd.ToString("D8"); odontDetalle.CodigoOdontograma = odontograma[0].Codigo; odontDetalle.Pieza = detalle.Pieza; odontDetalle.Region = detalle.Region; odontDetalle.Enfermedad = detalle.Enfermedad; odontDetalle.Valor = detalle.Valor; odontDetalle.Diagnostico = detalle.Diagnostico; _context.OdontogramaDetalle.Add(odontDetalle); } _context.Update(odontogramaAntiguo); _context.SaveChanges(); transaction.Commit(); await _auditoria.GuardarLogAuditoria(Funciones.ObtenerFechaActual("SA Pacific Standard Time"), i.Name, "Odontograma", odontograma[0].Codigo, "U"); ViewBag.Message = "Save"; Personal.Insert(0, vacio); ViewData["CodigoPersonal"] = Personal; Paciente.Insert(0, vacio); ViewData["CodigoPaciente"] = Paciente; return("Save"); } catch (DbUpdateConcurrencyException) { throw; } } Personal.Insert(0, vacio); ViewData["CodigoPersonal"] = Personal; Paciente.Insert(0, vacio); ViewData["CodigoPaciente"] = Paciente; return("No es valido"); } 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; return(e.InnerException.Message); } } else { return("No autenticado"); } }