]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
Прверка бонусов
authorfomichev <vladimir.fomichev@erp-flowers.ru>
Mon, 20 Jan 2025 16:27:38 +0000 (19:27 +0300)
committerfomichev <vladimir.fomichev@erp-flowers.ru>
Mon, 20 Jan 2025 16:27:38 +0000 (19:27 +0300)
erp24/commands/CronController.php

index ba0baa2e130966cd19938fbdb9088260f676e083..e560d70ce53e9d76436828afca9457244dbadc7f 100644 (file)
@@ -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 {