public JsonResult editEstudiantesSeleccionanGrupos(Seleccion Model) { var current_id = User.Identity.GetUserId(); ApplicationDbContext db = new ApplicationDbContext(); try { var groupOg = db.Grupo.SingleOrDefault(x => x.Id.Equals(Model.Id)); if (groupOg == null) { return(Json(new { Result = "ERROR", Message = "Grupo no Existente" })); } UsuariosPertenecenGrupo upg_actual = db.UsuariosPertenecenGrupos.ToList() .Where(t => t.UsuarioId == User.Identity.GetUserId()) .Where(t => t.GrupoId == Model.Id) .Select(t => t).FirstOrDefault(); bool checkIsRegisteredInGroup = (upg_actual == null) ? false : true; if (checkIsRegisteredInGroup && (Model.EstadoSeleccion == ((int)SolicitudInscripcion.Desinscripcion).ToString())) { Nota nota = db.Nota.Find(db.UsuariosPertenecenGrupos.Where(t => t.GrupoId == upg_actual.GrupoId).FirstOrDefault().NotaId); if (nota != null) { db.Nota.Remove(nota); } db.UsuariosPertenecenGrupos.Remove(upg_actual); db.SaveChanges(); } else if (!checkIsRegisteredInGroup && (Model.EstadoSeleccion == ((int)SolicitudInscripcion.Inscripcion).ToString())) { var gruposEstudiante = db.UsuariosPertenecenGrupos.Include(a => a.Grupo.Materia) .Where(x => x.UsuarioId.Equals(current_id)).ToList(); if (gruposEstudiante.Any(x => x.Grupo.Materia.Nombre.Equals(groupOg.Materia.Nombre))) { return(Json(new { Result = "ERROR", Message = "Materia Previamente Inscrita" })); } Nota nota = new Nota() { PrimerParcial = 0, SegundoParcial = 0, ParcialFinal = 0, NotaTotal = 0 }; db.Nota.Add(nota); db.SaveChanges(); db.UsuariosPertenecenGrupos.Add(new UsuariosPertenecenGrupo { GrupoId = Model.Id, UsuarioId = current_id, NotaId = nota.Id }); db.SaveChanges(); } return(Json(new { Result = "OK" }, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(new { Result = "ERROR", Message = ex.Message }, JsonRequestBehavior.AllowGet)); } }
public JsonResult editAdministradoresAsignanProfesores(Seleccion Model) { //En este contexto Model.EstadoSeleccion posee el id del profesor ApplicationDbContext db = new ApplicationDbContext(); try { if (Model.EstadoSeleccion == "1") { //Buscamos los Usuarios con Rol de Profesor IdentityRole Profesores = db.Roles.Include(t => t.Users).Where(t => t.Id == ((int)Rol.Profesor).ToString()).FirstOrDefault(); foreach (var item in Profesores.Users) { UsuariosPertenecenGrupo upg_actual = db.UsuariosPertenecenGrupos.ToList() .Where(t => t.UsuarioId == item.UserId) .Where(t => t.GrupoId == Model.Id) .Select(t => t).FirstOrDefault(); if (upg_actual != null) { db.UsuariosPertenecenGrupos.Remove(upg_actual); db.SaveChanges(); break; } } } else { bool checkTeacherExistInGroup = (db.UsuariosPertenecenGrupos .Where(t => t.UsuarioId == Model.EstadoSeleccion) .Where(t => t.GrupoId == Model.Id) .FirstOrDefault() == null)? false: true; if (checkTeacherExistInGroup) { try { //Si no se ha modificado, el programa ira al catch db.Entry(new UsuariosPertenecenGrupo { UsuarioId = Model.EstadoSeleccion, GrupoId = Model.Id }).State = EntityState.Modified; db.SaveChanges(); } catch (Exception) { //Do nothig } } else if (!checkTeacherExistInGroup) { db.UsuariosPertenecenGrupos.Add(new UsuariosPertenecenGrupo { UsuarioId = Model.EstadoSeleccion, GrupoId = Model.Id }); db.SaveChanges(); } }/**/ /*db.UsuariosPertenecenGrupos.Add(new UsuariosPertenecenGrupo { UsuarioId = "28c43a6c-41ad-4d0a-8f5c-b60a435ad29c", GrupoId = 17 }); * db.SaveChanges();*/ return(Json(new { Result = "OK" }, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(new { Result = "ERROR", Message = ex.Message }, JsonRequestBehavior.AllowGet)); } }