public IActionResult Guardar(PersonaCLS oPersonaCLS) { string NombreVista = ""; int nveces = 0; if (oPersonaCLS.IdPersona == 0) { NombreVista = "Agregar"; } else { NombreVista = "Editar"; } LlenarSexo(); try { using (BDHospitalContext db = new BDHospitalContext()) { oPersonaCLS.NombreCompleto = oPersonaCLS.Nombre.ToUpper().Trim() + " " + oPersonaCLS.ApMaterno.ToUpper().Trim() + " " + oPersonaCLS.ApMaterno.ToUpper().Trim(); //Solo en el caso que sea Agregar //Validar si el nombre completo ya existe if (oPersonaCLS.IdPersona == 0) { nveces = db.Persona.Where(p => p.Nombre.ToUpper().Trim() + " " + p.Apmaterno.ToUpper().Trim() + " " + p.Apmaterno.ToUpper().Trim() == oPersonaCLS.NombreCompleto).Count(); } if (!ModelState.IsValid || nveces >= 1) { if (nveces >= 1) { oPersonaCLS.MensajeError = "La persona ya existe"; } return(View(NombreVista, oPersonaCLS)); } else { Persona oPersona = new Persona(); oPersona.Nombre = oPersonaCLS.Nombre; oPersona.Appaterno = oPersonaCLS.ApPaterno; oPersona.Appaterno = oPersonaCLS.ApMaterno; oPersona.Telefonocelular = oPersonaCLS.NumeroTelefono; oPersona.Email = oPersonaCLS.Email; oPersona.Fechanacimiento = oPersonaCLS.FechaNacimiento; oPersona.Iidsexo = oPersonaCLS.IdSexo; oPersona.Bhabilitado = 1; db.Add(oPersona); db.SaveChanges(); } } } catch (Exception e) { return(View(NombreVista, oPersonaCLS)); throw e; } return(RedirectToAction("Index")); }
public IActionResult Guardar(PersonaCLS oPersonaCLS) { //llenado del combobox LlenarSexo(); string nombreVista = ""; int numeroVeces = 0; int nvecesCorreo = 0; //validacion de las vista if (oPersonaCLS.iidPersona == 0) { nombreVista = "Agregar"; } else { nombreVista = "Editar"; } try { using (BDHospitalContext bd = new BDHospitalContext()) { //validacion por repeticion en la bd //para ellos se ven los espacios vacios y pasarlo a mayuscula //Agregar oPersonaCLS.nombreCompleto = oPersonaCLS.nombre.Trim().ToUpper() + " " + oPersonaCLS.apPaterno.Trim().ToUpper() + " " + oPersonaCLS.apMaterno.Trim().ToUpper(); if (oPersonaCLS.iidPersona == 0) { numeroVeces = bd.Persona .Where(p => p.Nombre.Trim().ToUpper() + " " + p.Appaterno.Trim().ToUpper() + " " + p.Apmaterno.Trim().ToUpper() == oPersonaCLS.nombreCompleto) .Count(); //VALIDACION DE QUE EL CORREO NO SE REPITA nvecesCorreo = bd.Persona .Where(p => p.Email.Trim().ToUpper() == oPersonaCLS.email.Trim().ToUpper()) .Count(); } else { //VALIDACION PARA EDITAR QUE NO SE REPITA EN BD bd.Persona .Where(p => p.Nombre.Trim().ToUpper() + " " + p.Appaterno.Trim().ToUpper() + " " + p.Apmaterno.Trim().ToUpper() == oPersonaCLS.nombreCompleto && p.Iidpersona != oPersonaCLS.iidPersona ).Count(); nvecesCorreo = bd.Persona .Where(p => p.Email.Trim().ToUpper() == oPersonaCLS.email.Trim().ToUpper() && p.Iidpersona != oPersonaCLS.iidPersona) .Count(); } //validacion del modelo o numero de veces que se repite en la bd if (!ModelState.IsValid || numeroVeces >= 1 || nvecesCorreo >= 1) { if (numeroVeces >= 1) { oPersonaCLS.mensajeError = "la persona ya existe"; } if (nvecesCorreo >= 1) { oPersonaCLS.mensajeErrorCorreo = "El correo ya existe en la base de datos"; } return(View(nombreVista, oPersonaCLS)); } else { //GUARDAR EN BD if (oPersonaCLS.iidPersona == 0) { Persona persona = new Persona(); persona.Nombre = oPersonaCLS.nombre; persona.Appaterno = oPersonaCLS.apPaterno; persona.Apmaterno = oPersonaCLS.apMaterno; persona.Telefonofijo = oPersonaCLS.telefonoFijo; persona.Telefonocelular = oPersonaCLS.telefonoCelular; persona.Fechanacimiento = oPersonaCLS.fechaNacimiento; persona.Email = oPersonaCLS.email; persona.Iidsexo = oPersonaCLS.iidSexo; persona.Bhabilitado = 1; bd.Add(persona); bd.SaveChanges(); } else { //EDITAR EN BD Persona persona = bd.Persona .Where(p => p.Iidpersona == oPersonaCLS.iidPersona) .First(); persona.Nombre = oPersonaCLS.nombre; persona.Appaterno = oPersonaCLS.apPaterno; persona.Apmaterno = oPersonaCLS.apMaterno; persona.Telefonofijo = oPersonaCLS.telefonoFijo; persona.Telefonocelular = oPersonaCLS.telefonoCelular; persona.Fechanacimiento = oPersonaCLS.fechaNacimiento; persona.Email = oPersonaCLS.email; persona.Iidsexo = oPersonaCLS.iidSexo; bd.SaveChanges(); } } } } catch (Exception) { return(View(nombreVista, oPersonaCLS)); } return(RedirectToAction("Index")); }