Opened 2 years ago
Closed 9 days ago
#1273 closed дефект (готово)
В Заказе отображаются не все изделия
| Reported by: | san | Owned by: | Denis_N |
|---|---|---|---|
| Priority: | major | Component: | БД изделий АДС |
| Keywords: | Cc: |
Description (last modified by )
Например, если открыть заказ 2023060, то там не отображаются все 7 MC04-UPS-48/60-1200, входящих в заказ, но если перейти на главную по ссылке из поля "Состав" - видно, что они там присутствуют(например s/n G00470).
r353/base
Change History (2)
comment:1 by , 2 years ago
| Description: | modified (diff) |
|---|
comment:2 by , 9 days ago
| Resolution: | → готово |
|---|---|
| Status: | new → closed |
Note:
See TracTickets
for help on using tickets.
![[MC-04 logo]](/mc-04/chrome/site/logo.png)
Причина в r353/base была не в самих данных заказа, а в старом отображении заказа: ссылка “Состав” брала S/N напрямую из order-items, а открытие заказа шло через INNER JOIN со справочником list_of_products по имени изделия. В заказе 2023060 эти 7 изделий сейчас лежат как MC04-UPS-48 (G00464 ... G00470), а в справочнике есть уже имя MC04-UPS-48/60-1200. Из-за несовпадения имени старый INNER JOIN просто отбрасывал всю позицию, поэтому на Главной изделия были видны, а в самом заказе нет.
Исправление фактически пришло в r551/base, где страница “Заказы” была переписана: старые handler.php, ordersBackForAjax.php, ordersItemsView.php удалены, добавлены backend/orders_backend.php и js/orders.js. Сейчас состав заказа читается из order-items через LEFT JOIN к справочнику, с fallback на тип из order-items, поэтому переименование/отсутствие строки в справочнике больше не скрывает изделия.
Закрываю как исправленный