From dd072cbc384a9fb3f3bb5acfaecc817980774761 Mon Sep 17 00:00:00 2001 From: fomichev Date: Fri, 15 May 2026 12:49:20 +0300 Subject: [PATCH] =?utf8?q?=D0=BF=D1=80=D0=B0=D0=B2=D0=BA=D0=B8=20=D0=BF?= =?utf8?q?=D0=BE=20=D0=BC=D0=B8=D0=B3=D1=80=D0=B0=D1=86=D0=B8=D1=8F=D0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- ...arget_date_column_to_sent_kogort_table.php | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/erp24/migrations/m241228_092653_add_target_date_column_to_sent_kogort_table.php b/erp24/migrations/m241228_092653_add_target_date_column_to_sent_kogort_table.php index 75f01ab7..72e8df83 100644 --- a/erp24/migrations/m241228_092653_add_target_date_column_to_sent_kogort_table.php +++ b/erp24/migrations/m241228_092653_add_target_date_column_to_sent_kogort_table.php @@ -18,9 +18,22 @@ class m241228_092653_add_target_date_column_to_sent_kogort_table extends Migrati } if ($this->db->schema->getTableSchema(self::TABLE_NAME)->getColumn('target_date') === null) { - $this->addColumn(self::TABLE_NAME, - 'target_date', - $this->date()->notNull()->comment('Целевая дата')); + $this->addColumn(self::TABLE_NAME, 'target_date', $this->date()->comment('Целевая дата')); + + $this->execute(" + UPDATE " . self::TABLE_NAME . " sk + SET target_date = sk.kogort_date + ( + CASE sk.kogort_number + WHEN 1 THEN COALESCE((SELECT day_before_step1 FROM erp24.users_message_management LIMIT 1), 10) + WHEN 2 THEN COALESCE((SELECT day_before_step2 FROM erp24.users_message_management LIMIT 1), 4) + WHEN 3 THEN COALESCE((SELECT day_before_step3 FROM erp24.users_message_management LIMIT 1), 2) + ELSE 0 + END + ) * INTERVAL '1 day' + WHERE sk.target_date IS NULL + "); + + $this->alterColumn(self::TABLE_NAME, 'target_date', $this->date()->notNull()->comment('Целевая дата')); } } -- 2.39.5