<?php
ini_set('display_errors',1);
error_reporting(E_ALL);

session_start();

require_once '../conexion.php';
require_once '../includes/funciones.php';

if (empty($_SESSION['am_usuario_id'])) {
    header('Location: ../login.php');
    exit;
}

exigir_permiso('ordenes_pdf');

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

if ($id <= 0) {
    die('Orden inválida.');
}

$stmt = $conn->prepare("
    SELECT 
        o.*,
        c.nombre,
        c.apellido,
        c.rut,
        c.telefono,
        c.direccion,
        v.patente,
        v.marca,
        v.modelo,
        v.anio,
        v.numero_chasis,
        v.numero_motor
    FROM ordenes_taller o
    INNER JOIN clientes c ON o.id_cliente = c.id_cliente
    INNER JOIN vehiculos v ON o.id_vehiculo = v.id_vehiculo
    WHERE o.id_orden = ?
    LIMIT 1
");

if (!$stmt) {
    die('Error SQL orden: '.$conn->error);
}

$stmt->bind_param('i', $id);
$stmt->execute();
$orden = $stmt->get_result()->fetch_assoc();
$stmt->close();

if (!$orden) {
    die('Orden no encontrada.');
}

$items = $conn->prepare("
    SELECT *
    FROM orden_productos
    WHERE id_orden = ?
    ORDER BY id_orden_producto ASC
");

$items_lista = [];

if ($items) {
    $items->bind_param('i', $id);
    $items->execute();
    $resItems = $items->get_result();

    while ($row = $resItems->fetch_assoc()) {
        $items_lista[] = $row;
    }

    $items->close();
}

$total = (float)($orden['monto_total'] ?? 0);
$abonado = (float)($orden['monto_abonado'] ?? 0);
$saldo = $total - $abonado;
?>
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>OT #<?php echo (int)$id; ?> | Area Motors</title>

<style>
body{
    font-family:Arial, sans-serif;
    color:#111;
    background:#fff;
    margin:0;
    padding:30px;
}

.header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-bottom:3px solid #111;
    padding-bottom:15px;
    margin-bottom:20px;
}

.logo{
    max-width:260px;
}

h1{
    margin:0;
    font-size:28px;
}

.box{
    border:1px solid #333;
    padding:12px;
    margin-bottom:14px;
}

.grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}

.label{
    font-weight:bold;
}

table{
    width:100%;
    border-collapse:collapse;
    margin-top:10px;
}

th,td{
    border:1px solid #333;
    padding:8px;
    text-align:left;
}

th{
    background:#e5e7eb;
}

.total{
    text-align:right;
    font-size:18px;
    margin-top:20px;
}

.actions{
    margin-bottom:20px;
}

.btn{
    background:#2563eb;
    color:#fff;
    padding:10px 14px;
    text-decoration:none;
    border-radius:8px;
    font-weight:bold;
    display:inline-block;
}

@media print{
    .actions{
        display:none;
    }

    body{
        padding:0;
    }
}
</style>
</head>

<body>

<div class="actions">
    <a class="btn" href="javascript:window.print()">Imprimir / Guardar PDF</a>
    <a class="btn" href="pantalla.php">Volver</a>
</div>

<div class="header">
    <div>
        <img src="../assets/img/logo-areamotors.jpg" class="logo">
    </div>

    <div>
        <h1>Orden de Trabajo</h1>
        <p><strong>OT:</strong> #<?php echo (int)$id; ?></p>
        <p><strong>Fecha:</strong> <?php echo htmlspecialchars($orden['hora_recepcion'] ?? $orden['fecha_ingreso'] ?? ''); ?></p>
    </div>
</div>

<div class="grid">
    <div class="box">
        <h3>Datos del Cliente</h3>
        <p><span class="label">Nombre:</span> <?php echo htmlspecialchars($orden['nombre'].' '.$orden['apellido']); ?></p>
        <p><span class="label">RUT:</span> <?php echo htmlspecialchars($orden['rut'] ?? ''); ?></p>
        <p><span class="label">Teléfono:</span> <?php echo htmlspecialchars($orden['telefono'] ?? ''); ?></p>
        <p><span class="label">Dirección:</span> <?php echo htmlspecialchars($orden['direccion'] ?? ''); ?></p>
    </div>

    <div class="box">
        <h3>Datos del Vehículo</h3>
        <p><span class="label">Patente:</span> <?php echo htmlspecialchars($orden['patente']); ?></p>
        <p><span class="label">Vehículo:</span> <?php echo htmlspecialchars($orden['marca'].' '.$orden['modelo']); ?></p>
        <p><span class="label">Año:</span> <?php echo htmlspecialchars($orden['anio'] ?? ''); ?></p>
        <p><span class="label">Chasis:</span> <?php echo htmlspecialchars($orden['numero_chasis'] ?? ''); ?></p>
        <p><span class="label">Motor:</span> <?php echo htmlspecialchars($orden['numero_motor'] ?? ''); ?></p>
    </div>
</div>

<div class="box">
    <h3>Detalle de Ingreso</h3>
    <p><span class="label">Estado:</span> <?php echo htmlspecialchars($orden['estado'] ?? ''); ?></p>
    <p><span class="label">Prioridad:</span> <?php echo htmlspecialchars($orden['prioridad'] ?? 'normal'); ?></p>
    <p><span class="label">Motivo:</span></p>
    <p><?php echo nl2br(htmlspecialchars($orden['motivo_ingreso'] ?? '')); ?></p>

    <p><span class="label">Trabajos solicitados:</span></p>
    <p><?php echo nl2br(htmlspecialchars($orden['detalle_trabajos'] ?? '')); ?></p>

    <p><span class="label">Observaciones:</span></p>
    <p><?php echo nl2br(htmlspecialchars($orden['observaciones'] ?? '')); ?></p>
</div>

<div class="box">
    <h3>Items / Repuestos / Mano de Obra</h3>

    <table>
        <tr>
            <th>Detalle</th>
            <th>Cantidad</th>
            <th>Valor</th>
            <th>Total</th>
        </tr>

        <?php if (empty($items_lista)): ?>
            <tr>
                <td colspan="4">No existen ítems registrados.</td>
            </tr>
        <?php else: ?>
            <?php foreach($items_lista as $item): ?>
                <tr>
                    <td><?php echo htmlspecialchars($item['descripcion'] ?? $item['nombre'] ?? ''); ?></td>
                    <td><?php echo htmlspecialchars($item['cantidad'] ?? '1'); ?></td>
                    <td>$<?php echo number_format((float)($item['valor_unitario'] ?? 0),0,',','.'); ?></td>
                    <td>$<?php echo number_format((float)($item['subtotal'] ?? 0),0,',','.'); ?></td>
                </tr>
            <?php endforeach; ?>
        <?php endif; ?>
    </table>
</div>

<div class="total">
    <p><strong>Total:</strong> $<?php echo number_format($total,0,',','.'); ?></p>
    <p><strong>Abonado:</strong> $<?php echo number_format($abonado,0,',','.'); ?></p>
    <p><strong>Saldo:</strong> $<?php echo number_format($saldo,0,',','.'); ?></p>
</div>

<br><br>

<div class="grid">
    <div>
        _______________________________<br>
        Firma Cliente
    </div>

    <div>
        _______________________________<br>
        Firma Area Motors
    </div>
</div>

</body>
</html>