Shopware 6: Как фильтровать заказы без поставок (цифровые товары) с помощью критериевPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Shopware 6: Как фильтровать заказы без поставок (цифровые товары) с помощью критериев

Сообщение Anonymous »

Я пытаюсь оптимизировать свой запрос для цифровых заказов в Shopware 6. В настоящее время я сначала загружаю все оплаченные заказы, а затем отфильтровываю те, которые имеют доставку в PHP, но я хотел бы выполнить эту фильтрацию в уровень базы данных с использованием критериев.
Мой текущий рабочий процесс:

Код: Выделить всё

// First get ALL paid orders
$criteria->addFilter(new EqualsFilter('transactions.stateMachineState.technicalName', 'paid'));

// Then filter in PHP for digital orders
$filteredOrders = [];
foreach($orders as $order){
if(count($order->getDeliveries()) == 0){
$filteredOrders[] = $order;
}
}
Я пробовал эти подходы, но ни один из них не работает правильно:

Код: Выделить всё

// Attempt 1
$criteria->addFilter(new NotFilter(
NotFilter::CONNECTION_AND,
[new EqualsFilter('deliveries.id', null)]
));

// Attempt 2
$criteria->addFilter(new EqualsFilter('deliveries', null));

// Attempt 3
$criteria->addFilter(new EqualsFilter('lineitems.deliveries', null));
и еще много попыток....
Как я могу изменить свои критерии, чтобы получать только заказы без каких-либо поставок (цифровые продукты) непосредственно из база данных?

Подробнее здесь: https://stackoverflow.com/questions/793 ... -using-cri
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»