]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
[ERP-173] Добавлено поле telegram_unsubscribed_at feature_smirnov_erp-173_telegram_unsubscribed_at origin/feature_smirnov_erp-173_telegram_unsubscribed_at
authorAlexander Smirnov <fredeom@mail.ru>
Fri, 13 Sep 2024 07:56:35 +0000 (10:56 +0300)
committerAlexander Smirnov <fredeom@mail.ru>
Fri, 13 Sep 2024 07:56:35 +0000 (10:56 +0300)
erp24/api2/controllers/ClientController.php
erp24/migrations/m240913_073353_alter_table_users_add_column_telegram_unsubscribed_at.php [new file with mode: 0755]
erp24/records/Users.php

index d8c84466928a9c430acffe86413597178d6fdaf4..adfa7389c4dad796163feea23ee4aa820cf43bf9 100644 (file)
@@ -946,6 +946,13 @@ class ClientController extends BaseController {
                 return $this->asJson(["error_id" => 3, "error" => "User fail to save: " . Json::encode($user->getErrors())]);
             }
         }
+        if ($result['telegram_is_subscribed'] == 0) {
+            $user->telegram_unsubscribed_at = date("Y-m-d H:i:s");
+            $user->save();
+            if ($user->getErrors()) {
+                return $this->asJson(["error_id" => 4, "error" => "User fail to save: " . Json::encode($user->getErrors())]);
+            }
+        }
 
         return $this->asJson(['response' => true]);
     }
diff --git a/erp24/migrations/m240913_073353_alter_table_users_add_column_telegram_unsubscribed_at.php b/erp24/migrations/m240913_073353_alter_table_users_add_column_telegram_unsubscribed_at.php
new file mode 100755 (executable)
index 0000000..ab307eb
--- /dev/null
@@ -0,0 +1,28 @@
+<?php
+
+use yii\db\Migration;
+
+/**
+ * Class m240913_073353_alter_table_users_add_column_telegram_unsubscribed_at
+ */
+class m240913_073353_alter_table_users_add_column_telegram_unsubscribed_at extends Migration
+{
+    const TABLE_NAME = 'erp24.users';
+
+    /**
+     * {@inheritdoc}
+     */
+    public function safeUp()
+    {
+        $this->addColumn(self::TABLE_NAME, 'telegram_unsubscribed_at', $this->dateTime()->null()
+            ->after('telegram_is_subscribed')->comment('Время отписки от тг бота'));
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function safeDown()
+    {
+        $this->dropColumn(self::TABLE_NAME, 'telegram_unsubscribed_at');
+    }
+}
index 343c2f34a4b6a26730fd4f70fd9af8adf2b4c162..9ba3ca5dbd63082346e9a3ab36d3484d0c410e17 100755 (executable)
@@ -59,6 +59,7 @@ use Yii;
  * @property string|null $store_id GUID магазина, который добавил клиента
  * @property int $source 0 - 1C, 1 - было 1С стало тг, 2 - сразу тг
  * @property int $telegram_is_subscribed 0 - не подписан в телеграмме, 1 - подписан
+ * @property string|null $telegram_unsubscribed_at Время отписки от тг бота
  * @property string $telegram_created_at Время регистрации в тг
  * @property int $black_list В черном списке - заблокировать
  * @property int $events Импортированы ли события
@@ -134,7 +135,8 @@ class Users extends \yii\db\ActiveRecord
             [['date', 'name', 'name_name', 'name_last', 'name_family', 'comment', 'email', 'email_old', 'phone_old', 'card',
                 'password', 'keycode', 'check_id', 'check_id_forgot', 'sid_forgot', 'forgot_time', 'kod', 'created_id', 'created_name',
                 'created_store_id', 'balans_datetime', 'bonus_minus', 'bdate', 'date_last', 'date_last_sale', 'date_first_sale', 'sale_cnt',
-                'sale_avg_price', 'sale_price', 'reklama_info', 'alerts_balans', 'alerts_date', 'alerts_reklama', 'ref_code', 'referral_id', 'seller_id', 'store_id', 'first_minus_balance'], 'safe'],
+                'sale_avg_price', 'sale_price', 'reklama_info', 'alerts_balans', 'alerts_date', 'alerts_reklama', 'ref_code', 'referral_id',
+                'seller_id', 'store_id', 'first_minus_balance', 'telegram_unsubscribed_at'], 'safe'],
             [['pol', 'info', 'telegram_created_at'], 'string'],
             [
                 [
@@ -234,6 +236,7 @@ class Users extends \yii\db\ActiveRecord
             'seller_id' => 'Seller ID',
             'black_list' => 'Black List',
             'events' => 'Events',
+            'telegram_unsubscribed_at' => 'Telegram Unsubscribed At',
         ];
     }