mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-18 20:47:54 +00:00
fix chat message not showing
This commit is contained in:
@@ -18,9 +18,9 @@ import { NfService } from 'src/app/services/chat/nf.service';
|
||||
import { v4 as uuidv4 } from 'uuid'
|
||||
import { ChatStorageService } from './chat-storage.service'
|
||||
import { ChatMethodsService } from './chat-methods.service'
|
||||
import { MessageModel } from '../../models/beast-orm'
|
||||
import { DeleteMessageModel, MessageModel } from '../../models/beast-orm'
|
||||
import { AESEncrypt } from '../aesencrypt.service'
|
||||
import { IncomingChatMessage, ChatMessageInterface } from 'src/app/models/message.model';
|
||||
import { IncomingChatMessage, ChatMessageInterface, falseTypingMethod } from 'src/app/models/message.model';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
@@ -213,9 +213,11 @@ export class RoomService {
|
||||
this.isTyping = args[1]
|
||||
this.otherUserType = args[1]
|
||||
this.readAllMessage()
|
||||
} else {
|
||||
} else if(args[0]?.method == 'viewMessage') {
|
||||
|
||||
this.readAllMessage()
|
||||
} else if(args[0]?.method == 'deleteMessage') {
|
||||
//
|
||||
}
|
||||
|
||||
|
||||
@@ -275,7 +277,15 @@ export class RoomService {
|
||||
|
||||
this.messages.splice(index, 1)
|
||||
const allMemberThatIsNotOffline = this.getAllMemberThatIsNotOffline()
|
||||
message.delete(allMemberThatIsNotOffline)
|
||||
message.delete()
|
||||
|
||||
DeleteMessageModel.create({
|
||||
messageId: message._id,
|
||||
rid: message.rid,
|
||||
ts: message.ts,
|
||||
u: message.u,
|
||||
receivedBy: allMemberThatIsNotOffline
|
||||
})
|
||||
|
||||
//Get previous last message from room
|
||||
const previousLastMessage = this.messages.slice(-1)[0];
|
||||
@@ -289,6 +299,16 @@ export class RoomService {
|
||||
|
||||
}
|
||||
|
||||
async delateMessageToSend(userId) {
|
||||
|
||||
const deleteMessage = await DeleteMessageModel.all()
|
||||
|
||||
const toSend = deleteMessage.filter((DeleteMessage:string[])=> ! DeleteMessage.includes(userId))
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @description sen text message
|
||||
@@ -308,7 +328,9 @@ export class RoomService {
|
||||
|
||||
this.message= ''
|
||||
|
||||
const message: MessageService = await this.prepareMessage({message:offlineChatMessage, save: environment.chatOffline})
|
||||
const message: MessageService = await this.prepareCreate({message:offlineChatMessage, save: environment.chatOffline})
|
||||
|
||||
console.log(message, 'message')
|
||||
|
||||
this.messagesLocalReference.push(localReference)
|
||||
await message.addMessageDB()
|
||||
@@ -353,7 +375,7 @@ export class RoomService {
|
||||
}
|
||||
|
||||
sendFalseTypingReadMessage() {
|
||||
this.WsChatService.sendStreamNotifyRoom(this.id, SessionStore.user.RochetChatUser, 'typing', {})
|
||||
this.WsChatService.sendStreamNotifyRoom(this.id, SessionStore.user.RochetChatUser, 'typing', {method:'viewMessage'} as falseTypingMethod)
|
||||
this.setTypingOff()
|
||||
}
|
||||
|
||||
@@ -569,19 +591,25 @@ export class RoomService {
|
||||
* @param save
|
||||
* @returns
|
||||
*/
|
||||
async prepareCreate({message}): Promise<MessageService> {
|
||||
async prepareCreate({message, save = true}): Promise<MessageService> {
|
||||
message = this.fix_updatedAt(message)
|
||||
|
||||
const wewMessage = new MessageService(this.storage, this.NfService, this.WsChatService, this.ChatStorageService, this.ChatMethodsService, this.AESEncrypt)
|
||||
wewMessage.setData(message)
|
||||
wewMessage.loadHistory = this.hasLoadHistory
|
||||
|
||||
if(!message?._id && environment.chatOffline) {
|
||||
console.log(message?._id, environment.chatOffline, save)
|
||||
|
||||
if(!message?._id && environment.chatOffline && save) {
|
||||
|
||||
this.messages.push(wewMessage)
|
||||
console.log('add to view')
|
||||
return wewMessage
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user