{% extends "base.html" %}
{% block title %}Presupuesto {{ pres.numero }}{% endblock %}
{% block page_title %}Presupuesto {{ pres.numero }}{% endblock %}

{% block topbar_actions %}
<button type="button" class="btn btn-outline-danger btn-sm no-print"
  data-url="{{ url_for('presupuestos.pdf', id=pres.id) }}"
  data-nombre="Presupuesto_{{ pres.numero|replace('/', '-') }}.pdf"
  onclick="verArchivo(this.dataset.url, this.dataset.nombre)">
  <i class="bi bi-file-earmark-pdf me-1"></i>Ver PDF
</button>
<a href="{{ url_for('presupuestos.pdf', id=pres.id) }}" download
   class="btn btn-danger btn-sm no-print">
  <i class="bi bi-download me-1"></i>Descargar PDF
</a>
<a href="{{ url_for('presupuestos.editar', id=pres.id) }}" class="btn btn-outline-secondary btn-sm no-print">
  <i class="bi bi-pencil me-1"></i>Editar
</a>
{% if pres.estado == 'aceptado' %}
<form method="post" action="{{ url_for('presupuestos.convertir_a_factura', id=pres.id) }}" class="d-inline no-print"
      onsubmit="return confirm('¿Convertir este presupuesto en factura?')">
  <button class="btn btn-success btn-sm">
    <i class="bi bi-file-earmark-arrow-up me-1"></i>Convertir a factura
  </button>
</form>
{% endif %}
<form method="post" action="{{ url_for('presupuestos.eliminar', id=pres.id) }}" class="d-inline no-print"
      onsubmit="return confirm('¿Eliminar este presupuesto?')">
  <button class="btn btn-outline-danger btn-sm"><i class="bi bi-trash"></i></button>
</form>
{% endblock %}

{% block content %}
<div class="row justify-content-center">
  <div class="col-lg-9">
    <div class="card">
      <div class="card-body p-5">
        <!-- Cabecera -->
        <div class="d-flex justify-content-between align-items-start mb-5">
          <div>
            <h2 class="fw-bold mb-1">{{ empresa.nombre }}</h2>
            {% if empresa.nif %}<div class="text-muted small">NIF: {{ empresa.nif }}</div>{% endif %}
            {% if empresa.direccion %}<div class="text-muted small">{{ empresa.direccion }}</div>{% endif %}
            {% if empresa.cp or empresa.ciudad %}<div class="text-muted small">{{ empresa.cp }} {{ empresa.ciudad }}</div>{% endif %}
            {% if empresa.email %}<div class="text-muted small">{{ empresa.email }}</div>{% endif %}
          </div>
          <div class="text-end">
            <h1 class="fw-bold text-primary mb-1" style="font-size:1.4rem">PRESUPUESTO</h1>
            <div class="fs-5 fw-bold">{{ pres.numero }}</div>
            <div class="text-muted small">Fecha: {{ pres.fecha }}</div>
            {% if pres.fecha_validez %}
            <div class="text-muted small">Válido hasta: {{ pres.fecha_validez }}</div>
            {% endif %}
            <span class="badge mt-1
              {% if pres.estado == 'aceptado' %}bg-success
              {% elif pres.estado == 'rechazado' or pres.estado == 'caducado' %}bg-danger
              {% elif pres.estado == 'enviado' %}bg-warning text-dark
              {% else %}bg-secondary{% endif %}">
              {{ pres.estado|capitalize }}
            </span>
          </div>
        </div>

        <!-- Datos cliente -->
        {% if pres.cliente_nombre %}
        <div class="row mb-5">
          <div class="col-md-6">
            <div class="bg-light rounded p-3">
              <div class="text-muted small fw-semibold mb-2">PRESUPUESTO PARA</div>
              <div class="fw-semibold">{{ pres.cliente_nombre }}</div>
              {% if pres.cliente_nif %}<div class="small text-muted">NIF: {{ pres.cliente_nif }}</div>{% endif %}
              {% if pres.cliente_direccion %}<div class="small text-muted">{{ pres.cliente_direccion }}</div>{% endif %}
              {% if pres.cliente_email %}<div class="small text-muted">{{ pres.cliente_email }}</div>{% endif %}
            </div>
          </div>
        </div>
        {% endif %}

        <!-- Líneas -->
        <div class="table-responsive mb-4">
          <table class="table">
            <thead class="table-dark">
              <tr>
                <th>Descripción</th>
                <th class="text-center">Cant.</th>
                <th class="text-end">Precio unit.</th>
                <th class="text-center">Dto.</th>
                <th class="text-end">Subtotal</th>
              </tr>
            </thead>
            <tbody>
              {% for l in lineas %}
              <tr>
                <td>{{ l.descripcion }}</td>
                <td class="text-center">{{ l.cantidad }}</td>
                <td class="text-end">{{ "%.2f"|format(l.precio_unitario) }} €</td>
                <td class="text-center">{{ l.descuento_pct }}%</td>
                <td class="text-end fw-semibold">{{ "%.2f"|format(l.subtotal) }} €</td>
              </tr>
              {% endfor %}
            </tbody>
          </table>
        </div>

        <!-- Totales -->
        <div class="row justify-content-end">
          <div class="col-md-4">
            <table class="table table-sm">
              <tr><td class="text-muted">Base imponible</td><td class="text-end">{{ "%.2f"|format(pres.subtotal) }} €</td></tr>
              <tr><td class="text-muted">IVA ({{ pres.iva_pct }}%)</td><td class="text-end">{{ "%.2f"|format(pres.iva_importe) }} €</td></tr>
              {% if pres.irpf_pct > 0 %}
              <tr><td class="text-muted text-danger">IRPF ({{ pres.irpf_pct }}%)</td><td class="text-end text-danger">−{{ "%.2f"|format(pres.irpf_importe) }} €</td></tr>
              {% endif %}
              <tr class="table-dark fw-bold fs-5">
                <td>TOTAL</td><td class="text-end">{{ "%.2f"|format(pres.total) }} €</td>
              </tr>
            </table>
          </div>
        </div>

        {% if pres.notas %}
        <div class="border-top pt-3 mt-3">
          <div class="text-muted small fw-semibold">NOTAS / CONDICIONES</div>
          <div class="small">{{ pres.notas }}</div>
        </div>
        {% endif %}

        {% if empresa.iban %}
        <div class="border-top pt-3 mt-3">
          <div class="text-muted small">Datos bancarios: <strong>{{ empresa.iban }}</strong></div>
        </div>
        {% endif %}
      </div>
    </div>

    <!-- Cambiar estado -->
    <div class="card mt-3 no-print">
      <div class="card-header py-3"><i class="bi bi-arrow-repeat me-2"></i>Cambiar estado</div>
      <div class="card-body d-flex flex-wrap gap-2">
        {% for estado, color in [('borrador','secondary'),('enviado','warning'),('aceptado','success'),('rechazado','danger'),('caducado','dark')] %}
        <form method="post" action="{{ url_for('presupuestos.cambiar_estado', id=pres.id) }}" class="d-inline">
          <input type="hidden" name="estado" value="{{ estado }}">
          <button class="btn btn-outline-{{ color }} btn-sm {% if pres.estado == estado %}active{% endif %}">
            {{ estado|capitalize }}
          </button>
        </form>
        {% endfor %}

        {% if pres.estado != 'aceptado' %}
        <div class="ms-auto">
          <form method="post" action="{{ url_for('presupuestos.convertir_a_factura', id=pres.id) }}"
                onsubmit="return confirm('¿Convertir este presupuesto en factura emitida?')">
            <button type="submit" class="btn btn-success btn-sm">
              <i class="bi bi-file-earmark-arrow-up me-1"></i>Convertir a factura
            </button>
          </form>
        </div>
        {% endif %}
      </div>
    </div>

  </div>
</div>
{% endblock %}
