From fbfab7b36c124b34fc4abea01ca13717e0838a4e Mon Sep 17 00:00:00 2001 From: Aleksey Filippov Date: Tue, 7 Jul 2026 18:52:30 +0300 Subject: [PATCH] =?utf8?q?fix(api):=20=D1=81=D0=B0=D0=BB=D0=BE=D0=BD=D1=8B?= =?utf8?q?=20=D0=B2=20=D1=87=D0=B0=D1=82-=D0=B1=D0=BE=D1=82=D0=B5=20?= =?utf8?q?=E2=80=94=20=D1=82=D0=BE=D0=BB=D1=8C=D0=BA=D0=BE=20visible=3D1?= =?utf8?q?=20(BR-512)?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Эндпоинт client/get-stores (actionGetStores) фильтровал только по products_1c.view=1, но не по видимости карточки city_store. Из-за этого в список «Наши салоны» чат-бота протекали закрытые/скрытые точки (visible=0) — показывалось 33 магазина вместо 26 (Нижний Новгород). Добавлен фильтр city_store.visible=1 (в PHP, т.к. связь store идёт через via и join был бы хрупким) — по образцу CityStore::getAllActiveIdName/ getNames, где корректный список всегда берётся с visible='1'. --- erp24/api2/controllers/ClientController.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/erp24/api2/controllers/ClientController.php b/erp24/api2/controllers/ClientController.php index 55174ca4..e27aac07 100644 --- a/erp24/api2/controllers/ClientController.php +++ b/erp24/api2/controllers/ClientController.php @@ -1146,8 +1146,11 @@ class ClientController extends BaseController $stores = Products1c::find()->with('store')->where(['tip' => 'city_store'])->andWhere(['view' => '1'])->all(); $result = []; foreach ($stores as $store) { - if (!empty($store->store->name ?? null)) { - $result[] = ['id' => $store->id, 'name' => $store->store->name]; + $card = $store->store ?? null; + // BR-512: показываем только видимые (не закрытые/скрытые) салоны — как везде по CityStore + // (visible='1'). Иначе в список чат-бота протекают закрытые точки (было 33 вместо 26). + if (!empty($card->name) && (int)$card->visible === 1) { + $result[] = ['id' => $store->id, 'name' => $card->name]; } } return $this->asJson(['response' => $result]); -- 2.39.5