public async Task <int> Editar_Institucion(UsuarioInstitucion institucion) //metodo para actualizar una asignatura { //busca el usuario segun el id de la institucion var user = _context.UsuariosInstituciones.Where(x => x.IdInstitucion == institucion.Id).FirstOrDefault(); //verifica si existe una institucion //busca el usuario la institucion var institucio = _context.Institucion.Where(x => x.Id == institucion.Id).FirstOrDefault(); //si solo cambia el nombre de usuario if (institucion.Contraseña == null) // si existen nombre de institucion y nombre de usuario, verifica que sea el mismo a actualizar { //Verifica que no exista el nombre de usuario var nombre = _context.UsuariosInstituciones.Where(x => x.Usuario == institucion.Usuario).FirstOrDefault(); if (nombre == null || user.Id == nombre.Id)// si no existe el nombre, actualiza { user.Usuario = institucion.Usuario; _context.Update(user); await _context.SaveChangesAsync(); //guarda institucio.Direccion = institucion.Direcccion; institucio.Nombre = institucion.Institucion; _context.Update(institucio); await _context.SaveChangesAsync(); //guarda return(1); } else // de lo contrario retorna 0 { return(0); } } else // si hay cambios en la contraseña { user.Usuario = institucion.Usuario; user.Contraseña = institucion.Contraseña; _context.Update(user); await _context.SaveChangesAsync(); //guarda institucio.Direccion = institucion.Direcccion; institucio.Nombre = institucion.Institucion; _context.Update(institucio); await _context.SaveChangesAsync(); //guarda return(1); } }
//metodo para actualizar un usuario Institucion public async Task <IActionResult> Editar_Institucion([Bind("Id,Institucion,Direcccion,Usuario,Contraseña")] UsuarioInstitucion usuar) //metodo para actualizar una asignatura { var inst = _context.Institucion.Where(x => x.Nombre == usuar.Institucion).FirstOrDefault(); //verifica si existe una institucion var user = _context.UsuariosInstituciones.Where(x => x.Usuario == usuar.Usuario).FirstOrDefault(); //verifica si existe una institucion if (inst != null && user != null) // si existen nombre de institucion y nombre de usuario, verifica que sea el mismo a actualizar { if (inst.Id == usuar.Id && user.IdInstitucion == usuar.Id) // si es el mismo a actualizar { user.Usuario = usuar.Usuario; //agrega user.Contraseña = usuar.Contraseña; //agrega _context.Update(user); await _context.SaveChangesAsync(); //guarda inst.Nombre = usuar.Institucion; //agrega inst.Direccion = usuar.Direcccion; //agrega _context.Update(inst); await _context.SaveChangesAsync(); //guarda return(Json(1)); } else // de lo contrario retorna -1 { return(Json(-1)); } } else // si no existen nombre de institucion y nombre de usuario Actualiza { var inst2 = _context.Institucion.Where(x => x.Id == usuar.Id).FirstOrDefault(); //busca var user2 = _context.UsuariosInstituciones.Where(x => x.IdInstitucion == usuar.Id).FirstOrDefault(); //busca user2.Usuario = usuar.Usuario; //agrega user2.Contraseña = usuar.Contraseña; //agrega _context.Update(user2); await _context.SaveChangesAsync(); //guarda inst2.Nombre = usuar.Institucion; //agrega inst2.Direccion = usuar.Direcccion; //agrega _context.Update(inst2); await _context.SaveChangesAsync(); //guarda return(Json(1)); } }
[HttpPost] //metodo para Agregar una institucion public async Task <ActionResult> Registro([Bind("Institucion,Direcccion,Usuario,Contraseña")] UsuarioInstitucion usuar) { var inst = _context.Institucion.Where(x => x.Nombre == usuar.Institucion).FirstOrDefault(); //verifica si existe una institucion var user = _context.UsuariosInstituciones.Where(x => x.Usuario == usuar.Usuario).FirstOrDefault(); //verifica si existe una institucion if (inst == null && user == null) { //agrega asignaturas Institucion institucion = new Institucion(); institucion.Nombre = usuar.Institucion; institucion.Direccion = usuar.Direcccion; _context.Add(institucion); await _context.SaveChangesAsync(); Usuariosinstituciones usarios_Institucion = new Usuariosinstituciones(); usarios_Institucion.Usuario = usuar.Usuario; usarios_Institucion.Contraseña = usuar.Contraseña; usarios_Institucion.IdInstitucion = institucion.Id; _context.Add(usarios_Institucion); await _context.SaveChangesAsync(); return(Json(institucion.Id)); } return(Json(-1)); }