1.5 KiB
1.5 KiB
Story 6.6: Data Export - Timeline Reports
Epic Reference
Epic 6: Admin Dashboard
User Story
As an admin, I want to export timeline and case data, So that I can maintain records and generate case reports.
Acceptance Criteria
Export Options
- Export all timelines (across all clients)
- Export timelines for specific client
Filters
- Status (active/archived)
- Date range
Export Includes
- Case name and reference
- Client name
- Status
- Created date
- Number of updates
- Last update date
Formats
- CSV format
- PDF format
Optional
- Include update content or summary only toggle
Technical Notes
public function exportTimelinesPdf(Request $request)
{
$timelines = Timeline::query()
->with(['user', 'updates'])
->withCount('updates')
->when($request->client_id, fn($q) => $q->where('user_id', $request->client_id))
->when($request->status, fn($q) => $q->where('status', $request->status))
->get();
$pdf = Pdf::loadView('exports.timelines', [
'timelines' => $timelines,
'includeUpdates' => $request->boolean('include_updates'),
]);
return $pdf->download('timelines-export.pdf');
}
Definition of Done
- All filters work
- CSV export works
- PDF with branding works
- Optional update content toggle works
- Tests pass
Estimation
Complexity: Medium | Effort: 3 hours