我有以下结构:
Orders
- id
- users_id
- orderPaid (can be 1 or 0)
OrdersItems
- id
- order_id
- events_id
- qty
events
- id
- name
- (and others)
关系
一个订单有多个订单项。一个订单项属于一个订单。
一个事件有多个订单项。一个订单项属于一个事件。
我需要做的是:
获取所有已支付数量为全部的事件。因此,如果我有两个每个都有两件商品的订单(总共4件),但只有一个订单已付款,则数量应该显示2而不是4。
目前的代码:
$events = Main::with(['clients','events.orderitems'])->where('id', $id)->first();
foreach($events->events as $events) {
$events->orderscount = count($events->orderitems);
}
这个代码给出了总数量,但我只需要当orderPaid = 1时的数量。
我该怎么做?非常感谢您的帮助。
count(orderitems)
与订单项qty字段的总和不同。 - Jarek Tkaczyk