Нашелся дефект по отзывам, когда установлена модерация отзывов
дефекта даже два
1. добавить отзыв первый у товара, в классе метода shopProductReviews.model.php#add вызывается recalcProductRating, что у нас сразу добавляет запись у товара рейтинг и на фронте выводится сразу, хотя отзыв еще на модерации, такого быть не должно
2. из-за первого дефекта появляется второй, заходим в админку и нажимает сразу опубликовать, то этот метод hopProductReviews.model.php#recalcProductRating вызывается снова в методе уже shopProductReviews.model.php#changeStatus и снова увеличивает счетчик, в итоге у нас два рейтинга за один отзыв, даже если вы потом удалите, то рейтинг один остается, от сюда ломается все, подсчет отзывов и сам рейтинг
ошибка именно когда, добавили отзыв и сразу же его опубликовали - срабатывает двойной счетчик
на сайте пришлось заново высчитывать поле в таблице shop_product - rating_count и так rating
если модерации нет, то все ок работать будет, прошу решить
15 комментариев
Вы пишете здесь об оценке, а не об отзыве. Оценка не проверяется модератором и сразу видна на витрине, проверяется только отзыв.
ну как же, рейтинг формируется от отзыва, почему он сразу становится виден, если отзыв не опубликован
Передал замечание разработчикам, спасибо.
Расскажите, какие конкретно проблемы для вас создаёт это двойное срабатывание счётчика? Как оно проявляется в работе магазина?
проблемы такие в магазине
на товар был написан отзыв с оценкой 3 и потом опубликован, но решили отзыв удалить, он удалился, но рейтинг остался старый, который не верен, так потом еще отзыв добавили, снова удалил и еще поменялся.
в итоге рейтинг у товара сформирован не верно, отзыв один с рейтингом 5, а по факту средний, который не имеет не какого отношения
и вот если вообще нет отзывов и пишет рейтинг 1, как так, если отзывов нет и не кто не писал не когда, тк решили отзывы удалить
пример товара - https://steemy.ru/insales/chek...
Оценки товаров и отзывы о товарах работают раздельно, хотя и добавляются пользователем в одной форме на странице магазина. При удалении отзыва оценка не удаляется.
почему же не удаляется, оценка так же удаляется при удалении отзыва, говорю же только при модерации, срабатывает двойной счетчик накрутки, вот и ошибка
без модерации отзыва, рейтинг свободно удаляется вместе с отзывом и работает как одна единица
Это противоречит логике. Как тогда удалить оценку? Как удалить её отдельно от отзыва, раз уж они раздельны? Как удалить отзыв отдельно от оценки?
И если они разделены, то почему идут все вперемешку? Ведь логичнее сначала выводить отзывы, а потом лишь оценки. Первые могут содержать информацию.
Напишите свои предложения о том, как лучше было бы работать с отзывами и оценками, в разделе форума «Идеи и предложения», пожалуйста.
Мы выпустили обновление Shop-Script, в котором исправили сохранение рейтинга товаров при утверждении отзыва в ходе модерации. Обновление можно установить в «Инсталлере».
Проверьте, пожалуйста. Сообщите нам, если проблема сохранилась.
Спасибо вам за то, что помогаете улучшать программные продукты
Дорогие разработчики, вы тестируйте что делаете или у вас есть команда тестировщиков?
1. во первых вы не сделали первый пункт
2. поправив это наплодили новый дефект, удалив отзыв и потом если его публиковать, рейтинг не меняется
ввели в коде бы еще один статус - restored и сделали бы легко проверки
так не принимается результат
знаете как сложно клиентов убеждать, почему же у них отзыв несколько положительных, а рейтинги другие и почему так все это работает криво(
решается еще проще, причем одной проверкой, оба дефекта закрываются
это удаляем в файле shopProductReviews.model.php
а это добавляем тут shopProductReviews.model.php#603 строка
добавляем проверку просто при добавлении отзыва что у нас не включена модерация и все работает как часики
смысла создавать пул реквеста думаю нет, тк там кажись не смотрите их вообще
но еще забыл, должны были сделать перерасчет старых, а то не которые уходят в минус и все тут, теряется вообще весь рейтинг(
Тестирование, профилирование и эти ваши богомерзкие IDE - это для слабаков и прочих хипстеров. Если Вы не видели годами игнорируемые PR с исправлением ошибок, то загляните на github.
да я видел, там с 18 года еще висят и создавать думаю бессмысленно пр, жаль что такое отношение у них(
Передали замечание разработчикам, спасибо!