Bug #5843
FLM. Зникли реалограми у виконаних задачах
0%
Description
Привіт,
1. Заходжу на планограму FLM TYGERVALLEY > Tygervalley20240701 > FLM_Chips2_LaysTatos_GroceryA11
2. Відкриваю вікно зі звітом виконання планограми.
Очікування: побачити фотографію-реалограму
Факт: фото відсутнє
Стосується не тільки цієї планограми, але й ряду інших. У мобільному застосунку фото також відсутнє.
History
#1 Updated by ♠ Pavlo Scherbatyuk 7 months ago
- File 5843_1.png 5843_1.png added
- File 5843_2.png 5843_2.png added
- Tracker changed from Ticket to Bug
- Project changed from Support to Shelf dev
- Status changed from New to Ready for development
- Assignee changed from ♠ Pavlo Scherbatyuk to ♠ Volodymyr Lysiuk
- Target version set to Release 109
Вов, подивись будь ласка.
На магазині майже всі задачі в статусі "Виконано", але багато з них не мають реалограм.
Приклад:
Магазин: WC FLM TYGERVALLEY
План залу: Tygervalley20240701
10 згрупованих планограм: FLM_LoveHealth1; FLM_LoveHealth2; FLM_LoveHealth3; FLM_LoveHealth4; FLM_LoveHealth5; FLM_LoveHealth6; FLM_LoveHealth7; FLM_LoveHealth8; FLM_LoveHealth9; FLM_LoveHealth10.
Всі планограми в статусі "Виконано", але перші 7 мають реалограму, а останні 3 - ні.
Подивився по логах, під час виконання задачі фото наче записувалось.
Помітив що якщо у методі /taskCompleted параметр "photo" починається з "iVBORw...", то така планограма має реалограму, а якщо "photo" починається з ",/9j/4...", то реалограма відсутня.
#2 Updated by ♠ Volodymyr Lysiuk 7 months ago
- Assignee changed from ♠ Volodymyr Lysiuk to ♠ Aleksandr Tsymbalyuk
в метод POST /taskCompleted в тілі запиту в полі photo має прилітати фотка закодована в base64. Судячи з логів іноді першим символом прилітає кома, яка не є допустимим символом для base64. Швидше за все саме тому фотка і не декодується.
#3 Updated by ♠ Volodymyr Lysiuk 7 months ago
у нас уже є певні символи (недопустимі в base64) які ми вирізаємо на бекенді з цього поля перед обробкою. якщо треба туди додати кому, то в ідеалі треба тоді повний перелік шо там може ще прилетіти...
хоча звісно ідеальній варіант якщо там взагалі не буде зайвого сміття, можна було б тоді зайвий код повидаляти.
також можливо це якийсь варіант base64 з комою (такий є, де кома замість слеша), але тоді не дуже зрозуміло звідки там і слеш і плюс ...
#4 Updated by ♠ Volodymyr Lysiuk 7 months ago
на бекенді відбувається наступна заміна
СтрокаКартинки = СтрЗаменить(СтрокаКартинки, Символы.ВК, ""); СтрокаКартинки = СтрЗаменить(СтрокаКартинки, Символы.ПС, ""); СтрокаКартинки = СтрЗаменить(СтрокаКартинки, "b'", ""); СтрокаКартинки = СтрЗаменить(СтрокаКартинки, "\n'", ""); СтрокаКартинки = СтрЗаменить(СтрокаКартинки, "\n", "");
тобто видаляються символи переводу рядка і повернення каретки а також комбінації символів
b'
\n'
\n
(
\n
- це два символи: бекслеш і літера).чому вона саме така - невідомо.
#5 Updated by ♠ Pavlo Scherbatyuk 7 months ago
- File реалограма_не_ок.heic реалограма_не_ок.heic added
- File реалограма_ок.heic реалограма_ок.heic added
- File логи.png логи.png added
- Target version changed from Release 109 to 27 mobile
- Category changed from Tasks to Mobile app
- Current Version changed from Release 109 to 26 mobile
Вдалося відтворити на демо.
Схоже що клієнт завантажував файл формату *.heic.
При завантаженні реалограм даного формату виявив, що при завантаженні реалограми розміром 300 кб баг не відтворився, а при завантаженні файлу 1,5 Мб реалограма не зберіглась(Прикріпив обидва файли).
Приклад обладнання з багом та без:
https://demo-ru.m2.abmretail.com/#/macro-spacing?id=60bcafdf-f7b0-435f-b6c3-cb29aad7bf4e&store=06017ada-8ac9-11e6-b359-c81f66e0306a&activeEquip=898898b9-8bb9-4bb8-b8a8-b89bb98bb8ba&openEquip=true&title=121_ Вишневская 7 > 121 > баг_heic_1; баг_heic_2;
Також додам, що при завантаженні з мобільного застосунку файлу будь-якого формату, в логах видно що реалограма конвертується в png, а при виникненні багу в jpeg.
#6 Updated by ♣ Katarina Herikh 2 months ago
- Project changed from Shelf dev to [EPIC] Мобільний додаток
- Target version deleted (
27 mobile)