22 Commits

Author SHA1 Message Date
Sneeex
7000429856 Merge pull request #12 from LiquidDevelopmentDE/chore/remove-unused-import
remove unused home view import
2025-06-26 08:22:04 +02:00
Sneeex
6898ed51a3 remove unused home view import 2025-06-25 23:46:54 +02:00
Sneeex
da505db1c8 Merge pull request #10 from LiquidDevelopmentDE/feature/5-spielverlauf-implementieren
Spielverlauf-View implementierung
2025-06-25 23:28:39 +02:00
ed275b0f7c fixed import of custom nav bar 2025-06-25 23:24:36 +02:00
Sneeex
0902db0014 Merge branch 'development' into feature/5-spielverlauf-implementieren 2025-06-25 23:22:42 +02:00
41e9eb2c91 added const to MyApp in Providers child 2025-06-25 23:21:39 +02:00
00cedf8647 renamed lambda var in updateGroupname from u to g 2025-06-25 23:21:39 +02:00
b4e91b1211 changed return type of getGroupById and getUserById to match expected result 2025-06-25 23:21:39 +02:00
d771f78810 renamed class names to avoid conflicts 2025-06-25 23:21:39 +02:00
Sneeex
6371d7de68 Update lib/data/methods/group.dart
renamed var in deleteGroup to g instead of u

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-25 23:21:39 +02:00
797f844a37 Merge pull request #9 from LiquidDevelopmentDE/feature/2-setup-der-datenbank
Datenbank implementierung
2025-06-25 17:46:22 +02:00
b3c9990685 added const to MyApp in Providers child 2025-06-24 20:40:19 +02:00
0c57a83dfc renamed lambda var in updateGroupname from u to g 2025-06-24 20:38:29 +02:00
cd508190a3 changed return type of getGroupById and getUserById to match expected result 2025-06-24 20:35:30 +02:00
be08b286a4 renamed class names to avoid conflicts 2025-06-24 20:31:06 +02:00
Sneeex
e42064da2c Update lib/data/methods/group.dart
renamed var in deleteGroup to g instead of u

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-24 20:26:34 +02:00
c7f07e0ce7 generated database code 2025-06-24 20:17:06 +02:00
e990c1138b added methods for interacting with User, Group and UserGroup in database 2025-06-24 20:16:50 +02:00
7b7fbd47a5 created tables for Group, User and UserGrouo 2025-06-24 20:15:06 +02:00
78ea7f644e added provider for state management & exposed db using provider 2025-06-24 20:12:46 +02:00
5c33437519 added provider requirement for state management 2025-06-23 22:29:55 +02:00
0aa8e1a2a1 added dependencies for drift db 2025-06-23 18:41:54 +02:00
4 changed files with 11 additions and 11 deletions

View File

@@ -1,13 +1,13 @@
import 'package:game_tracker/data/database.dart'; import 'package:game_tracker/data/database.dart';
import 'package:drift/drift.dart'; import 'package:drift/drift.dart';
extension Group on AppDatabase { extension GroupMethods on AppDatabase {
Future<List<GroupData>> getAllGroups() async { Future<List<GroupData>> getAllGroups() async {
return await select(group).get(); return await select(group).get();
} }
Future<List<GroupData>> getGroupById(String id) async { Future<GroupData> getGroupById(String id) async {
return await (select(group)..where((g) => g.id.equals(id))).get(); return await (select(group)..where((g) => g.id.equals(id))).getSingle();
} }
Future<void> addGroup(String id, String name) async { Future<void> addGroup(String id, String name) async {
@@ -17,11 +17,11 @@ extension Group on AppDatabase {
} }
Future<void> deleteGroup(String id) async { Future<void> deleteGroup(String id) async {
await (delete(group)..where((u) => u.id.equals(id))).go(); await (delete(group)..where((g) => g.id.equals(id))).go();
} }
Future<void> updateGroupname(String id, String newName) async { Future<void> updateGroupname(String id, String newName) async {
await (update(group)..where((u) => u.id.equals(id))).write( await (update(group)..where((g) => g.id.equals(id))).write(
GroupCompanion(name: Value(newName)), GroupCompanion(name: Value(newName)),
); );
} }

View File

@@ -1,13 +1,13 @@
import 'package:game_tracker/data/database.dart'; import 'package:game_tracker/data/database.dart';
import 'package:drift/drift.dart'; import 'package:drift/drift.dart';
extension User on AppDatabase { extension UserMethods on AppDatabase {
Future<List<UserData>> getAllUsers() async { Future<List<UserData>> getAllUsers() async {
return await select(user).get(); return await select(user).get();
} }
Future<List<UserData>> getUserById(String id) async { Future<UserData> getUserById(String id) async {
return await (select(user)..where((u) => u.id.equals(id))).get(); return await (select(user)..where((u) => u.id.equals(id))).getSingle();
} }
Future<void> addUser(String id, String name) async { Future<void> addUser(String id, String name) async {

View File

@@ -1,7 +1,7 @@
import 'package:game_tracker/data/database.dart'; import 'package:game_tracker/data/database.dart';
import 'package:drift/drift.dart'; import 'package:drift/drift.dart';
extension UserGroup on AppDatabase { extension UserGroupMethods on AppDatabase {
Future<List<UserGroupData>> getAllUsersAndGroups() async { Future<List<UserGroupData>> getAllUsersAndGroups() async {
return await select(userGroup).get(); return await select(userGroup).get();
} }

View File

@@ -1,5 +1,5 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:game_tracker/presentation/views/main_menu/home_view.dart'; import 'package:game_tracker/presentation/views/main_menu/custom_navigation_bar.dart';
import 'package:game_tracker/core/custom_theme.dart'; import 'package:game_tracker/core/custom_theme.dart';
import 'package:game_tracker/data/database.dart'; import 'package:game_tracker/data/database.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@@ -8,7 +8,7 @@ void main() {
runApp( runApp(
Provider<AppDatabase>( Provider<AppDatabase>(
create: (context) => AppDatabase(), create: (context) => AppDatabase(),
child: MyApp(), child: const MyApp(),
dispose: (context, db) => db.close(), dispose: (context, db) => db.close(),
), ),
); );