// lib/models/entry.dart import 'event.dart'; import 'event.dart'; import 'team.dart'; import 'category.dart'; class Entry { final int id; final Team team; final Event event; final NewCategory category; final DateTime? date; final String owner; Entry({ required this.id, required this.team, required this.event, required this.category, required this.date, required this.owner, }); factory Entry.fromJson(Map json) { return Entry( id: json['id'], team: Team.fromJson(json['team']), event: Event.fromJson(json['event']), category: NewCategory.fromJson(json['category']), date: json['date'] != null ? DateTime.tryParse(json['date']) : null, owner: json['owner'] is Map ? json['owner']['name'] ?? '' : json['owner'] ?? '', ); } Map toJson() { return { 'id': id, 'team': team.toJson(), 'event': event.toJson(), 'category': category.toJson(), 'date': date?.toIso8601String(), 'owner': owner, }; } }