@extends('layouts.admin')

@section('title', 'Delivery Reports')

@section('content')
<div class="admin-page-header d-flex justify-content-between align-items-center mb-4">
    <div>
        <h1>Delivery Reports</h1>
        <p class="admin-page-subtitle">Basic monthly delivery analytics by carrier with export option</p>
    </div>
    <a href="{{ Route::has('admin.reports.delivery.export-csv') ? route('admin.reports.delivery.export-csv', request()->only(['month', 'year', 'carrier_id'])) : '#' }}" class="admin-btn-primary" style="background: #10b981;">
        <i class="bi bi-download"></i> Export CSV
    </a>
</div>

<div class="admin-card mb-4">
    <div class="card-body">
        <form method="GET" action="{{ Route::has('admin.reports.delivery') ? route('admin.reports.delivery') : '#' }}" class="row g-3">
            <div class="col-md-3">
                <label class="admin-form-label">Month</label>
                <select name="month" class="admin-form-control form-select" required>
                    @for($m = 1; $m <= 12; $m++)
                        <option value="{{ $m }}" {{ (int) $month === $m ? 'selected' : '' }}>
                            {{ \Carbon\Carbon::create()->month($m)->format('F') }}
                        </option>
                    @endfor
                </select>
            </div>
            <div class="col-md-3">
                <label class="admin-form-label">Year</label>
                <input type="number" min="2020" max="2100" name="year" class="admin-form-control" value="{{ $year }}" required>
            </div>
            <div class="col-md-4">
                <label class="admin-form-label">Carrier (Optional)</label>
                <select name="carrier_id" class="admin-form-control form-select">
                    <option value="">All Carriers</option>
                    @foreach($carriers as $carrier)
                        <option value="{{ $carrier->id }}" {{ (int) $carrierId === (int) $carrier->id ? 'selected' : '' }}>
                            {{ $carrier->name }}
                        </option>
                    @endforeach
                </select>
            </div>
            <div class="col-md-2 d-flex align-items-end gap-2">
                <button type="submit" class="admin-btn-primary flex-grow-1">
                    <i class="bi bi-search"></i> Show
                </button>
                <a href="{{ Route::has('admin.reports.delivery') ? route('admin.reports.delivery') : '#' }}" class="btn btn-secondary">
                    <i class="bi bi-arrow-clockwise"></i>
                </a>
            </div>
        </form>
    </div>
</div>

<div class="row g-3 mb-4">
    <div class="col-md-6 col-xl-2">
        <div class="admin-stat-card stat-primary">
            <div class="stat-label"><strong class="stat-value">{{ number_format($kpis['total_orders']) }}</strong><br>Total Orders</div>
        </div>
    </div>
    <div class="col-md-6 col-xl-2">
        <div class="admin-stat-card stat-info">
            <div class="stat-label"><strong class="stat-value">{{ number_format($kpis['total_shipped']) }}</strong><br>Total Shipped</div>
        </div>
    </div>
    <div class="col-md-6 col-xl-2">
        <div class="admin-stat-card stat-success">
            <div class="stat-label"><strong class="stat-value">{{ number_format($kpis['total_delivered']) }}</strong><br>Total Delivered</div>
        </div>
    </div>
    <div class="col-md-6 col-xl-2">
        <div class="admin-stat-card stat-warning">
            <div class="stat-label"><strong class="stat-value">{{ number_format($kpis['total_rto']) }}</strong><br>Total RTO</div>
        </div>
    </div>
    <div class="col-md-6 col-xl-2">
        <div class="admin-stat-card stat-primary">
            <div class="stat-label"><strong class="stat-value">{{ number_format($kpis['delivery_success_rate'], 2) }}%</strong><br>Success Rate</div>
        </div>
    </div>
    <div class="col-md-6 col-xl-2">
        <div class="admin-stat-card stat-info">
            <div class="stat-label"><strong class="stat-value">{{ number_format($kpis['average_delivery_time_days'], 2) }}</strong><br>Avg Delivery Days</div>
        </div>
    </div>
</div>

<div class="row g-3 mb-4">
    <div class="col-md-6 col-xl-3">
        <div class="admin-stat-card stat-primary">
            <div class="stat-label"><strong class="stat-value">{{ number_format($kpis['total_cod_orders']) }}</strong><br>COD Orders</div>
        </div>
    </div>
    <div class="col-md-6 col-xl-3">
        <div class="admin-stat-card stat-success">
            <div class="stat-label"><strong class="stat-value">{{ number_format($kpis['total_prepaid_orders']) }}</strong><br>Prepaid Orders</div>
        </div>
    </div>
    <div class="col-md-6 col-xl-3">
        <div class="admin-stat-card stat-warning">
            <div class="stat-label"><strong class="stat-value">₹{{ number_format($kpis['total_cod_amount'], 2) }}</strong><br>COD Amount</div>
        </div>
    </div>
    <div class="col-md-6 col-xl-3">
        <div class="admin-stat-card stat-info">
            <div class="stat-label"><strong class="stat-value">₹{{ number_format($kpis['total_prepaid_amount'], 2) }}</strong><br>Prepaid Amount</div>
        </div>
    </div>
</div>

<div class="admin-card">
    <div class="card-header d-flex justify-content-between align-items-center">
        <h5 class="mb-0">Delivery Records</h5>
        <span class="badge-modern badge-modern-primary">{{ $reportRows->total() }} Rows</span>
    </div>
    <div class="card-body">
        @if($reportRows->count() > 0)
            <div class="table-responsive">
                <table class="admin-table table table-hover">
                    <thead>
                        <tr>
                            <th>Order</th>
                            <th>Carrier</th>
                            <th>Order Date</th>
                            <th>Shipment Status</th>
                            <th>Order Status</th>
                            <th>Amount</th>
                            <th>Payment Type</th>
                        </tr>
                    </thead>
                    <tbody>
                        @foreach($reportRows as $row)
                            <tr>
                                <td>
                                    <a href="{{ route('admin.orders.show', $row->order_id) }}" class="text-primary">
                                        {{ $row->order_number ?: ('#' . $row->order_id) }}
                                    </a>
                                </td>
                                <td>{{ $row->carrier_name ?: 'N/A' }}</td>
                                <td>{{ \Carbon\Carbon::parse($row->order_date)->format('Y-m-d H:i') }}</td>
                                <td><span class="badge bg-info">{{ ucfirst($row->shipment_status) }}</span></td>
                                <td><span class="badge bg-secondary">{{ ucfirst($row->order_status) }}</span></td>
                                <td>₹{{ number_format((float) $row->order_amount, 2) }}</td>
                                <td>{{ $row->payment_method === 'cod' ? 'COD' : 'Prepaid' }}</td>
                            </tr>
                        @endforeach
                    </tbody>
                </table>
            </div>

            <div class="mt-4 d-flex justify-content-between align-items-center flex-wrap gap-2">
                <div>
                    Showing <strong>{{ $reportRows->firstItem() ?? 0 }}</strong> - <strong>{{ $reportRows->lastItem() ?? 0 }}</strong>
                    of <strong>{{ $reportRows->total() }}</strong> rows
                </div>
                @if($reportRows->hasPages())
                    {{ $reportRows->links('vendor.pagination.admin-categories') }}
                @endif
            </div>
        @else
            <div class="admin-empty-state">
                <i class="bi bi-inbox"></i>
                <h3>No Delivery Records Found</h3>
                <p>No records matched your selected month/year/carrier filters.</p>
            </div>
        @endif
    </div>
</div>
@endsection
