chatModel = model(ChatModel::class); $this->chatMessageModel = model(ChatMessageModel::class); $this->chatNotificationModel = model(ChatNotification::class); $this->chatUserModel = model(ChatUser::class); $this->presupuestoModel = model(PresupuestoModel::class); $this->chatDepartmentModel = model(ChatDeparmentModel::class); $this->configVariables = model(ConfigVariableModel::class); } public function createErrorMessagePresupuesto(string $error, int $presupuesto_id) { $chat_department_name = $this->configVariables->getVariable('send_error_to_chat_department_name'); $chat_department_id = $this->chatDepartmentModel->where('name', $chat_department_name)->first()?->id; if ($chat_department_id) { $existChat = $this->chatModel->existChatPresupuesto($chat_department_id, $presupuesto_id); if ($existChat == false) { $chatId = $this->chatModel->createChatPresupuesto($chat_department_id, $presupuesto_id); } else { $chat = $this->chatModel->getChatPresupuesto($chat_department_id, $presupuesto_id); $chatId = $chat->id; } $chat_message_id = $this->chatMessageModel->insert(["chat_id" => $chatId, "sender_id" => auth()->user()->id, "message" => $error]); $dataResponse = $this->chatMessageModel->find($chat_message_id); $chatDepartmentUsers = $this->chatDepartmentModel->getChatDepartmentUsers($chat_department_id); foreach ($chatDepartmentUsers as $user) { if ($user->id != auth()->user()->id) { $this->chatNotificationModel->insert(["chat_message_id" => $chat_message_id, "user_id" => $user->id]); } } } } }