public static void cerrarCursos() { bd_simaEntitie db = new bd_simaEntitie(); var query = from c in db.cursos where (c.estado == 1) select c; foreach (cursos cur in query) { if (DateTime.Compare(DateTime.Now, cur.fecha_finalizacion) > 0 || cur.eliminado == 1) { cur.estado = 0; } } db.SaveChanges(); }
public static void cerrarTest() { bd_simaEntitie db = new bd_simaEntitie(); var query = from c in db.Test where (c.estado_cierre == 0) select c; foreach (Test t in query) { if (DateTime.Compare(DateTime.Now, t.fecha_fin) > 0 || t.eliminado == 1) { t.estado_cierre = 1; } } db.SaveChanges(); }
public ActionResult Create(Mclase clase, String[] asistentes = null) { String periodo = MConfiguracionApp.getPeridoActual(db); if (sesion.esMonitor(db)) { try { MCurso auxCurso = new MCurso(); if (ModelState.IsValid) { string ruta = Server.MapPath(dir_clases); String materia = sesion.getMateria(); String idMonitor = sesion.getIdUsuario(); // se verifica que tenga la materia a cargo para evitar que se cambie el monbre de la materia en el select var tienMateria = auxCurso.tieneCurso(idMonitor, materia, periodo); if (tienMateria) { // se guardan los ficheros String[] resultado = Archivo.subir(Request.Files, ruta); // si se guarda el fichero en el servidor, se guarda el registro en la BD if (resultado[0].Equals("ok")) { using (var transaccion = new TransactionScope()) { using (var contestTransaccion = new bd_simaEntitie()) { // se obtien la fecha actual DateTime fechaRegistro = DateTime.Now; // se obtien el id del grupo a partir de la materia y el id del monitor y perido int idCuro = auxCurso.getIdCurso(materia, periodo, idMonitor); if (idCuro != -1) { clases_sima clase_ = new clases_sima { comentario = clase.comentario, fecha_realizada = clase.fecha_realizada, periodo = periodo, tema = clase.tema, evidencia = resultado[1], cursos_id = idCuro, usuarios_id = idMonitor, fecha_registro = fechaRegistro }; contestTransaccion.clases_sima.Add(clase_); contestTransaccion.SaveChanges(); // se agregan los estudiantes asistentes if (clase.guardarAsistentes(contestTransaccion, clase_, asistentes)) { // si los asistentes se registras se guardan los cambisos en bd transaccion.Complete(); sesion.setMateria(""); } return(RedirectToAction("Index")); } } } } else { ViewBag.mensajeError = resultado[1]; } } else { ViewBag.mensajeError = "Asignatura " + materia + " No valida"; sesion.setMateria(""); } } ViewBag.materiaSeleccionada = sesion.getMateria(); return(View(clase)); } catch (Exception e) { ViewBag.mensajeError = "Error!!. " + e.Message; } return(RedirectToAction("Index")); } else { return(Redirect("~/Inicio/Login")); } }
public JsonResult SetGrupos(String[] idGrupo = null) { String periodo = MConfiguracionApp.getPeridoActual(db); String idMonitor = sesion.getIdUsuario(); string[] carrera_idCurso; // se obtien el id del grupo a partir de la materia y el id del monitor y perido int idCuro; bool error = false; Respuesta respuesta = new Respuesta(); using (var transaccion = new TransactionScope()) { using (var contestTransaccion = new bd_simaEntitie()) { try { if (idGrupo != null) { List <String> materias = new List <string>(); // Se seleccionan las asinaturas String[] grupo; foreach (String element in idGrupo) { grupo = element.Split('|'); materias.Add(grupo[2]); } materias = ((from d in materias select d).Distinct()).ToList(); //foreach (String materia in materias) //{ //idCuro = MCurso.getIdCurso(db, materia, periodo, idMonitor); //se consulta los grupos registradas de una asinatura y se leiminamos List <grupos_acargo> consulta = ( from p in contestTransaccion.grupos_acargo where p.idUsuario == idMonitor && p.periodo == periodo select p ).ToList(); foreach (grupos_acargo element in consulta) { contestTransaccion.grupos_acargo.Remove(element); contestTransaccion.SaveChanges(); } //} foreach (String element in idGrupo) { carrera_idCurso = element.Split('|'); String materiatem = carrera_idCurso[2]; idCuro = new MCurso().getIdCurso(materiatem, periodo, idMonitor); grupos_acargo gruposAcargos = new grupos_acargo(); gruposAcargos.idUsuario = idMonitor; gruposAcargos.materia = materiatem; gruposAcargos.periodo = periodo; gruposAcargos.id_grupo = carrera_idCurso[1]; gruposAcargos.programa = carrera_idCurso[0]; gruposAcargos.id_curso = idCuro; contestTransaccion.grupos_acargo.Add(gruposAcargos); contestTransaccion.SaveChanges(); } } else { error = true; respuesta.RESPUESTA = "ERROR"; respuesta.MENSAJE = "Debe seleccionar al menos un grupo."; } } catch (Exception) { error = true; respuesta.RESPUESTA = "ERROR"; respuesta.MENSAJE = "No se pudo actualizar los grupos."; } if (!error) { transaccion.Complete(); respuesta.RESPUESTA = "OK"; respuesta.MENSAJE = "Grupos actualizados."; } } } return(Json(respuesta)); }