{% extends "base.html" %} {% block title %}{% if venda %}Pedido #{{ venda.numero_pedido }}{% else %}Novo Pedido de Venda{% endif %}{% endblock %} {% block head %} {% endblock %} {% block content %} {% set imprimir_a4_disponivel = has_endpoint('imprimir_venda') %} {% set imprimir_80mm_disponivel = has_endpoint('imprimir_venda_termica') %} {% set nota_fiscal_detalhe_disponivel = has_endpoint('fiscal_nota_fiscal') %} {% set notas_fiscais_lista_disponivel = has_endpoint('fiscal_notas') %} {% set emitir_nfe_disponivel = has_endpoint('fiscal_emitir_nfe') %} {% set devolucao_disponivel = has_endpoint('devolucao_selecionar_itens') %}
{# Barra de Navegação e Ações #}
Voltar {% if venda %} {% endif %}
{% if venda and venda.status == 'aberto' %} {% endif %} {% if not venda_bloqueada %} {% endif %}
{# Barra de Informações #}
{% if venda %}Pedido #{{ venda.numero_pedido }}{% else %}Novo Pedido{% endif %} {# Badge de Status com cores específicas #} {% if venda %} {% if venda.status == 'aberto' %} ABERTO {% elif venda.status == 'fechado' %} FECHADO {% elif venda.status == 'recebido' %} RECEBIDO {% elif venda.status == 'faturado' %} FATURADO {% elif venda.status == 'cancelado' %} CANCELADO {% else %} {{ venda.status|upper }} {% endif %} {% else %} RASCUNHO {% endif %}
{{ now.strftime('%d/%m/%Y') }} {{ now.strftime('%H:%M') }} {{ current_user.username }}
{# Barra de Ações do Pedido #} {% if venda %}
{# Botões de acordo com o status #} {% if venda.status in ['aberto', 'digitacao'] %} {% elif venda.status == 'fechado' %} {% endif %} {# Copiar pedido - disponível para qualquer status exceto aberto #} {% if venda.status not in ['aberto', 'digitacao'] %} {% endif %} {# Cancelar - disponível para status aberto, digitacao, fechado e recebido #} {% if venda.status in ['aberto', 'digitacao', 'fechado', 'recebido'] %} {% endif %} {% if imprimir_a4_disponivel %} Imprimir A4 {% endif %} {% if imprimir_80mm_disponivel %} Imprimir 80mm {% endif %} {% if venda.status != 'cancelado' and not tem_nota_fiscal %} {% if venda.caixa_pdv_id and venda.status == 'recebido' %} {% endif %} {% if emitir_nfe_disponivel %} Gerar NF-e {% endif %} {% endif %} {% if devolucao_disponivel and venda.status not in ['aberto', 'digitacao', 'cancelado'] and venda.itens|length > 0 %} Gerar Devolução {% endif %}
{# Informações adicionais #}
{% if venda.status == 'aberto' %} Pedido novo - adicione produtos e cliente para continuar {% elif venda.status == 'digitacao' %} Pedido em digitação - clique em "Fechar Pedido" quando finalizar {% elif venda.status == 'fechado' %} Pronto para recebimento no PDV (F10 > D{{ venda.id }}) {% if venda.data_fechamento %}
✓ Fechado em {{ venda.data_fechamento.strftime('%d/%m/%Y às %H:%M') }} {% endif %} {% elif venda.status == 'recebido' %} Pagamento recebido - pode emitir NF-e {% if venda.data_recebimento %}
✓ Recebido em {{ venda.data_recebimento.strftime('%d/%m/%Y às %H:%M') }} {% endif %} {% elif venda.status == 'faturado' %} Documento fiscal vinculado: {{ venda.chave_documento or 'NF-e' }} {% if venda.data_fechamento %}
✓ Faturado em {{ venda.data_fechamento.strftime('%d/%m/%Y às %H:%M') }} {% endif %} {% endif %}
{% endif %} {# Alerta de Bloqueio para Vendas Finalizadas #} {% if venda_bloqueada %} {% endif %}
{# Coluna Principal #}
{# Card Cabeçalho do Pedido #}
{# Empresa (hidden) #} {# Data da Venda (Bloqueada) #}
{# Status (Bloqueado - controlado pelo sistema) #}
{# Vendedor #}
{# Forma de Pagamento #}
{# Tabela de Preço #}
{# Venda Funcionário #}
{# Card Cliente #}
{# Dropdown de sugestões #}
{% if venda and (venda.cliente or venda.pessoa) %} {% set cli = venda.cliente or venda.pessoa %}
{{ cli.nome }}
{% if cli.cpf_cnpj %}{{ cli.cpf_cnpj }}{% endif %}
{% else %}

Busque um cliente acima

{% endif %}
{# Card Itens #}
Itens do Pedido
{{ venda.itens|length if venda else 0 }} itens
{# Linha de Lançamento Rápido #}
Digite o código, a referência, o código de barras ou use a busca por produto. Nos campos diretos, pressione Enter para localizar mais rápido.
{# Tabela de Itens #}
{% if venda and venda.itens %} {% for item in venda.itens %} {% endfor %} {% endif %}
# Produto Embalagem Qtd Valor Unit. Desc. Total Ações
{{ loop.index }} {{ item.descricao or (item.produto.nome if item.produto else ('Produto #' ~ item.produto_id if item.produto_id else 'Produto')) }} {% if item.produto and item.produto.codigo_produto %}
Cód: {{ item.produto.codigo_produto }} {% endif %}
{% if item.embalagem %} {{ item.embalagem.nome }} {% elif item.produto and item.produto.embalagem %} {{ item.produto.embalagem.nome or item.produto.embalagem.sigla or item.produto.unidade_comercial or 'UN' }} {% elif item.produto and item.produto.unidade_comercial %} {{ item.produto.unidade_comercial }} {% else %} UN {% endif %} {{ "%.2f"|format(item.quantidade) }} R$ {{ "%.2f"|format(item.valor_unitario) }} R$ {{ "%.2f"|format(item.desconto_item) }} R$ {{ "%.2f"|format(item.valor_total) }} {% if not venda_bloqueada %} {% else %} -- {% endif %}
{% if not venda or not venda.itens %}

Nenhum item adicionado

Use o campo acima para buscar e adicionar produtos
{% endif %}
{# Observações #}
{# Informações de Transporte #}
Informações de Transporte
{# Coluna Lateral - Totais #}
Resumo do Pedido
Subtotal: R$ {{ "%.2f"|format(venda.subtotal) if venda else '0.00' }}
Desconto:
R$
Acréscimo:
R$
Frete:
R$
Outras Despesas:
R$

TOTAL:

R$ {{ "%.2f"|format(venda.valor_total) if venda else '0.00' }}

{# Modal Editar Item #} {# Modal Localizar Pedido #} {# Modal Cancelar Pedido #} {% endblock %} {% block extra_js %} {% endblock %}