public function itemByBranchAndDateRange(Branch $branch, DateRange $dr, $order = 'ASC') { $arr = []; $dss = $this->scopeQuery(function ($query) use($order, $dr) { return $query->whereBetween('date', [$dr->fr->format('Y-m-d'), $dr->to->format('Y-m-d')])->orderBy('date', $order); })->findWhere(['branchid' => $branch->id]); return $dss; foreach ($dr->dateInterval() as $key => $date) { $filtered = $dss->filter(function ($item) use($date) { return $item->date->format('Y-m-d') == $date->format('Y-m-d') ? $item : null; }); $obj = new StdClass(); $obj->date = $date; $obj->recordset = $filtered->first(); $arr[$key] = $obj; } return collect($arr); }
public function getYear(Request $request, DateRange $dr) { $arr = []; $data = $this->getAggregateYearly($dr->fr->format('Y-m-d'), $dr->to->format('Y-m-d'))->all(); foreach ($dr->yearInterval() as $key => $date) { $filtered = $data->filter(function ($item) use($date) { return $item->year == $date->year ? $item : null; }); $obj = new StdClass(); $obj->date = $date; $obj->dailysale = $filtered->first(); $arr[$key] = $obj; } return collect($arr); }