def get_view_agregar_datos_sustentacion(self): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) propuestass = PropuestaDao().get_propuesta_solicitud_sustentacion() propuestas = list() for propuesta in propuestass: if PropuestaDao().verificar_propuesta_activa(propuesta): propuestas.append(propuesta) return render_template( "secretaria/trabajoGrado/VerPropuestasSolicitudes.html", propuestas=propuestas, usuario=usuario)
def get_guardar_comentario(self, id_propuesta, comentario): com1 = PropuestaDao().get_comentarios(id_propuesta) print com1 if (com1 is None): com1 = "" va = PropuestaDao().get_guardar_comentario(id_propuesta, com1 + ";" + comentario) if (va): flash("Se ha enviado Exitosamente.", "success") return render_template("jurado/home.html") flash("Ha ocurrido un error.", "error") return render_template("jurado/consulta_sustentacion.html")
def consulta_modalidadT(self, tipo_modalidad, trabajo_a): print 'entroo33' propuesta = Propuesta(modalidad=tipo_modalidad) propuestas = PropuestaDao().get_propuesta_modalidadT(propuesta) if (propuestas): print 'propuestas' trabajos = list() for propuesta in propuestas: pro = TrabajoGradoDao().get_trabajo_modalidadT( propuesta, trabajo_a) if (pro is not None): trabajos.append(pro) print trabajos, 'trabajos' tipoU = session['usuario']['tipo'] usuario_u = UsuarioDao().get_usuario_por_codigo( Usuario(codigo=session['usuario']['codigo'])) return render_template("/coordinador/modalidadT.html", trabajos=trabajos, usuario=usuario_u, tipoU=tipoU) else: flash("No existen Trabajos con esos parametros.", "error") tipoU = session['usuario']['tipo'] usuario_u = UsuarioDao().get_usuario_por_codigo( Usuario(codigo=session['usuario']['codigo'])) return render_template("/coordinador/modalidadT.html", usuario=usuario_u, tipoU=tipoU)
def get_home_usuario(): tipos = TipoUsuarioDao().listar_tipo_usuario() if 'usuario' in session: tipoU = session['usuario']['tipo'] codigo = session['usuario']['codigo'] usuario = UsuarioDao().get_usuario_por_codigo( Usuario(codigo=codigo)) if tipoU == 2: actas = SecretariaController().get_actas() return render_template('secretaria/home.html', titulo="Inicio", usuario=usuario, actas=actas) elif tipoU == 3: trabajos = TrabajoGradoDao().get_trabajos() return render_template('coordinador/home.html', titulo="Inicio", usuario=usuario, trabajos=trabajos) elif tipoU == 4: p = PropuestaDao().get_propuesta_consulta_jurado(usuario) t = TrabajoGradoDao().get_trabajos_Jurado(usuario) return render_template('jurado/home.html', titulo="Inicio", usuario=usuario, propuestas=p, trabajos=t) elif tipoU == 5: return EstudianteController().get_registrar_propuesta() return render_template('login/login.html', tipos=tipos)
def get_agregar_fechas_propuesta(self, codigo_propuesta): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) propuest = Propuesta(id=codigo_propuesta) propuesta = PropuestaDao().get_propuesta_codigo(propuest) return render_template("secretaria/propuesta/AgregarFechas.html", propuesta=propuesta, usuario=usuario)
def get_modificar_estado_propuesta(self, codigo_propuesta): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) propuest = Propuesta(id=codigo_propuesta) propuesta = PropuestaDao().get_propuesta_codigo(propuest) return render_template("secretaria/propuesta/ModificarEstado.html", propuesta=propuesta, usuario=usuario)
def get_view_agregar_datos_sustentacion_propuesta(self, id_propuesta): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) propuestaa = Propuesta(id=id_propuesta) propuesta = PropuestaDao().get_propuesta_codigo(propuestaa) return render_template( "secretaria/trabajoGrado/AgregarDatosSustentacion.html", propuesta=propuesta, usuario=usuario)
def get_habilitar_envio_entregables(self, codigo_propuesta): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) propuest = Propuesta(id=codigo_propuesta) propuesta = PropuestaDao().get_propuesta_codigo(propuest) return render_template( "secretaria/propuesta/HabilitarEnvioEntregables.html", propuesta=propuesta, usuario=usuario)
def get_view_asignar_jurado_propuesta(self): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) propuestas = PropuestaDao().get_propuesta_sin_jurado() jurados = UsuarioDao().get_jurados(4) return render_template( "secretaria/propuesta/AsignarJuradosPropuesta.html", propuestas=propuestas, jurados=jurados, usuario=usuario)
def consulta_nombreP(self, nombre): propuesta = Propuesta(titulo=nombre) if (PropuestaDao().get_propuesta_consultaN(propuesta)): propuestas = PropuestaDao().get_propuesta_consultaN(propuesta) tipoU = session['usuario']['tipo'] usuario_u = UsuarioDao().get_usuario_por_codigo( Usuario(codigo=session['usuario']['codigo'])) return render_template("/coordinador/nombreP.html", propuestas=propuestas, usuario=usuario_u, tipoU=tipoU) else: flash("No existen Propuestas con esos parametros.", "error") tipoU = session['usuario']['tipo'] usuario_u = UsuarioDao().get_usuario_por_codigo( Usuario(codigo=session['usuario']['codigo'])) return render_template("/coordinador/nombreP.html", usuario=usuario_u, tipoU=tipoU)
def registrar_propuesta(self, titulo, director, modalidad, file, id): from proyecto import UPLOAD_FOLDER filename = str(datetime.now().microsecond) + secure_filename(file.filename) file.save(os.path.join(UPLOAD_FOLDER, filename)) fecha = datetime.now().date() propuesta = Propuesta(titulo=titulo, director_trabajo=director, modalidad=modalidad, documentacion=filename, fecha=fecha) propuest = PropuestaDao().get_propuesta_titulo(propuesta) if propuest is not None: flash("Ya existe una propuesta con ese titulo", "error") return self.get_registro_propuesta() if PropuestaDao().crear_propuesta(propuesta): pro = PropuestaDao().get_propuesta_titulo(propuesta) if Propuesta_UsuarioDao().crear_propuesta_usuario(pro, id): if Entregable_propuestaDao().crear_entregable_propuesta(pro): flash("se creo la propuesta exitosamente.", "success") return self.get_registrar_propuesta() else: flash("error al crear la propuesta", "error") return self.get_registro_propuesta()
def agregar_datos_sustentacion(self, id_propuesta, lugar, fecha, hora): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) pro = Propuesta(id=id_propuesta) propuesta = PropuestaDao().get_propuesta_codigo(pro) trab = TrabajoGrado(titulo=propuesta.getTitulo(), documentacion=propuesta.getDocumentacion(), id_propuesta=id_propuesta, fecha=propuesta.getFecha(), lugar_sustentacion=lugar, fecha_sustentacion=fecha, hora_sustentacion=hora) if (TrabajoGradoDao().de_propuesta_a_trabajo_de_grado(trab)): Propuesta_UsuarioDao().desactivar_propuesta(id_propuesta) flash( "Se han agregado los datos y registrado Trabajo de Grado exitosamente", "success") return render_template("secretaria/home.html", usuario=usuario) else: flash("No se han podido agregar datos", "error") return render_template("secretaria/home.html", usuario=usuario)
def get_view_consultar_propuesta(self): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) propuestas = PropuestaDao().get_propuesta_consulta_jurado(usuario) if (propuestas != ""): return render_template("jurado/consulta_propuesta.html", usuario=usuario, propuestas=propuestas) else: flash("No existen Propuestas a cargo.", "error") return render_template("jurado/consulta_propuesta.html", usuario=usuario)
def consulta_cancelarP(self, nombre, estado): propuesta = Propuesta(titulo=nombre, estado=estado) propuesta_2 = PropuestaDao().get_propuesta_titulo(propuesta) print propuesta_2.getId(), 'id propuesta a cancelar' if (propuesta_2 is not None): Propuesta_UsuarioDao().get_propuesta_cancelar(propuesta_2) flash("Actualiacion Exitosa", "success") tipoU = session['usuario']['tipo'] usuario_u = UsuarioDao().get_usuario_por_codigo( Usuario(codigo=session['usuario']['codigo'])) return render_template("/coordinador/cancelarP.html", usuario=usuario_u, tipoU=tipoU) else: flash("No existen Propuesta con esos parametros.", "error") tipoU = session['usuario']['tipo'] usuario_u = UsuarioDao().get_usuario_por_codigo( Usuario(codigo=session['usuario']['codigo'])) return render_template("/coordinador/cancelarP.html", usuario=usuario_u, tipoU=tipoU)
def habilitar_envio_entregables(self, codigo_propuesta, entregable): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) propuesta = Propuesta(id=codigo_propuesta, entegrables=entregable) if (PropuestaDao().habilitar_envio_entregables(propuesta)): flash("Se han ingresado las fechas exitosamente.", "success") return render_template( "secretaria/propuesta/ConsultarPropuesta.html", usuario=usuario) else: flash("No se ha podido ingresar las fechas.", "error") return render_template("secretaria/propuesta/ConsultarPropuesta.html", usuario=usuario)
def consultar_propuesta(self, titulo, codigo): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) propuesta = Propuesta(id=codigo, titulo=titulo) propuestas = PropuestaDao().get_propuesta_consulta(propuesta) if (propuestas is not None): return render_template( "secretaria/propuesta/ConsultarPropuesta.html", propuestas=propuestas, usuario=usuario) else: flash("No existen Propuestas con esos parametros.", "error") return render_template("secretaria/propuesta/ConsultarPropuesta.html", usuario=usuario)
def solicitar_retiro(self, file, id): from proyecto import UPLOAD_FOLDER filename = str(datetime.now().microsecond) + secure_filename( file.filename) file.save(os.path.join(UPLOAD_FOLDER, filename)) propuesta_e = Propuesta_UsuarioDao().get_propuesta_usuario( UsuarioPropuesta(id_estudiante=id)) if propuesta_e is None: flash("La propuesta no existe", "error") return redirect(url_for("estudiante.home")) pro = Propuesta_UsuarioDao().get_propuesta_codigo(UsuarioPropuesta( id_propuesta=propuesta_e.getId_propuesta().getId())) pro.getId_propuesta().setSolicitud_retiro(filename) if PropuestaDao().solicitar_retiro_propuesta(pro): flash("se subio correctamente el archivo", "success") return redirect(url_for("estudiante.home"))
def subir_correcciones(self, file, id): from proyecto import UPLOAD_FOLDER filename = str(datetime.now().microsecond) + secure_filename( file.filename) file.save(os.path.join(UPLOAD_FOLDER, filename)) propuesta_e = Propuesta_UsuarioDao().get_propuesta_usuario( UsuarioPropuesta(id_estudiante=id)) if propuesta_e is None: flash("La propuesta no existe", "error") return redirect(url_for("estudiante.home")) pro = Propuesta_UsuarioDao().get_propuesta_codigo(UsuarioPropuesta( id_propuesta=propuesta_e.getId_propuesta().getId())) pro.getId_propuesta().setDocumentacion(filename) if pro.getId_propuesta().getFecha_Comentario() > pro.getId_propuesta().getFecha(): if PropuestaDao().subir_correcciones(pro): flash("se subio correctamente el archivo", "success") return redirect(url_for("estudiante.home")) else: flash("Ya excedio la fecha limite de presentar la correccion", "error") return redirect(url_for("estudiante.home"))
def modificar_fechas_propuesta(self, codigo_propuesta, fechaCorrecciones, fechaComentarios, fechaEntregables): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) propuesta = Propuesta(id=codigo_propuesta, fecha_comentario=fechaComentarios, fecha_correcciones=fechaCorrecciones) entregable_propuesta = EntregablePropuesta( id_propuesta=codigo_propuesta, fecha_entregable=fechaEntregables) if PropuestaDao().modificar_fechas( propuesta) or Entregable_propuestaDao().modificar_fechas( entregable_propuesta): flash("Se han modificado las fechas exitosamente.", "success") return render_template( "secretaria/propuesta/ConsultarPropuesta.html", usuario=usuario) else: flash("No se ha podido modificar las fechas.", "error") return render_template("secretaria/propuesta/ConsultarPropuesta.html", usuario=usuario)
def asignar_jurado_propuesta(self, propuesta, jurado1, jurado2, jurado3): cod = session['usuario']['codigo'] usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod) propuestaDividida = propuesta.split('-') jurado1Dividido = jurado1.split('-') jurado2Dividido = jurado2.split('-') jurado3Dividido = jurado3.split('-') if (PropuestaDao().asignar_jurados(propuestaDividida[0], jurado1Dividido[1], jurado2Dividido[1], jurado3Dividido[1])): flash("Se han asignado exitosamente los Jurados a la Propuesta.", "success") return render_template( "secretaria/propuesta/AsignarJuradosPropuesta.html", usuario=usuario) else: flash("No se han podido asignar Jurados.", "error") return render_template( "secretaria/propuesta/AsignarJuradosPropuesta.html", usuario=usuario)
def get_view_enviar_comentario(self, id_propuesta): propuesta = PropuestaDao().get_propuesta2(id_propuesta) return render_template("jurado/comentario.html", propuesta=propuesta)