Только недавно начал разбираться с Opencart. Скачал, само собой, что было "последнего" (2.0.3.1). И в итоге столкнулся с такой проблемой - товары со склада банально не вычитаются. Покупаю и покупаю, а количество в базе и карточке товара остается прежним. Какие могут быть предположения? 1. Чистая установка (без модов и прочей чехуи). 2. В админке в настройках товара опция "Вычитать со склада" установлена в "Да". ( Products->Data->Subtract Stock : Yes ). 3. В админке в настройках магазина опции (Display Stock, Show Out Of Stock Warning, Stock Checkout) по отображению количества товара на складе включены (хотя это всего лишь отображение и по факту на сам вычет не влияет). 4. Запись настроек из админки в БД происходит, что говорит о том, что доступ к БД на запись имеется. 5. Указанным при инсталляции папкам были "оформлены" необходимые атрибуты. 6. system/cache чистил. Что я упустил? Где еще какие опции необходимо включить/выключить? P.S.: Прошу сильно не пинать ибо, как указал выше, в Opencart не особо силен.
У заказа стоит статус Сделка завершена ?? В настройках на вкладке Опции выбран статус для завершенного заказа?? Скорей всего именно этого вам и не хватает (как там на английском не знаю, т.к у меня русская сборка с данного сайта)
Да я руссифицировал тоже. И результат аналогичен. Но для теста использую чистую версию. В настройках на вкладке опции следующие статусы указаны мной как Complete: 1. Статус заказа 2. Статус заказа в процессе 3. Завершенный статус заказа Но в админке в заказах статус все равно остается Pending. Т.е. получается, что эти статусы не влияют на оформление заказа.
Чтобы завершить/сменить статус заказа необходимо нажать на просмотр заказа и добавить статус Завершено в историю!
Это я понимаю. Но это уже, так сказать, постфактум - тогда когда я уже обработаю заказ. А вот заказали 2 (или 10) клиента один и тот же товар, а у меня в наличии его всего 1 штука была. И вот я захожу в адмику через пару минут и вижу 10 заказов (ну и предположим, что заказы продолжают поступать - товар то еще в наличии). И вот что отвечать клиентам в таком случае? Что я не успел отключить товар?(то бишь не успел обработать первый заказ ?) Это логично? Глупость несусветная!.. Это 2-й опенкарт из коробки... P.S.: Про мою кривизну рук можно сразу забыть. А вот кривизну рук разработчиков здесь будет уместно вспомнить.
как оформляется заказ? В модуле оплаты ведь тоже есть настройка.. какой статус установить заказу. Или поставьте в настройках в Завершенный статус заказа крыжик Pending А если я заказал и потом оказался. А клиент который хотел купить, но не смог. Что тогда вы ему скажите... погодите.. попробуйте еще раз...
А как и кто должен узнать об отказе товара? Если клиент отказывается, то он сообщает об этом каким-то образом администратору. И тот возвращает товар на место. И таки да. Поверьте, что лучше попросить его попробовать еще раз, чем объяснять ему почему он заплатил деньги, а товар не получит. Но вопрос-то в принципе не в этом. Обсуждаем мы сейчас отношения покупателя и продавца. А вопрос был про работу CMS У Вас какая версия Opencart?
2.0.3.1 Русская сборка. Вычитание со склада, работает именно так как описал выше. Другая логика делается под заказ.
Русская сборка в данном случае абсолютно не играет роли (см. пункт первый моего поста). Я не поленился и установил также еще версию 1.5.6.4. И там все работает как я и думал - все работает логично. И получается, что раньше не нужно было делать другую логику под заказ. Я хоть и не баран ( по гороскому), но упрямый и просто так со словами типа "ну вот как-то так" или "найми программиста" и т.п. не соглашаюсь. Полез на официальный форум и написал им в раздел "Баги". Как результат - есть как минимум еще один такой же, который убил много времени, но нашел решение: ставить несколько галок сразу (сразу оговорка для читающих - это второй опенкарт - есть отличия от полуторного). И это сработало (без другой логики под заказ и т.п.). Но, как я и писал ранее - логика здесь нарушена разрабами. Т.е. мне, например, кажется абсолютно бредовым, что для при выборе "Статус заказа в процессе" я должен одновременно указать несколько статусов и "Complete" и "Pending" и "Processing". И это при том, что всего полей 14. Это ж сколько можно навыставлять вариантов и к чему они должны приводить? Даже не пытайтесь мне объяснить, что это нормально и логично. Как бы для себя я эту тему закрыл (пока что) P.S.: И в заключение немного офтопа. Знаете, как то просто надоедает уже мириться с тем, как люди стАдно придумывают оправдания тому, что не могут исправить. Ну, например, про опенкарт... Не единожды находил в нете посты, где народ пишет, что это не нормально отсутствующий в магазине товар показывать покупателю. И я так тоже считаю. Считаю я так потому, что сам сталкивался непосредственно с торговлей, а не нахожусь по данную сторону барикад. А отмазка со стороны программистов/администраторов/разработчиков следующая: так надо для СЕО. Иначе товар не будет раскручиваться. Или рассказывают про то, что товар проиндексируется, а пользователи его не найдут в последствие и попадут на 404. Но помилуйте! Так товара и нет. Не надо мне СЕО на данный товар. И робот не раз в год заходит на сайт. Так что это гнилые отмазки. Да и применительно к моей теме... Не придумывайте отмазок, типа: А пусть и не уменьшается. Это так надо и задумано.Товар подвезется и больше можно будет продать. Не можно будет! Не подвезется! Вернитесь в реальный мир Мы, как минимум, не в тех странах живем.
Многие вещи в 2х работают по другому в отличие от 1.5 Разработчики опенкарта это "Цари" и что они нам дали, тем и пользуемся, даже если это и баг. Чтобы переделать логику, необходимо доказать автору что по другому лучше и правильно, а это ой как сложно.. поверьте мне. Другую логику делаем сами и за свой счет. Бывает даже различными костылями и неудобными способами. Но это уже наше личное дело.
Если не трудно, ткните носом на это решение для второго opencarta. А то не могу понять как нормально отнимать со склада оплаченный товар. Про резерв вообще молчу.
В настройках магазина на вкладке Опции, найдите раздел Оформление заказа и там Завершенный статус заказа Там выбрать статусы которые будут являться завершенным заказом. При нужном статусе товар будет вычитаться.
Спасибо! всё получилось и логику удалось настроить. Но есть странный момент. Не дает возвратить товар на склад, если сейчас его на складе ноль. Похоже на проверку состояния складе в момент изменения статуса заказа.. Не сталкивались с таким?
Да вроде работает, только со страницы просмотра заказа и изменения истории. Со страницы редактирования не дает проверка. Ну это еще подробней надо изучить. P.S. Вот теперь попробую по крону с резерва на склад возвращать неоплаченные за n-дней товары.