示例#1
0
class PeriodoController:
    def __init__(self):
        self.periodo = ModelPeriodo()
        self.validacion_class = Validacion()

    def list_periodos(self):
        Periodos = self.periodo.get_periodo_all('nombre_periodo')
        texto = ''
        for periodo in Periodos:
            texto += f'''{periodo[0]}  - {periodo[1]}   - {periodo[2]}   - {periodo[3]} \n'''
        print(texto)

    def lista_periodo_multiple_conditions(self):
        periodo_multiple_condition = self.periodo.get_periodo_by_multiple_condition(
            self.valores_filtrar())
        texto = ''
        for periodo in periodo_multiple_condition:
            texto += f'''{periodo[0]}  - {periodo[1]}   - {periodo[2]}   - {periodo[3]} \n'''
        print(texto)

    def insert_periodo_data(self):
        nombre_periodo = Validacion.validar_texto('Ingrese el periodo escolar')
        fecha_desde = Validacion.validar_fecha_inicio(
            'Ingresar fecha de inicio del periodo escolar')
        fecha_hasta = Validacion.validar_fecha_fin(
            'Ingresar fecha de fin del periodo escolar')

        data = {
            'nombre_periodo': nombre_periodo,
            'fecha_desde': fecha_desde,
            'fecha_hasta': fecha_hasta
        }
        self.periodo.insert_periodo(data)
        print('Se creo con exito')

    def update_periodo(self):

        print('''
                ingrese los campos que desea editar:
            \n''')
        conditions_filter = self.valores_filtrar()

        print('''
                ingrese los nuevos valores del registro a EDITAR:
            \n''')
        nombre_periodo = Validacion.validar_texto(
            'Ingrese el nuevo periodo escolar')
        fecha_desde = Validacion.validar_fecha_inicio(
            'Ingrese la nueva fecha de inicio del periodo')
        fecha_hasta = Validacion.validar_fecha_fin(
            'Ingrese la nueva fecha de fin del periodo')
        values_to_update = {
            'nombre_periodo': nombre_periodo,
            'fecha_desde': fecha_desde,
            'fecha_hasta': fecha_hasta
        }

        self.periodo.update_periodo(values_to_update, conditions_filter)
        print('Se actualizó con exito')

    def delete_periodo(self):
        print('''
                ingrese el ID del periodo que desea eliminar:
            \n''')
        self.periodo.delete_periodo(self.valores_filtrar())
        print('Se eliminó con exito')

    def valores_filtrar(self):
        diccionario = {}
        opcion_ID = self.opcion_filtrar('Desea Filtrar por ID', "A")
        if (opcion_ID != -1):
            diccionario['id_periodo'] = opcion_ID

        opcion_periodo = self.opcion_filtrar(
            'Desea Filtrar por Nombre de periodo', "B")
        if (opcion_periodo != -1):
            diccionario['nombre_periodo'] = opcion_periodo
        return diccionario

    def opcion_filtrar(self, comentario, valor):
        while (True):
            print(f'''
                   {comentario}?
                    1)Si
                    2)No
                \n''')
            opcionID = input('Ingresa el n° : ')
            if opcionID == '1':
                if (valor == 'A'):
                    return self.ingresar_id()
                if (valor == 'B'):
                    return self.ingresar_nombre_periodo()

            elif opcionID == '2':
                return -1
            else:
                print('No escogiste una opción valida')

    def ingresar_nombre_periodo(self):
        while (True):
            texto = Validacion.validar_texto(
                'Ingrese el nombre del periodo o parte del nombre del periodo a buscar'
            )
            if (self.validacion_class.validar_periodo_correcto):
                return texto
            else:
                print('No se encontraron coincidencias')

    def ingresar_id(self):
        while (True):
            try:
                while (True):
                    opcion = int(input('Ingresa el ID del periodo escolar : '))
                    if (self.validacion_class.validar_id_correcto_periodo(
                            opcion)):
                        return opcion
                    else:
                        print('ID ingresado no existe')
                break
            except ValueError:
                print('Error: ID ingresado invalido')
示例#2
0
class MallaCurricularController:
    def __init__(self):
        self.malla_curricular=Model_Malla_Curricular()
        self.validacion_class=Validacion()

    def list_malla_curricular(self):
        lista_mallas_curriculares=self.malla_curricular.get_malla_curricular_all('id_malla')
        texto=''
        for malla_curricular in lista_mallas_curriculares:
            texto+=f'''{malla_curricular[0]}  - {malla_curricular[1]}   - {malla_curricular[2]} - {malla_curricular[3]}\n'''
        print (texto)

    #def list_alumno_condition(self):
    #    id=input('Ingrese el ID a buscar: ')
    #    alumno_condition=self.alumno.get_alumno_one_condition({
    #        'alumno_id':id,
    #        })
    #    print (alumno_condition)

    def lista_malla_curricular_multiple_conditions(self):
        lista_mallas_curriculares=self.malla_curricular.get_malla_curricular_by_multiple_condition(self.valores_filtrar())
        texto=''
        for malla_curricular in lista_mallas_curriculares:
            texto+=f'''{malla_curricular[0]}  - {malla_curricular[1]}   - {malla_curricular[2]} - {malla_curricular[3]}\n'''
        print (texto)

    def insert_malla_curricular(self):
        id_periodo=self.ingresar_periodo_id()
        id_salon=self.ingresar_salon_id()
        id_profeso_cursor=self.ingresar_profesor_curso_id()
        
        
        data={
            'id_periodo':id_periodo,
            'id_salon':id_salon,
            'id_profesor_curso':id_profeso_cursor,
            }
        self.malla_curricular.insert_malla_curricular(data)
        print('Se creo con exito')  

    def update_malla_curricular(self):
        
        print('''
                ingrese los campos que desea editar:
            \n''')
        conditions_filter=self.valores_filtrar()

        print('''
                ingrese los nuevos valores del registro a EDITAR:
            \n''')
        id_periodo=self.ingresar_periodo_id()
        id_salon=self.ingresar_salon_id()
        id_profeso_cursor=self.ingresar_profesor_curso_id()
        
        
        values_to_update={
            'id_periodo':id_periodo,
            'id_salon':id_salon,
            'id_profesor_curso':id_profeso_cursor,
            }
        

        self.malla_curricular.update_malla_curricular(values_to_update, conditions_filter)
        print('Se actualizo con exito')
        
    def delete_malla_curricular(self):
        print('''
                ingrese el ID del alumno que desea eliminar:
            \n''')
        self.malla_curricular.delete_malla_curricular(self.valores_filtrar())
        print('Se elimino con exito')
        
       
    def valores_filtrar(self):
        diccionario={}
        opcion_ID=self.opcion_filtrar('Desea Filtrar por ID de malla curricular',"A")
        if (opcion_ID!=-1):
            diccionario['id_malla']=opcion_ID

        opcion_ID=self.opcion_filtrar('Desea Filtrar por periodo',"B")
        if (opcion_ID!=-1):
            diccionario['id_periodo']=opcion_ID

        opcion_ID=self.opcion_filtrar('Desea Filtrar por Salon',"C")
        if (opcion_ID!=-1):
            diccionario['id_salon']=opcion_ID   
        
        opcion_ID=self.opcion_filtrar('Desea Filtrar por profesor_curso',"D")
        if (opcion_ID!=-1):
            diccionario['id_profesor_curso']=opcion_ID   
        
        return diccionario 
    
    def opcion_filtrar(self,comentario,valor):
        while(True):
            print(f'''
                   {comentario}?
                    1)Si
                    2)No
                \n''')
            opcionID = input('Ingresa el n° : ')
            if opcionID == '1':
                if(valor=='A'):
                    return self.ingresar_malla_curricular_id()
                if(valor=='B'):
                    return self.ingresar_periodo_id()
                if(valor=='C'):
                    return self.ingresar_salon_id()
                if(valor=='D'):
                    return self.ingresar_profesor_curso_id()

            elif opcionID == '2':
                return -1
            else:
                print('No escogiste una opción valida')
    
    def ingresar_profesor_curso_id(self):
        while(True):
            try:
                while(True): 
                    opcion = int(input('Ingresa el ID del registro profesor_curso que desea buscar : '))
                    if(self.validacion_class.validar_id_correcto_profesor_curso(opcion)):
                        return opcion
                    else:
                        print('ID ingresado no existe')
                break
            except ValueError:
                print('Error: ID ingresado invalido')
    def ingresar_salon_id(self):
        while(True):
            try:
                while(True): 
                    opcion = int(input('Ingresa el ID del Salon: '))
                    if(self.validacion_class.validar_id_correcto_salon(opcion)):
                        return opcion
                    else:
                        print('ID ingresado no existe')
                break
            except ValueError:
                print('Error: ID ingresado invalido')
    def ingresar_periodo_id(self):
        while(True):
            try:
                while(True): 
                    opcion = int(input('Ingresa el ID del periodo escolar : '))
                    if(self.validacion_class.validar_id_correcto_periodo(opcion)):
                        return opcion 
                    else:
                        print('ID ingresado no existe')
                break
            except ValueError:
                print('Error: ID ingresado invalido')

    def ingresar_malla_curricular_id(self):
        while(True):
            try:
                while(True): 
                    opcion = int(input('Ingresa el ID de la malla curricular : '))
                    if(self.validacion_class.validar_id_correcto_malla_curricular(opcion)):
                        return opcion 
                    else:
                        print('ID ingresado no existe')
                break
            except ValueError:
                print('Error: ID ingresado invalido')