{% extends 'base.html' %}
{% block title %}{{ activo.nombre }}{% endblock %}

{% block content %}
<div class="d-flex align-items-center justify-content-between mb-4">
  <div>
    <h4 class="fw-bold mb-1" style="color:#0f2744">
      <i class="bi bi-buildings me-2" style="color:#a3e635"></i>{{ activo.nombre }}
    </h4>
    <p class="text-muted mb-0" style="font-size:.85rem">
      {{ activo.cuenta_codigo or '' }} {{ ('— ' + activo.cuenta_nombre) if activo.cuenta_nombre else '' }}
    </p>
  </div>
  <div class="d-flex gap-2">
    <a href="{{ url_for('activos.editar', id=activo.id) }}" class="btn btn-outline-primary btn-sm">
      <i class="bi bi-pencil me-1"></i>Editar
    </a>
    <a href="{{ url_for('activos.index') }}" class="btn btn-outline-secondary btn-sm">
      <i class="bi bi-arrow-left me-1"></i>Activos
    </a>
  </div>
</div>

{% with msgs = get_flashed_messages(with_categories=true) %}
  {% for cat, msg in msgs %}
    <div class="alert alert-{{ cat }} alert-dismissible fade show">{{ msg }}<button type="button" class="btn-close" data-bs-dismiss="alert"></button></div>
  {% endfor %}
{% endwith %}

<div class="row g-4">
  <!-- Ficha -->
  <div class="col-md-4">
    <div class="card mb-4">
      <div class="card-header">Ficha del activo</div>
      <div class="card-body" style="font-size:.85rem">
        <table class="table table-sm mb-0">
          <tr><td class="text-muted">Estado</td>
              <td>{% if activo.activo %}<span class="badge-estado-pagada">Activo</span>{% else %}<span class="badge-estado-cancelada">Baja</span>{% endif %}</td>
          </tr>
          <tr><td class="text-muted">F. adquisición</td><td class="fw-bold">{{ activo.fecha_adquisicion }}</td></tr>
          <tr><td class="text-muted">Coste</td><td class="fw-bold">{{ "%.2f €"|format(activo.coste_adquisicion) }}</td></tr>
          <tr><td class="text-muted">Valor residual</td><td>{{ "%.2f €"|format(activo.valor_residual or 0) }}</td></tr>
          <tr><td class="text-muted">Vida útil</td><td>{{ activo.vida_util_anios }} años</td></tr>
          <tr><td class="text-muted">Método</td>
              <td>{{ 'Lineal' if activo.metodo_amortizacion == 'lineal' else 'Acelerado' }}</td>
          </tr>
          <tr><td class="text-muted">Amort. acum.</td><td class="text-danger fw-bold">{{ "%.2f €"|format(activo.amort_acumulada or 0) }}</td></tr>
          <tr><td class="text-muted">Valor neto</td>
              <td class="text-success fw-bold">{{ "%.2f €"|format(activo.coste_adquisicion - (activo.amort_acumulada or 0)) }}</td>
          </tr>
          {% if activo.cuenta_codigo %}
          <tr><td class="text-muted">Cta. activo</td>
              <td class="font-monospace" style="color:#fbbf24">{{ activo.cuenta_codigo }}</td>
          </tr>
          {% endif %}
          {% if activo.amort_codigo %}
          <tr><td class="text-muted">Cta. amort.</td>
              <td class="font-monospace" style="color:#fbbf24">{{ activo.amort_codigo }}</td>
          </tr>
          {% endif %}
        </table>
        {% if activo.descripcion %}
        <hr><p class="text-muted mb-0" style="font-size:.82rem">{{ activo.descripcion }}</p>
        {% endif %}
        {% if activo.notas %}
        <hr><p class="text-muted mb-0" style="font-size:.82rem">{{ activo.notas }}</p>
        {% endif %}
      </div>
    </div>

    <!-- Registrar amortización -->
    {% if activo.activo %}
    {% set max_amort = activo.coste_adquisicion - (activo.valor_residual or 0) - (activo.amort_acumulada or 0) %}
    {% if max_amort > 0.01 %}
    <div class="card">
      <div class="card-header" style="background:linear-gradient(135deg,#f0fdf4,#dcfce7)!important;color:#14532d!important">
        <i class="bi bi-calculator me-1"></i>Registrar amortización
      </div>
      <div class="card-body">
        <form method="post" action="{{ url_for('activos.amortizar', id=activo.id) }}">
          <div class="mb-3">
            <label class="form-label" style="font-size:.82rem">Año de amortización</label>
            <input type="number" name="anio" value="{{ anio_actual }}" min="2000" max="2099"
                   class="form-control form-control-sm">
          </div>
          <div class="mb-3">
            <label class="form-label" style="font-size:.82rem">Cuota (€)</label>
            <div class="input-group input-group-sm">
              <input type="number" name="cuota" step="0.01" min="0.01" max="{{ max_amort }}"
                     value="{% if tabla %}{{ tabla[0].cuota }}{% endif %}"
                     class="form-control" required>
              <span class="input-group-text">€</span>
            </div>
            <div class="form-text" style="font-size:.75rem">Máx. amortizable: {{ "%.2f €"|format(max_amort) }}</div>
          </div>
          <button class="btn btn-success btn-sm w-100">
            <i class="bi bi-check2 me-1"></i>Registrar asiento
          </button>
        </form>
      </div>
    </div>
    {% else %}
    <div class="alert alert-success py-2" style="font-size:.82rem">
      <i class="bi bi-check2-circle me-1"></i>Activo totalmente amortizado.
    </div>
    {% endif %}
    {% endif %}
  </div>

  <!-- Tabla de amortización -->
  <div class="col-md-8">
    <div class="card mb-4">
      <div class="card-header">Plan de amortización</div>
      {% if tabla %}
      <div class="table-responsive">
        <table class="table table-hover mb-0">
          <thead>
            <tr>
              <th style="width:80px">Año</th>
              <th class="text-end" style="width:130px">Cuota anual</th>
              <th class="text-end" style="width:150px">Amort. acumulada</th>
              <th class="text-end" style="width:130px">Valor neto</th>
              <th style="width:60px"></th>
            </tr>
          </thead>
          <tbody>
            {% for fila in tabla %}
            {% set ya_contabilizado = fila.anio in anios_contabilizados %}
            <tr class="{{ 'table-success' if ya_contabilizado else '' }}">
              <td class="fw-bold">{{ fila.anio }}</td>
              <td class="text-end font-monospace">{{ "%.2f €"|format(fila.cuota) }}</td>
              <td class="text-end font-monospace text-danger">{{ "%.2f €"|format(fila.acumulado) }}</td>
              <td class="text-end font-monospace">
                <span class="{{ 'text-success' if fila.valor_neto > 0 else 'text-muted' }}">
                  {{ "%.2f €"|format(fila.valor_neto) }}
                </span>
              </td>
              <td class="text-center">
                {% if ya_contabilizado %}
                <i class="bi bi-check2-circle text-success" title="Amortización registrada"></i>
                {% endif %}
              </td>
            </tr>
            {% endfor %}
          </tbody>
        </table>
      </div>
      {% else %}
      <div class="card-body text-muted text-center">Sin datos para mostrar.</div>
      {% endif %}
    </div>

    <!-- Asientos registrados -->
    {% if asientos %}
    <div class="card">
      <div class="card-header">Asientos de amortización contabilizados</div>
      <div class="table-responsive">
        <table class="table table-sm mb-0">
          <thead><tr><th>Número</th><th>Fecha</th><th>Descripción</th><th></th></tr></thead>
          <tbody>
            {% for a in asientos %}
            <tr>
              <td class="font-monospace fw-bold" style="color:#fbbf24;font-size:.82rem">{{ a.numero }}</td>
              <td class="text-muted" style="font-size:.82rem">{{ a.fecha }}</td>
              <td style="font-size:.82rem">{{ a.descripcion }}</td>
              <td class="text-end">
                <a href="{{ url_for('cuentas.asiento_detalle', id=a.id) }}"
                   class="btn btn-sm btn-outline-secondary btn-action">
                  <i class="bi bi-eye"></i>
                </a>
              </td>
            </tr>
            {% endfor %}
          </tbody>
        </table>
      </div>
    </div>
    {% endif %}
  </div>
</div>
{% endblock %}
