From: marina Date: Wed, 23 Jul 2025 10:51:44 +0000 (+0300) Subject: ERP-438 Доработка эндпойнтов X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=4545489ce5ac50964d23c197a55d8b5facc78079;p=erp24_rep%2Fyii-erp24%2F.git ERP-438 Доработка эндпойнтов --- diff --git a/erp24/api2/controllers/ClientController.php b/erp24/api2/controllers/ClientController.php index ce3e7777..2d00e858 100644 --- a/erp24/api2/controllers/ClientController.php +++ b/erp24/api2/controllers/ClientController.php @@ -703,6 +703,8 @@ class ClientController extends BaseController $orderId = $data['order_id'] ?? null; $phone = $data['phone'] ?? null; $pointsToUse = $data['points_to_use'] ?? null; + $date = $data['date'] ?? null; + $price = $data['price'] ?? null; if (!$orderId || !$phone) { return $this->asJson(['error' => ['code' => 400, 'message' => 'Недостаточно параметров']]); @@ -722,16 +724,6 @@ class ClientController extends BaseController return $this->asJson(['error' => ['code' => 403, 'message' => 'Недостаточно бонусов для списания']]); } - $sale = Sales::find() - ->andWhere(['number' => $orderId]) - ->andWhere(['phone' => $phone]) - ->andWhere(['operation' => 'Продажа']) - ->one(); - - if (!$sale) { - return $this->asJson(['error' => ['code' => 404, 'message' => 'Продажа не найдена']]); - } - if (UsersBonus::find() ->andFilterWhere(['phone' => $phone]) ->andFilterWhere(['user_id' => $clientId]) @@ -752,7 +744,6 @@ class ClientController extends BaseController ->leftJoin('bonus_levels bl', 'bl.alias = ubl.bonus_level') ->andFilterWhere(['user_id' => $clientId]) ->andFilterWhere(['phone' => $phone]) - ->andFilterWhere(['check_id' => $sale->id]) ->andFilterWhere(['ubl.active' => 1]) ->select('cashback_rate') ->scalar(); @@ -762,9 +753,9 @@ class ClientController extends BaseController $userBonus->name = $comment ?? sprintf( 'Спиcание бонусов %s%% по чеку %s от %s. Сумма чека %s', $salePercent, - $sale->number, - date('d.m.Y H:i:s', strtotime($sale->date)), - $sale->summ + $orderId, + date('d.m.Y H:i:s', strtotime($date)), + $price ); $userBonus->date = date('Y-m-d H:i:s'); $userBonus->site_id = 1; @@ -772,12 +763,11 @@ class ClientController extends BaseController $userBonus->tip = 'minus'; $userBonus->tip_sale = 'sale'; $userBonus->user_id = $clientId; - $userBonus->check_id = $sale->id; - $userBonus->price = $sale->summ; - $userBonus->store_id = $sale->store_id; + $userBonus->check_id = $orderId; + $userBonus->price = $price; $userBonus->bonus = $pointsToUse; - $userBonus->date_start = $sale->date; - $userBonus->date_end = date('Y-m-d H:i:s', strtotime('+365 day', strtotime($sale->date))); + $userBonus->date_start = $date; + $userBonus->date_end = date('Y-m-d H:i:s', strtotime('+365 day', strtotime($date))); try { if (!$userBonus->save()) {