37 lines
907 B
Dart
37 lines
907 B
Dart
class TodoItem {
|
|
final String id;
|
|
final String familyMemberId;
|
|
final String title;
|
|
final bool completed;
|
|
final DateTime? dueDate;
|
|
|
|
const TodoItem({
|
|
required this.id,
|
|
required this.familyMemberId,
|
|
required this.title,
|
|
required this.completed,
|
|
required this.dueDate,
|
|
});
|
|
|
|
factory TodoItem.fromJson(Map<String, dynamic> json) {
|
|
return TodoItem(
|
|
id: json["_id"] as String? ?? "",
|
|
familyMemberId: json["familyMemberId"] as String? ?? "",
|
|
title: json["title"] as String? ?? "",
|
|
completed: json["completed"] as bool? ?? false,
|
|
dueDate: json["dueDate"] != null
|
|
? DateTime.tryParse(json["dueDate"] as String)
|
|
: null,
|
|
);
|
|
}
|
|
|
|
Map<String, dynamic> toJson() {
|
|
return {
|
|
"familyMemberId": familyMemberId,
|
|
"title": title,
|
|
"completed": completed,
|
|
"dueDate": dueDate?.toIso8601String(),
|
|
};
|
|
}
|
|
}
|