From f4336082a453f032150d4bbc4d2dd3e27b8a47b8 Mon Sep 17 00:00:00 2001 From: Florian <74116125+florianschndlr@users.noreply.github.com> Date: Fri, 23 Jun 2023 09:04:04 +0200 Subject: [PATCH] implemented ability to create, update, delete category --- .../logic/services/categories_controller.dart | 34 ++++++++++++++----- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/trackeroo/lib/logic/services/categories_controller.dart b/trackeroo/lib/logic/services/categories_controller.dart index 6033d41..3815d14 100644 --- a/trackeroo/lib/logic/services/categories_controller.dart +++ b/trackeroo/lib/logic/services/categories_controller.dart @@ -7,18 +7,34 @@ class CategoriesController { Box<Category> catBox; Map<dynamic, Category> categories; - void saveCategory() { - // TODO: implement save categories function - return; + Future<bool> saveCategory(Category category) async { + // String id = category.title.replaceAll(' ', '_').toLowerCase(); + try { + await catBox.put(category.id, category); + categories[category.id] = category; + } catch (e) { + return false; + } + return true; } - void updateCategory() { - // TODO: implement update category - return; + Future<bool> updateCategory(Category category) async { + try { + await catBox.put(category.id, category); + categories[category.id] = category; + } catch (e) { + return false; + } + return true; } - void deleteCategory() { - // TODO: implement read categories function - return; + Future<bool> deleteCategory(String id) async { + try { + await catBox.delete(id); + categories.remove(id); + } catch (e) { + return false; + } + return true; } } -- GitLab