From 4ec5602d31f3b235cd6cbef958a606542c13d181 Mon Sep 17 00:00:00 2001 From: Alexander Smirnov Date: Tue, 24 Dec 2024 15:30:36 +0300 Subject: [PATCH] [ERP-269] memorable 300 --- erp24/api2/controllers/ClientController.php | 40 +++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/erp24/api2/controllers/ClientController.php b/erp24/api2/controllers/ClientController.php index adfa7389..044a3120 100644 --- a/erp24/api2/controllers/ClientController.php +++ b/erp24/api2/controllers/ClientController.php @@ -336,6 +336,46 @@ class ClientController extends BaseController { if ($userEvent->getErrors()) { return $userEvent->getErrors(); + } else { + $userBonus = UsersBonus::find()->where(['phone' => $phone, 'tip_sale' => 'memorable300'])->one(); + if ($userBonus) { + return; + } + $userEvents = UsersEvents::find()->where(['phone' => $phone])->all(); + if (count($userEvents) == 5) { + $maxInd = 6; + for ($i = 0; $i < 5; $i++) { + $d = date("Y-m-d", strtotime("+$i days", time())); + $dd = date("d", strtotime($d)); + $dm = date("m", strtotime($d)); + if (!(+$userEvents[$i]->date_day == +$dd && +$userEvents[$i]->date_month == +$dm)) { + $maxInd = $i; + break; + } + } + $bonusStart = date("Y-m-d 08:00:00", strtotime("+" . $maxInd . " days", time())); + $usersBonus = new UsersBonus; + $usersBonus->date = date('Y-m-d H:i:s'); + $usersBonus->tip = 'plus'; + $usersBonus->tip_sale = 'memorable300'; + $usersBonus->phone = "" . $phone; + $usersBonus->name = "Приветственный бонус за указание 5 памятных дат."; + $usersBonus->store_id = 0; + $usersBonus->site_id = 0; + $usersBonus->referal_id = 0; + $usersBonus->admin_id = 0; + $usersBonus->price = 0; + $usersBonus->price_skidka = 0; + $usersBonus->bonus = 300; + $usersBonus->store_id_1c = "-"; + $usersBonus->seller_id_1c = "-"; + $usersBonus->date_start = date('Y-m-d 08:00:00', strtotime('+0 day', strtotime($bonusStart))); + $usersBonus->date_end = date('Y-m-d H:i:s', strtotime('+365 days', strtotime($usersBonus->date_start))); + $usersBonus->save(); + if ($usersBonus->getErrors()) { + return $usersBonus->getErrors(); + } + } } } -- 2.39.5