Example #1
0
def nuevaOrdenVenta(cliente, productos):
    dateTimeObj = datetime.now()
    albaran = dateTimeObj.strftime(str(cliente.getId()) + "%d%m%Y%H%M%S")
    ordenVenta = Clase.OrdenVenta(cliente, productos, albaran)
    if BBDD.guardaOrdenVenta(ordenVenta):
        montaOrdenesVenta()
        log("Venta {0} Creada".format(albaran))
        return ordenVenta
Example #2
0
def montaOrdenesVenta():
    listaProductosAlbaran = []
    listaOrdenesVenta = BBDD.listadoOrdenesVenta()
    montaProductos()
    montaClientes()
    ordenesVenta.clear()
    if listaOrdenesVenta:

        albaran = 0
        cliente = 0
        linea = 0

        for oc in listaOrdenesVenta:  # 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 venta
            if albaran != oc[1] and linea > 0 or linea == len(
                    listaOrdenesVenta) - 1:
                if linea == len(listaOrdenesVenta) - 1:
                    listaProductosAlbaran.append(
                        almacen[oc[3]])  # se añade el producto a la lista
                    cliente = oc[2]
                    albaran = oc[1]
                # si ha cambiado de venta  se crea la compra
                lista = listaProductosAlbaran.copy(
                )  # se hace una copia porque si no al borrar borra la referencia
                ordenVenta = Clase.OrdenVenta(clientes[cliente], lista,
                                              albaran)
                ordenVenta.setId(oc[0])
                ordenesVenta[oc[
                    0]] = ordenVenta  # se guarda en la lista de ordenes de venta 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
            cliente = oc[2]  # se asigna nuevo proveedor
            linea += 1

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

        return ordenesVenta
Example #3
0
def nuevaVenta():
    errores = False

    if not errores:
        listaProductos = {}

        clienteElegido = muestraClientes(True)

        if clienteElegido is None or clienteElegido < 0:
            print("-Creando nuevo Cliente-")
            nuevoCliente()
            clienteElegido = len(clientes) - 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

        ordenVenta = Clase.OrdenVenta(listaProductos)
        ordenesVenta.append(ordenVenta)
        print("Orden Creada!\n")
        log("Se ha creado una orden de Venta")
    else:
        print(errores)