class Task {
int? id;
String? title;
String? description;
int? isCompleted;
String? date;
String? startTime;
String? endTime;
int? color;
int? remind;
String? repeat;
Task({
this.id,
this.title,
this.description,
this.isCompleted,
this.date,
this.startTime,
this.endTime,
this.color,
this.remind,
this.repeat,
});
Task.fromJson(Map<String, dynamic> json) {
id = json['id'];
title = json['title'];
description = json['description'];
isCompleted = json['isCompleted'];
date = json['date'];
startTime = json['startTime'];
endTime = json['endTime'];
color = json['color'];
remind = json['remind'];
repeat = json['repeat'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['id'] = this.id;
data['title'] = this.title;
data['date'] = this.date;
data['description'] = this.description;
data['isCompleted'] = this.isCompleted;
data['startTime'] = this.startTime;
data['endTime'] = this.endTime;
data['color'] = this.color;
data['remind'] = this.remind;
data['repeat'] = this.repeat;
return data;
}
}
class TaskController extends GetxController {
@override
void onReady() {
super.onReady();
}
var taskList = <Task>[].obs;
Future<int?> addTask({Task? task}) async {
return await DatabaseHelper.insert(task!);
}
void getTasks() async {
List<Map<String, dynamic>>? tasks = await DatabaseHelper.query();
taskList.assignAll(tasks!.map((data) => new Task.fromJson(data)).toList());
}
void delete(Task task) {
DatabaseHelper.delete(task);
getTasks();
}
void updateTask(int id) {
DatabaseHelper.update(id);
getTasks();
}
}
task_model.dart:28 >>> title = json['title'];
task_controller.dart:19 >>> taskList.assignAll(tasks!.map((data) => new Task.fromJson(data)).toList());
This code-block was working yesterday, I don't understand what is the problem and how can I fix it at all. Help me to fix this problem please. Thank you for your time.
class Task {
Task({
this.id,
this.title,
this.description,
this.isCompleted,
this.date,
this.startTime,
this.endTime,
this.color,
this.remind,
this.repeat,
});
Task.fromJson(Map<String, dynamic> json) {
id = json['id'] as int?;
title = json['title']?.toString() ?? '';
description = json['description']?.toString() ?? '';
isCompleted = json['isCompleted'] as int? ?? 0;
date = json['date'];
startTime = json['startTime'];
endTime = json['endTime'];
color = json['color'];
remind = json['remind'];
repeat = json['repeat'];
}
int? id;
String? title;
String? description;
int? isCompleted;
String? date;
String? startTime;
String? endTime;
int? color;
int? remind;
String? repeat;
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = <String, dynamic>{};
data['id'] = id;
data['title'] = title;
data['date'] = date;
data['description'] = description;
data['isCompleted'] = isCompleted;
data['startTime'] = startTime;
data['endTime'] = endTime;
data['color'] = color;
data['remind'] = remind;
data['repeat'] = repeat;
return data;
}
}
class TaskController extends GetxController {
@override
void onReady() {
super.onReady();
}
Rx<List<Task>> taskList = List<Task>.empty(growable: true).obs;
Future<int?> addTask({Task? task}) async {
return await DatabaseHelper.insert(task!);
}
Future<void> getTasks() async {
final List<Map<String, dynamic>>? tasks = await DatabaseHelper.query();
taskList.assignAll(tasks?.map(Task.fromJson).toList() ?? []);
}
void delete(Task task) {
DatabaseHelper.delete(task);
getTasks();
}
void updateTask(int id) {
DatabaseHelper.update(id);
getTasks();
}
}