<?php /* Depto de Engenharia e Automação - Master Automação - Autor: Derlivon Silva */ ?>
<?php
$fmt  = fn($v,$d=2) => 'R$ '.number_format((float)$v,$d,',','.');
$fmtN = fn($v,$d=2) => number_format((float)$v,$d,',','.');
$totalCusto = array_sum(array_column($linhas,'VLR_CUSTO'));
$totalVenda = array_sum(array_column($linhas,'VLR_VENDA'));
$qtdZerado  = count(array_filter($linhas, fn($r) => (float)($r['ESTOQUE']??0) <= 0));
$qtdAbaixo  = count(array_filter($min, fn($r) => true));
?>
<div class="pbi-page-header no-print">
    <h1 class="pbi-page-title"><i class="bi bi-boxes me-2 text-accent"></i>Relatório de Estoque</h1>
</div>

<form method="get" class="pbi-filtro-barra mb-3 no-print">
    <div class="pbi-filtro-row">
        <div class="pbi-filtro-field"><label class="pbi-filtro-label">Buscar produto</label>
            <input type="text" name="busca" value="<?= htmlspecialchars($busca) ?>" class="pbi-filtro-input form-control" placeholder="nome ou código..."></div>
        <button type="submit" class="pbi-btn-filtrar btn"><i class="bi bi-search me-1"></i>Buscar</button>
    </div>
</form>

<?php $filtros = ['dataIni'=>'','dataFim'=>'']; include __DIR__ . '/_header.php' ?>

<script type="application/json" id="relatorio-meta"><?= json_encode([
    'titulo' => 'Posição de Estoque',
    'empresa' => $empresa ?? '',
    'totais' => [
        ['label' => 'Total Produtos', 'valor' => number_format((int)($kpis['TOTAL_PRODUTOS']??0),0,',','.')],
        ['label' => 'Com Estoque', 'valor' => number_format((int)($kpis['COM_ESTOQUE']??0),0,',','.')],
        ['label' => 'Zerados', 'valor' => number_format((int)($kpis['ZERADOS']??0),0,',','.')],
        ['label' => 'Valor (Custo)', 'valor' => $fmt($kpis['VLR_CUSTO']??0)],
    ],
], JSON_UNESCAPED_UNICODE | JSON_HEX_TAG | JSON_HEX_AMP | JSON_HEX_APOS | JSON_HEX_QUOT) ?></script>

<div class="pbi-kpi-grid mb-3 no-print" data-export-secao="kpis">
    <div class="pbi-kpi-card"><div class="pbi-kpi-label">Total Produtos</div><div class="pbi-kpi-value"><?= number_format((int)($kpis['TOTAL_PRODUTOS']??0),0,',','.') ?></div></div>
    <div class="pbi-kpi-card"><div class="pbi-kpi-label">Com Estoque</div><div class="pbi-kpi-value text-success"><?= number_format((int)($kpis['COM_ESTOQUE']??0),0,',','.') ?></div></div>
    <div class="pbi-kpi-card"><div class="pbi-kpi-label">Zerados</div><div class="pbi-kpi-value text-danger"><?= number_format((int)($kpis['ZERADOS']??0),0,',','.') ?></div></div>
    <div class="pbi-kpi-card"><div class="pbi-kpi-label">Valor (Custo)</div><div class="pbi-kpi-value text-warning"><?= $fmt($kpis['VLR_CUSTO']??0) ?></div></div>
    <div class="pbi-kpi-card"><div class="pbi-kpi-label">Valor (Venda)</div><div class="pbi-kpi-value text-accent"><?= $fmt($kpis['VLR_VENDA']??0) ?></div></div>
</div>

<div class="mb-2">
    <div class="d-flex gap-2 no-print">
        <a href="?<?= $busca?'busca='.urlencode($busca).'&':'' ?>formato=csv" class="btn btn-sm btn-outline-success"><i class="bi bi-filetype-csv me-1"></i>Exportar CSV</a>
        <button onclick="window.print()" class="btn btn-sm btn-outline-secondary"><i class="bi bi-printer me-1"></i>Imprimir</button>
        <a href="/relatorios" class="btn btn-sm btn-outline-secondary ms-auto"><i class="bi bi-grid me-1"></i>Todos os Relatórios</a>
    </div>
</div>

<?php if($qtdAbaixo > 0): ?>
<div class="alert alert-warning d-flex gap-2 align-items-center mb-3 no-print">
    <i class="bi bi-exclamation-triangle-fill"></i>
    <strong><?= $qtdAbaixo ?> produto(s)</strong> abaixo do estoque mínimo.
    <a href="/estoque/minimos" class="ms-2 btn btn-sm btn-warning">Ver críticos</a>
</div>
<?php endif; ?>

<div class="pbi-card" data-export-secao="dados">
    <div class="pbi-card-header d-flex justify-content-between">
        <span><i class="bi bi-boxes me-2"></i>Posição de Estoque</span>
        <small class="text-muted no-print"><?= count($linhas) ?> produtos<?= $busca ? ' · filtro: "'.$busca.'"' : '' ?></small>
    </div>
    <div class="pbi-hint mb-2" style="margin-top:0">Quanto você tem de cada produto e quanto isso vale. <strong>Custo Unit.</strong> = custo médio por unidade; <strong>Vl. Custo</strong> = estoque a preço de custo; <strong>Vl. Venda</strong> = estoque a preço de venda; <strong>Margem</strong> = lucro sobre o preço de venda (%).</div>
    <div class="table-responsive">
        <table class="pbi-table pbi-table-print">
            <thead><tr>
                <th>Código</th><th>Produto</th><th>Un</th>
                <th class="text-end">Estoque</th>
                <th class="text-end">Custo Unit.</th>
                <th class="text-end">Vl. Custo</th>
                <th class="text-end">Vl. Venda</th>
                <th class="text-end">Margem</th>
            </tr></thead>
            <tbody>
            <?php foreach($linhas as $r):
                $est  = (float)($r['ESTOQUE']??0);
                $cu   = (float)($r['CUSTO_MEDIO']??0);
                $pv   = (float)($r['PRECO_VENDA']??0);
                $mg   = $pv>0&&$cu>0 ? ($pv-$cu)/$pv*100 : null;
            ?>
            <tr <?= $est<=0?'style="opacity:.5"':'' ?>>
                <td class="fw-semibold"><?= \App\Core\View::e($r['COD_ITEM']??'') ?></td>
                <td><?= \App\Core\View::e(mb_substr($r['DESCRICAO']??'',0,40)) ?></td>
                <td><span class="badge bg-secondary"><?= \App\Core\View::e($r['COD_UNIDADE']??'-') ?></span></td>
                <td class="text-end fw-bold <?= $est<=0?'text-danger':($est<($r['EST_MINIMO']??0)?'text-warning':'') ?>"><?= $fmtN($est) ?></td>
                <td class="text-end"><?= $cu>0?$fmt($cu):'—' ?></td>
                <td class="text-end"><?= $fmt($r['VLR_CUSTO']??0) ?></td>
                <td class="text-end"><?= $fmt($r['VLR_VENDA']??0) ?></td>
                <td class="text-end <?= $mg===null?'':($mg>=30?'text-success':($mg>=0?'text-warning':'text-danger')) ?>">
                    <?= $mg!==null?number_format($mg,1,',','.').'%':'—' ?>
                </td>
            </tr>
            <?php endforeach; ?>
            <?php if(!$linhas): ?><tr><td colspan="8" class="text-center py-3 text-muted">Sem dados</td></tr><?php endif; ?>
            </tbody>
            <tfoot><tr class="pbi-table-total">
                <td colspan="5" class="text-end fw-bold">Total:</td>
                <td class="text-end fw-bold text-warning"><?= $fmt($totalCusto) ?></td>
                <td class="text-end fw-bold text-accent"><?= $fmt($totalVenda) ?></td>
                <td></td>
            </tr></tfoot>
        </table>
    </div>
</div>
