def get_trabajos(self):
        try:
            query = "SELECT * FROM trabajo_de_grado "
            param = ()
            self.__cur.execute(query, param)
            data = self.__cur.fetchall()
            resultado = list()

            if data is None:
                return None
            for trabajo in data:
                tra = TrabajoGrado(codigo=trabajo[0],
                                   titulo=trabajo[1],
                                   cod_jurado1=trabajo[2],
                                   cod_jurado2=trabajo[3],
                                   cod_jurado3=trabajo[4],
                                   correciones=trabajo[5],
                                   documentacion=trabajo[6],
                                   estado=trabajo[7],
                                   fecha_correcciones=trabajo[8],
                                   nota=trabajo[9],
                                   id_propuesta=trabajo[10],
                                   fecha=trabajo[11],
                                   fecha_sustentacion=trabajo[12],
                                   lugar_sustentacion=trabajo[13],
                                   hora_sustentacion=trabajo[14])
                resultado.append(tra)
            return resultado

        except Exception as e:
            print e.message
            return None
    def get_trabajo_tituloT(self, trabajoG):
        try:
            query = "SELECT * FROM `trabajo_de_grado` WHERE titulo LIKE  %s or titulo LIKE %s or titulo LIKE %s"
            param = (trabajoG.getTitulo() + "%",
                     "%" + trabajoG.getTitulo() + "%",
                     "%" + trabajoG.getTitulo())
            self.__cur.execute(query, param)
            data = self.__cur.fetchall()
            resultado = list()

            if data is None:
                return None
            for trabajo in data:
                pro = TrabajoGrado(codigo=trabajo[0],
                                   titulo=trabajo[1],
                                   fecha=trabajo[11],
                                   fecha_sustentacion=trabajo[12],
                                   estado=trabajo[7],
                                   nota=trabajo[9])
                resultado.append(pro)
            return resultado

        except Exception as e:
            print e.message
            return None
 def get_trabajo_codigo(self, codigo):
     try:
         query = "SELECT * FROM trabajo_de_grado  WHERE codigo = %s"
         param = (codigo, )
         self.__cur.execute(query, param)
         data = self.__cur.fetchone()
         if data is None:
             return None
         return TrabajoGrado(codigo=data[0],
                             titulo=data[1],
                             cod_jurado1=data[2],
                             cod_jurado2=data[3],
                             cod_jurado3=data[4],
                             correciones=data[5],
                             documentacion=data[6],
                             estado=data[7],
                             fecha_correcciones=data[8],
                             nota=data[9],
                             id_propuesta=data[10],
                             fecha=data[11],
                             fecha_sustentacion=data[12],
                             lugar_sustentacion=data[13],
                             hora_sustentacion=data[14])
     except Exception as e:
         print e.message
         return None
Beispiel #4
0
    def consulta_estudiante(self, codigo_e):
        usuario = Usuario(codigo=codigo_e)
        usuario_e = UsuarioDao().get_usuario_por_codigo(usuario)
        if usuario_e is None:
            flash("El codigo del estudiante no existe.", "error")

            tipoU = session['usuario']['tipo']
            usuario_u = UsuarioDao().get_usuario_por_codigo(
                Usuario(codigo=session['usuario']['codigo']))
            return render_template("/coordinador/juradoEstudiante.html",
                                   usuario=usuario_u,
                                   tipoU=tipoU)

        usuario_p = Propuesta_UsuarioDao().get_propuesta_usuario(
            UsuarioPropuesta(id_estudiante=usuario_e.getId()))
        if usuario_p is None:
            flash("El estudiante no tiene trabajos.", "error")

            tipoU = session['usuario']['tipo']
            usuario_u = UsuarioDao().get_usuario_por_codigo(
                Usuario(codigo=session['usuario']['codigo']))
            return render_template("/coordinador/juradoEstudiante.html",
                                   usuario=usuario_u,
                                   tipoU=tipoU)

        trabajoG = TrabajoGrado(
            id_propuesta=usuario_p.getId_propuesta().getId())
        print trabajoG.getId_propuesta().getId()
        if TrabajoGradoDao().get_trabajo_Estudiante(trabajoG):
            trabajos = TrabajoGradoDao().get_trabajo_Estudiante(trabajoG)
            tipoU = session['usuario']['tipo']
            usuario_u = UsuarioDao().get_usuario_por_codigo(
                Usuario(codigo=session['usuario']['codigo']))

            return render_template("/coordinador/juradoEstudiante.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/juradoEstudiante.html",
                                   usuario=usuario_u,
                                   tipoU=tipoU)
Beispiel #5
0
 def consultar_trabajo_de_grado(self, titulo, codigo):
     cod = session['usuario']['codigo']
     usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod)
     trabaj = TrabajoGrado(titulo=titulo, codigo=codigo)
     trabajos = TrabajoGradoDao().consultar_trabajos(trabaj)
     return render_template(
         "secretaria/trabajoGrado/ConsultarTrabajoGrado.html",
         trabajos=trabajos,
         usuario=usuario)
Beispiel #6
0
 def registrar_nota(self, codigo_trabajo, nota):
     cod = session['usuario']['codigo']
     usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod)
     trabajo = TrabajoGrado(codigo=codigo_trabajo, nota=nota)
     if (TrabajoGradoDao().registrar_nota(trabajo)):
         flash("Se ha registrado la Nota exitosamente.", "success")
         return render_template(
             "secretaria/trabajoGrado/ConsultarTrabajoGrado.html",
             usuario=usuario)
     else:
         flash("No se ha podido registrar Nota", "error")
     return render_template(
         "secretaria/trabajoGrado/ConsultarTrabajoGrado.html",
         usuario=usuario)
Beispiel #7
0
 def agregar_fechas_trabajo(self, codigo_trabajo, fechaCorrecciones):
     cod = session['usuario']['codigo']
     usuario = Usuario(nombres=session['usuario']['nombres'], codigo=cod)
     trabajo = TrabajoGrado(codigo=codigo_trabajo,
                            fecha_correcciones=fechaCorrecciones)
     if (TrabajoGradoDao().agregar_fechas_correcciones(trabajo)):
         flash("Se ha registrado las Fechas exitosamente.", "success")
         return render_template(
             "secretaria/trabajoGrado/ConsultarTrabajoGrado.html",
             usuario=usuario)
     else:
         flash("No se ha podido registrar Fechas.", "error")
     return render_template(
         "secretaria/trabajoGrado/ConsultarTrabajoGrado.html",
         usuario=usuario)
 def get_trabajo_titulo(self, trabajoG):
     try:
         query = "SELECT * FROM trabajo_de_grado  WHERE titulo = %s"
         param = (trabajoG.getTitulo(), )
         self.__cur.execute(query, param)
         data = self.__cur.fetchone()
         if data is None:
             return None
         return TrabajoGrado(codigo=data[0],
                             titulo=data[1],
                             fecha_sustentacion=data[12],
                             lugar_sustentacion=data[13],
                             hora_sustentacion=data[17],
                             nota=data[16],
                             fecha=data[15])
     except Exception as e:
         print e.message
         return None
Beispiel #9
0
 def consulta_jurado(self, cod_jurado1):
     trabajoG = TrabajoGrado(cod_jurado1=cod_jurado1)
     if (TrabajoGradoDao().get_trabajo_Jurado(trabajoG)):
         trabajos = TrabajoGradoDao().get_trabajo_Jurado(trabajoG)
         tipoU = session['usuario']['tipo']
         usuario_u = UsuarioDao().get_usuario_por_codigo(
             Usuario(codigo=session['usuario']['codigo']))
         return render_template("/coordinador/juradoEstudiante.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/juradoEstudiante.html",
                                usuario=usuario_u,
                                tipoU=tipoU)
Beispiel #10
0
 def consulta_nombreT(self, nombre):
     trabajoG = TrabajoGrado(titulo=nombre)
     if (TrabajoGradoDao().get_trabajo_tituloT(trabajoG) is not None):
         trabajos = TrabajoGradoDao().get_trabajo_tituloT(trabajoG)
         tipoU = session['usuario']['tipo']
         usuario_u = UsuarioDao().get_usuario_por_codigo(
             Usuario(codigo=session['usuario']['codigo']))
         return render_template("/coordinador/nombreT.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/nombreT.html",
                                usuario=usuario_u,
                                tipoU=tipoU)
Beispiel #11
0
    def consulta_estadoT(self, estado, trabajo_a):

        trabajoG = TrabajoGrado(estado=estado)
        if (TrabajoGradoDao().get_trabajo_estadoT(trabajoG, trabajo_a)):
            trabajos = TrabajoGradoDao().get_trabajo_estadoT(
                trabajoG, trabajo_a)
            tipoU = session['usuario']['tipo']
            usuario_u = UsuarioDao().get_usuario_por_codigo(
                Usuario(codigo=session['usuario']['codigo']))
            return render_template("/coordinador/estadoT.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/estadoT.html",
                                   usuario=usuario_u,
                                   tipoU=tipoU)
Beispiel #12
0
 def get_trabajo_id_propuesta(self, trabajo):
     try:
         query = "SELECT * FROM trabajo_de_grado " \
                 "JOIN propuesta ON propuesta.id = trabajo_de_grado.id_propuesta " \
                 "WHERE id_propuesta = %s "
         param = (trabajo.getId_propuesta().getId(), )
         self.__cur.execute(query, param)
         data = self.__cur.fetchone()
         print(data, 'data')
         if data is None:
             return None
         trabajo = TrabajoGrado(codigo=data[0],
                                titulo=data[1],
                                id_propuesta=data[10],
                                fecha_sustentacion=data[12],
                                lugar_sustentacion=data[13],
                                hora_sustentacion=data[14])
         return trabajo
     except Exception as e:
         print(e.__class__, e.message)
         return None
Beispiel #13
0
 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_trabajo_modalidadT(self, trabajoG, trabajo_a):

        try:
            query = "SELECT * FROM `trabajo_de_grado` WHERE modalidad = %s AND fecha LIKE %s"
            param = (trabajoG.getModalidad(), trabajo_a + "%")
            self.__cur.execute(query, param)
            data = self.__cur.fetchall()
            resultado = list()
            if data is None:
                return []
            for trabajo in data:
                tra = TrabajoGrado(codigo=data[0],
                                   titulo=data[1],
                                   fecha=data[11],
                                   fecha_sustentacion=data[12],
                                   estado=data[7],
                                   nota=data[9])
                resultado.append(tra)
            return resultado
        except Exception as e:
            print e.message
            return []
 def get_trabajos_Jurado(self, jurado):
     try:
         query = "SELECT * FROM `trabajo_de_grado` WHERE  cod_jurado1 = %s or cod_jurado2 = %s or cod_jurado3 = %s"
         param = (jurado.getCodigo(), jurado.getCodigo(),
                  jurado.getCodigo())
         self.__cur.execute(query, param)
         data = self.__cur.fetchall()
         resultado = list()
         if data is None:
             return []
         for trabajo in data:
             act = TrabajoGrado(codigo=trabajo[0],
                                titulo=trabajo[1],
                                fecha=trabajo[11],
                                fecha_sustentacion=trabajo[12],
                                lugar_sustentacion=trabajo[13],
                                hora_sustentacion=trabajo[14])
             resultado.append(act)
         return resultado
     except Exception as e:
         print e.message
         return []
Beispiel #16
0
    def get_registrar_propuesta(self):
        tipo = session['usuario']['tipo']
        usuario = Usuario(nombres=session['usuario']['nombres'],
                          tipo_usuario=tipo)
        propuesta = Propuesta_UsuarioDao().get_propuesta_usuario(
            UsuarioPropuesta(id_estudiante=session['usuario']['id']))
        if propuesta is None:
            return render_template("estudiante/home.html", usuario=usuario,
                                   propuesta=propuesta)
        pro = Propuesta_UsuarioDao().get_propuesta_codigo(UsuarioPropuesta(
                    id_propuesta=propuesta.getId_propuesta().getId()))

        entregable_propuesta = Entregable_propuestaDao().get_entregable_propuesta(pro)
        if pro.getEstado() != 'Sustentacion':
            return render_template("estudiante/home.html", propuesta=pro,
                           estudiante=propuesta, entregable=entregable_propuesta,
                           usuario=usuario)
        else:
            trabajo = TrabajoGrado(id_propuesta=pro.getId())
            t= TrabajoGradoDao().get_trabajo_id_propuesta(trabajo)
            flash("Ya estan asiganadas las fechas de sustentacion", "success")
            return render_template("estudiante/home.html", propuesta=pro,
                                   estudiante=propuesta, usuario=usuario,
                                   trabajo=t, entregable=entregable_propuesta)
    def consultar_trabajos(self, trabaj):
        if (trabaj.getTitulo() == "" and trabaj.getCodigo() != ""):
            try:
                query = "SELECT * FROM trabajo_de_grado WHERE codigo LIKE %s or codigo LIKE %s or codigo LIKE %s"
                param = (trabaj.getCodigo() + "%",
                         "%" + trabaj.getCodigo() + "%",
                         "%" + trabaj.getCodigo())
                self.__cur.execute(query, param)
                data = self.__cur.fetchall()
                resultado = list()
                if data is None:
                    return []
                for trabajo in data:
                    tra = TrabajoGrado(codigo=trabajo[0],
                                       titulo=trabajo[1],
                                       cod_jurado1=trabajo[2],
                                       cod_jurado2=trabajo[3],
                                       cod_jurado3=trabajo[4],
                                       correciones=trabajo[5],
                                       documentacion=trabajo[6],
                                       estado=trabajo[7],
                                       fecha_correcciones=trabajo[8],
                                       nota=trabajo[9],
                                       id_propuesta=trabajo[10],
                                       fecha=trabajo[11],
                                       fecha_sustentacion=trabajo[12],
                                       lugar_sustentacion=trabajo[13],
                                       hora_sustentacion=trabajo[14])
                    resultado.append(tra)
                return resultado
            except Exception as e:
                print e.message
                return []

        if (trabaj.getTitulo() != "" and trabaj.getCodigo() == ""):
            try:
                query = "SELECT * FROM trabajo_de_grado WHERE titulo LIKE %s or titulo LIKE %s or titulo LIKE %s"
                param = (trabaj.getTitulo() + "%",
                         "%" + trabaj.getTitulo() + "%",
                         "%" + trabaj.getTitulo())
                self.__cur.execute(query, param)
                data = self.__cur.fetchall()
                resultado = list()
                if data is None:
                    return []
                for trabajo in data:
                    tra = TrabajoGrado(codigo=trabajo[0],
                                       titulo=trabajo[1],
                                       cod_jurado1=trabajo[2],
                                       cod_jurado2=trabajo[3],
                                       cod_jurado3=trabajo[4],
                                       correciones=trabajo[5],
                                       documentacion=trabajo[6],
                                       estado=trabajo[7],
                                       fecha_correcciones=trabajo[8],
                                       nota=trabajo[9],
                                       id_propuesta=trabajo[10],
                                       fecha=trabajo[11],
                                       fecha_sustentacion=trabajo[12],
                                       lugar_sustentacion=trabajo[13],
                                       hora_sustentacion=trabajo[14])
                    resultado.append(tra)
                return resultado
            except Exception as e:
                print e.message
                return []

        if (trabaj.getTitulo() != "" and trabaj.getCodigo() != ""):
            try:
                query = "SELECT * FROM trabajo_de_grado WHERE titulo LIKE %s AND codigo LIKE %s or titulo LIKE %s AND codigo LIKE %s or " \
                        "titulo LIKE %s AND codigo LIKE %s or titulo LIKE %s AND codigo LIKE %s or titulo LIKE %s AND codigo LIKE %s or " \
                        "titulo LIKE %s AND codigo LIKE %s or titulo LIKE %s AND codigo LIKE %s or titulo LIKE %s AND codigo LIKE %s or " \
                        "titulo LIKE %s AND codigo LIKE %s"
                param = (trabaj.getTitulo() + "%", trabaj.getCodigo() + "%",
                         trabaj.getTitulo() + "%", "%" + trabaj.getCodigo() +
                         "%", trabaj.getTitulo() + "%", "%" +
                         trabaj.getCodigo(), "%" + trabaj.getTitulo() + "%",
                         trabaj.getCodigo() + "%", "%" + trabaj.getTitulo() +
                         "%", "%" + trabaj.getCodigo() + "%",
                         "%" + trabaj.getTitulo() + "%",
                         "%" + trabaj.getCodigo(), "%" + trabaj.getTitulo(),
                         trabaj.getCodigo() + "%", "%" + trabaj.getTitulo(),
                         "%" + trabaj.getCodigo() + "%",
                         "%" + trabaj.getTitulo(), "%" + trabaj.getCodigo())
                self.__cur.execute(query, param)
                data = self.__cur.fetchall()
                resultado = list()
                if data is None:
                    return []
                for trabajo in data:
                    tra = TrabajoGrado(codigo=trabajo[0],
                                       titulo=trabajo[1],
                                       cod_jurado1=trabajo[2],
                                       cod_jurado2=trabajo[3],
                                       cod_jurado3=trabajo[4],
                                       correciones=trabajo[5],
                                       documentacion=trabajo[6],
                                       estado=trabajo[7],
                                       fecha_correcciones=trabajo[8],
                                       nota=trabajo[9],
                                       id_propuesta=trabajo[10],
                                       fecha=trabajo[11],
                                       fecha_sustentacion=trabajo[12],
                                       lugar_sustentacion=trabajo[13],
                                       hora_sustentacion=trabajo[14])
                    resultado.append(tra)
                return resultado
            except Exception as e:
                print e.message
                return []