2015-06-08 2 views
0

Я хотел бы добавить товар в корзину на лету. Это означает, что добавляемые продукты не хранятся в базе данных и не должны. Но когда я смотрю на конечную точку тележки, как элементы, добавленные к заказу, класс org.broadleafcommerce.core.order.service.call.OrderItemRequestDTO требует идентификатор продукта.Добавление продуктов «на лету» на заказ

Так что это означает, что я должен переопределить blCatalogService, что также позволит использовать временные продукты? Это все или я забыл что-то еще, чтобы добиться добавления продуктов в корзину/заказ на лету?

ответ

1

Модель данных и сервисов OrderItem строго не требует SKU, но многие из примеров из коробки.

Вы должны иметь возможность переопределить CartEndpoint и вместо создания OrderItemRequestDTO создать NonDiscreteOrderItemRequestDTO.

AddOrderItemActivity, который является частью рабочего процесса, выполняемого при добавлении элемента для проверки этого типа, и создаст OrderItem вместо DiscreteOrderItem или BundleOrderItem (оба из которых требуют SKU).

Надеется, что это помогает,

Brian

Примечание: Я работаю в широколиственных

Смежные вопросы