@extends('layouts.superadmin') @section('title', 'Bulk Excel & CSV Data Import') @section('content')

Bulk Excel & CSV Import Desk

Batch ingest statewide candidates, corporate employer directories, and vacancy requisitions with automatic column mapping, validation checkpoints, and downloadable diagnostic error reports.

@if(session('success'))
{{ session('success') }}
@endif @if(session('error'))
{{ session('error') }}
@endif @if($errors->any())
Upload could not proceed:
@endif

New Ingestion Stream

Select the target entity type and upload your CSV or Excel exported comma/tab-delimited file.

@csrf
Max file size: 10MB. UTF-8 BOM encoding supported. Headers should appear on row 1.
High-Throughput Processing Guarantee All records are parsed, scrubbed against existing email duplicates, validated, and safely committed in isolated 50-row chunks. Any invalid rows are flagged with line numbers and rejected gracefully without halting valid records.

Historical Ingestion Audit Trail

Audit log of bulk uploads, processed rows, and validation diagnostic reports.

@forelse($imports as $import) @empty @endforelse
ID Target Entity Source File Total Committed Errors Status Initiated By Action
#{{ $import->id }} {{ $import->entity_type_label }} {{ $import->filename }} {{ $import->created_at->format('d M Y, h:i A') }} {{ number_format($import->total_rows) }} {{ number_format($import->valid_rows) }} {{ number_format($import->error_rows) }} @php $badgeStyles = [ 'pending_preview' => 'background: rgba(245, 158, 11, 0.15); color: #F59E0B;', 'processing' => 'background: rgba(56, 189, 248, 0.15); color: #38BDF8;', 'completed' => 'background: rgba(16, 185, 129, 0.15); color: #10B981;', 'failed' => 'background: rgba(239, 68, 68, 0.15); color: #EF4444;', ]; @endphp {{ $import->status_badge }} {{ $import->user->name ?? 'System' }} @if($import->status === 'pending_preview') Map @else Report @if($import->error_rows > 0) Errors @endif @endif
No bulk import operations have been recorded yet.
@if($imports->hasPages())
{{ $imports->links() }}
@endif
@endsection