Ejemplo n.º 1
0
def seleccionUnidadMedida(listUnidadMedida):
    strRetornar = ""
    while strRetornar == "":
        strSeleccionUM = utils.validarEntero(
            "Para agregar UM=99 /Ingrese numero de UM: ")
        if (strSeleccionUM == 99):
            pasarTrue = True
            while pasarTrue:
                strNuevo = input("0=Salir / Nueva UM: ")
                if (strNuevo == "0"):
                    pasarTrue = False
                    break
                intConta = 0
                for p in listUnidadMedida:
                    if (strNuevo == p.nombre):
                        intConta += 1
                if (intConta > 0):
                    pasarTrue = True
                    print("Valor existente.")
                else:
                    pasarTrue = False
                    strRetornar = strNuevo
                    mayor = utils.AutogenerarMayorMasUno(listUnidadMedida)
                    unidad = clases.UnidadMedidad(mayor, strNuevo)
                    fileUnidadMedida.borrarArchivo()
                    lstUnidadMedidaDic.append(unidad.dictUnidadMedida())
                    jsonStr = json.dumps(lstUnidadMedidaDic)
                    fileUnidadMedida.escribirArchivo(jsonStr)
                    break
        else:
            intContar2 = 0
            for p in listUnidadMedida:
                intContar2 += 1
                if (intContar2 == int(strSeleccionUM)):
                    strRetornar = p.nombre
                    break
    return strRetornar
Ejemplo n.º 2
0
    def execute_modulo(self):
        retornar = True
        while retornar:
            notas_lst_num = ['1', '2', '3', '4', '9']
            notas_lst_opciones = [
                'Listar', 'Buscar', 'Agregar', 'Eliminar', 'Salir'
            ]
            notas_menu = menu.Menu('notas', notas_lst_opciones, notas_lst_num)
            resMenuInicio = notas_menu.show_menu()
            if (resMenuInicio == '1'):  #read
                lstNotasTemp1 = []
                lstNotasTemp1.clear()
                collt = self.conexion.leerRegistrosTotal()
                for obj2 in collt:
                    idAlumnoT = obj2['idAlumno']
                    FiltroAlumnoId = {"_id": ObjectId(f"{idAlumnoT}")}
                    colltAlumno = self.conexionAlumno.leerRegistro(
                        FiltroAlumnoId)
                    nombreAlumnoDes = colltAlumno['nombreAlumno']

                    idCursoT = obj2['idCurso']
                    FiltroCursoId = {"_id": ObjectId(f"{idCursoT}")}
                    colltCurso = self.conexionCurso.leerRegistro(FiltroCursoId)
                    nombreCursoDes = colltCurso['curso']

                    DataRestor2 = nota.notaDescripcion(obj2['_id'],
                                                       obj2['descripcionNota'],
                                                       nombreCursoDes,
                                                       nombreAlumnoDes)
                    lstNotasTemp1.append(DataRestor2)
                utils.listaSimple(lstNotasTemp1, "nota", 1)
            elif (resMenuInicio == '2'):  #search
                self.cargarAlumnos()
                utils.listaSimple(self.lstAlumno, "alumno", 0)
                datoBuscar = utils.validarDniAlumnoEnLista(
                    self.lstAlumno, "Ingrese un DNI: ")
                fitro = {"dniAlumno": f"{datoBuscar}"}
                colltAlum = self.conexionAlumno.leerRegistro(fitro)
                idAlumno = colltAlum['_id']
                nombreAlumnoDes = colltAlum['nombreAlumno']
                fitroNotas = {"idAlumno": f"{idAlumno}"}
                lstNotasTemp = []
                lstNotasTemp.clear()
                collt = self.conexion.leerRegistros(fitroNotas)
                for obj2 in collt:
                    idCursoT = obj2['idCurso']
                    FiltroCursoId = {"_id": ObjectId(f"{idCursoT}")}
                    colltCurso = self.conexionCurso.leerRegistro(FiltroCursoId)
                    nombreCursoDes = colltCurso['curso']
                    DataRestor2 = nota.notaDescripcion(obj2['_id'],
                                                       obj2['descripcionNota'],
                                                       nombreCursoDes,
                                                       nombreAlumnoDes)
                    lstNotasTemp.append(DataRestor2)
                utils.listaSimple(lstNotasTemp, "nota", 1)
            elif (resMenuInicio == '3'):  #create
                self.cargarAlumnos()
                utils.listaSimple(self.lstAlumno, "alumno", 0)
                dbuscar = utils.validarDniAlumnoEnLista(
                    self.lstAlumno, "DNI: ")
                fitro = {"dniAlumno": f"{dbuscar}"}
                colltAlum = self.conexionAlumno.leerRegistro(fitro)
                idAlumno = colltAlum['_id']

                self.cargarCurso()
                utils.listaSimple(self.lstCurso, "curso", 0)
                numero = utils.validarEntero("Numero del Curso: ")
                cont = 0
                cursobuscar = ""
                for i in self.lstCurso:
                    cont += 1
                    if cont == numero:
                        cursobuscar = i.idcurso
                idCurso = cursobuscar
                Numnota = utils.validarEntero("Nota: ")
                data = {
                    "descripcionNota": f"{Numnota}",
                    "idCurso": f"{idCurso}",
                    "idAlumno": f"{idAlumno}"
                }
                insertado = self.conexion.insertarRegistro(data)
                if insertado:
                    self.cargarNota()
                    print("Insertado correctamente.")
                else:
                    print("Error al insertar.")
                input("Enter para continuar..")
            elif (resMenuInicio == '4'):  #delete
                lstNotasTemp1 = []
                lstNotasTemp1.clear()
                collt = self.conexion.leerRegistrosTotal()
                for obj2 in collt:
                    idAlumnoT = obj2['idAlumno']
                    FiltroAlumnoId = {"_id": ObjectId(f"{idAlumnoT}")}
                    colltAlumno = self.conexionAlumno.leerRegistro(
                        FiltroAlumnoId)
                    nombreAlumnoDes = colltAlumno['nombreAlumno']

                    idCursoT = obj2['idCurso']
                    FiltroCursoId = {"_id": ObjectId(f"{idCursoT}")}
                    colltCurso = self.conexionCurso.leerRegistro(FiltroCursoId)
                    nombreCursoDes = colltCurso['curso']

                    DataRestor2 = nota.notaDescripcion(obj2['_id'],
                                                       obj2['descripcionNota'],
                                                       nombreCursoDes,
                                                       nombreAlumnoDes)
                    lstNotasTemp1.append(DataRestor2)
                utils.listaSimple(lstNotasTemp1, "notaDescriptiva", 0)
                numero = utils.validarEntero("Numero de Nota: ")
                cont = 0
                NotaIdd = ""
                for i in lstNotasTemp1:
                    cont += 1
                    if cont == numero:
                        NotaIdd = i.idNota
                data = {"_id": f"{NotaIdd}"}
                eliminar = self.conexion.eliminarRegistro(data)
                if eliminar:
                    self.cargarNota()
                    print("Eliminado correctamente.")
                else:
                    print("Error al insertar.")
                input("Enter para continuar..")

            elif (resMenuInicio == '9'):
                retornar = False
Ejemplo n.º 3
0
def Facturas():
    cargarCabeceraFactura()
    valorTrue = True
    while valorTrue:
        menuMantenimiento = utils.Menu("Menu Facturas", dicMenuFacturaGeneral)
        resMenu = menuMantenimiento.mostrarMenu()
        if resMenu == 1:
            log.debug("escogio 1 - Listar")
            utils.listaSimple(lstFacturaCabecera, 5, 1)
        elif resMenu == 2:
            log.debug("escogio 2 - Buscar")
            Buscar = utils.validarEntero("Correlativo: ")
            conn = conexion.conexionBDD(NumeroBDD)
            query2 = query_FacturaCabecera
            if NumeroBDD == 2:
                query2 = query_FacturaCabecera + ' where c."idfacCabecera" =' + f" '{Buscar}';"
            elif NumeroBDD != 2:
                query2 = query_FacturaCabecera + f" where c.idfacCabecera ='{Buscar}';"
            resConn2 = conn.consultarBDD(query2)
            lstGeneralTemp = []
            for row in resConn2:
                GeneralF = factura.facturaCabecera(row[0], row[1], row[2],
                                                   row[3], row[4], row[5],
                                                   row[6], row[7], row[8])
                lstGeneralTemp.append(GeneralF)

            queryDetalle = query_FacturaDetalle
            if NumeroBDD == 2:
                queryDetalle = query_FacturaDetalle + ' where d."idfacCabecera" =' + f" '{Buscar}';"
            elif NumeroBDD != 2:
                queryDetalle = query_FacturaDetalle + f" where d.idfacCabecera ='{Buscar}';"
            resConnD = conn.consultarBDD(queryDetalle)
            lstGeneralDetalleTemp = []
            for row in resConnD:
                GeneralDetalleF = factura.facDetalle(row[0], row[1], row[2],
                                                     row[3], row[4], row[5])
                lstGeneralDetalleTemp.append(GeneralDetalleF)

            utils.listaSimple(lstGeneralTemp, 5, 0)
            utils.listaSimple(lstGeneralDetalleTemp, 6, 1)
        elif resMenu == 3:
            log.debug("escogio 3 - Crear")
            print("Selecciona la Empresa: ")
            cargarEmpresa()
            utils.listaSimple(lstEmpresa, 3, 0)
            idEmpresa = utils.validarIDEnLista(lstEmpresa,
                                               "9999=Cancelar / ID: ", 3)
            if idEmpresa == 9999:
                valorTrue = False
                return
            print("Selecciona el Cliente: ")
            cargarClientes()
            utils.listaSimple(lstClientes, 1, 0)
            idCliente = utils.validarIDEnLista(lstClientes,
                                               "9999=Cancelar / ID: ", 1)
            if idCliente == 9999:
                valorTrue = False
                return
            print("Selecciona el Tipo de Pago: ")
            cargarTipoPago()
            utils.listaSimple(lstTipoPago, 4, 0)
            idTipoPago = utils.validarIDEnLista(lstTipoPago,
                                                "9999=Cancelar / ID: ", 4)
            if idTipoPago == 9999:
                valorTrue = False
                return
            limpiarDetalleFactura()
            print("Selecciona los Productos: ")
            cargarProductos()
            utils.listaSimple(lstProductos, 2, 0)
            agregandoProdTrue = True
            while agregandoProdTrue:
                valorProducto = 0.00
                afecto = 0
                idProducto = utils.validarIDEnLista(lstProductos, "ID: ", 2)
                cantProducto = utils.validarEntero("Cantidad: ")
                #idProducto,nombreProducto,valorProducto,igvProducto
                for p in lstProductos:
                    if (p.idProducto == idProducto):
                        valorProducto = p.valorProducto
                        afecto = p.igvProducto
                valorDetalle = valorProducto * cantProducto
                documentF = factura.facDetalleInsertar(0, 0, idProducto,
                                                       cantProducto,
                                                       valorDetalle, afecto)
                lstFacturaDetalle.append(documentF)
                agregarOtro = utils.validarEntero("0=Finalizar / 1=agregar: ")
                if agregarOtro == 0:
                    agregandoProdTrue = False
            SubTotal = 0.00
            SubTotalSinIgv = 0.00
            #   idFacDetalle, idfacCabecera, idproducto, cantFacDetalle, valorFacDetalle, afecto
            for detalle in lstFacturaDetalle:
                if detalle.afecto == 1:
                    SubTotal += float(detalle.valorFacDetalle)
                else:
                    SubTotalSinIgv += float(detalle.valorFacDetalle)
            Igv = SubTotal * 0.18
            # SubTotal=SubTotal*1.18
            SubTotalFinal = SubTotal + SubTotalSinIgv
            Total = SubTotalFinal + Igv

            connInsertar = conexion.conexionBDD(NumeroBDD)
            query_Insertar = ""
            resConnInsertar = 0
            if NumeroBDD == 2:
                query_Insertar = ' insert into "facCabecera" ("idempresa", "idcliente","idtipoPago","fechaFacCabecera" '
                query_Insertar += ' ,"igvFacCabecera","subtotalFacCabecera","totalFacCabecera","estadoFactura" )'
                query_Insertar += ' values( ' + f" '{idEmpresa}','{idCliente}','{idTipoPago}',now(),'{Igv}','{SubTotalFinal}','{Total}',1)  RETURNING " + '"idfacCabecera"'
                resConnInsertar = connInsertar.ejecutarBDD_ReturnID_POSTGRES(
                    query_Insertar)
            if NumeroBDD == 3:
                query_Insertar = " insert into faccabecera (idempresa, idcliente,idtipoPago,fechaFacCabecera "
                query_Insertar += " ,igvFacCabecera,subtotalFacCabecera,totalFacCabecera,estadoFactura ) "
                query_Insertar += " values( " + f" '{idEmpresa}','{idCliente}','{idTipoPago}',date(),'{Igv}','{SubTotalFinal}','{Total}',1);"
                resConnInsertar = connInsertar.ejecutarBDD_ReturnID(
                    query_Insertar)
            else:
                query_Insertar = " insert into faccabecera (idempresa, idcliente,idtipoPago,fechaFacCabecera "
                query_Insertar += " ,igvFacCabecera,subtotalFacCabecera,totalFacCabecera,estadoFactura ) "
                query_Insertar += " values( " + f" '{idEmpresa}','{idCliente}','{idTipoPago}',now(),'{Igv}','{SubTotalFinal}','{Total}',1);"
                resConnInsertar = connInsertar.ejecutarBDD_ReturnID(
                    query_Insertar)
            if (resConnInsertar > 0):
                #cargarCabeceraFactura()
                Intguardados = 0
                query_InsertarDetalle = ""
                #idFacDetalle, idfacCabecera, idproducto, cantFacDetalle, valorFacDetalle, afecto
                for detalle in lstFacturaDetalle:
                    if NumeroBDD == 2:
                        query_InsertarDetalle = ' insert into "facDetalle" ("idfacCabecera", "idproducto","cantFacDetalle","valorFacDetalle") '
                        query_InsertarDetalle += ' values( ' + f" '{resConnInsertar}','{detalle.idproducto}','{detalle.cantFacDetalle}','{detalle.valorFacDetalle}');"
                    else:
                        query_InsertarDetalle = " insert into facdetalle (idfacCabecera, idproducto,cantFacDetalle,valorFacDetalle) "
                        query_InsertarDetalle += " values( " + f" '{resConnInsertar}','{detalle.idproducto}','{detalle.cantFacDetalle}','{detalle.valorFacDetalle}');"
                    resConnInsertarDetalle = connInsertar.ejecutarBDD(
                        query_InsertarDetalle)
                    if (resConnInsertarDetalle):
                        Intguardados += 1
                if (Intguardados > 0):
                    print("Se ejecuto correctamente")
                else:
                    print("Hubo un error detalle")
            else:
                print("Hubo un error")
            cargarCabeceraFactura()
            input(MsjContinuar)
        elif resMenu == 9:
            valorTrue = False
        else:
            log.debug(f"escogio {resMenu}")
Ejemplo n.º 4
0
def mantenimientoCliente():
    cargarClientes()
    ClienteTrue = True
    while ClienteTrue:
        menuCliente = utils.Menu("Administrador de Clientes",
                                 dicMenuMantenimientoGeneral)
        resMenuCliente = menuCliente.mostrarMenu()
        if (resMenuCliente == 1):
            log.debug("mostrando cliente")
            utils.listaSimple(lstClientes, 1, 1)
        elif (resMenuCliente == 2):
            log.debug("buscamos cliente por DNI")
            dni = utils.validarEntero("DNI: ")
            conn = conexion.conexionBDD(NumeroBDD)
            query = query_Clientes
            if NumeroBDD == 2:
                query = query_Clientes + ' where "nroIdentidicacionCliente" like' + f" '%{dni}%';"
            elif NumeroBDD != 2:
                query = query_Clientes + f" where nroIdentidicacionCliente like '%{dni}%';"
            resConn2 = conn.consultarBDD(query)
            lstClientesTemp = []
            for row in resConn2:
                clienteF = clientes.clientes(row[0], row[1], row[2], row[3])
                lstClientesTemp.append(clienteF)
            utils.listaSimple(lstClientesTemp, 1, 1)
        elif (resMenuCliente == 3):
            log.debug("buscamos cliente")
            conn = conexion.conexionBDD(NumeroBDD)
            utils.listaSimple(lstClientes, 1, 0)
            idcliente = utils.validarIDEnLista(
                lstClientes, "9999=Cancelar / ID a modificar: ", 1)
            if idcliente != "":
                nombre = input("Nombre: ")
                dni = utils.validarEntero("DNI: ")
                direccion = input("Dirección: ")
                query = ""
                if NumeroBDD == 2:
                    query = 'update clientes set "nombreCliente" =  ' + f"'{nombre}'" + ', "nroIdentidicacionCliente" = ' + f"'{dni}'" + ',"direccionCliente" = ' + f"'{direccion}'"
                    query += ' where idCliente =' + f" {idcliente};"
                else:
                    query = f"update clientes set nombreCliente = '{nombre}', nroIdentidicacionCliente = '{dni}',direccionCliente = '{direccion}' where idCliente = {idcliente};"
                resConn = conn.ejecutarBDD(query)
                if (resConn):
                    cargarClientes()
                    print("Se ejecuto correctamente")
                else:
                    print("Hubo un error")
                input(MsjContinuar)
            else:
                input("Operación Cancelada.")
        elif (resMenuCliente == 4):
            nombre = input("Nombre: ")
            dni = utils.validarEntero("DNI: ")
            direccion = input("Dirección: ")
            conn = conexion.conexionBDD(NumeroBDD)
            query = ""
            if NumeroBDD == 2:
                query = 'insert into "clientes" ("nombreCliente", "nroIdentidicacionCliente","direccionCliente") values( ' + f" '{nombre}','{dni}','{direccion}');"
            else:
                query = f"insert into clientes (nombreCliente, nroIdentidicacionCliente,direccionCliente) values('{nombre}','{dni}','{direccion}');"
            resConn = conn.ejecutarBDD(query)
            if (resConn):
                cargarClientes()
                print("Se ejecuto correctamente")
            else:
                print("Hubo un error")
            input(MsjContinuar)
        elif (resMenuCliente == 5):
            log.debug("eliminamos cliente")
            conn = conexion.conexionBDD(NumeroBDD)
            utils.listaSimple(lstClientes, 1, 0)
            idcliente = utils.validarIDEnLista(
                lstClientes, "9999=Cancelar / ID a modificar: ", 1)
            if idcliente != "":
                query = ""
                if NumeroBDD == 2:
                    query = 'delete from "clientes" where idCliente = ' + f"{idcliente} ;"
                else:
                    query = f"delete from clientes where idCliente = {idcliente} ;"
                resConn = conn.ejecutarBDD(query)
                if (resConn):
                    cargarClientes()
                    print("Se ejecuto correctamente")
                else:
                    print("Hubo un error")
                input(MsjContinuar)
            else:
                input("Operacion cancelada.")
        elif (resMenuCliente == 9):
            ClienteTrue = False
Ejemplo n.º 5
0
def mantenimientoProductos():
    cargarProductos()
    ProductoTrue = True
    while ProductoTrue:
        menuProducto = utils.Menu("Administrador de Productos",
                                  dicMenuMantenimientoGeneral)
        resMenuProducto = menuProducto.mostrarMenu()
        if (resMenuProducto == 1):
            log.debug("mostrando productos")
            utils.listaSimple(lstProductos, 2, 1)
        elif (resMenuProducto == 2):
            log.debug("buscamos Producto por nombre")
            nombreBuscarProducto = input("Nombre: ")
            conn = conexion.conexionBDD(NumeroBDD)
            query = query_Productos
            if NumeroBDD == 2:
                query = query_Productos + ' where "nombreProducto" like' + f" '%{nombreBuscarProducto}%';"
            elif NumeroBDD != 2:
                query = query_Productos + f" where nombreProducto like '%{nombreBuscarProducto}%';"
            resConn2 = conn.consultarBDD(query)
            lstProductosTemp = []
            for row in resConn2:
                ProductoF = productos.productos(row[0], row[1], row[2], row[3])
                lstProductosTemp.append(ProductoF)
            utils.listaSimple(lstProductosTemp, 2, 1)
        elif (resMenuProducto == 3):
            log.debug("actualizar producto")
            conn = conexion.conexionBDD(NumeroBDD)
            utils.listaSimple(lstProductos, 2, 0)
            idProducto = utils.validarIDEnLista(
                lstProductos, "9999=Cancelar / ID a modificar: ", 2)
            if idProducto != "":
                nombre = input("Nombre: ")
                Valor = utils.validarFloat("Valor: ")
                ingresoBinario = True
                afecto = 0
                while ingresoBinario:
                    afecto = utils.validarEntero("Afecto Igv?  Si=1 / No=0 :")
                    if afecto < 2:
                        ingresoBinario = False
                query = ""
                if NumeroBDD == 2:
                    query = 'update "productos" set "nombreProducto" = ' + f"'{nombre}'" + ', "valorProducto" = ' + f"'{Valor}'" + ',"igvProducto" = ' + f"'{afecto}'"
                    query += ' where idProducto =' + f" {idProducto};"
                else:
                    query = f"update productos set nombreProducto = '{nombre}', valorProducto = '{Valor}',igvProducto = '{afecto}' where idProducto = {idProducto};"
                resConn = conn.ejecutarBDD(query)
                if (resConn):
                    cargarProductos()
                    print("Se ejecuto correctamente")
                else:
                    print("Hubo un error")
                input(MsjContinuar)
            else:
                input("Operación Cancelada.")
        elif (resMenuProducto == 4):
            nombre = input("Nombre: ")
            Valor = utils.validarFloat("Valor: ")
            ingresoBinario = True
            afecto = 0
            while ingresoBinario:
                afecto = utils.validarEntero("Afecto Igv?  Si=1 / No=0 :")
                if afecto < 2:
                    ingresoBinario = False
            conn = conexion.conexionBDD(NumeroBDD)
            query = ""
            if NumeroBDD == 2:
                query = 'insert into "productos" ("nombreProducto", "valorProducto","igvProducto") values( ' + f" '{nombre}','{Valor}','{afecto}');"
            else:
                query = f"insert into productos (nombreProducto, valorProducto,igvProducto) values('{nombre}','{Valor}','{afecto}');"
            resConn = conn.ejecutarBDD(query)
            if (resConn):
                cargarProductos()
                print("Se ejecuto correctamente")
            else:
                print("Hubo un error")
            input(MsjContinuar)
        elif (resMenuProducto == 5):
            log.debug("eliminamos producto")
            conn = conexion.conexionBDD(NumeroBDD)
            utils.listaSimple(lstProductos, 2, 0)
            idProducto = utils.validarIDEnLista(
                lstProductos, "9999=Cancelar / ID a modificar: ", 2)
            if idProducto != "":
                query = ""
                if NumeroBDD == 2:
                    query = 'delete from "productos" where idProducto = ' + f"{idProducto} ;"
                else:
                    query = f"delete from productos where idProducto = {idProducto} ;"
                resConn = conn.ejecutarBDD(query)
                if (resConn):
                    cargarProductos()
                    print("Se ejecuto correctamente")
                else:
                    print("Hubo un error")
                input(MsjContinuar)
            else:
                input("Operacion cancelada.")
        elif (resMenuProducto == 9):
            ProductoTrue = False
Ejemplo n.º 6
0
     break
 elif (opcionMenuPrincipal == 1):
     salirCreacionCliente = True
     while salirCreacionCliente:
         res = menuAdministrador.mostrarMenu()
         if res == 9:
             salirCreacionCliente = False
             break
         elif (res == 3):
             print("\n-------------CLIENTE A ELIMINAR-------------")
             utils.listaSimple(lstClientes, opcionMenuPrincipal)
             lstClientesTem = []
             ClienteEliminar = False
             boolEliminar = True
             while boolEliminar:
                 numero = utils.validarEntero(
                     "999:Para cancelar / Ingresa el codigo: ")
                 if (numero == 999):
                     boolEliminar = False
                     break
                 contarlis = 0
                 lstClienteNew = []
                 for p in lstClientes:
                     contarlis += 1
                     if (p.codigo == numero):
                         lstClientestemporal = clases.Cliente(
                             p.codigo, p.dni, p.nombre, p.apellido, p.edad,
                             p.codCliente)
                         lstClientesTem.append(lstClientestemporal)
                         lstClientes.pop(contarlis - 1)
                         ClienteEliminar = True
                         boolEliminar = False
Ejemplo n.º 7
0
def MostrarAlumnos():
    cargarAlumnos()
    stopMenu = True
    while stopMenu:
        dicMenu = {
            "\t- Listar": 1,
            "\t- Buscar por Nombre": 2,
            "\t- Insertar": 3,
            "\t- Eliminar": 4,
            "\t- Actualizar": 5
        }
        menuInicio = utils.Menu("Menu ALUMNOS", dicMenu)
        resMenu = menuInicio.mostrarMenu()
        if (resMenu == 1):
            log.debug("Listar")
            utils.listaSimple(lstAlumno, 1, 1)
        elif (resMenu == 2):
            log.debug("Buscar por nombre")
            nombrebuscar = input("Nombre: ")
            fitro = {"nombreAlumno": f"{nombrebuscar}"}
            lstAlumnoTemp = []
            lstAlumnoTemp.clear()
            collt = conn.leerRegistros("alumno", fitro)
            for obj2 in collt:
                DataRestor2 = alumno.alumno(obj2['_id'], obj2['nombreAlumno'],
                                            obj2['apellidoAlumno'],
                                            obj2['dniAlumno'],
                                            obj2['direccionAlumno'])
                lstAlumnoTemp.append(DataRestor2)
            utils.listaSimple(lstAlumnoTemp, 1, 1)
        elif (resMenu == 3):
            log.debug("Insertar")
            nombre = input("Nombre: ")
            apellido = input("Apellido: ")
            dni = utils.validarEntero("DNI: ")
            Direccion = input("Direccion: ")
            data = {
                "nombreAlumno": f"{nombre}",
                "apellidoAlumno": f"{apellido}",
                "dniAlumno": f"{dni}",
                "direccionAlumno": f"{Direccion}"
            }
            insertado = conn.insertarRegistro("alumno", data)
            if insertado:
                cargarAlumnos()
                print("Insertado correctamente.")
            else:
                print("Error al insertar.")
            input(MsjContinuar)
        elif (resMenu == 4):
            log.debug("Eliminar")
            utils.listaSimple(lstAlumno, 1, 0)
            NombreEliminar = input("Nombre a Eliminar: ")
            dataEliminar = {"nombreAlumno": f"{NombreEliminar}"}
            coleli = conn.eliminarRegistro("alumno", dataEliminar)
            if coleli:
                cargarAlumnos()
                print("Eliminado correctamente.")
            else:
                print("Error al eliminar.")
            input(MsjContinuar)
        elif (resMenu == 5):
            log.debug("Eliminar Alumno")
            utils.listaSimple(lstAlumno, 1, 0)
            NombreEliminar = input("Nombre a Actualizar: ")
            dataEliminar = {"nombreAlumno": f"{NombreEliminar}"}

            nombre = input("Nuevo Nombre: ")
            apellido = input("Nuevo Apellido: ")
            dni = utils.validarEntero("Nuevo DNI: ")
            Direccion = input("Nueva Direccion: ")
            dataActualizada = {
                "nombreAlumno": f"{nombre}",
                "apellidoAlumno": f"{apellido}",
                "dniAlumno": f"{dni}",
                "direccionAlumno": f"{Direccion}"
            }
            coleli = conn.actualizarRegistro("alumno", dataEliminar,
                                             dataActualizada)
            if coleli:
                cargarAlumnos()
                print("Actualizado correctamente.")
            else:
                print("Error al actualizar.")
            input(MsjContinuar)
        elif (resMenu == 9):
            stopMenu = False
        else:
            log.debug("volvemos a mostrar menu")
Ejemplo n.º 8
0
def MostrarNotas():
    stopMenu = True
    while stopMenu:
        dicMenu = {
            "\t- Listar": 1,
            "\t- Buscar por Alumno": 2,
            "\t- Insertar": 3,
            "\t- Eliminar": 4
        }
        menuInicio = utils.Menu("Menu NOTAS", dicMenu)
        resMenu = menuInicio.mostrarMenu()
        if (resMenu == 1):
            log.debug("Listar")
            lstNotasTemp1 = []
            lstNotasTemp1.clear()
            collt = conn.leerRegistrosTotal("nota")
            for obj2 in collt:
                idAlumnoT = obj2['idAlumno']
                FiltroAlumnoId = {"_id": ObjectId(f"{idAlumnoT}")}
                colltAlumno = conn.leerRegistro("alumno", FiltroAlumnoId)
                nombreAlumnoDes = colltAlumno['nombreAlumno']

                idCursoT = obj2['idCurso']
                FiltroCursoId = {"_id": ObjectId(f"{idCursoT}")}
                colltCurso = conn.leerRegistro("curso", FiltroCursoId)
                nombreCursoDes = colltCurso['nombreCurso']

                DataRestor2 = nota.notaDescripcion(obj2['_id'],
                                                   obj2['descripcionNota'],
                                                   nombreCursoDes,
                                                   nombreAlumnoDes)
                lstNotasTemp1.append(DataRestor2)
            utils.listaSimple(lstNotasTemp1, 2, 1)

        elif (resMenu == 2):
            log.debug("Buscar por Alumno")
            cargarAlumnos()
            utils.listaSimple(lstAlumno, 1, 0)
            nombrebuscar = input("Alumno Nombre: ")
            fitro = {"nombreAlumno": f"{nombrebuscar}"}
            colltAlum = conn.leerRegistro("alumno", fitro)
            idAlumno = colltAlum['_id']
            nombreAlumnoDes = colltAlum['nombreAlumno']
            fitroNotas = {"idAlumno": f"{idAlumno}"}
            lstNotasTemp = []
            lstNotasTemp.clear()
            collt = conn.leerRegistros("nota", fitroNotas)
            for obj2 in collt:
                idCursoT = obj2['idCurso']
                FiltroCursoId = {"_id": ObjectId(f"{idCursoT}")}
                colltCurso = conn.leerRegistro("curso", FiltroCursoId)
                nombreCursoDes = colltCurso['nombreCurso']
                DataRestor2 = nota.nota(obj2['_id'], obj2['descripcionNota'],
                                        nombreCursoDes, nombreAlumnoDes)
                lstNotasTemp.append(DataRestor2)
            utils.listaSimple(lstNotasTemp, 2, 1)
        elif (resMenu == 3):
            log.debug("Insertar Notas")

            cargarAlumnos()
            utils.listaSimple(lstAlumno, 1, 0)
            nombrebuscar = input("Nombre del Alumno: ")
            fitro = {"nombreAlumno": f"{nombrebuscar}"}
            colltAlum = conn.leerRegistro("alumno", fitro)
            idAlumno = colltAlum['_id']

            cargarCurso()
            utils.listaSimple(lstCurso, 3, 0)
            cursobuscar = input("Nombre del Curso: ")
            fitroCurso = {"nombreCurso": f"{cursobuscar}"}
            colltCurs = conn.leerRegistro("curso", fitroCurso)
            idCurso = colltCurs['_id']

            Numnota = utils.validarEntero("Nota: ")
            data = {
                "descripcionNota": f"{Numnota}",
                "idCurso": f"{idCurso}",
                "idAlumno": f"{idAlumno}"
            }
            insertado = conn.insertarRegistro("nota", data)
            if insertado:
                cargarNota()
                print("Insertado correctamente.")
            else:
                print("Error al insertar.")
            input(MsjContinuar)
        elif (resMenu == 4):
            log.debug("Eliminar")

        elif (resMenu == 9):
            stopMenu = False
        else:
            log.debug("volvemos a mostrar menu")