Ejemplo n.º 1
0
    def crear_notas(self):

        create_table_query = '''

            CREATE TABLE IF NOT EXISTS notas(
                id_nota SERIAL PRIMARY KEY NOT NULL,
                id_alumno INT NOT NULL,
                id_malla INT NOT NULL,
                nota INT NOT NULL,
                CONSTRAINT fk_alumno FOREIGN KEY (id_alumno) REFERENCES alumno(alumno_id),
                CONSTRAINT fk_malla FOREIGN KEY (id_malla) REFERENCES malla_curricular(id_malla)
            );

        '''
        conn.ejecutar_sentencia(create_table_query)
        conn.commit()


conn = Conexion('sistema_colegio')
database = Database(conn)
database.crear_profesor()
database.crear_alumno()
database.crear_salon()
database.crear_periodo_escolar()
database.crear_curso()
database.crear_profesor_curso()
database.crear_malla_curricular()
database.crear_notas()
conn.close_connection()
Ejemplo n.º 2
0
    def mostrar_alumno(self):
        id_alumno = input_data("Ingrese el ID del alumno que esta buscando>> ")
        alumno = self.alumno.obtener_alumno({'id_alumno': id_alumno})
        print(
            print_table(alumno, [
                'ID', 'Nombres', 'Códgo', 'Salón', 'id_periodo_1',
                'id_periodo_2', 'id_periodo_3', 'id_periodo_4'
            ]))
        if alumno:
            menu = ["1° Bimestre", "2° Bimestre", "3° Bimestre", "4° Bimestre"]
            bimestre = Menu(menu).show()
            if bimestre == 1:
                periodo = 'periodo_nota1'
                bim = "Primer Bimestre"
            elif bimestre == 2:
                periodo = 'periodo_nota2'
                bim = "Segundo Bimestre"
            elif bimestre == 3:
                periodo = 'periodo_nota3'
                bim = "Tercer Bimestre"
            elif bimestre == 4:
                periodo = 'periodo_nota4'
                bim = "Cuarto Bimestre"

            try:
                conn = Conexion(periodo)
                query = '''
                DROP TABLE IF EXISTS notas_bimestre;
                '''
                conn.ejecutar_sentencia(query)
            except Exception as e:
                print(f'{str(e)}')

            try:
                conn = Conexion(periodo)
                query = '''
                    CREATE TABLE IF NOT EXISTS notas_bimestre(
                        id_notas_bimestre SERIAL PRIMARY KEY NOT NULL,
                        nombre varchar(50) NOT NULL,
                        codigo varchar(50) NOT NULL,
                        salon varchar(50) NOT NULL,
                        matematica decimal,
                        religion decimal,
                        comunicacion decimal,
                        ingles decimal,
                        historia decimal,
                        promedio decimal
                    );
                '''
                conn.ejecutar_sentencia(query)

            except Exception as e:
                print(f'{str(e)}')

            try:
                conn = Conexion(periodo)
                query = f'''
                INSERT INTO notas_bimestre(nombre, codigo, salon, matematica, religion, comunicacion, ingles, historia, promedio)  SELECT nombre, codigo, salon, matematica, religion, comunicacion, ingles, historia, promedio FROM alumnos  INNER JOIN {periodo} on alumnos.id_{periodo} = {periodo}.id_{periodo} WHERE alumnos.id_alumno={id_alumno}
                '''
                cursor = conn.execute_query(query)
                conn.commit()

            except Exception as e:
                print(f'{str(e)}')

            finally:
                conn.close_connection()

            notas_bimestre = Notas_bimestre()
            print(f'''
                ======================================================
                    Notas del alumno {alumno[1]} en el {bim}
                =======================================================
                ''')
            notas = self.notas_bimestre.obtener_notas_bimestre(
                'id_notas_bimestre')
            print(
                print_table(notas, [
                    'ID', 'Nombre', 'Códgo', 'Salón', 'Matemática', 'Religión',
                    'Comunicación', 'Inglés', 'Historia', 'Promedio'
                ]))
            input("\nPresione una tecla para continuar...")