Início
NexoPOS

Pré-preencher produtos

O preenchimento prévio do produto é um recurso adicionado no NexoPOS 5.3.3. Ele permite criar uma lista de produtos que será preenchida ao criar uma compra. Esse recurso pode ser usado para sugerir compras ao usuário final.

Como funciona?

Para que funcione, você precisa usar a classe “ProcurementService”, que agora fornece novos métodos: “storePreload” e “preload”. O método “storePreload” aceita 4 parâmetros:

  • hash: é uma string única gerada para identificar os produtos. Você pode usar Str::uuid().
  • itens: é ou um array de uma coleção com as seguintes entradas (product_id, unit_id, quantity)
  • multiplicador: usado para multiplicar quantas vezes os itens são adicionados à lista de compras. O valor padrão é 1.
  • expiração: defina após quantas vezes (em segundos) o preenchimento expirará e será limpo.

<?php
use App\Services\ProcurementService;
use Illuminate\Support\Str;

$uniqueId = Str::uuid();

$service = app()->make( ProcurementService::class );
$service->storePreload(
  hash: $uniqueId,
  items: [
      [ 
        'product_id' => 1,
        'unit_id' =>  1,
        'quantity' => 2
      ]
  ],
  multiplier: 3, // we want the product to be provided 3 times so we'll have 2*3 = 6 of the requested items
  expiration: 3600, // expires in one hour
);

Carregar os produtos pré-preenchidos

Você precisa redirecionar para a página de compras com um argumento de consulta extra (preload). Quando o argumento de consulta “preload” tiver como valor o $uniqueId que criamos, o produto será buscado e adicionado à tabela.

Aqui está como a URL deve ser.

yourwebsite.com/dashboard/procurement/create?preload=48927940-f2af-4d0e-83e1-d43b493989ef

Observe que você pode usar o helper "ns()->route( 'ns.procurement-create' )" para obter a URL de compras.