def __init__(self): self.profesor = Profesor() self.curso = Curso() self.profesor_curso = Profesor_curso() self.salon = Salon() self.profesor_salon = Profesor_salon() self.salir = False
def __init__(self): self.malla = Malla() self.nota = Nota() self.salon = Salon() self.periodo = Periodo() self.profesor_curso = Profesor_curso() self.salir = False
class Salones_controller: def __init__(self): self.salones = Salon() def menu(self): while True: try: print(''' ============= Salones ============= ''') menu = ['Listar Salones', 'Buscar Salones', "Salir"] respuesta = Menu(menu).show() if respuesta == 1: self.listar_salones() elif respuesta == 2: self.buscar_salones() else: self.salir = True break except Exception as e: print(f'{str(e)}') def listar_salones(self): print(''' ======================== Lista de Salones ======================== ''') salon = self.salones.obtener_salones('id_salon') print(print_table(salon, ['ID', 'Grado', 'Nombre Salon'])) input("\nPresione una tecla para continuar...") def buscar_salones(self): print(''' =========================== Buscar Salon =========================== ''') try: id_salon = input_data("Ingrese el ID del salon>> ", "int") salon = self.salones.obtener_salon({'id_salon': id_salon}) print(print_table(salon, ['ID', 'Nombre Salon'])) except Exception as e: print(f'{str(e)}') input("\nPresione una tecla para continuar...")
class Profesores_controller: def __init__(self): self.profesor = Profesor() self.curso = Curso() self.profesor_curso = Profesor_curso() self.salon = Salon() self.profesor_salon = Profesor_salon() self.salir = False def menu(self): while True: try: print(''' =================== Profesores =================== ''') menu = [ 'Listar profesores', 'Buscar profesor', "Nuevo profesor", "Salir" ] respuesta = Menu(menu).show() if respuesta == 1: self.listar_profesores() elif respuesta == 2: self.buscar_profesor() elif respuesta == 3: self.insertar_profesor() else: self.salir = True break except Exception as e: print(f'{str(e)}') def listar_profesores(self): print(''' =========================== Lista de Profesores =========================== ''') profesores = self.profesor.obtener_profesores('profesor_id') print(print_table(profesores, ['ID', 'Nombre', 'Edad', 'Correo'])) input("\nPresione una tecla para continuar...") def buscar_profesor(self): print(''' =========================== Buscar Profesor =========================== ''') try: id_profesor = input_data("Ingrese el ID del profesor >> ", "int") profesor = self.profesor.obtener_profesor( {'profesor_id': id_profesor}) print(print_table(profesor, ['ID', 'Nombre', 'Edad', 'Correo'])) if profesor: if pregunta( f"¿Deseas dar mantenimiento al registro profesor '{profesor[1]}'?" ): opciones = [ 'Asignar curso', 'Asignar salon', 'Editar profesor', 'Eliminar profesor', 'Salir' ] respuesta = Menu(opciones).show() if respuesta == 1: self.asignar_curso(id_profesor, profesor) elif respuesta == 2: self.asignar_salon(id_profesor, profesor) elif respuesta == 3: self.editar_profesor(id_profesor) elif respuesta == 4: self.eliminar_profesor(id_profesor) except Exception as e: print(f'{str(e)}') input("\nPresione una tecla para continuar...") def insertar_profesor(self): nombre = input_data("Ingrese el nombre del profesor >> ") edad = input_data("Ingrese la edad del profesor >> ") correo = input_data("Ingrese el correo del profesor >> ") self.profesor.guardar_profesor({ 'nombres': nombre, 'edad': edad, 'correo': correo }) print(''' ================================= Nuevo Profesor agregado ! ================================= ''') self.listar_profesores() def editar_profesor(self, id_profesor): nombre = input_data("Ingrese el nuevo nombre del profesor >> ") edad = input_data("Ingrese la nueva edad del profesor >> ") correo = input_data("Ingrese el nuevo correo del profesor >> ") self.profesor.modificar_profesor({'profesor_id': id_profesor}, { 'nombres': nombre, 'edad': edad, 'correo': correo }) print(''' ========================== Profesor Editado ! ========================== ''') def eliminar_profesor(self, id_profesor): self.profesor.eliminar_profesor({'profesor_id': id_profesor}) print(''' =========================== Profesor Eliminado ! =========================== ''') def asignar_curso(self, id_profesor, profesor): print(f'\n Asignación de cursos para el profesor : {profesor[1]}') print(''' ============================ Curso disponibles ============================ ''') cursos = self.curso.obtener_cursos('curso_id') cursos_disponibles = [] if cursos: for curso in cursos: id_curso = curso[0] nombre_curso = curso[1] cursos_profesor = self.profesor_curso.buscar_profesor_cursos({ 'id_profesor': id_profesor, 'id_curso': id_curso }) if not cursos_profesor: cursos_disponibles.append({ 'id': id_curso, 'Cursos disponibles': nombre_curso }) print(print_table(cursos_disponibles)) curso_seleccionado = input_data( f'\nSeleccione el ID del curso a asignar al profesor: {profesor[1]} >> ', 'int') buscar_curso = self.curso.obtener_curso( {'curso_id': curso_seleccionado}) if not buscar_curso: print('\nEste curso no existe !') return cursos_profesor = self.profesor_curso.buscar_profesor_cursos({ 'id_profesor': id_profesor, 'id_curso': curso_seleccionado }) if cursos_profesor: print('\nEste curso ya esta asignado al profesor !') return self.profesor_curso.guardar_profesor_curso({ 'id_profesor': id_profesor, 'id_curso': curso_seleccionado }) print(''' ============================== Nuevo curso asignado ! ============================== ''') def asignar_salon(self, id_profesor, profesor): print(f'\n Asignación de salones para el profesor : {profesor[1]}') print(''' ============================ Salones disponibles ============================ ''') salon = self.salon.obtener_salones('id_salon') salon_disponibles = [] if salon: for salones in salon: id_salon = salones[0] grado_salon = salones[1] nombre_salon = salones[2] salon_profesor = self.profesor_salon.buscar_profesor_salones({ 'id_profesor': id_profesor, 'id_salon': id_salon }) if not salon_profesor: salon_disponibles.append({ 'id': id_salon, 'Salones disponibles': grado_salon, 'Nombre Salon': nombre_salon }) print(print_table(salon_disponibles)) salon_seleccionado = input_data( f'\nSeleccione el ID del salon a asignar al profesor: {profesor[1]} >> ', 'int') buscar_salon = self.salon.obtener_salon( {'id_salon': salon_seleccionado}) if not buscar_salon: print('\nEste curso no existe !') return salon_profesor = self.profesor_salon.buscar_profesor_salones({ 'id_profesor': id_profesor, 'id_salon': salon_seleccionado }) if salon_profesor: print('\nEste curso ya esta asignado al profesor !') return self.profesor_salon.guardar_profesor_salon({ 'id_profesor': id_profesor, 'id_salon': salon_seleccionado }) print(''' ============================== Nuevo salon asignado ! ============================== ''')
class Habilitar_controller: def __init__(self): self.profesor = Profesor() self.curso = Curso() self.profesor_curso = Profesor_curso() self.periodo = Periodo() self.salon = Salon() self.malla = Malla() self.salir = False def menu(self): while True: try: print(''' ======================= Habilitar Cursos ======================= ''') menu = ["Habilitar salon", "Salir"] respuesta = Menu(menu).show() if respuesta == 1: self.habilitar_salones() else: self.salir = True break except Exception as e: print(f'{str(e)}') def habilitar_salones(self): print(''' ============================================= Habilitar curso por salones y periodo ============================================= ''') print('De la siguiente lista elija el periodo que se habilitara >>\n') periodos = self.periodo.obtener_periodos('id_periodo') print(print_table(periodos, ['ID', 'Nombre', 'Desde', 'Hasta'])) id_periodo_elegido = input_data("\nEscriba el ID del periodo escolar >> ", "int") buscar_periodo = self.periodo.obtener_periodo({'id_periodo': id_periodo_elegido}) if not buscar_periodo: print('\nEl periodo elegido no existe !') return print(f'\nElija el salon para el periodo: {buscar_periodo[1]} >> ') salones = self.salon.obtener_salones('id_salon') print(print_table(salones, ['ID', 'Nombre'])) id_salon_elegido = input_data("\nEscriba el ID del salon >> ", "int") buscar_salon = self.salon.obtener_salon({'id_salon': id_salon_elegido}) if not buscar_salon: print('\nEl salon elegido no existe !') return print(f'\nElija el curso a habilitar para el salon: {buscar_salon[1]} >> ') cursos_profesores = self.profesor_curso.obtener_profesor_cursos('id_profesor_curso') cursos_disponibles = [] if cursos_profesores: for pro_cur in cursos_profesores: curso_id = pro_cur[2] profesor_id = pro_cur[1] id_profesor_curso = pro_cur[0] curso = self.curso.obtener_curso({'curso_id': curso_id}) curso_nombre = curso[1] profesor = self.profesor.obtener_profesor({'profesor_id': profesor_id}) profesor_nombre = profesor[1] mallas = self.malla.buscar_mallas({ 'id_periodo': id_periodo_elegido, 'id_salon': id_salon_elegido, 'id_profesor_curso': id_profesor_curso }) if not mallas: cursos_disponibles.append({ 'codigo': id_profesor_curso, 'curso': curso_nombre, 'profesor_asignado': profesor_nombre }) else: for curso_disponible in cursos_disponibles: if curso_disponible['curso'] == curso_nombre: cursos_disponibles.remove(curso_disponible) print(print_table(cursos_disponibles)) id_profesor_curso = input_data('\nEscriba el codigo del curso disponible >> ', 'int') buscar_profesor_curso = self.profesor_curso.obtener_profesor_curso({'id_profesor_curso': id_profesor_curso}) if not buscar_profesor_curso: print('\nEl codigo escogido no existe como curso disponible') return mallas = self.malla.buscar_mallas({ 'id_periodo': id_periodo_elegido, 'id_salon': id_salon_elegido }) if mallas: for malla in mallas: pro_curso = self.profesor_curso.obtener_profesor_curso({'id_profesor_curso': malla[3]}) if pro_curso[2] == buscar_profesor_curso[2]: print('\nEste curso ya existe para el salon en el periodo escogido !') return self.malla.guardar_malla({ 'id_periodo': id_periodo_elegido, 'id_salon': id_salon_elegido, 'id_profesor_curso': id_profesor_curso }) print(''' ============================================================= Curso habilitado con exito para el salon y el periodo ============================================================= ''') input('\nPresione una tecla para continuar...')
class Periodo_controller: def __init__(self): self.periodo = Periodo() self.profesor_curso = Profesor_curso() self.profesor = Profesor() self.malla = Malla() self.curso = Curso() self.salon = Salon() self.salir = False def menu(self): while True: try: print(''' =============== Periodos =============== ''') menu = [ 'Listar periodos', 'Buscar periodo', "Nuevo periodo", "Salir" ] respuesta = Menu(menu).show() if respuesta == 1: self.listar_periodo() elif respuesta == 2: self.buscar_periodo() elif respuesta == 3: self.insertar_periodo() else: self.salir = True break except Exception as e: print(f'{str(e)}') def listar_periodo(self): print(''' ======================== Lista de Periodos ======================== ''') periodo = self.periodo.obtener_periodos('id_periodo') print( print_table(periodo, ['ID', 'Periodo', 'Inicio', 'Fin', 'Estado'])) input("\nPresione una tecla para continuar...") def buscar_periodo(self): print(''' ===================== Buscar Periodo ===================== ''') try: id_periodo = input_data("Ingrese el ID del periodo >> ", "int") periodo = self.periodo.obtener_periodo({'id_periodo': id_periodo}) print( print_table(periodo, ['ID', 'Periodo', 'Inicio', 'Fin', 'Estado'])) if periodo: if pregunta("¿Deseas dar mantenimiento a este periodo?"): opciones = [ 'Asignar una malla al periodo escolar', 'Editar periodo escolar', 'Eliminar periodo escolar', 'Aperturar periodo escolar', 'Cerrar periodo escolar', 'Salir' ] respuesta = Menu(opciones).show() if respuesta == 1: self.agregar_malla(id_periodo, periodo) elif respuesta == 2: self.editar_periodo(id_periodo) elif respuesta == 3: self.eliminar_periodo(id_periodo) elif respuesta == 4: self.aperturar_periodo(id_periodo) elif respuesta == 5: self.cerrar_periodo(id_periodo) except Exception as e: print(f'{str(e)}') input("\nPresione una tecla para continuar...") def insertar_periodo(self): nombre_periodo = input_data("Ingrese el nombre del periodo >> ") fecha_desde = input_data("Ingrese desde cuando inicia el periodo >> ") fecha_hasta = input_data( "Ingrese hasta cuando finaliza el periodo >> ") self.periodo.guardar_periodo({ 'nombre_periodo': nombre_periodo, 'fecha_desde': fecha_desde, 'fecha_hasta': fecha_hasta }) print(''' ============================== Nuevo Periodo agregado ! ============================== ''') self.listar_periodo() def editar_periodo(self, id_periodo): nombre_periodo = input_data("Ingrese el nuevo nombre del periodo >> ") fecha_desde = input_data( "Ingrese desde cuando inicia el nuevo periodo >> ") fecha_hasta = input_data( "Ingrese hasta cuando finaliza el nuevo periodo >> ") self.periodo.modificar_periodo({'id_periodo': id_periodo}, { 'nombre_periodo': nombre_periodo, 'fecha_desde': fecha_desde, 'fecha_hasta': fecha_hasta }) print(''' ======================== Periodo Editado ! ======================== ''') def cerrar_periodo(self, id_periodo): periodo = self.periodo.obtener_periodo({'id_periodo': id_periodo}) if pregunta(f'¿Seguro que desea cerrar el periodo {periodo[1]}?'): self.periodo.modificar_periodo({'id_periodo': id_periodo}, {'estado_periodo': 'cerrado'}) print(''' ======================== Periodo Editado ! ======================== ''') def aperturar_periodo(self, id_periodo): periodo = self.periodo.obtener_periodo({'id_periodo': id_periodo}) if pregunta(f'¿Seguro que desea aperturar el periodo {periodo[1]}?'): self.periodo.modificar_periodo({'id_periodo': id_periodo}, {'estado_periodo': 'aperturado'}) print(''' ======================== Periodo Editado ! ======================== ''') def eliminar_periodo(self, id_periodo): self.periodo.eliminar_periodo({'id_periodo': id_periodo}) print(''' ======================== Periodo Eliminado ! ======================== ''') def agregar_malla(self, id_periodo, periodo): print( f'\n Por favor elige el grado o salón para el que desea trabajar su malla curricular :' ) salon_seleccionado = [] salones_1 = self.salon.obtener_salones('id_salon') print(print_table(salones_1, ['ID', 'Salón', 'Nombre del Salon'])) id_salon_seleccionado = input_data( "Seleccione el ID del salón a trabajar su malla: >> ", "int") salon_seleccionado = self.salon.obtener_salon( {'id_salon': id_salon_seleccionado}) print( f'\n Creación de la malla curricular para el periodo : {periodo[1]} y salón: {salon_seleccionado[1]}' ) print(f''' ======================================================= Malla curricular del Salón: {salon_seleccionado[1]} ======================================================= ''') #malla_periodo = self.malla.obtener_malla({'id_periodo': id_periodo,'id_salon': id_salon_seleccionado}) malla_periodo = self.malla.obtener_malla({ 'id_periodo': id_periodo, 'id_salon': id_salon_seleccionado }) print( print_table(malla_periodo, ['ID', 'ID_Periodo', 'ID_salon', 'ID_Profesor'])) mallas_imprimir = [] if malla_periodo: for v in malla_periodo: id_malla = v[0] id_periodo1 = v[1] id_salon1 = v[2] id_profesor_curso1 = v[3] nomb_periodo = self.periodo.obtener_periodo( {'id_periodo': id_periodo1}) if not nomb_periodo: nomb_periodo = '' nomb_salon = self.salon.obtener_salon({'id_salon': id_salon1}) if not nomb_salon: nomb_salon = '' nomb_profesor_curso = self.profesor_curso.obtener_profesor_curso( {'id_profesor_curso': id_profesor_curso1}) if not nomb_profesor_curso: nomb_profesor_curso = '' break nombre_profe = self.profesor.obtener_profesor( {'profesor_id': nomb_profesor_curso[1]}) if not nombre_profe: nombre_profe = '' nombre_curso1 = self.curso.obtener_curso( {'curso_id': nomb_profesor_curso[2]}) if not nombre_curso1: nombre_curso1 = '' mallas_imprimir.append({ 'id': id_malla, 'Periodo': nomb_periodo[1], 'Salon': nomb_salon[1], 'Profesor': nombre_profe[1], 'Curso': nombre_curso1[1], 'Codigo_curso_profe': id_profesor_curso1 }) print(print_table(mallas_imprimir)) if pregunta( f'¿Deseas ver la relación de cursos dictados por profesores?' ): curso_profe_1 = self.profesor_curso.obtener_profesor_cursos( 'id_profesor_curso') print(print_table(curso_profe_1, ['ID', 'Profesor', 'Curso'])) else: curso_profe_1 = [] id_curso_profe_seleccionado = input_data( "Seleccione el código profesor curso : >> ", "int") self.malla.guardar_malla({ 'id_periodo': id_periodo, 'id_salon': id_salon_seleccionado, 'id_profesor_curso': id_curso_profe_seleccionado }) print(''' ============================== Malla agregada ! ============================== ''')
def __init__(self): self.salones = Salon()
class Notas_controller: def __init__(self): self.profesor = Profesor() self.curso = Curso() self.profesor_curso = Profesor_curso() self.periodo = Periodo() self.salon = Salon() self.malla = Malla() self.nota = Nota() self.alumno = Alumno() self.salir = False def menu(self): while True: try: print(''' ======================== Registro de Notas ======================== ''') menu = ["Listado de notas", "Registrar notas", "Salir"] respuesta = Menu(menu).show() if respuesta == 1: self.listar_notas() elif respuesta == 2: self.registrar_notas() else: self.salir = True break except Exception as e: print(f'{str(e)}') def listar_notas(self): print(''' ======================== Listado de Notas ======================== ''') notas = self.nota.obtener_notas('id_nota') lista_notas = [] if notas: for nota in notas: buscar_alumno = self.alumno.obtener_alumno( {'alumno_id': nota[1]}) buscar_malla = self.malla.obtener_malla({'id_malla': nota[2]}) nota_calificacion = nota[3] periodo = self.periodo.obtener_periodo( {'id_periodo': buscar_malla[1]}) salon = self.salon.obtener_salon({'id_salon': buscar_malla[2]}) profesor_curso = self.profesor_curso.obtener_profesor_curso( {'id_profesor_curso': buscar_malla[3]}) curso = self.curso.obtener_curso( {'curso_id': profesor_curso[2]}) profesor = self.profesor.obtener_profesor( {'profesor_id': profesor_curso[1]}) lista_notas.append( (nota[0], buscar_alumno[1], periodo[1], salon[1], curso[1], profesor[1], nota_calificacion)) print( print_table(lista_notas, [ 'ID', 'Alumno', 'Periodo Escolar', 'Salon', 'Curso', 'Profesor', 'Nota' ])) input("\nPresione una tecla para continuar...") def registrar_notas(self): print(''' =================================================== Registro de notas para los alumnos por salon =================================================== ''') print('Eliga el alumno que se le asignara una nota >> \n') alumnos = self.alumno.obtener_alumnos('alumno_id') print(print_table(alumnos, ['ID', 'Nombres', 'Edad', 'Correo'])) id_alumno_elegido = input_data('\nEscriba el ID del alumno >> ', 'int') buscar_alumno = self.alumno.obtener_alumno( {'alumno_id': id_alumno_elegido}) if not buscar_alumno: print('\nEl alumno elegido no existe !') return print( f'\nElija el curso y periodo a ser añadido a {buscar_alumno[1]} >> ' ) mallas = self.malla.obtener_mallas('id_malla') lista_mallas = [] if mallas: for malla in mallas: periodo = self.periodo.obtener_periodo( {'id_periodo': malla[1]}) salon = self.salon.obtener_salon({'id_salon': malla[2]}) profesor_curso = self.profesor_curso.obtener_profesor_curso( {'id_profesor_curso': malla[3]}) curso = self.curso.obtener_curso( {'curso_id': profesor_curso[2]}) profesor = self.profesor.obtener_profesor( {'profesor_id': profesor_curso[1]}) notas_agregadas = self.nota.buscar_notas({ 'id_alumno': id_alumno_elegido, 'id_malla': malla[0] }) if not notas_agregadas: lista_mallas.append((malla[0], periodo[1], salon[1], curso[1], profesor[1])) print( print_table( lista_mallas, ['Codigo', 'Periodo Escolar', 'Salon', 'Curso', 'Profesor'])) id_malla_elegida = input_data('\nEscriba el codigo de la malla >> ', 'int') buscar_malla = self.malla.obtener_malla({'id_malla': id_malla_elegida}) if not buscar_malla: print('\nEsta malla no existe !') return notas_alumnos = self.nota.buscar_notas({ 'id_alumno': id_alumno_elegido, 'id_malla': id_malla_elegida }) if notas_alumnos: print( f'\nYa existe una nota para el alumno {buscar_alumno[1]} en el curso seleccionado !' ) return periodo = self.periodo.obtener_periodo({'id_periodo': buscar_malla[1]}) salon = self.salon.obtener_salon({'id_salon': buscar_malla[2]}) profesor_curso = self.profesor_curso.obtener_profesor_curso( {'id_profesor_curso': buscar_malla[3]}) curso = self.curso.obtener_curso({'curso_id': profesor_curso[2]}) profesor = self.profesor.obtener_profesor( {'profesor_id': profesor_curso[1]}) while True: print(f'\nAlumno: {buscar_alumno[1]}') print(f'Periodo: {periodo[1]}') print(f'Salon: {salon[1]}') print(f'Profesor: {profesor[1]}') print(f'Curso: {curso[1]}') nota_ingresada = input_data('\nNota: >> ', 'int') if nota_ingresada > 20: print("La nota ingresada debe ser menor a 20!") else: break self.nota.guardar_nota({ 'id_alumno': id_alumno_elegido, 'id_malla': id_malla_elegida, 'nota': nota_ingresada }) print(''' ============================== Se califico al alumno ! ============================== ''') input("\nPresione una tecla para continuar...")
def __init__(self): self.salon = Salon() self.salir = False
class Salon_controller(): def __init__(self): self.salon = Salon() self.salir = False def menu(self): while True: try: print(''' ================ Salones ================ ''') menu = [ 'Listar salones', 'Buscar salon', "Nuevo salon", "Salir" ] respuesta = Menu(menu).show() if respuesta == 1: self.listar_salones() elif respuesta == 2: self.buscar_salon() elif respuesta == 3: self.insertar_salon() else: self.salir = True break except Exception as e: print(f'{str(e)}') def listar_salones(self): print(''' ======================== Lista de salons ======================== ''') salons = self.salon.obtener_salones('id_salon') print(print_table(salons, ['ID', 'Nombre'])) input("\nPresione una tecla para continuar...") def buscar_salon(self): print(''' ===================== Buscar salon ===================== ''') try: id_salon = input_data("Ingrese el ID del salon >> ", "int") salon = self.salon.obtener_salon({'id_salon': id_salon}) print(print_table(salon, ['ID', 'Nombre'])) if salon: if pregunta("¿Deseas dar mantenimiento al salon?"): opciones = ['Editar salon', 'Eliminar salon', 'Salir'] respuesta = Menu(opciones).show() if respuesta == 1: self.editar_salon(id_salon) elif respuesta == 2: self.eliminar_salon(id_salon) except Exception as e: print(f'{str(e)}') input("\nPresione una tecla para continuar...") def insertar_salon(self): nombre = input_data("Ingrese el nombre del salon >> ") self.salon.guardar_salon({'nombre_salon': nombre}) print(''' ============================== Nuevo salon agregado ! ============================== ''') self.listar_salones() def editar_salon(self, id_salon): nombre = input_data("Ingrese el nuevo nombre del salon >> ") self.salon.modificar_salon({'id_salon': id_salon}, {'nombre_salon': nombre}) print(''' ======================== Salon Editado ! ======================== ''') def eliminar_salon(self, id_salon): self.salon.eliminar_salon({'id_salon': id_salon}) print(''' ======================== Salon Eliminado ! ======================== ''')
class Malla_curricular_controller: def __init__(self): self.malla = Malla() self.nota = Nota() self.salon = Salon() self.periodo = Periodo() self.profesor_curso = Profesor_curso() self.salir = False def menu(self): while True: try: print(''' ======================== Malla Curricular ======================== ''') menu = [ 'Listar malla curricular', 'Buscar malla curricular', 'Nueva malla curricular', "Salir" ] respuesta = Menu(menu).show() if respuesta == 1: self.listar_malla() elif respuesta == 2: self.buscar_malla() elif respuesta == 3: self.insertar_malla() else: self.salir = True break except Exception as e: print(f'{str(e)}') def listar_malla(self): print(''' ================================== Lista de Malla Curricular ================================== ''') malla = self.malla.obtener_mallas('id_malla') print( print_table( malla, ['id_malla', 'id_periodo', 'id_salon', 'id_profesor_curso'])) input("\nPresione una tecla para continuar...") def buscar_malla(self): print(''' ================================== Buscar de Malla Curricular ================================== ''') try: id_malla = input_data("Ingrese el ID de la malla curricular >> ", "int") malla = self.malla.obtener_malla({'id_malla': id_malla}) print( print_table(malla, [ 'id_malla', 'id_periodo', 'id_salon', 'id_profesor_curso' ])) if malla: if pregunta( "¿Deseas dar mantenimiento a la malla curricular?"): opciones = ['Editar malla', 'Eliminar malla', 'Salir'] respuesta = Menu(opciones).show() if respuesta == 1: self.editar_malla(id_malla) elif respuesta == 2: self.eliminar_malla(id_malla) except Exception as e: print(f'{str(e)}') input("\nPresione una tecla para continuar...") def insertar_malla(self): print(''' ========================= Lista de Periodo ========================= ''') periodo = self.periodo.obtener_periodos('id_periodo') print( print_table( periodo, ['id_periodo', 'nombre_periodo', 'Fecha_desde', 'Fecha_hasta' ])) id_periodo = input_data("Ingrese el ID del periodo >> ", 'int') print(''' ========================== Lista de Salones ========================== ''') salones = self.salon.obtener_salones('id_salon') print(print_table(salones, ['id_salon', 'nombre_salon'])) id_salon = input_data("Ingrese la ID del salon >> ", 'int') print(''' ================================= Lista de Profesor Curso ================================= ''') profesor_curso = self.profesor_curso.obtener_profesor_cursos( 'id_profesor_curso') print( print_table(profesor_curso, ['id_profesor_curso', 'id_profesor', 'id_curso'])) id_profesor_curso = input_data("Ingrese el ID Curso Profesor >> ", 'int') self.malla.guardar_malla({ 'id_periodo': id_periodo, 'id_salon': id_salon, 'id_profesor_curso': id_profesor_curso }) print(''' ================================= Nueva Malla agregado ! ================================= ''') self.listar_malla() def editar_malla(self, id_malla): print(''' ========================= Lista de Periodo ========================= ''') periodo = self.periodo.obtener_periodos('id_periodo') print( print_table( periodo, ['id_periodo', 'nombre_periodo', 'Fecha_desde', 'Fecha_hasta' ])) id_periodo = input_data("Ingrese el ID del periodo >> ", 'int') print(''' ========================== Lista de Salones ========================== ''') salones = self.salon.obtener_salones('id_salon') print(print_table(salones, ['id_salon', 'nombre_salon'])) id_salon = input_data("Ingrese la ID del salon >> ", 'int') print(''' ================================= Lista de Profesor Curso ================================= ''') profesor_curso = self.profesor_curso.obtener_profesor_cursos( 'id_profesor_curso') print( print_table(profesor_curso, ['id_profesor_curso', 'id_profesor', 'id_curso'])) id_profesor_curso = input_data("Ingrese el ID Curso Profesor >> ", 'int') self.malla.modificar_malla({'id_malla': id_malla}, { 'id_periodo': id_periodo, 'id_salon': id_salon, 'id_profesor_curso': id_profesor_curso }) print(''' ========================== Malla Editada ! ========================== ''') def eliminar_malla(self, id_malla): self.malla.eliminar_malla({'id_malla': id_malla}) print(''' =========================== Malla Eliminado ! =========================== ''')