public static function getParentAndChildren($select = ['id', 'description'], $limit = 5)
{
$events = FreeProduct::select($select)->where('status', '1')->with('orders')->get()->take($limit);
$list = [];
$events->each(function ($event) use(&$list, $select) {
foreach ($select as $value) {
$list[$event->id][$value] = $event->{$value};
}
$products = FreeProduct::find($event->id)->products->take(6)->toArray();
if ($products) {
$list[$event->id]['products'] = $products;
}
unset($products);
});
return $list;
}