Este artigo detalha a lógica completa de um sistema de carrinho de compras robusto, abrangendo desde a visualização do carrinho até a finalização do pedido com verificação de saldo, integração com pagamento PIX e um sistema inteligente de gestão de entrega que suporta tanto vendas diretas quanto modelos de dropshipping e consignação.
1. Visualização Detalhada no Carrinho:
Ao acessar a página do carrinho de compras, o cliente terá uma visão clara e organizada dos seus itens:
2. Opções de Finalização de Pedido:
O cliente terá duas opções claras para finalizar suas compras:
3. Verificação de Saldo e Fluxo de Pagamento PIX:
Independentemente da opção de finalização escolhida, o sistema realizará uma verificação de saldo antes de prosseguir:
4. Finalização do Pedido:
O processo de finalização do pedido (executado pelo script finalizar.php
para uma loja ou em loop pelo finalizaLoop.php
para todas) envolve as seguintes etapas:
pedidos
: Um registro único é criado na tabela pedidos
para cada finalização de pedido (seja de uma loja ou para um conjunto de itens de um mesmo fornecedor dentro de uma compra multi-loja). Este registro conterá:
idComprador
: ID do cliente.idVendedor
: ID da loja onde a compra foi iniciada.idGerente
: ID do gerente da agência (se o produto for consignado - obtido da tabela de anúncios).idDistribuidor
: ID do distribuidor (se o produto for de dropshipping - obtido da tabela de anúncios).pedidos_pecas
: Para cada item no carrinho que está sendo finalizado, um registro é criado na tabela pedidos_pecas
, vinculando-o ao idPedido
recém-criado e contendo:
idPedido
: ID do pedido na tabela pedidos
.idAnuncio
: ID do anúncio do produto.tipo
: Tipo do produto (Moeda, Cédula, Acessório).quantidade
: Quantidade do item (para acessórios).preco
: Preço unitário do item.idGerente
: ID do gerente (copiado da tabela de anúncios).idDistribuidor
: ID do distribuidor (copiado da tabela de anúncios).5. Liberação do Pedido Após Compensação do PIX:
6. Painel de Controle:
O painel de controle fornecerá diferentes visões e funcionalidades para gerenciar os pedidos:
idGerente = 0
e idDistribuidor = 0
, o dono da loja poderá inserir a data/hora do envio e o código de rastreio.idGerente > 0
ou idDistribuidor > 0
, os respectivos responsáveis terão a opção de atualizar o status do envio, incluindo data/hora e código de rastreio. O dono da loja poderá apenas visualizar essas informações.7. Identificação da Origem do Produto:
A origem de cada produto será identificada diretamente nas tabelas de anúncios:
idGerente
e idDistribuidor
no registro do anúncio serão iguais a zero.idGerente
conterá o ID do gerente da agência, e idDistribuidor
será zero.idDistribuidor
conterá o ID do distribuidor, e idGerente
será zero.Esses valores serão recuperados no script de finalização e armazenados na tabela pedidos_pecas
para rastrear a origem de cada item do pedido.
Conclusão:
Esta arquitetura detalhada oferece um sistema de carrinho de compras completo e flexível, capaz de lidar com diferentes modelos de negócio (venda direta, consignação e dropshipping) de forma integrada. A gestão de pagamento via PIX e o painel de controle com diferentes níveis de acesso garantem um fluxo de trabalho eficiente para clientes e fornecedores. A chave para o sucesso reside na implementação precisa de cada etapa e no tratamento adequado dos diferentes cenários e status dos pedidos.
Autor do blog: