Hourglass improved + projects delete
This commit is contained in:
@@ -98,7 +98,7 @@ Future<void> BuildBridgeToServer() async{
|
||||
StartActivityTimer(ongoingData[0], ongoingData[1], DateTime.parse(ongoingData[2]));
|
||||
}
|
||||
}else{
|
||||
CancelOngoingActivity();
|
||||
if(prefs.containsKey('current_activity'))CancelOngoingActivity();
|
||||
}
|
||||
|
||||
if(prefs.containsKey('rev')){
|
||||
@@ -659,14 +659,16 @@ Future<List<Project>> GetProjects(bool forceOffline) async {
|
||||
print('steps : $stepsJson');
|
||||
List<dynamic> _steps = jsonDecode(stepsJson);
|
||||
List<ProjectStep> steps = [];
|
||||
int eta = 0;
|
||||
_steps.forEach((element) {
|
||||
ProjectStep step = ProjectStep.fromJson(element);
|
||||
eta+=step.eta;
|
||||
steps.add(step);
|
||||
print(element);
|
||||
});
|
||||
// print(steps);
|
||||
|
||||
_projects.add(Project(name.replaceAll(username, ""),category,steps,DateTime.parse(deadline),cat: cat));
|
||||
_projects.add(Project(name.replaceAll(username, ""),category,steps,eta,DateTime.parse(deadline),cat: cat));
|
||||
}
|
||||
projects = _projects;
|
||||
} else {
|
||||
@@ -1035,13 +1037,14 @@ class UserOperations {
|
||||
await executeQueries();
|
||||
}
|
||||
|
||||
static Future<void> addProject(String name, String category, List<ProjectStep> steps, DateTime deadline) async {
|
||||
static Future<void> addProject(String name, String category, List<ProjectStep> steps,int eta, DateTime deadline) async {
|
||||
Map<String, String> queryBody = <String, String>{
|
||||
'name': username + name,
|
||||
'username': username,
|
||||
'device_id': await Settings.UUID(),
|
||||
'category_id': username + category,
|
||||
'steps': jsonEncode(steps),
|
||||
'eta': eta.toString(),
|
||||
'deadline': DateFormat("yyyy-MM-dd").format(deadline)
|
||||
};
|
||||
|
||||
@@ -1186,6 +1189,43 @@ class UserOperations {
|
||||
}
|
||||
}
|
||||
|
||||
static Future<void> deleteProject(String project, {bulk = false}) async {
|
||||
Map<String, String> queryBody = <String, String>{
|
||||
'username': username,
|
||||
'name': username+project,
|
||||
};
|
||||
//Add Query
|
||||
Map<String, Object> query = {Queries.colLink: 'delete_project', Queries.colData: jsonEncode(queryBody)};
|
||||
|
||||
print("adding new query ${query[Queries.colLink]} : ${jsonEncode(queryBody)}");
|
||||
|
||||
if (cacheEnabled) {
|
||||
await cacheDb.insert('Queries', query);
|
||||
|
||||
//update Cache
|
||||
String deleteQuery =
|
||||
"DELETE FROM Projects WHERE ${Project.colName}='${username+project}'";
|
||||
print("delteQuery : $deleteQuery");
|
||||
|
||||
await cacheDb.rawDelete(deleteQuery);
|
||||
await refreshUserData(forceOffline: true);
|
||||
//Add to server and refresh Cache
|
||||
} else {
|
||||
try {
|
||||
http.Response queryResponse = (await http.post(Uri.parse('http://161.97.127.136/task_tracker/delete_project.php'), body: queryBody));
|
||||
print("Query executed : Results{${queryResponse.body}");
|
||||
if (queryResponse.body.toLowerCase().contains("success")) {
|
||||
//Success
|
||||
}
|
||||
} catch (e) {
|
||||
print('NC: Error deleting project $e}');
|
||||
}
|
||||
}
|
||||
if (!bulk) {
|
||||
await executeQueries();
|
||||
}
|
||||
}
|
||||
|
||||
static Future<void> executeQueries() async {
|
||||
if (cacheEnabled) {
|
||||
if (offline) {
|
||||
|
||||
Reference in New Issue
Block a user