]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
Перенос последовательности блоков
authorfomichev <vladimir.fomichev@erp-flowers.ru>
Wed, 25 Dec 2024 13:19:08 +0000 (16:19 +0300)
committerfomichev <vladimir.fomichev@erp-flowers.ru>
Wed, 25 Dec 2024 13:19:08 +0000 (16:19 +0300)
erp24/commands/CronController.php
erp24/controllers/UsersMessageManagementController.php

index ef833adb24c59284aaed5e999e22fe9e0b614ae1..45f54d9061ec4f561c8ea7d1b81aec0a214b93db 100644 (file)
@@ -383,9 +383,35 @@ class CronController extends Controller
                 $firstName = $remoteUser['first_name'];
                 $isBlocked = (int)$remoteUser['is_blocked'];
                 $isRegistered = (int)$remoteUser['is_registered'];
+
+                $user = UsersTelegramChatId::findOne(['chat_id' => $chatId]);
+
+                if (!$user) {
+                    $user = new UsersTelegramChatId([
+                        'chat_id' => $chatId,
+                        'phone' => $phone,
+                        'username' => $username ?? 'Клиент из чатбота',
+                        'first_name' => $firstName ?? 'Клиент из чатбота',
+                        'is_blocked' => $isBlocked,
+                        'is_registered' => $isRegistered,
+                    ]);
+                    $user->save(false);
+                }
+                if (
+                    $user->is_blocked != $isBlocked ||
+                    $user->is_registered != $isRegistered ||
+                    $user->phone != $phone
+                ) {
+                    $user->is_blocked = $isBlocked;
+                    $user->is_registered = $isRegistered;
+                    $user->phone = $phone;
+                }
+
+                $user->save(false);
+
                 if (empty($phone)) {
                  //   fputcsv($fileHandle, [$phone, $username, $chatId, $isBlocked, $isRegistered, 'Отсутствует телефон'], ';');
-                   // continue;
+                    continue;
                 }
 
                 $existingLog = UsersTelegramLog::find()
@@ -406,30 +432,6 @@ class CronController extends Controller
                     $this->createTelegramLog($phone, $isBlocked, $isRegistered);
                 }
 
-                $user = UsersTelegramChatId::findOne(['chat_id' => $chatId]);
-
-                if (!$user) {
-                    $user = new UsersTelegramChatId([
-                        'chat_id' => $chatId,
-                         'phone' => $phone,
-                         'username' => $username ?? 'Клиент из чатбота',
-                         'first_name' => $firstName ?? 'Клиент из чатбота',
-                        'is_blocked' => $isBlocked,
-                        'is_registered' => $isRegistered,
-                     ]);
-                     $user->save(false);
-                }
-                if (
-                    $user->is_blocked != $isBlocked ||
-                    $user->is_registered != $isRegistered ||
-                    $user->phone != $phone
-                ) {
-                    $user->is_blocked = $isBlocked;
-                    $user->is_registered = $isRegistered;
-                    $user->phone = $phone;
-                }
-
-                $user->save(false);
             }
 
             $offset += $batchSize;
index 9b441eb5d987fc864a3b379d958ce56ccf1542c9..05e0d98d96f19636536a0eac31e496f091e9f615 100644 (file)
@@ -419,28 +419,6 @@ class UsersMessageManagementController extends Controller
                 $firstName = $remoteUser['first_name'];
                 $isBlocked = (int)$remoteUser['is_blocked'];
                 $isRegistered = (int)$remoteUser['is_registered'];
-                if (empty($phone)) {
-                 //   fputcsv($fileHandle, [$phone, $username, $chatId, $isBlocked, $isRegistered, 'Отсутствует телефон'], ';');
-                    // continue;
-                }
-
-                $existingLog = UsersTelegramLog::find()
-                    ->where(['phone' => $phone, 'date_end' => null])
-                    ->one();
-
-                if ($existingLog) {
-                    if (
-                        $existingLog->is_blocked != $isBlocked ||
-                        $existingLog->is_registered != $isRegistered
-                    ) {
-                        $existingLog->date_end = date('Y-m-d H:i:s');
-                        $existingLog->save(false);
-
-                        $this->createTelegramLog($phone, $isBlocked, $isRegistered);
-                    }
-                } else {
-                    $this->createTelegramLog($phone, $isBlocked, $isRegistered);
-                }
 
                 $user = UsersTelegramChatId::findOne(['chat_id' => $chatId]);
 
@@ -466,6 +444,31 @@ class UsersMessageManagementController extends Controller
                 }
 
                 $user->save(false);
+
+                if (empty($phone)) {
+                 //   fputcsv($fileHandle, [$phone, $username, $chatId, $isBlocked, $isRegistered, 'Отсутствует телефон'], ';');
+                     continue;
+                }
+
+                $existingLog = UsersTelegramLog::find()
+                    ->where(['phone' => $phone, 'date_end' => null])
+                    ->one();
+
+                if ($existingLog) {
+                    if (
+                        $existingLog->is_blocked != $isBlocked ||
+                        $existingLog->is_registered != $isRegistered
+                    ) {
+                        $existingLog->date_end = date('Y-m-d H:i:s');
+                        $existingLog->save(false);
+
+                        $this->createTelegramLog($phone, $isBlocked, $isRegistered);
+                    }
+                } else {
+                    $this->createTelegramLog($phone, $isBlocked, $isRegistered);
+                }
+
+
             }
 
             $offset += $batchSize;