<?php
declare(strict_types=1);

require_once __DIR__ . '/auth.php';
require_once __DIR__ . '/conexao.php';
require_once __DIR__ . '/impressoras_helpers.php';

date_default_timezone_set('America/Sao_Paulo');
impressorasExigirAcesso();
$mysqli->set_charset('utf8mb4');

$id = (int) ($_GET['termo_id'] ?? 0);

$stmt = impExecutar(
    $mysqli,
    "SELECT
        t.*,
        i.marca,
        i.modelo,
        i.patrimonio,
        i.numero_serie,
        m.numero_atendimento,
        m.defeito_relatado,
        m.solucao,
        m.acessorios_recebidos
     FROM ti_impressora_termos AS t
     JOIN ti_impressoras AS i
        ON i.id = t.impressora_id
     JOIN ti_impressora_manutencoes AS m
        ON m.id = t.manutencao_id
     WHERE t.id = ?
     LIMIT 1",
    [$id]
);

$termo = $stmt->get_result()->fetch_assoc();
$stmt->close();

if (!$termo) {
    http_response_code(404);
    exit('Termo não encontrado.');
}

$dados = json_decode(
    (string) $termo['dados_json'],
    true
) ?: [];

$tipoEsperado = 'ENTRADA';

if ($termo['tipo'] !== $tipoEsperado) {
    http_response_code(400);
    exit('Tipo de termo inválido.');
}

$titulo = 'COMPROVANTE DE ENTRADA DE IMPRESSORA';
$declaracao = 'Declaro que o equipamento acima foi entregue à Gerência de Tecnologia para diagnóstico e manutenção, juntamente com os acessórios descritos neste documento.';
$assinaturaPessoa = 'Pessoa que entregou o equipamento';
?>
<!doctype html>
<html lang="pt-BR">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <title><?= impE($termo['numero_termo']) ?></title>
    <style>
        @page{size:A4;margin:8mm}
        *{box-sizing:border-box}
        body{margin:0;font-family:Arial,sans-serif;color:#10243c;background:#eef2f5}
        .page{width:190mm;min-height:270mm;margin:10px auto;padding:8mm 9mm;background:#fff;box-shadow:0 12px 35px rgba(0,0,0,.15)}
        .head{display:flex;align-items:center;gap:12px;padding-bottom:7mm;border-bottom:2px solid #08396f}
        .head img{width:25mm;height:25mm;object-fit:contain}
        .head h1{margin:0;color:#08396f;font-size:18px}
        .head p{margin:4px 0 0;font-size:9px}
        .code{display:flex;justify-content:space-between;gap:10px;margin:6mm 0;font-size:8px}
        .title{text-align:center;margin:0 0 5mm;font-size:14px}
        .grid{display:grid;grid-template-columns:1fr 1fr;gap:3mm}
        .field{padding:3mm;border:1px solid #cbd9e5;border-radius:3mm}
        .field.full{grid-column:1/-1}
        .field span{display:block;color:#63758a;font-size:6px;font-weight:bold;text-transform:uppercase}
        .field strong{display:block;margin-top:2mm;font-size:9px;line-height:1.35}
        .declaration{margin-top:5mm;padding:4mm;border:1px solid #cbd9e5;border-radius:3mm;font-size:8px;line-height:1.55}
        .signatures{display:grid;grid-template-columns:1fr 1fr;gap:12mm;margin-top:18mm}
        .signature{text-align:center;font-size:7px}.line{border-top:1px solid #10243c;padding-top:2mm}
        .actions{display:flex;justify-content:center;gap:8px;margin:12px}
        .actions button,.actions a{padding:10px 14px;border:0;border-radius:10px;color:#fff;background:#08396f;text-decoration:none;font-weight:bold;cursor:pointer}
        @media print{body{background:#fff}.page{width:auto;min-height:auto;margin:0;padding:0;box-shadow:none}.actions{display:none}}
    </style>
</head>
<body>
<div class="actions">
    <button onclick="window.print()">Imprimir / Salvar PDF</button>
    <a href="detalhes_impressora.php?id=<?= (int) $termo['impressora_id'] ?>">Voltar</a>
</div>
<main class="page">
    <header class="head">
        <img src="assets/logo_pref.jpg" alt="">
        <div><h1>PREFEITURA DE EXTREMA</h1><p>Gerência de Tecnologia • Controle Institucional de Impressoras</p></div>
    </header>
    <div class="code"><strong><?= impE($termo['numero_termo']) ?></strong><span><?= impE(impData($termo['criado_em'])) ?></span></div>
    <h2 class="title"><?= impE($titulo) ?></h2>
    <section class="grid">
        <div class="field"><span>Atendimento</span><strong><?= impE($termo['numero_atendimento']) ?></strong></div>
        <div class="field"><span>Pessoa</span><strong><?= impE($termo['pessoa_nome']) ?></strong></div>
        <div class="field"><span>Setor</span><strong><?= impE($termo['setor_nome'] ?: 'Não informado') ?></strong></div>
        <div class="field"><span>Técnico responsável</span><strong><?= impE($termo['tecnico_nome']) ?></strong></div>
        <div class="field"><span>Impressora</span><strong><?= impE($termo['marca'] . ' ' . $termo['modelo']) ?></strong></div>
        <div class="field"><span>Patrimônio / série</span><strong><?= impE(($termo['patrimonio'] ?: 'Sem patrimônio') . ' • ' . ($termo['numero_serie'] ?: 'Sem série')) ?></strong></div>
        <div class="field full"><span><?= $tipoEsperado === 'ENTRADA' ? 'Defeito relatado' : 'Solução aplicada' ?></span><strong><?= impE($tipoEsperado === 'ENTRADA' ? $termo['defeito_relatado'] : ($termo['solucao'] ?: 'Não informada')) ?></strong></div>
        <?php if ($tipoEsperado === 'ENTRADA'): ?>
            <div class="field full"><span>Acessórios recebidos</span><strong><?= impE($termo['acessorios_recebidos'] ?: 'Nenhum acessório informado') ?></strong></div>
        <?php endif; ?>
    </section>
    <div class="declaration"><?= impE($declaracao) ?></div>
    <section class="signatures">
        <div class="signature"><div class="line"><strong><?= impE($termo['tecnico_nome']) ?></strong><br>Técnico que realizou o atendimento</div></div>
        <div class="signature"><div class="line"><strong><?= impE($termo['pessoa_nome']) ?></strong><br><?= impE($assinaturaPessoa) ?></div></div>
    </section>
</main>
<?php if (isset($_GET['print'])): ?>
<script>window.addEventListener('load',()=>setTimeout(()=>window.print(),350));</script>
<?php endif; ?>
</body>
</html>
