fix : chat modules, notifications

This commit is contained in:
amazuecos
2024-09-26 13:10:12 +00:00
parent d3722440c3
commit c5a5f01fa0
9 changed files with 162 additions and 18 deletions

View File

@ -118,4 +118,27 @@ class ChatMessageModel extends Model
->where("receiver_id", auth()->user()->id)->update();
return $messagesFromReceiver;
}
public function set_chat_department_messages_as_read(int $chat_id): int
{
$chatDepartmentModel = model(ChatDeparmentModel::class);
$chatModel = model(ChatModel::class);
if(auth()->user()->cliente_id){
$messagesFromReceiver = $this->builder()
->set("viewed", true)
->where("chat_id", $chat_id)
->whereNotIn("sender_id", [auth()->user()->id])->update();
}else{
$chat_department_id = $chatModel->find($chat_id)->chat_department_id;
$users_in_chat = array_map(fn($x) => $x->id, $chatDepartmentModel->getChatDepartmentUsers($chat_department_id));
$messagesFromReceiver = $this->builder()
->set("viewed", true)
->where("chat_id", $chat_id)
->whereNotIn("sender_id", $users_in_chat)
->update();
}
return $messagesFromReceiver;
}
}