$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()
$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;
$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]);
}
$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;