{% extends 'base.html' %} {% block title %}Relatório de Controle de Lotes{% endblock %} {% block content %}

Controle de Lotes

Saldo de produtos com controle de lote

Voltar
Produtos com Lote

{{ relatorio|length }}

Lotes Ativos

{{ total_lotes_ativos }}

Lotes Vencidos

{{ relatorio|sum(attribute='qtd_vencidos') }}

Próximos ao Vencimento

{{ relatorio|sum(attribute='qtd_proximos') }}

{% if relatorio %} {% for item in relatorio %}
{{ item.produto.nome }}
Código: {{ item.produto.codigo or '-' }} | Barras: {{ item.produto.codigo_barras or '-' }}
{% if item.qtd_vencidos > 0 %} {{ item.qtd_vencidos }} vencido(s) {% endif %} {% if item.qtd_proximos > 0 %} {{ item.qtd_proximos }} próximo(s) {% endif %} {% if item.diferenca != 0 %} Diferença: {{ "%.2f"|format(item.diferenca) }} {% endif %}
Estoque Geral

{{ "%.2f"|format(item.estoque_geral) }} {{ item.produto.unidade_comercial or 'UN' }}

Soma dos Lotes

{{ "%.2f"|format(item.total_lotes) }} {{ item.produto.unidade_comercial or 'UN' }}

Quantidade de Lotes

{{ item.lotes|length }} lotes com saldo

{% if item.lotes %}
{% for lote in item.lotes %} {% endfor %}
Lote Código Barras Quantidade Fabricação Validade Status Localização
{{ lote.numero_lote }} {{ lote.codigo_barras_lote }} {{ "%.2f"|format(lote.quantidade_atual) }} {{ lote.data_fabricacao.strftime('%d/%m/%Y') if lote.data_fabricacao else '-' }} {% if lote.esta_vencido %} {{ lote.data_validade.strftime('%d/%m/%Y') }} {% elif lote.esta_proximo_vencimento %} {{ lote.data_validade.strftime('%d/%m/%Y') }} ({{ lote.dias_para_vencer }}d) {% else %} {{ lote.data_validade.strftime('%d/%m/%Y') }} {% endif %} {% if lote.esta_vencido %} Vencido {% elif lote.esta_proximo_vencimento %} Atenção {% else %} OK {% endif %} {{ lote.localizacao or '-' }}
{% else %}
Nenhum lote com saldo
{% endif %}
{% endfor %} {% else %}

Nenhum produto com controle de lote

Ative o controle de lote nos produtos desejados

{% endif %}
{% endblock %}