ADD : modify class message to have hashMap
continuous-integration/drone/push Build is failing
Details
continuous-integration/drone/push Build is failing
Details
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());
|
||||
});
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in new issue