selin Опубликовано 14.08.2023 в 17:43 Поделиться Опубликовано 14.08.2023 в 17:43 Здравствуйте! Первый раз работаю как со сборкой OpenCart 3 club edition, так и с этой функцией, поэтому не пойму, в чем засада. Это какой-то баг тройки, сборки или все так и задумано. Заказы оформляются покупателями через сайт по базовой или дисконтным ценам, дисконты привязаны к группам покупателей. Если потом заказ редактировать через админку, например, может потребоваться изменить количество заказанного товара, то на вкладке редактирования корзины все цены меняются на базовую, т.е. группа покупателя и соответствующие ей дисконтные цены игнорируются. Почему так происходит и что с этим можно сделать? Очевидно, что цена за ед.товара должна оставаться той, по которой покупатель оформлял заказ, соответствующей его группе. Заранее спасибо, кто сможет что-то посоветовать. 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
chixx Опубликовано 14.08.2023 в 18:22 Поделиться Опубликовано 14.08.2023 в 18:22 В 14.08.2023 в 20:43, selin сказал: Здравствуйте! Первый раз работаю как со сборкой OpenCart 3 club edition, так и с этой функцией, поэтому не пойму, в чем засада. Это какой-то баг тройки, сборки или все так и задумано. Заказы оформляются покупателями через сайт по базовой или дисконтным ценам, дисконты привязаны к группам покупателей. Если потом заказ редактировать через админку, например, может потребоваться изменить количество заказанного товара, то на вкладке редактирования корзины все цены меняются на базовую, т.е. группа покупателя и соответствующие ей дисконтные цены игнорируются. Почему так происходит и что с этим можно сделать? Очевидно, что цена за ед.товара должна оставаться той, по которой покупатель оформлял заказ, соответствующей его группе. Заранее спасибо, кто сможет что-то посоветовать. Модуль поможет 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
selin Опубликовано 15.08.2023 в 07:39 Автор Поделиться Опубликовано 15.08.2023 в 07:39 Модуль кажется хорошим, жаль автор не ответил на вопросы покупателей о совместимости с симплом, там может возникнуть проблема с кастомными полями. Ну, попробую связаться и выяснить, если что. Радует обещание тестового периода. Но пока есть время, было бы интересно разобраться самостоятельно в этой проблеме. Первое, что приходит в голову, передавать в api/cart/products номер заказа и добавить аргумент order_id и его проверку в cart->getProducts(), и при наличии отдавать не актуальную цену, а цену из истории заказа. Но будет ли этого достаточно или есть какие-то подводные камни? Надеюсь, кому-нибудь будет интересно это обсудить) Оказывается, уважаемого OC-создателя уже много лет достают этим вопросом, на что он отвечает в том духе, что редактирование заказов это вообще вредная практика и добавлено только в виде одолжения, поэтому и за это скажите спасибо. И угрожает забанить недовольных) Эх. 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
nikifalex Опубликовано 16.08.2023 в 07:38 Поделиться Опубликовано 16.08.2023 в 07:38 В 15.08.2023 в 13:39, selin сказал: автор не ответил на вопросы покупателей о совместимости с симплом, там может возникнуть проблема с кастомными полями. такой проблемы нет, если установите модификатор из комплекта. В 15.08.2023 в 13:39, selin сказал: при наличии отдавать не актуальную цену, а цену из истории заказа мне кажется это есть в этом модуле. как и непересчет итогов. 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
selin Опубликовано 16.08.2023 в 08:38 Автор Поделиться Опубликовано 16.08.2023 в 08:38 (изменено) В 16.08.2023 в 10:38, nikifalex сказал: мне кажется это есть в этом модуле. как и непересчет итогов. Да, судя по демо, там подгружается именно цена из заказа, доступная для редактирования. И дополнительно инф.поле с текущей базовой ценой и акционной если есть. Дисконтные тоже должны отображаться, хотя вряд ли там будет учтена привязка дисконта к группе покупателя. Ну это не критично, на худой конец можно вообще отключить эту колонку. В общем, очень неплохо все выглядит. Но по секрету: я по незнанию уже пообещала людям, что редактирование заказа корректно работает из коробки, поэтому не хотелось бы заморачиваться с обоснованием дополнительных трат, если это действительно можно решить за несколько часов)) Да и интересно разобраться. Вот только подтвердил бы кто, что это действительно заработает, чтобы время не терять) Так что еще раз, идея такая: - в api/cart/products отправляем order_id, аналогично тому, как уже сделано для /api/order/edit - в cart->getProducts() добавляем параметр order_id=0 - во все вызовы cart->getProducts() из products() и edit() отправляем order_id, там, если не 0, берем цену из oc_order_product Опций у товаров нет, редактирования заказов пока достаточно только на удаление товаров или изменение количества (без добавления товаров, это думаю можно будет отдельными заказами делать). Кажется все просто. Но так ли это на самом деле?) Изменено 16.08.2023 в 08:39 пользователем selin 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.