Ejemplo n.º 1
0
def devolverLibro():
    usuario = Usuario()
    print(f"\t Codigo\t Nombre\t Correo\t Documento")
    for obj in usuario.all():
        print(f"\t {obj.id}\t {obj.nombre}\t {obj.correo}\t {obj.documento}")
    idUsuario = int(
        input("Escriba el id del usuario que realiza la reserva: "))
    libro = Libro()
    print(f"\t Codigo\t Nombre\t ISBN\t Autor\t Editorial\tEstado")
    for obj in libro.all():
        print(
            f"\t {obj.id}\t {obj.nombre}\t {obj.isbn}\t {obj.autor_id}\t {obj.editorial_id}\t {obj.estado_libro_id}"
        )
    idLibro = int(input("Ingrese el id del libro a reservar: "))
    libro = Libro.find(idLibro)
    libro.estado_libro_id = 1
    libro.save()
    biblioteca = Biblioteca()
    print(f"\t Codigo\t Nombre\t Dirección\t Documento")
    for obj in biblioteca.all():
        print(
            f"\t {obj.id}\t {obj.nombre}\t {obj.direccion}\t {obj.documento}")
    idBiblioteca = int(
        input("Ingrese el id de la biblioteca donde se reservara: "))
    prestamo = Prestamo()
    prestamo.usuario_id = idUsuario
    prestamo.libros_id = idLibro
    prestamo.prestado_on = str(date.today())
    prestamo.bibliotecas_id = idBiblioteca
    prestamo.save()
Ejemplo n.º 2
0
 def index(self):
     libros = Libro.all()
     data = []
     for libro in libros:
         autor = Author.id(libro["autor"])
         genero = Genero.encontrar_por_id(libro["genero"])
         data.append({"libro": libro, "autor": autor, "genero": genero})
     return render_template('libros/index.html', libros=data)
Ejemplo n.º 3
0
def eliminarLibro():
    libro = Libro()
    print(f"\t Codigo\t Nombre\t ISBN\t Autor\t Editorial\tEstado")
    for obj in libro.all():
        print(
            f"\t {obj.id}\t {obj.nombre}\t {obj.isbn}\t {obj.autor_id}\t {obj.editorial_id}\t {obj.estado_libro_id}"
        )
    idToUpdate = int(input("Ingrese el id del libro a editar: "))
    libro = libro.find(idToUpdate)
    libro.delete()
Ejemplo n.º 4
0
    def Alquilar(self):
        self.__log.info("Alquilar un libro")

        estadolibro = EstadoLibro()
        print(f"\t ID\t Descripcion")
        for obj in estadolibro.all():
            print(f"\t {obj.id}\t {obj.descripcion}")

            if obj.descripcion == 1:

                libroporalquilar = Prestamo()

                cliente = User()
                print(f"\t ID\t Nombre\t CORREO\t DOCUMENTO\t ESTADO")
                for obj in cliente.all():
                    print(f"\t {obj.id}\t {obj.nombre}\t {obj.correo}\t {obj.documento}\t {obj.estado_user_id}")
                print("Escriba el id del cliente")
                cliente = input()

                libro = Libro()
                print(f"\t ID\t Nombre\t ISBN\t Autor\t Editorial\t Estado")
                for obj in libro.all():
                    print(f"\t {obj.id}\t {obj.nombre}\t {obj.isbn}\t {obj.autors_id}\t {obj.editorial_id}\t {obj.estado_libro_id}")
                print("Escriba el id del libro")
                libro = input()

                DatabaseManager.table('libro').where('nombre', f'{obj.nombre}').update({'obj.estado_libro_id': 3})

                biblioteca = Biblioteca()
                print(f"\t ID\t Nombre\t DIRECCION")
                for obj in biblioteca.all():
                    print(f"\t {obj.id}\t {obj.nombre}\t {obj.direccion}")
                print("Escriba el id de la biblioteca")
                biblioteca = input()

                libroporalquilar.users_id = cliente
                libroporalquilar.libros_id = libro
                libroporalquilar.bibliotecas_id = biblioteca

                libroporalquilar.save()

                objMenus = init.Inicio()
                objMenus.MenuInicioMenu()
               
            elif obj.descripcion == 2:
                print("Lo sentimos el libro que busca esta reservado")
                objMenus = init.Inicio()
                objMenus.MenuInicioMenu()

            elif obj.descripcion == 2:
                print("Lo sentimos el libro que busca no se encuentra disponible")
                objMenus = init.Inicio()
                objMenus.MenuInicioMenu()
Ejemplo n.º 5
0
    def registroLibros(self):
        self.__log.info("Ingresando al Registro de los ")
        opcionesRegistrolos = {
            "\t- Registrar Libros ": 1,
            "\t- Listar Libros ": 2
        }
        menuRegistrolos = Menu("Registro de Libros ", opcionesRegistrolos)
        resmenuRegistrolos = menuRegistrolos.mostrarMenu()
        stopMenu = True
        while stopMenu:
            if resmenuRegistrolos == 1:
                self.__log.info("Entrando al registro de Libros ")
                nuevoLibro = Libro()
                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")
                autor_idLibro = input()
                estados = EstadoLibro()
                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 resmenuRegistrolos == 2:
                self.__log.info("Entrando  a consultar los ")
                listarLibro = Libro()
                print(f"\t Codigo\t Nombre\t ISBN\t Autor\t Estado de Libro")
                for obj in listarLibro.all():
                    print(
                        f"\t {obj.id}\t {obj.nombre}\t {obj.isbn}\t {obj.autor_id}\t {obj.estado_libro_id}"
                    )
                sleep(5)
                stopMenu = False

            elif resmenuRegistrolos == 9:
                self._log.info("Saliendo")
Ejemplo n.º 6
0
    def Devolver(self):
        self.__log.info("Devolver un libro")

        libro = Libro()
        print(f"\t ID\t Nombre\t ISBN\t Autor\t Editorial\t Estado")
        for obj in libro.all():
            print(f"\t {obj.id}\t {obj.nombre}\t {obj.isbn}\t {obj.autors_id}\t {obj.editorial_id}\t {obj.estado_libro_id}")
        print("Escriba el id del libro")
        idlibro = input()

        DatabaseManager.table('libro').where('nombre', f'{obj.nombre}').update({'obj.estado_libro_id': 1})
        libro.libros_id = idlibro
        libro.save()

        objMenus = init.Inicio()
        objMenus.MenuInicioMenu()
Ejemplo n.º 7
0
def insertarLibro():
    libro = Libro()
    print(f"\t Codigo\t Nombre\t ISBN\t Autor\t Editorial\tEstado")
    for obj in libro.all():
        print(
            f"\t {obj.id}\t {obj.nombre}\t {obj.isbn}\t {obj.autor_id}\t {obj.editorial_id}\t {obj.estado_libro_id}"
        )
    libro.nombre = input("Escriba el nombre del libro: ")
    libro.isbn = input("Ingrese el codigón ISBN del libro: ")
    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.correo}")
    libro.autor_id = int(input("Ingrese el id del autor del libro: "))
    editorial = Editorial()
    print(f"\t Codigo\t Nombre\t Correo\t Dirección")
    for obj in editorial.all():
        print(f"\t {obj.id}\t {obj.nombre}\t {obj.correo}\t {obj.dirección}")
    libro.editorial_id = int(
        input("Ingrese el id de la editorial del libro: "))
    libro.estado_libro_id = 1
    libro.save()
Ejemplo n.º 8
0
    def index(self, perfil_id=None):
        if perfil_id != None:
            try:
                int(perfil_id)
                session["perfil_id"] = perfil_id
            except:
                pass
        libros = Libro.all()
        editoriales = Editorial.all()
        generos = Genero.all()
        autores = Author.all()
        cant = 0
        mostrar = []
        for libro in libros:
            if cant < 6:
                mostrar.append(libro)
            cant = cant + 1

        return render_template('index.html',
                               libros=mostrar,
                               editoriales=editoriales,
                               generos=generos,
                               autores=autores)
Ejemplo n.º 9
0
    def RegistroLibros(self):
        self.__log.info("Ingresando al Registro de Libros")
        opcionesRegisLibros = {
            "\t- Registrar Libro": 1,
            "\t- Listar Libros": 2,
            "\t- Eliminar Libros": 3
        }
        MenuRegisLibros = Menu("Menu Modulo Libros", opcionesRegisLibros)
        regisLibros = MenuRegisLibros.mostrarMenu()
        menuRegisLib = True
        while menuRegisLib:
            if (regisLibros == 1):
                nuevoLibro = Libro()
                nombreLibro = input("escriba el nombre del Libro \n")
                isbnLibro = input("escriba el ISBN del libro \n")

                autores = Autor()
                print(f"\t ID\t Nombre\t Correo")
                for obj in autores.all():
                    print(f"\t {obj.id}\t {obj.nombre}\t {obj.correo}")
                print("Escriba el id del Autor")
                autor_idLibro = input()

                editoriales = Editorial()
                print(f"\t ID\t Nombre")
                for obj in editoriales.all():
                    print(f"\t {obj.id}\t {obj.nombre}")
                print("Escriba el id de la editorial")
                editorialLibro = input()

                nuevoLibro.nombre = nombreLibro
                nuevoLibro.isbn = isbnLibro
                nuevoLibro.autor_id = autor_idLibro
                nuevoLibro.estado_libro_id = editorialLibro

                nuevoLibro.save()
                menuRegisLib = False

            elif (regisLibros == 2):
                libros = Libro()
                print(f"ID\t NOMBRE\t ISBN\t AUTOR\t EDITORIAL\t ESTADO")
                for obj in libros.all():
                    print(
                        f"\t {obj.id}\t {obj.nombre}\t {obj.ISBN}\t {obj.autors_id}\t {obj.editorial_id}\t {obj.estado_libro_id}"
                    )
                print("Escriba el id de la editorial")
                editorialLibro = input()

                input("Regresar???")
                menuRegisLib = False
                program.utils.Menu("Menu Modulo Libros", regisLibros)

            elif (regisLibros == 3):
                libros = Libro()
                print(f"ID\t NOMBRE\t ISBN\t AUTOR\t EDITORIAL\t ESTADO")
                for obj in libros.all():
                    print(
                        f"\t {obj.id}\t {obj.nombre}\t {obj.isbn}\t {obj.autors_id}\t {obj.editorial_id}\t {obj.estado_libro_id}"
                    )

                print("Escriba el id del libro que se desea eliminar: \n")
                id = input()

                DatabaseManager.table('libros').get()
                DatabaseManager.table('libros').where('id', '=',
                                                      f'{id}').delete()
                menuRegisLib = False

            elif (regisLibros == 9):
                __log = log("Saliendo")
            break
Ejemplo n.º 10
0
    def registroPrestamos(self):
        self.__log.info("Ingresando al Módulo de Prestamos")
        stopMenu = True
        while stopMenu:
            opcionesPrestamoLibros = {
                "\t- Lista de Prestamos": 1,
                "\t- Registrar Prestamos": 2,
                "\t- Devolucion de Libros": 3
            }
            menuPrestamoLibros = Menu("Módulo de Prestamos",
                                      opcionesPrestamoLibros)
            resmenuPrestamoLibros = menuPrestamoLibros.mostrarMenu()
            if resmenuPrestamoLibros == 1:
                self.__log.info("Entrando a la Lista de Prestamos")
                PrestamoN = Prestamo()
                print(
                    str("Codigo").ljust(5) + "\t " +
                    str("Fecha Prestamo").ljust(10) + "\t " +
                    str("Usuario").ljust(10) + "\t" +
                    str("Biblioteca").ljust(25) + "\t " +
                    str("Libro").ljust(7) + "\t " + str("Estado").ljust(7))
                contador = 0
                for obj in PrestamoN.all():
                    ObjUserTemp = User.find(obj.user_id)
                    ObjLibrTemp = Libro.find(obj.libros_id)
                    ObjBiblioTemp = Biblioteca.find(obj.bibliotecas_id)
                    ObjEstaLibTempp = EstadoLibro.find(
                        ObjLibrTemp.estado_libro_id)
                    contador += 1
                    print(
                        str(obj.id).ljust(5) + "\t " +
                        str(obj.prestamo_on).ljust(10) + "\t " +
                        str(ObjUserTemp.nombre).ljust(10) + "\t" +
                        str(ObjBiblioTemp.nombre).ljust(25) + "\t " +
                        str(ObjLibrTemp.nombre).ljust(7) + "\t " +
                        str(ObjEstaLibTempp.descripcion).ljust(7))
                if contador > 0:
                    print("Lista Completa")
                else:
                    print("No hay registros")
                stopMenu = False

            elif resmenuRegistroLibros == 2:
                self.__log.info("Registrar Prestamos")
                nuevo = Prestamo()

                UserN = User()
                print(f"\t Codigo\t\t\t Nombre\t\t\t Estado")
                for obj in UserN.all():
                    print(
                        f"\t {obj.id}\t\t\t {obj.nombre}\t\t\t {obj.estado_user_id}"
                    )
                print("Escriba el id del usuario: ")
                usuario_id = input()

                LibroN = Libro()
                print(f"\t Codigo\t Libro")
                for obj in LibroN.all():
                    print(f"\t {obj.id}\t {obj.nombre}")
                print("Escriba el id del libro: ")
                libroId = input()

                BibliotecaN = Biblioteca()
                print(f"\t Codigo\t Biblioteca")
                for obj in BibliotecaN.all():
                    print(f"\t {obj.id}\t {obj.nombre}")
                print("Escriba el id de la Biblioteca: ")
                bibliotecaId = input()

                nuevo.user_id = usuario_id
                nuevo.libros_Id = libroId
                nuevo.prestamo_on = datetime.now()
                nuevo.bibliotecas_id = bibliotecaId
                nuevo.save()

                nuevoD = Libro.find(nuevo.libros_Id)
                nuevoD.estado_libro_id = 3
                nuevoD.save()

                print("Registro completo")
                stopMenu = False

            elif resmenuRegistroLibros == 3:
                self.__log.info("Devolución de Libros")
                librosTemporal = []
                libroNN = Libro.where('estado_libro_id', '=', '3').get()
                for libt in libroNN.all():
                    idlibTemp = libt.id
                    PrestamoN = Prestamo.where('libros_id', '=',
                                               f"{idlibTemp}").get()
                    for presIn in PrestamoN.all():
                        temporalDato = {
                            "id": str(presIn.id),
                            "user_id": str(presIn.user_id),
                            "libros_id": str(presIn.libros_id),
                            "prestamo_on": str(presIn.prestamo_on),
                            "bibliotecas_id": str(presIn.bibliotecas_id)
                        }
                        librosTemporal.append(temporalDato)
                contaDD = 0
                print(f"\t Codigo\t\t " + str("Libros").ljust(15) +
                      "\t\t Fecha\t\t Bibliotecas")
                for obj in librosTemporal:
                    contaDD += 1
                    LibTempN = Libro.find(obj["libros_id"])
                    BibliTempN = Biblioteca.find(obj["bibliotecas_id"])
                    ididD = str(obj["id"])
                    prest = str(obj["prestamo_on"])
                    print(f"\t{ididD}\t\t " + str(LibTempN.nombre).ljust(15) +
                          "\t\t" + prest + "\t\t" + BibliTempN.nombre)
                if contaDD > 0:
                    print("Escriba el id del Préstamo")
                    Prestamo_NID = input()
                    nuevoPresD = Prestamo.find(Prestamo_NID)
                    nuevoD = Libro.find(nuevoPresD.libros_id)
                    nuevoD.estado_libro_id = 1
                    nuevoD.save()
                    print(f"Devolucion correcta")
                else:
                    print("No hay registros")
                stopMenu = False

            elif resmenuRegistroLibros == 9:
                stopMenu = False
                self.__log.info("Saliendo")
Ejemplo n.º 11
0
    def registroLibros(self):
        self.__log.info("Ingresando al Registro de Libros")
        opcionesRegistro = {
            "\t- Registrar Libros": 1,
            "\t- Listar Libros": 2,
            "\t- Registrar Lector": 3,
            "\t- Listar Lectores": 4
        }
        menuRegistro = Menu("Registro de Libros", opcionesRegistro)
        resmenuRegistro = menuRegistro.mostrarMenu()
        stopMenu = True
        while stopMenu:
            if resmenuRegistro == 1:
                self.__log.info("Entrando al registro de libros")
                print("Registrar Libros")
                nuevoLibro = Libro()
                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")
                autor_idLibro = input()
                estados = EstadoLibro()
                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
            if resmenuRegistro == 2:
                self.__log.info("Entrando a listar libros")
                print("Listar libros")
                libros = Libro()
                print(f"\t Codigo\t Nombre\t ISBN")
                for obj in libros.all():
                    print(f"\t {obj.id}\t {obj.nombre}\t {obj.isbn}")

                stopMenu = False

            if resmenuRegistro == 3:
                self.__log.info("Entrando al registro de lectores")
                print("Registrar Lectores")
                nuevoUser = User()
                nombreUser = input("escriba el nombre del nuevo Usuario \n")
                correoUser = input("escriba el correo \n")

                tipodocumento = TipoDocumento()
                print(f"\t id\t Descripcion")
                for obj in tipodocumento.all():
                    print(f"\t {obj.id}\t {obj.descripcion}")
                print(
                    "Escriba el id del tipo de documento de la anterior lista")
                documento_idTipodocumento = input()
                documentoUser = input("escriba el numero del documento \n")

                estadoUser = EstadoUser()
                print(f"\t id\t descripcion")
                for obj in estadoUser.all():
                    print(f"\t {obj.id}\t {obj.descripcion}")
                print(
                    "Escriba el id del Estado del Usuario de la anterior lista"
                )
                estado_User = input()

                nuevoUser.nombre = nombreUser
                nuevoUser.correo = correoUser
                nuevoUser.tipo_documento_id = documento_idTipodocumento
                nuevoUser.documento = documentoUser
                nuevoUser.estado_user_id = estado_User

                nuevoUser.save()
                stopMenu = False

            if resmenuRegistro == 4:
                self.__log.info("Entrando a listar lector")
                print("Listar lectores")
                Usuarios = User()
                print(f"\t Codigo\t Nombre\t correo")
                for obj in Usuarios.all():
                    print(f"\t {obj.id}\t {obj.nombre}\t {obj.correo}")

                stopMenu = False

            elif resmenuRegistro == 9:
                self._log.info("Saliendo")
Ejemplo n.º 12
0
    def registroLibros(self):
        self.__log.info("Ingresando al Registro de Libros")

        while True:
            opcionesRegistroLibros = {
                "\t- Registrar Libros": 1,
                "\t- Listar Libros": 2
            }
            menuRegistroLibros = Menu("Registro de Libros",
                                      opcionesRegistroLibros)
            resmenuRegistroLibros = menuRegistroLibros.mostrarMenu()
            if resmenuRegistroLibros == 1:
                self.__log.info("Entrando al registro de libros")
                nuevoLibro = Libro()
                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")
                autor_idLibro = input()
                estados = EstadoLibro()
                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()

                input("Continuar?")

            elif resmenuRegistroLibros == 2:
                self.__log.info("Ingresando a listar libros")
                libros = Libro()
                print(f"\t Codigo\t Nombre\t\t ISBN\t Autor\t Estado")
                for obj in libros.all():
                    y = obj.estado_libro_id
                    if (y == 1):
                        estado = "Disponible"
                    elif (y == 2):
                        estado = "Reservado"
                    elif (y == 3):
                        estado = "Prestado"
                    print(
                        f"\t {obj.id}\t {obj.nombre}\t\t {obj.isbn}\t {obj.autor_id}\t {estado}"
                    )

                input("Continuar?")

            elif resmenuRegistroLibros == 9:
                self.__log.info("Saliendo")
                break
Ejemplo n.º 13
0
 def ver_catalogo(self):
     libros = Libro.all()
     return self.catalogo(libros)
Ejemplo n.º 14
0
    def registroPrestamos(self):
        self.__log.info("Ingresando al menu de Prestamos")
        opcionesPrestamo = {
            "\t- Registrar Prestamo": 1,
            "\t- Registrar Devolucion": 2
        }
        menuPrestamo = Menu("Prestamo de Libros", opcionesPrestamo)
        resmenuPrestamo = menuPrestamo.mostrarMenu()
        stopMenu = True
        while stopMenu:
            if resmenuPrestamo == 1:
                self.__log.info("Entrando al prestamo de libros")
                usuario = User()
                numDocumento = input("Ingrese su numero de documento: ")
                try:
                    listaUser = []
                    for obj in usuario.all():
                        a = [
                            obj.id, obj.nombre, obj.documento,
                            obj.estado_user_id
                        ]
                        listaUser.append(a)
                    aaa = False
                    i = 0
                    while aaa == False:
                        if listaUser[i][2] == numDocumento:
                            aaa = True
                            user_id = listaUser[i][0]
                            name = listaUser[i][1]
                            resultado = listaUser[i][3]
                            estadoUser = EstadoUser()
                            listaEstadoUser = []
                            for obj in estadoUser.all():
                                a = [obj.id, obj.descripcion]
                                listaEstadoUser.append(a)
                            bbb = False
                            j = 0
                            while bbb == False:
                                if listaEstadoUser[j][0] == resultado:
                                    est_User = listaEstadoUser[j][1]
                                    if est_User == "Inactivo" or est_User == "Pendiente Aprobacion":
                                        print("Su estado es: ", est_User,
                                              "no puede retirar libros")
                                        stopMenu = False
                                    elif est_User == "Activo":
                                        print("Bienvenido ", name,
                                              "su estado de usuario es: ",
                                              est_User)

                                        libros = Libro()
                                        nombreLibro = input(
                                            "Ingrese el nombre del libro: ")
                                        try:
                                            guiaLibros = []
                                            for obj in libros.all():
                                                a = [
                                                    obj.id, obj.nombre,
                                                    obj.estado_libro_id
                                                ]
                                                guiaLibros.append(a)

                                            ccc = False
                                            i = 0
                                            while ccc == False:
                                                if guiaLibros[i][
                                                        1] == nombreLibro:
                                                    libro_id = guiaLibros[i][0]
                                                    resultado1 = guiaLibros[i][
                                                        2]
                                                    ccc = True
                                                    estadoLibro = EstadoLibro()
                                                    estadoLibros = []
                                                    for obj in estadoLibro.all(
                                                    ):
                                                        a = [
                                                            obj.id,
                                                            obj.descripcion
                                                        ]
                                                        estadoLibros.append(a)

                                                    bbb = False
                                                    j = 0
                                                    while bbb == False:
                                                        if estadoLibros[j][
                                                                0] == resultado1:
                                                            est_Libros = estadoLibros[
                                                                j][1]

                                                            if est_Libros == "Disponible":
                                                                print(
                                                                    "El libro, se encuentra ",
                                                                    est_Libros)
                                                                est_Libros = "Prestado"
                                                                prestamo = Prestamo(
                                                                )
                                                                prestamo.user_id = user_id
                                                                prestamo.libros_id = libro_id
                                                                prestamo.prestado_on = datetime.now(
                                                                )
                                                                prestamo.bibliotecas_id = 1
                                                                prestamo.save()
                                                                stopMenu = False
                                                                print(
                                                                    "El registro del prestamo, se realizo con exito"
                                                                )
                                                            elif est_Libros == "Reservado" or est_Libros == "Prestado":
                                                                print(
                                                                    "El libro se encuentra: ",
                                                                    est_Libros)
                                                                stopMenu = False
                                                            else:
                                                                print(
                                                                    "digito mal"
                                                                )
                                                                stopMenu = False
                                                            bbb = True
                                                        else:
                                                            j = j + 1

                                                else:
                                                    i = i + 1
                                        except:
                                            print("El libro no existe")
                                            stopMenu = False

                                    else:
                                        print("Digito mal")
                                        stopMenu = False
                                    bbb = True
                                else:
                                    j = j + 1
                        else:
                            i = i + 1
                except:
                    print("ALGO FALLO EN EL PROGRAMA")
                stopMenu = False

            elif resmenuPrestamo == 2:
                libros = Libro()
                isbnLibro = input("Ingrese el ISBN del libro a devolver: ")
                try:
                    listaLibros = []
                    for obj in libros.all():
                        a = [obj.id, obj.nombre, obj.isbn]
                        listaLibros.append(a)
                    aaa = False
                    i = 0
                    while aaa == False:
                        if listaLibros[i][2] == isbnLibro:
                            idLibro = listaLibros[i][0]
                            prestamo = Prestamo()
                            listaPrestamos = []
                            for obj in libros.all():
                                a = [
                                    obj.id, obj.user_id, obj.libros_id,
                                    obj.prestado_on, obj.bibliotecas_id
                                ]
                                listaPrestamos.append(a)
                            bbb = False
                            j = 0
                            while bbb == False:
                                if listaPrestamos[i][2] == idLibro:
                                    prestamo.user_id = listaPrestamos[i][1]
                                    prestamo.libros_id = listaPrestamos[i][2]
                                    prestamo.prestado_on = datetime.now()
                                    prestamo.bibliotecas_id = listaPrestamos[
                                        i][4]
                                    prestamo.save()
                                    stopMenu = False
                                    bbb = True
                                else:
                                    j = j + 1
                            aaa = True
                        else:
                            i = i + 1
                except:
                    print(
                        "El libro no existe o no está registrado en la biblioteca"
                    )
                stopMenu = False

            elif resmenuPrestamo == 9:
                self._log.info("Saliendo")
                stopMenu = False
Ejemplo n.º 15
0
    def registroLibros(self):
        self.__log.info("Ingresando al Módulo de Registro")
        opcionesRegistroLibros = {
            "\t- Registrar Libros": 1,
            "\t- Listar Libros": 2,
            "\t- Registrar Usuarios": 3,
            "\t- Listar Usuarios": 4,
            "\t- Registrar Biblioteca": 5,
            "\t- Listar Biblioteca": 6
        }
        menuRegistroLibros = Menu("Módulo de Registro", opcionesRegistroLibros)
        resmenuRegistroLibros = menuRegistroLibros.mostrarMenu()
        stopMenu = True
        while stopMenu:
            if resmenuRegistroLibros == 1:
                self.__log.info("Entrando al Registro de Libros")
                nuevoLibro = Libro()
                nombreLibro = input("Escriba el nombre del libro: \n")
                isbnLibro = input("Escriba el 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:")
                autor_idLibro = input()
                estados = EstadoLibro()
                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()
                print("Registro Completo")
                stopMenu = False

            elif resmenuRegistroLibros == 2:
                self.__log.info("Entrando a la Lista de libros")
                libros = Libro()
                print("\t " + str("Codigo").ljust(10) + "\t\t\t " +
                      str("Libro").ljust(10) + "\t\t\t " +
                      str("ISBN").ljust(10) + "\t\t\t " +
                      str("Autor").ljust(10))
                contador = 0
                for obj in libros.all():
                    contador += 1
                    print("\t" + str(obj.id).ljust(10) + "\t\t\t " +
                          str(obj.nombre).ljust(10) + "\t\t\t " +
                          str(obj.isbn).ljust(10) + "\t\t\t " +
                          str(obj.autor_id).ljust(10))
                if contador > 0:
                    print("Lista completa")
                else:
                    print("No hay registros")
                stopMenu = False

            elif resmenuRegistroLibros == 3:
                self.__log.info("Entrando al Registro de Usuario")
                nuevo = User()
                nombre = input("Nombre Completo: ")
                correo = input("Correo: ")
                tipoDoc = TipoDocumento()
                print(f"\t Codigo\t TipoDocumento")
                for obj in tipoDoc.all():
                    print(f"\t {obj.id}\t {obj.descripcion}")
                tipoDoc_Id = input("Ingrese el Tipo de Documento: ")
                tipoDoc_Desc = input("Ingrese el número: ")
                estados = EstadoUser()
                print(f"\t Codigo\t Estado")
                for obj in estados.all():
                    print(f"\t {obj.id}\t {obj.descripcion}")
                estado_Id = input("Estado: ")
                nuevo.nombre = nombre
                nuevo.correo = correo
                nuevo.tipo_documento_id = tipoDoc_Id
                nuevo.documento = tipoDoc_Desc
                nuevo.estado_user_id = estado_Id
                nuevo.save()
                print("Registro completo")
                stopMenu = False

            elif resmenuRegistroLibros == 4:
                self.__log.info("Entrando a la Lista de Usuarios")
                Usuario = User()
                print("\t " + str("Codigo").ljust(10) + "\t\t\t " +
                      str("Usuario").ljust(10) + "\t\t\t " +
                      str("Correo").ljust(10))
                contador = 0
                for obj in Usuario.all():
                    contador += 1
                    print("\t" + str(obj.id).ljust(10) + "\t\t\t " +
                          str(obj.nombre).ljust(10) + "\t\t\t " +
                          str(obj.correo).ljust(10))
                if contador > 0:
                    print("Lista Completa")
                else:
                    print("No hay nadie registrado")
                stopMenu = False

            elif resmenuRegistroLibros == 5:
                self.__log.info("Entrando al Registro de Bibliotecas")
                nuevo = Biblioteca()
                nombre = input("Escriba el nombre: ")
                direccion = input("Escriba la direccion: ")

                nuevo.nombre = nombre
                nuevo.direccion = direccion
                nuevo.save()
                print("Registro Completo")
                stopMenu = False

            elif resmenuRegistroLibros == 6:
                self.__log.info("Entrando a la Lista de Bibliotecas")
                BibliotecaN = Biblioteca()
                print("\t " + str("Codigo").ljust(10) + "\t\t\t " +
                      str("Biblioteca").ljust(10) + "\t\t\t " +
                      str("Direccion").ljust(10))
                contador = 0
                for obj in BibliotecaN.all():
                    contador += 1
                    print("\t" + str(obj.id).ljust(10) + "\t\t\t " +
                          str(obj.nombre).ljust(10) + "\t\t\t " +
                          str(obj.direccion).ljust(10))
                if contador > 0:
                    print("Lista Completa")
                else:
                    print("No hay registros")
                stopMenu = False

            elif resmenuRegistroLibros == 9:
                self._log.info("Saliendo")