stackoverflow,
У меня работает laravel функция, которая получает ежедневную сумму продаж за последние 30 дней. Я буду использовать данные для построения графика, поэтому мне нужно получить даты, даже если он пуст, и дать им значение «0» в качестве их суммы.
вот мой код (он работает, но возвращает только даты которые не пустые)
public function getDaily() {
$startDate = Carbon::now()->subDays(30);
$endDate = Carbon::now();
$all_dates = array();
for($i = 0;$i<=30;$i++)
{
$all_dates[] = $startDate->toDateString();
$startDate->addDay();
$sales=DB::table('sale_details')
->select(DB::raw('sum(amount_due) as daily'),DB::raw('date(created_at) as date'))
->groupBy('date')
->orderBy('date','desc')
->get();
}
return $sales;
}