ADD : modify class message to have hashMap
continuous-integration/drone/push Build is failing Details

#MSG01/chat_firebase
Audric SABATIER 2 years ago
parent 32dd6c986c
commit 308bfd95cd

@ -1,8 +1,30 @@
import 'user.dart';
class Message {
User sender;
String idSender;
String idReceiver;
String content;
Message(this.sender, this.content);
Message({required this.idSender,
required this.idReceiver,
required this.content
});
Map<String, dynamic> toHashMap() {
return {
'idSender': idSender,
'idReceiver': idReceiver,
'content': content,
};
}
factory Message.fromMap(Map<String, dynamic> data){
return Message(
idSender: data['idSender'],
idReceiver: data['idReceiver'],
content: data['content'],
);
}
}

@ -0,0 +1,20 @@
import 'package:dafl_project_flutter/model/message.dart';
import 'package:cloud_firestore/cloud_firestore.dart';
class MessageDatabase{
void SendMessage(String chatId, Message message) {
var documentReference = FirebaseFirestore.instance
.collection('messages')
.doc(chatId)
.collection(chatId)
.doc(DateTime.now().millisecondsSinceEpoch.toString());
FirebaseFirestore.instance.runTransaction((transaction) async {
transaction.set(documentReference,message.toHashMap());
});
}
}

@ -1,6 +1,13 @@
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
_flutterfire_internals:
dependency: transitive
description:
name: _flutterfire_internals
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.9"
animations:
dependency: "direct main"
description:
@ -71,6 +78,27 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.1"
cloud_firestore:
dependency: "direct main"
description:
name: cloud_firestore
url: "https://pub.dartlang.org"
source: hosted
version: "4.1.0"
cloud_firestore_platform_interface:
dependency: transitive
description:
name: cloud_firestore_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "5.9.0"
cloud_firestore_web:
dependency: transitive
description:
name: cloud_firestore_web
url: "https://pub.dartlang.org"
source: hosted
version: "3.1.0"
collection:
dependency: transitive
description:
@ -148,6 +176,27 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.1"
firebase_messaging:
dependency: "direct main"
description:
name: firebase_messaging
url: "https://pub.dartlang.org"
source: hosted
version: "14.1.1"
firebase_messaging_platform_interface:
dependency: transitive
description:
name: firebase_messaging_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "4.2.7"
firebase_messaging_web:
dependency: transitive
description:
name: firebase_messaging_web
url: "https://pub.dartlang.org"
source: hosted
version: "3.2.7"
flutter:
dependency: "direct main"
description: flutter

@ -30,6 +30,8 @@ dependencies:
geolocator: ^9.0.2
flutter_styled_toast: ^2.1.3
firebase_core: ^2.3.0
firebase_messaging: ^14.1.1
cloud_firestore: ^4.1.0
dev_dependencies:
flutter_test:

Loading…
Cancel
Save