Заметил такую ошибку. Если над заказом выполнить следующую последовательность действий:
Новый -> В обработку -> Выполнен -> Возврат -> Восстановить
То в итоге получаем заказ со статусом "Выполнен", но в отчетах по этому заказу не учитывает продажи и прибыль. И в БД соответственно параметр paid_date = null . Хотя по логике Выполненный заказ предполагает наличие оплаты. Подобная последовательность действий над заказом происходит не частно , но у себя заметили около 10 заказов с статусом "Выполнен", но без признака оплаты в БД.
Вообще такое на практике происходит нечасто. Если менеджер случайно нажал Возврат, а потом хочет восстановить заказ. Но вообще сама возможность допустить такую ошибку должна быть исключена. Ведь восстановление заказа уже по смыслу предполагает восстановление прежних условий и оплаты в том числе. Кажется проблема появилась не так давно, т к раньше такого поведения системы учета не замечал.
Сейчас в БД нашел около 5-10 заказов за все время, у которых статус заказа "Выполнен", но нет признака оплаты в БД. Т е фактически заказ выполнен , но не оплачен.
На самом деле мы не там ищем проблему. Проблема в самом событии RESTORE. По логике - оно должно восстанавливать заказ в его предыдущее состояние, если я правильно понимаю. Очень странно что есть такая техническая возможность получить Выполненный заказ без наличия оплаты. Все это получилось путем использования стандартных инструментов работы над заказом, пусть и немного извращенной последовательности. Считаю что такая возможность должна быть исключена. А вопрос «как такое получилось» - это второстепенный. Менеджеры могут и не такое начудить. Должна быть «защита от дурака».
Статус заказа изменится на тот, который был у заказа до удаления.
Насколько я вижу, именно так и происходит: статус заказа меняется на предыдущий.
То, что вам нужно — восстановление даты оплаты и данных отчётов — не входит в понятие «статус». Это дополнительные свойства заказа. Восстановление этих дополнительных данных — это дополнительная функциональность, которая пока не задумывалась в логике работы магазина: исправление ошибок пользователей. Это сравнимо с нечаянно удалёнными товарами, например, чего в магазине также нет, но отсутствие чего нельзя считать ошибкой.
Предлагаю вам описать нужную вам функциональность магазина в специальном разделе форума поддержки, чтобы её добавили в одном из обновлений. Например, можно было бы добавить настройку для действия «Восстановить», чтобы вместе с восстановлением статуса заказа восстанавливались бы и данные об оплате.
Если решение нужно вам в ближайшее время, обратитесь к нашим партнёрам за индивидуальной разработкой, например, в виде плагина.
6 комментариев
Для чего вы восстанавливаете заказ, по которому выполнен возврат? Как вы дальше работаете с таким заказом?
Вообще такое на практике происходит нечасто. Если менеджер случайно нажал Возврат, а потом хочет восстановить заказ. Но вообще сама возможность допустить такую ошибку должна быть исключена. Ведь восстановление заказа уже по смыслу предполагает восстановление прежних условий и оплаты в том числе. Кажется проблема появилась не так давно, т к раньше такого поведения системы учета не замечал.
Сейчас в БД нашел около 5-10 заказов за все время, у которых статус заказа "Выполнен", но нет признака оплаты в БД. Т е фактически заказ выполнен , но не оплачен.
Как у вас происходит случайное выполнение возврата? При этом ведь нужно подтвердить, полный возврат или частичный. Это тоже делается случайно?..
На самом деле мы не там ищем проблему. Проблема в самом событии RESTORE. По логике - оно должно восстанавливать заказ в его предыдущее состояние, если я правильно понимаю. Очень странно что есть такая техническая возможность получить Выполненный заказ без наличия оплаты. Все это получилось путем использования стандартных инструментов работы над заказом, пусть и немного извращенной последовательности. Считаю что такая возможность должна быть исключена. А вопрос «как такое получилось» - это второстепенный. Менеджеры могут и не такое начудить. Должна быть «защита от дурака».
случайно это может произойти, если менеджер перепутал заказы
В подсказке для действия «Восстановить» написано
Насколько я вижу, именно так и происходит: статус заказа меняется на предыдущий.
То, что вам нужно — восстановление даты оплаты и данных отчётов — не входит в понятие «статус». Это дополнительные свойства заказа. Восстановление этих дополнительных данных — это дополнительная функциональность, которая пока не задумывалась в логике работы магазина: исправление ошибок пользователей. Это сравнимо с нечаянно удалёнными товарами, например, чего в магазине также нет, но отсутствие чего нельзя считать ошибкой.
Предлагаю вам описать нужную вам функциональность магазина в специальном разделе форума поддержки, чтобы её добавили в одном из обновлений. Например, можно было бы добавить настройку для действия «Восстановить», чтобы вместе с восстановлением статуса заказа восстанавливались бы и данные об оплате.
Если решение нужно вам в ближайшее время, обратитесь к нашим партнёрам за индивидуальной разработкой, например, в виде плагина.