Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import 'package:appwrite/appwrite.dart';
- import 'package:flutter/foundation.dart';
- import 'package:medify/src/backend/appwrite_service.dart';
- import 'package:medify/src/features/doctor/model/doctor_model.dart';
- class SetDoctorDatabase {
- static const _doctorListDatabaseId = '64133886e2e9c52b212f';
- static const _doctorListCollectionId = '64133892b1b6ce54ffe7';
- Future<DoctorModel> addDoctorInDatabase(DoctorModel doctor) async {
- try {
- final result = await databases.createDocument(
- databaseId: _doctorListDatabaseId,
- collectionId: _doctorListCollectionId,
- documentId: ID.unique(),
- data: doctor.toMap());
- return doctor.copyWith(documentId: result.$id);
- } catch (e) {
- if (kDebugMode) print('deleteDoctorInDatabase(): $e');
- rethrow;
- }
- }
- Future<bool> deleteDoctorInDatabase(DoctorModel doctor) async {
- try {
- await databases.deleteDocument(
- databaseId: _doctorListDatabaseId,
- collectionId: _doctorListCollectionId,
- documentId: doctor.documentId,
- );
- return true;
- } catch (e) {
- if (kDebugMode) print('deleteDoctorInDatabase(): $e');
- rethrow;
- }
- }
- Future<DoctorModel> updateDoctorInDatabase(DoctorModel doctor) async {
- try {
- await databases.updateDocument(
- databaseId: _doctorListDatabaseId,
- collectionId: _doctorListCollectionId,
- documentId: doctor.documentId,
- data: doctor.toMap());
- return doctor;
- } catch (e) {
- if (kDebugMode) print('deleteDoctorInDatabase(): $e');
- rethrow;
- }
- }
- RealtimeSubscription getDoctorRealtimeSubscription(String doctorDocumentId) {
- try {
- return realtime.subscribe([
- 'databases.$_doctorListDatabaseId.collections.$_doctorListCollectionId.documents.$doctorDocumentId'
- ]);
- } catch (e) {
- if (kDebugMode) print('getDoctorRealtimeSubscription: $e');
- rethrow;
- }
- }
- Future<DoctorModel> getDoctorFromDb(String doctorDocumentId) async {
- try {
- final document = await databases.getDocument(
- databaseId: _doctorListDatabaseId,
- collectionId: _doctorListCollectionId,
- documentId: doctorDocumentId);
- return DoctorModel.fromMap(document.data);
- } catch (e) {
- if (kDebugMode) print('getDoctorFromDb(): $e');
- rethrow;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment