Files
trainhub-flutter/lib/data/database/daos/training_plan_dao.dart
Kazimierz Ciołek 782986a632 Initial commit
2026-02-19 02:49:29 +01:00

25 lines
857 B
Dart

import 'package:drift/drift.dart';
import 'package:trainhub_flutter/data/database/app_database.dart';
part 'training_plan_dao.g.dart';
@DriftAccessor(tables: [TrainingPlans])
class TrainingPlanDao extends DatabaseAccessor<AppDatabase>
with _$TrainingPlanDaoMixin {
TrainingPlanDao(super.db);
Future<List<TrainingPlan>> getAllPlans() => select(trainingPlans).get();
Future<TrainingPlan> getPlanById(String id) =>
(select(trainingPlans)..where((t) => t.id.equals(id))).getSingle();
Future<void> insertPlan(TrainingPlansCompanion entry) =>
into(trainingPlans).insert(entry);
Future<void> updatePlan(String id, TrainingPlansCompanion entry) =>
(update(trainingPlans)..where((t) => t.id.equals(id))).write(entry);
Future<void> deletePlan(String id) =>
(delete(trainingPlans)..where((t) => t.id.equals(id))).go();
}