]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
Создание константы и метода проверки в TelegramService
authorfomichev <vladimir.fomichev@erp-flowers.ru>
Mon, 18 Nov 2024 12:15:32 +0000 (15:15 +0300)
committerfomichev <vladimir.fomichev@erp-flowers.ru>
Mon, 18 Nov 2024 12:15:32 +0000 (15:15 +0300)
erp24/actions/log/CollectAction.php
erp24/log/TelegramTarget.php
erp24/services/InfoLogService.php
erp24/services/LogService.php
erp24/services/TelegramService.php

index d763be9de91e29da72897dac28157332c6f4ce3e..c6a8faa6664f92a22c452902fa4f6318a8700d15 100755 (executable)
@@ -36,8 +36,8 @@ class CollectAction extends Action
                 return;
             }*/
 
-            $currentUrl = Yii::$app->request->getHostInfo();
-            $isDev = !str_contains($currentUrl, 'erp.erp-flowers.ru');
+
+            $isDev = TelegramService::isDevelopmentEnvironment(TelegramService::TARGET_PROD_URL);
 
             // Формируем сообщение для отправки в Telegram с использованием MarkdownV2
             $errorMessage = "⚠️*Ошибка JavaScript Обнаружена*⚠️\n\n";
@@ -45,7 +45,7 @@ class CollectAction extends Action
 
             if ($url = $this->controller->request->getReferrer()) {
                 $errorMessage .= "*URL:*\n```" . TelegramService::escapeMarkdownLog($url) . "```\n\n";
-                $isDev = !str_contains($url, 'erp.erp-flowers.ru');
+                $isDev = !str_contains($url, TelegramService::TARGET_PROD_URL);
             }
 
             if ($createdAt = date('Y-m-d H:i:s', $log->log_time)) {
index d544fe075b5afbfa98501720330c279ea35dacfe..5c410326d742378755d498c93a9bba117390e6bc 100644 (file)
@@ -110,7 +110,13 @@ class TelegramTarget extends \yii\log\Target
 
 
         $errorUrl = $message->getUrl();
-        $isDev = !str_contains($errorUrl, 'erp.erp-flowers.ru');
+
+        if(!empty($errorUrl)){
+            $isDev = !str_contains($errorUrl, TelegramService::TARGET_PROD_URL);
+        }else {
+            $isDev = TelegramService::isDevelopmentEnvironment(TelegramService::TARGET_PROD_URL);
+        }
+
 
 
         // Проверка наличия подобных сообщений
index 889a11cd2815fdee853fe5d8e3b29e6451700249..636a1c02ef3f5e51e981c709ff4e46c538eaaf83 100644 (file)
@@ -34,8 +34,9 @@ class InfoLogService
            /* if (!self::shouldSendToTelegram($file, $line, $messageText, $context)) {
                 return;
             }*/
-            $currentUrl = Yii::$app->request->getHostInfo();
-            $isDev = !str_contains($currentUrl, 'erp.erp-flowers.ru');
+
+            $isDev = TelegramService::isDevelopmentEnvironment(TelegramService::TARGET_PROD_URL);
+
             $telegramMessage = "⚠️*Сообщение из InfoLog*⚠️\n\n";
 
 
index 1bd860acea26a59fb3037224f3920d8f9a395655..022678f7559a664e46fc9ddcbf0ce07af6008b97 100644 (file)
@@ -67,8 +67,8 @@ class LogService
                 return;
             }*/
 
-            $currentUrl = Yii::$app->request->getHostInfo();
-            $isDev = !str_contains($currentUrl, 'erp.erp-flowers.ru');
+
+            $isDev = TelegramService::isDevelopmentEnvironment(TelegramService::TARGET_PROD_URL);
 
                 // Форматирование сообщения об ошибке с условным добавлением строк
             $errorMessage = "⚠️*Ошибка API Обнаружена*⚠️\n\n";
@@ -76,8 +76,7 @@ class LogService
             // Добавляем строки только если параметры присутствуют
             if ($url = $apiErrorLog->url) {
                 $errorMessage .= "*URL:*\n```" . TelegramService::escapeMarkdownLog($url) . "```\n\n";
-                $errorUrl = $apiErrorLog->url;
-                $isDev = !str_contains($errorUrl, 'erp.erp-flowers.ru');
+                $isDev = !str_contains($url, TelegramService::TARGET_PROD_URL);
             }
 
             if ($createdAt = $apiErrorLog->created_at) {
index 110f5f0972cab8d2b541576c398493cab9659cce..02ca173548c526acafa24b51bb13ae8b2efa3d23 100644 (file)
@@ -10,6 +10,7 @@ class TelegramService {
 
     const TELEGRAM_API_URL = "8063257458:AAGnMf4cxwJWlYLF1wS_arn4PrOaLs9ERQQ";
 
+    const TARGET_PROD_URL = "erp.erp-flowers.ru";
     const CHAT_CHANNEL_ID ="-1001861631125";
     const CHAT_CHANNEL_ERP_ID ="-1002338329426";
     public static function sendMessage($admin_id, $message, $reply_markup = null) {
@@ -21,6 +22,12 @@ class TelegramService {
         return $client->request('GET', $url);
     }
 
+     public static function isDevelopmentEnvironment($prodUrl) : bool
+     {
+         $currentUrl = Yii::$app->request->getHostInfo();
+         return !str_contains($currentUrl, $prodUrl);
+     }
+
 public static function sendErrorToTelegramMessage($message,$disableNotification, $isDev)
 {
     $botToken = self::TELEGRAM_API_URL;