Beispiel #1
0
def nuevaOrdenCompra(proveedor, productos):
    dateTimeObj = datetime.now()
    albaran = dateTimeObj.strftime(str(proveedor.getId()) + "%d%m%Y%H%M%S")
    ordenCompra = Clase.OrdenCompra(proveedor, productos, albaran)

    if BBDD.guardaOrdenCompra(ordenCompra):
        montaOrdenesCompra()
        log("Orden de compra {0} Creada".format(albaran))
        return ordenCompra
Beispiel #2
0
def montaOrdenesCompra():
    listaProductosAlbaran = []
    listaOrdenesCompra = BBDD.listadoOrdenesCompra()
    montaProductos()
    montaProveedores()
    ordenesCompra.clear()
    if listaOrdenesCompra:

        albaran = 0
        proveedor = 0
        linea = 0

        for oc in listaOrdenesCompra:  # Recorre todas las filas de la tabla odenes compra

            # si no coincide el albaran con el anterior y no es la primera linea  o si es el ultimo crea orden de compra
            if albaran != oc[1] and linea > 0 or linea == len(
                    listaOrdenesCompra) - 1:
                if linea == len(listaOrdenesCompra) - 1:
                    listaProductosAlbaran.append(
                        almacen[oc[3]])  # se añade el producto a la lista
                # si ha cambiado de compra  se crea la compra
                lista = listaProductosAlbaran.copy(
                )  # se hace una copia porque si no al borrar borra la referencia
                ordenCompra = Clase.OrdenCompra(proveedores[proveedor], lista,
                                                albaran)
                ordenCompra.setId(oc[0])
                ordenesCompra[oc[
                    0]] = ordenCompra  # se guarda en la lista de ordenes de compra con su id
                listaProductosAlbaran.clear(
                )  # se vacia la lista de productos para la siguiente compra

            listaProductosAlbaran.append(
                almacen[oc[3]])  # se añade el producto a la lista
            albaran = oc[1]  # se asigna nuevo id del albaran
            proveedor = oc[2]  # se asigna nuevo proveedor
            linea += 1

        log("Se ha creado una lista nueva de compras")

        return ordenesCompra
Beispiel #3
0
def nuevaOrden():
    errores = False

    if not errores:
        # Me interesa crear una lista de productos cada vez que se llame a esta funcion
        listaProductos = {}

        proveedorElegido = muestraProveedor()

        if proveedorElegido is None or proveedorElegido < 0:
            print("-Creando nuevo Proveedor-")
            creaProveeodor()
            proveedorElegido = len(proveedores) - 1

        repite = True
        while repite:
            productoElegido = muestraProductos(True)

            if productoElegido is None or productoElegido < 0:
                print("-Creando Nuevo Producto-")
                nuevoProducto()
                productoElegido = len(almacen) - 1

            cantidad = input("cantidad: ").strip()

            listaProductos[almacen[productoElegido]] = cantidad

            respuesta = input("¿Agregar otro producto? (s/n)").strip()

            repite = False if respuesta == "n" else True

        ordenCompra = Clase.OrdenCompra(proveedores[proveedorElegido],
                                        listaProductos)
        ordenesCompra.append(ordenCompra)
        print("Orden Creada!\n")
        log("Se ha creado una orden de compra")
        print("nueva orden de compra")
    else:
        print(errores)