def prestamoLibros(self): self.__log.info("Entrando a prestamos de libros") opcionesPrestamoLibros = { "\t- Solicitar un libro": 1, "\t- Devolver un Libro": 2 } menuPrestamoLibros = Menu("Registro de Libros", opcionesPrestamoLibros) resmenuPrestamoLibros = menuPrestamoLibros.mostrarMenu() stopMenu = True while stopMenu: if resmenuPrestamoLibros == 1: self.__log.info("Entrando a prestamos de libros") libros = Libros() for libro in libros.all(): print( f"\t {libro.libro_id}\t {libro.nombre}\t {libro.isbn}\t {libro.autor_id}" ) isbnLibro = input("Escriba en ISBN del libro \n") Libros.table('libros').where('isbn', isbnLibro).update( estado_libro_id=estado_libro_id, estado='P') stopMenu = False elif resmenuPrestamoLibros == 2: self.__log.info("Entrando a devolucion de libros") libros = Libros() print('Ingrese el isbn del libro a devolver') print('Podrá encontrar el número en la tapa del libro') isbnDev = input('Ingrese el isbn aquí: ') Libros.table('libros').where('isbn', isbnDev).update( estado_libro_id=estado_libro_id, estado='D') stopMenu = False elif resmenuPrestamoLibros == 9: self._log.info("Saliendo")
def registroLibros(self): self.__log.info("Ingresando al Registro de Libros") opcionesRegistroLibros = {"\t- Registrar Libros":1,"\t- Listar Libros":2} menuRegistroLibros = Menu("Registro de Libros",opcionesRegistroLibros) resmenuRegistroLibros = menuRegistroLibros.mostrarMenu() stopMenu = True while stopMenu: if (resmenuRegistroLibros == 1): self.__log.info("Entrando al registro de libros") nuevoLibro = Libros() nombreLibro = input("escriba el nombre del Libro \n") isbnLibro = input("escriba en ISBN del libro \n") autores = Autor() print(f"\t Codigo\t Nombre\t Tipo") for obj in autores.all(): print(f"\t {obj.id}\t {obj.nombre}\t {obj.tipo}") print("Escriba el id del Autor de la siguiente lista") print("*Importante : Si no lo ve ingrese NA*") autor_idLibro = input() if (autor_idLibro == 'NA'): nuevoAutor = Autor() nombrenuevoAutor = input('Ingrese el nombre del Autor: ') correonuevoAutor = input('Ingrese el correo del Autor: ') tiponuevoAutor = input('Ingrese si (01) si es Autor o (02) si es Editorial: ') nuevoAutor.nombre = nombrenuevoAutor nuevoAutor.correo = correonuevoAutor nuevoAutor.tipo = tiponuevoAutor nuevoAutor.save() print('Inicializando menu de regsitro nuevamente') Registros.registroLibros() else: estados = Estado_libro() print(f"\t Codigo\t Estado") for obj in estados.all(): print(f"\t {obj.id}\t {obj.descripcion}") print("Escriba el id del Estado del Libro de la siguiente lista") estadoLibro = input() nuevoLibro.nombre = nombreLibro nuevoLibro.isbn = isbnLibro nuevoLibro.autor_id = autor_idLibro nuevoLibro.estado_libro_id = estadoLibro nuevoLibro.save() stopMenu = False elif resmenuRegistroLibros == 9: self._log.info("Saliendo")
def __init__(self): self.usuario = Usuario() self.libro = Libros() self.salir = False
def __init__(self): self.libro = Libros() self.autor = Autores() self.close = False
class Libros_Controller: def __init__(self): self.libro = Libros() self.autor = Autores() self.close = False def menu_libros(self): while True: try: print("\n\t Libros") print("\n\t----Menu de Opcion----") print(""" 1) Listar Libro - Autor 2) Listar Libros 3) Registrar Libro 4) Actualizar Libro 5) Eliminar Libro 6) Salir """) opcion = int(input("Seleccione una opcion: ")) if opcion == 1: self.listar_libro_autor() elif opcion == 2: self.listar_libros() elif opcion == 3: self.registro_libros() elif opcion == 4: self.actualizar_datos_libro() elif opcion == 5: self.eliminar_datos_libro() elif opcion == 6: pass else: print( "Valor seleccionado no existe en el menu, Intente nuevamente ..." ) except Exception as e: print(str(e)) def listado_libro_estado(self): estado_libro = self.libro.inner_join_libro_estado() if estado_libro: print("Lista Libro - Estado") print( "ID LIBRO NOMBRE DE LIBRO NOMBRE AUTOR APELLIDO AUTOR AÑO DE PUBLICACION EDITORIAL GENERO ESTADO" ) for i in estado_libro: print( f"({i[0]})\t ({i[1]})\t({i[2]})\t({i[3]})\t ({i[4]})\t ({i[5]})\t ({i[6]})\t ({i[7]})\t" ) else: print( "No se encuentra ningun Libro o Autor registrado en la base de datos" ) def listar_libro_autor(self): libros = self.libro.inner_join_libros() if libros: print("Lista Libro - Autor") print( "ID LIBRO NOMBRE DE LIBRO NOMBRE AUTOR APELLIDO AUTOR AÑO DE PUBLICACION EDITORIAL GENERO" ) for i in libros: print( f"({i[0]})\t ({i[1]})\t({i[2]})\t({i[3]})\t ({i[4]})\t ({i[5]})\t ({i[6]})\t" ) else: print( "No se encuentra ningun Libro o Autor registrado en la base de datos" ) def listar_libros(self): libros = self.libro.obtain_libros() if libros: print("Lista de Libros") print( "ID LIBRO NOMBRE FECHA PUBLICACION ID AUTOR ID EDITORIAL ID GENERO" ) for i in libros: print( f"({i[0]})\t ({i[1]})\t({i[2]})\t({i[3]})\t({i[4]})\t({i[5]})" ) else: print( "No se encuentra ningun cliente registrado en la base de datos" ) def listar_autores(self): autores = self.autor.obtain_autores() if autores: print("Lista de Clientes") print( "ID AUTOR NOMBRES APELLIDOS NACIONALIDAD" ) for i in autores: print(f"({i[0]})\t({i[1]})\t({i[2]})\t({i[3]})") else: print( "No se encuentra ningun cliente registrado en la base de datos" ) def registro_libros(self): print("Registro de Libros") nombre = input("Ingrese nombre de Libro: ") fecha_publicacion = input("Ingrese fecha de publicacion: ") self.listar_autores() autores = self.autor.obtain_autores() print("Seleccione autor que publico libro registrado: ") id_autor = int(input("Seleccione ID AUTOR: ")) for i in autores: if i[0] == id_autor: id_libro = i[0] self.libro.id_libro = id_libro self.libro.id_autor = id_autor print(id_autor) print(id_libro) print("\nEditoriales") print("-----------------") print(""" 1. Acantilado 2. Aguilar 3. Almadía 4. Alfaguara """) id_editorial = int(input("¿A que editorial pertenece?: ")) self.libro.id_editorial = id_editorial print("\nGeneros") print("-----------------") print(""" 1. Aventura 2. Ciencia Ficcion 3. Cuentos de Hadas 4. Piliciaca """) id_genero = int(input("¿A que editorial pertenece?: ")) print("\nEstados") print("-----------------") print(""" 1. Prestado 2. No Prestado """) id_estado_libro = int(input("¿A que editorial pertenece?: ")) if id_estado_libro == "": self.libro.id_estado_libro = id_estado_libro self.libro.nombre = nombre self.libro.fecha_publicacion = fecha_publicacion self.libro.id_genero = id_genero self.libro.id_estado_libro = id_estado_libro self.libro.insert_libros() def actualizar_datos_libro(self): self.listar_libros() libros = self.libro.obtain_libros() id_libro = int(input("Seleccione un alumno de la lista: ")) self.libro.id_libro = id_libro print("Datos que Actualizara") print("---------------------") respuesta = input("¿Esta seguro de actualizar nombre de Libro? Y/N:") if respuesta == 'Y' or respuesta == 'y': nombre = input("Ingrese el nuevo nombre de Libro: ") self.libro.nombre = nombre elif respuesta == 'N' or respuesta == 'n': for i in libros: if i[0] == id_libro: nombre = i[1] self.libro.nombre = nombre print(f"({i[0]})\t({i[1]})") print(nombre) respuesta = input( "¿Esta seguro de actualizar fecha_publicacion de Libro? Y/N:") if respuesta == 'Y' or respuesta == 'y': fecha_publicacion = input("Ingrese nombre completo: ") self.libro.fecha_publicacion = fecha_publicacion elif respuesta == 'N' or respuesta == 'n': for i in libros: if i[0] == id_libro: fecha_publicacion = i[2] self.libro.fecha_publicacion = fecha_publicacion print(f"({i[0]})\t({i[2]})") print(fecha_publicacion) self.libro.update_libro() def eliminar_datos_libro(self): self.listar_libros() id_libro = int( input("Seleccione alumno que desea eliminar sus datos: ")) self.libro.id_libro = id_libro respuesta = input( "¿Esta seguro que desea eliminar los datos del id seleccionado? Y/N: " ) if respuesta == 'Y' or respuesta == 'y': self.libro.delete_libro() else: self.menu_libros()
class LibrosController: def __init__(self): self.libros = Libros() self.usuario = Usuario() self.salir = False def menu(self): try: while True: print(''' ================== Libros ================== ''') lista_menu = [ "Listar", "Buscar", "Crear", "Actualizar", "Salir" ] respuesta = Menu(lista_menu).show() if respuesta == 1: self.all_libros() elif respuesta == 2: self.search_libro() elif respuesta == 3: self.insert_libro() elif respuesta == 4: self.update_libro() else: self.salir = True break except Exception as e: print(f'{str(e)}') def all_libros(self): print(''' ========================== Listar Libros ========================== ''') libros = self.libros.get_libros('id_libro') print( print_table( libros, ['id_libro', 'nombre_libro', 'editorial', 'disponibilidad'])) input('\nPresiona una tecla para continuar...') def search_libro(self): print(''' ======================== Buscar Libro ======================== ''') try: id_libro = input_data("Ingrese el ID del libro >> ", "int") libro = self.libros.get_libro({'id_libro': id_libro}) print( print_table(libro, [ 'id_libro', 'nombre_libro', 'editorial', 'disponibilidad' ])) ###### DESCONOCIMIENTO DE LIBRO ###### ###################################### if libro: if question('¿Deseas dar mantenimiento al libro?'): opciones = [ 'Asignar Curso', 'Editar Profesor', 'Eliminar profesor', 'Salir' ] respuesta = Menu(opciones).show() if respuesta == 1: pass elif respuesta == 2: self.update_profesor(profesor_id) elif respuesta == 3: pass except Exception as e: print(f'{str(e)}') input('\nPresiona una tecla para continuar...') ###### DESCONOCIMIENTO DE LIBRO ###### ###################################### def insert_libro(self): nombre_libro = input_data('Ingrese el nombre del libro >> ') editorial = input_data('Ingrese la editorial del libro >> ') disponibilidad = input_data('Ingrese la disponibilidad del libro >> ', 'int') self.libros.insert_libro({ 'nombre_libro': nombre_libro, 'editorial': editorial, 'disponibilidad': disponibilidad }) print(''' ================================== Nuevo libro agregado ================================== ''') self.all_libros() def update_libro(self, id_libro): nombre_libro = input_data('Ingrese el nuevo nombre del libro >> ') editorial = input_data('Ingrese la nueva editorial del libro >> ') disponibilidad = input_data('Ingrese la disponibilidad del libro >> ', 'int') self.libro.update_libro({'id_libro': id_libro}, { 'nombre_libro': nombre_libro, 'editorial': editorial, 'disponibilidad': disponibilidad }) print(''' ============================== Libro Actualizado ============================== ''')
def __init__(self): self.libros = Libros() self.salir = False
class LibrosController: def __init__(self): self.libros = Libros() self.salir = False def menu(self): try: while True: print(''' ============================= Libros ============================= ''') lista_menu = ['Listar', 'Buscar', 'Crear', 'Salir'] respuesta = Menu(lista_menu).show() if respuesta == 1: self.all_libro() elif respuesta == 2: self.search_libro() elif respuesta == 3: self.insert_libro() else: self.salir = True break except Exception as e: print(f'{str(e)}') def all_libro(self): print(''' ============================= Listar Libros ============================= ''') libro = self.libros.get_libros('libro_id') print( print_table( libro, ['Libro_Id', 'Nombre', 'Autor', 'Editorial', 'Estatus'])) input('\nPresiona una tecla para continuar . . .') def search_libro(self): self.all_libro() print(''' ============================= Buscar Usuario ============================= ''') try: libro_id = input_data('Ingrese el ID del Libro : ', 'int') libro = self.libros.get_libro({'libro_id': libro_id}) print( print_table( libro, ['Libro_Id', 'Nombre', 'Autor', 'Editorial', 'Estatus'])) if libro: if question('Desea dar mantenimiento al Libro?'): opciones = ['Editar Libro', 'Eliminar Libro', 'Salir'] respuesta = Menu(opciones).show() if respuesta == 1: self.update_libro(libro_id) elif respuesta == 2: pass except Exception as e: print(f'{str(e)}') input('\nPresiona una tecla para continuar . . .') def update_libro(self, libro_id): nombre = input_data('Ingrese el Nombre del Libro : ') autor = input_data('Ingrese el Autor del Libro : ') editorial = input_data('Ingrese la Editorial Libro : ') estatus = 'ACTIVO' self.libros.update_libro({'libro_id': libro_id}, { 'nombre': nombre, 'autor': autor, 'editorial': editorial, 'estatus': estatus }) print('\n Datos del Libro Actualizado \n') def insert_libro(self): nombre = input_data('Ingrese el Nombre del Libro : ') autor = input_data('Ingrese el Autor del Libro : ') editorial = input_data('Ingrese la Editorial Libro : ') estatus = 'ACTIVO' self.libros.insert_libro({ 'nombre': nombre, 'autor': autor, 'editorial': editorial, 'estatus': estatus }) print(''' ============================= Listar Libro Agregado ============================= ''') self.all_libro()