{% extends 'base.html' %} {% import 'macros/empresa.html' as empresa_ui %} {% block title %}{{ (contexto_historico.titulo_pagina if contexto_historico else 'Histórico de Lotes de Importação') }}{% endblock %} {% block content %}
{% set historico = contexto_historico or {} %}

{{ historico.titulo_pagina or 'Histórico de lotes de importação' }}

{{ historico.subtitulo_pagina or 'Rastreie entradas por sequência, controle pessoal, cota, marca, produto e custos extras.' }}

{% if schema_pendencias %} {% endif %}
Lotes
{{ totais.lotes }}
Itens
{{ totais.itens }}
Quantidade total
{{ totais.quantidade_formatada }}
Custo total
{{ totais.custo_total_formatado }}
Meta
{{ totais.venda_total_formatado }}
Projeção ao preço cartão
Vendas Realizadas
{{ totais.venda_consolidada_formatado }}
Qtd vendida: {{ totais.quantidade_vendida_formatada or '0' }}
{% if totais.venda_total and totais.venda_total > 0 %} {% set pct_meta = ((totais.venda_consolidada or 0) / totais.venda_total * 100)|round(1) %}
{{ pct_meta }}% da meta
{% endif %}
Saldo em Estoque
{{ totais.saldo_estoque_formatado }}
Estoque atual dos produtos
Custos extras
{{ totais.custos_extras_formatado }}
Frete: {{ totais.frete_formatado }} · Outros: {{ totais.outros_formatado }}
Lotes encontrados
Mostrando até os 100 lotes mais recentes
{% if lotes %}
{% for lote in lotes %} {% set itens = lote.itens or [] %} {% set resumo = lote.resumo_listagem or {} %} {% set resumo_comercial = resumo.resumo_comercial or {} %} {% endfor %}
Lanç. Data Controle pessoal Origem Importado Vendido Saldo atual Escoamento Financeiro Custos extras Ações
{{ '%02d'|format(resumo.sequencia or loop.index) }}
{{ lote.data_criacao.strftime('%d/%m/%Y %H:%M') if lote.data_criacao else '-' }}
{{ lote.usuario.username if lote.usuario else 'Sistema' }}
{{ lote.controle_pessoal or 'Sem controle pessoal' }}
Interno: {{ lote.numero_controle }}
{% if lote.observacoes %}
{{ lote.observacoes[:70] }}{% if lote.observacoes|length > 70 %}...{% endif %}
{% endif %}
{% set marcas = resumo.marcas_resumo or [] %} {% set cotas = resumo.cotas_resumo or [] %} {% if resumo.controle_saldo_lote %}
Saldo próprio {% if resumo.bloquear_venda_saldo_lote %} Bloqueia venda {% endif %}
{% endif %} {% if marcas %}
Marca: {% for m in marcas %}{{ m }}{% endfor %}
{% endif %} {% if cotas %}
Cota: {% for c in cotas %}{{ c }}{% endfor %}
{% endif %} {% if not marcas and not cotas %} {% endif %}
{{ resumo_comercial.quantidade_importada_formatada or resumo.quantidade_total_formatada }}
{{ 'lote' if resumo.controle_saldo_lote else 'arquivo' }}
{{ resumo_comercial.quantidade_vendida_formatada or '0' }}
{{ resumo_comercial.vendido_label or 'Vendido' }}
{{ resumo_comercial.saldo_atual_formatado or resumo.saldo_estoque_formatado or '0' }}
{{ resumo_comercial.saldo_label or 'Estoque atual' }}
{% set escoamento = resumo_comercial.escoamento or 0 %} {{ resumo_comercial.escoamento_formatado or '0,0%' }}
Custo: {{ resumo.custo_total_formatado }}
Meta: {{ resumo.venda_total_formatado }}
Vendas: {{ resumo.venda_consolidada_formatado or 'R$ 0,00' }}
Frete: R$ {{ "{:,.2f}".format(lote.valor_frete or 0).replace(',', '_').replace('.', ',').replace('_', '.') }}
Outros: R$ {{ "{:,.2f}".format(lote.valor_outros_custos or 0).replace(',', '_').replace('.', ',').replace('_', '.') }}
Arquivo: {{ resumo.arquivo_nome }}
Resumo: {{ lote.qtd_registros or 0 }} reg. · {{ resumo.itens_total or itens|length }} itens · Qtd {{ resumo.quantidade_total_formatada }}
Status: {{ resumo.registros_resumo }}
Destino: {{ resumo.destino_label }}
{% if resumo.controle_saldo_lote %}
Controle: saldo próprio{% if resumo.bloquear_venda_saldo_lote %} · bloqueia sem saldo{% endif %}
{% endif %}
{% else %}
{{ historico.vazio_titulo or 'Nenhum lote encontrado' }}

{{ historico.vazio_descricao or 'Ajuste os filtros ou faça uma nova importação de produtos para começar a rastrear os lançamentos.' }}

{% endif %}
{% endblock %}