Files
SGF/resources/views/purchasing/payable-report.blade.php
2026-11-04 09:37:20 +02:00

18 lines
4.5 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@php
$money = static fn ($n) => $n === null ? 'Indeterminado' : number_format(intdiv($n, 100), 0, ',', ' ').','.str_pad((string) abs($n % 100), 2, '0', STR_PAD_LEFT).' MZN';
$query = http_build_query($report['criteria'], '', '&', PHP_QUERY_RFC3986);
$details = http_build_query($report['criteria'] + ['recognition' => 'recognised'], '', '&', PHP_QUERY_RFC3986);
@endphp
<!doctype html><html lang="pt"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Relatório de obrigações — ensaio SGF</title>
<style>body{font:17px system-ui;background:#f3f6f5;color:#142b28;margin:0}main{max-width:1000px;margin:auto;padding:24px}section,header{background:white;padding:24px;margin:16px 0;border:1px solid #d5e0dc;border-radius:12px}label{display:block;margin:12px 0}input,button{font:inherit;padding:10px}dt{margin-top:14px}dd{font-weight:600;margin-left:0}a{color:#125a4b}code{overflow-wrap:anywhere}.notice{background:#fff2cc;padding:16px}</style></head><body><main>
<header><a href="/supplier-payables?{{ $details }}">Conferir documentos, posições e evidências</a><h1>Obrigações reconhecidas — posição actual</h1><p class="notice">ENSAIO SINTÉTICO. Este relatório agrega as posições financeiras pelo núcleo existente. Não constitui razão contabilístico, balancete, reconciliação bancária ou relatório histórico por data de corte.</p><p>Históricos importados usam recibos de ensaio conferidos. Não há origem histórica SGF viva ou passagem operacional de responsabilidade validada.</p><p>Capturado em {{ $report['captured_at_utc'] }} UTC · Empresa #{{ $report['scope']['company_id'] }} / Unidade #{{ $report['scope']['unit_id'] }}</p></header>
<section><h2>Critérios</h2><form method="get" action="/supplier-payables/report">
@if(isset($report['criteria']['source']))<input type="hidden" name="source" value="{{ $report['criteria']['source'] }}"><p>Origem local #{{ $report['criteria']['source'] }} · <a href="/supplier-payables/report">Consultar todas as origens</a></p>@endif
<label>Número ou fornecedor<input name="q" maxlength="100" value="{{ $report['criteria']['q'] }}"></label><button>Gerar posição actual</button></form><p>Apenas obrigações reconhecidas dos documentos abrangidos. Documentos por reconhecer e pagamentos ainda por afectar não são abatidos como dívida liquidada.</p></section>
<section><h2>Posição abrangida</h2><dl><dt>Obrigações reconhecidas</dt><dd>{{ $report['totals']['count'] }}</dd><dt>Principal original reconhecido</dt><dd>{{ $money($report['totals']['principal_minor']) }}</dd><dt>Saldo global por liquidar</dt><dd>{{ $money($report['totals']['balance_minor']) }}</dd><dt>Posições com saldo indeterminado</dt><dd>{{ $report['totals']['unknown_balance_count'] }}</dd><dt>Obrigações com vencimento desconhecido</dt><dd>{{ $report['totals']['unknown_due_count'] }}</dd></dl>
@if($report['totals']['unknown_balance_count'])<p role="alert">Há evidência por conferir. O saldo global permanece indeterminado; o montante conhecido abaixo é parcial e não representa o total por liquidar.</p>@endif
</section>
<section><h2>Componentes das posições conhecidas</h2><dl><dt>Posições com saldo sustentado</dt><dd>{{ $report['known_positions']['count'] }}</dd><dt>Principal dessas posições</dt><dd>{{ $money($report['known_positions']['principal_minor']) }}</dd><dt>Confirmados históricos incorporados</dt><dd>{{ $money($report['known_positions']['historical_confirmed_minor']) }}</dd><dt>Afectações líquidas de reversões</dt><dd>{{ $money($report['known_positions']['net_allocated_minor']) }}</dd><dt>Saldo conhecido{{ $report['totals']['unknown_balance_count'] ? ' — parcial' : '' }}</dt><dd>{{ $money($report['known_positions']['balance_minor']) }}</dd></dl><p>Conferência: principal conhecido − confirmados históricos − afectações líquidas = saldo conhecido. Reversões preservam os originais e são consideradas pelo núcleo financeiro.</p></section>
<section><h2>Rastreabilidade</h2><p>Identificador de conteúdo das posições: <code>{{ $report['positions_sha256'] }}</code></p><p>O mesmo conteúdo e âmbito produzem o mesmo identificador. Uma nova consulta ou os documentos abertos depois podem já reflectir alterações posteriores à captura.</p><p><a href="/api/supplier-payables/report?{{ $query }}">Consultar os dados deste relatório em JSON</a></p><p>O link gera uma nova captura da posição actual; não recupera um documento arquivado. Não se guardou um relatório ou um lançamento por esta consulta.</p></section>
</main></body></html>