{% extends 'base.html' %}
{% load static %}

{% block title %}{{ titulo_pagina|default:"Generar Reportes" }}{% endblock %}

{% block content %}
<div class="container-fluid mt-4">
    <h1>{{ titulo_pagina|default:"Generar Reportes" }}</h1>
    <p>Utiliza los filtros a continuación para generar reportes personalizados.</p>

    <div class="card shadow mb-4">
        <div class="card-body">
            <form id="report-form" method="get" action="{% url 'gestion_equipos:generar_reportes' %}" class="d-flex flex-wrap align-items-end gap-3">
                
                {# Sección Tipo de Reporte #}
                <div class="form-group w-100">
                    <p class="mb-1"><strong>Selecciona el Tipo de Reporte:</strong></p>
                    <div class="form-check form-check-inline">
                        <input class="form-check-input" type="radio" id="report_type_mantenimientos" name="report_type" value="mantenimientos" {% if report_type_selected == 'mantenimientos' %}checked{% endif %} onchange="this.form.submit()">
                        <label class="form-check-label" for="report_type_mantenimientos">Mantenimientos</label>
                    </div>
                    <div class="form-check form-check-inline">
                        <input class="form-check-input" type="radio" id="report_type_equipos" name="report_type" value="equipos" {% if report_type_selected == 'equipos' %}checked{% endif %} onchange="this.form.submit()">
                        <label class="form-check-label" for="report_type_equipos">Equipos</label>
                    </div>
                </div>

                {# Filtros de Fechas (solo para mantenimientos) #}
                {% if report_type_selected == 'mantenimientos' %}
                <div class="form-group">
                    <label for="id_fecha_inicio" class="form-label">Fecha de Inicio:</label>
                    <input type="date" id="id_fecha_inicio" name="fecha_inicio" value="{{ fecha_inicio_seleccionada }}" class="form-control">
                </div>
                <div class="form-group">
                    <label for="id_fecha_fin" class="form-label">Fecha de Fin:</label>
                    <input type="date" id="id_fecha_fin" name="fecha_fin" value="{{ fecha_fin_seleccionada }}" class="form-control">
                </div>
                {% endif %}
                
                {# Botones de Acción #}
                <div class="form-group">
                    <button type="submit" class="btn btn-primary">Generar Reporte</button>
                </div>
                 <div class="form-group">
                    <a href="{% url 'gestion_equipos:generar_reportes' %}" class="btn btn-secondary">Limpiar</a>
                </div>
                <div class="form-group">
                    <button type="submit" name="export" value="csv" class="btn btn-info">Exportar a CSV</button>
                </div>
                <div class="form-group">
                    <button type="submit" name="export" value="xlsx" class="btn btn-success">Exportar a Excel</button>
                </div>
            </form>
        </div>
    </div>

    {# --- SECCIÓN DE RESULTADOS --- #}
    <h2>Resultados del Reporte</h2>

    {% if report_type_selected == 'mantenimientos' %}
        <h3>Reporte de Mantenimientos</h3>
        {% if mantenimientos_reporte %}
            <table class="table table-striped table-bordered">
                <thead>
                    <tr>
                        <th>ID</th>
                        <th>Equipo</th>
                        <th>Tipo Mantenimiento</th>
                        <th>Fecha</th>
                        <th>Costo</th>
                        <th>Descripción</th>
                    </tr>
                </thead>
                <tbody>
                    {% for mantenimiento in mantenimientos_reporte %}
                    <tr>
                        <td>{{ mantenimiento.id }}</td>
                        <td><a href="{% url 'gestion_equipos:detalle_equipo' mantenimiento.equipo.pk %}">{{ mantenimiento.equipo.nombre }}</a></td>
                        
                        {# CORRECCIÓN FINAL: Se accede directamente al campo, igual que en la exportación #}
                        <td>{{ mantenimiento.tipo_mantenimiento }}</td>
                        
                        <td>{{ mantenimiento.fecha_mantenimiento|date:"Y-m-d" }}</td>
                        <td>${{ mantenimiento.costo|floatformat:2 }}</td>
                        <td>{{ mantenimiento.descripcion|truncatechars:50 }}</td>
                    </tr>
                    {% endfor %}
                </tbody>
            </table>
        {% else %}
            <p>No se encontraron mantenimientos. Prueba a generar el reporte.</p>
        {% endif %}

    {% elif report_type_selected == 'equipos' %}
        <h3>Reporte de Equipos</h3>
        {% if equipos_reporte %}
            <table class="table table-striped table-bordered">
                <thead>
                    <tr>
                        <th>ID</th>
                        <th>Nombre</th>
                        <th>N° Serie</th>
                        <th>Estado</th>
                        <th>Usuario Asignado</th>
                    </tr>
                </thead>
                <tbody>
                    {% for equipo in equipos_reporte %}
                    <tr>
                        <td>{{ equipo.id }}</td>
                        <td><a href="{% url 'gestion_equipos:detalle_equipo' equipo.pk %}">{{ equipo.nombre }}</a></td>
                        <td>{{ equipo.numero_serie }}</td>
                        <td>{{ equipo.get_estado_display }}</td>
                        <td>
                            {% if equipo.asignacion_actual %}
                                {{ equipo.asignacion_actual.0.usuario.nombre }} {{ equipo.asignacion_actual.0.usuario.apellido }}
                            {% else %}
                                No asignado
                            {% endif %}
                        </td>
                    </tr>
                    {% endfor %}
                </tbody>
            </table>
        {% else %}
            <p>No se encontraron equipos. Prueba a generar el reporte.</p>
        {% endif %}
    {% endif %}
</div>
{% endblock %}
