From 3929cca2029c5fabf3ece72330b04dbc831086d7 Mon Sep 17 00:00:00 2001 From: fomichev Date: Mon, 20 Jan 2025 19:27:38 +0300 Subject: [PATCH] =?utf8?q?=D0=9F=D1=80=D0=B2=D0=B5=D1=80=D0=BA=D0=B0=20?= =?utf8?q?=D0=B1=D0=BE=D0=BD=D1=83=D1=81=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- erp24/commands/CronController.php | 41 ++++++++++++++++++------------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/erp24/commands/CronController.php b/erp24/commands/CronController.php index ba0baa2e..e560d70c 100644 --- a/erp24/commands/CronController.php +++ b/erp24/commands/CronController.php @@ -322,26 +322,33 @@ class CronController extends Controller $tip = "plus"; $bonus = 200; $ip = "tst"; - $tip_sale = "date"; + $tip_sale = "target"; $name = "Начисление бонусов на дату {$kogortDate}"; $daysToEnd = $step1 + 1; foreach ($kogortPhones as $key => $phone) { - $userBonus4 = new UsersBonus(); - $userBonus4->phone = '' . $phone; - $userBonus4->name = $name; - $userBonus4->tip = $tip; - $userBonus4->tip_sale = $tip_sale; - $userBonus4->bonus = $bonus; - $userBonus4->date = date('Y-m-d H:i:s'); - $userBonus4->date_start = $kogortDate; - $userBonus4->date_end = date('Y-m-d', strtotime("+$daysToEnd days", strtotime($kogortDate))); - $userBonus4->ip = $ip; - $userBonus4->save(); - if ($userBonus4->getErrors()) { - $this->stdout( - json_encode($userBonus4->getErrors(), JSON_UNESCAPED_UNICODE) . " " . $key . "\n", - BaseConsole::FG_RED - ); + $userBonusExist = UsersBonus::find() + ->where(['phone' => $phone]) + ->andWhere(['tip_sale' => 'target']) + ->andWhere(['date_start' => $kogortDate]) + ->one(); + if ($userBonusExist) { + $userBonus4 = new UsersBonus(); + $userBonus4->phone = '' . $phone; + $userBonus4->name = $name; + $userBonus4->tip = $tip; + $userBonus4->tip_sale = $tip_sale; + $userBonus4->bonus = $bonus; + $userBonus4->date = date('Y-m-d H:i:s'); + $userBonus4->date_start = $kogortDate; + $userBonus4->date_end = date('Y-m-d', strtotime("+$daysToEnd days", strtotime($kogortDate))); + $userBonus4->ip = $ip; + $userBonus4->save(); + if ($userBonus4->getErrors()) { + $this->stdout( + json_encode($userBonus4->getErrors(), JSON_UNESCAPED_UNICODE) . " " . $key . "\n", + BaseConsole::FG_RED + ); + } } } } else { -- 2.39.5