/** * * @param Request $request * @return mixed */ public function store(Request $request) { $filter = new SavedFilter($request->only(['name', 'filter'])); $filter->user()->associate(Auth::user()); $filter->save(); return $this->responseCreatedWithTransformer($filter, new SavedFilterTransformer()); }
public function run() { $this->defaults = Config::get('filters.defaults'); $filters = [['name' => 'bank account expenses', 'filter' => ['accounts' => ['in' => [1], 'out' => []], 'types' => ['in' => ['expense'], 'out' => []], 'displayFrom' => 1, 'displayTo' => 30]], ['name' => 'bank account expenses page 2', 'filter' => ['accounts' => ['in' => [1], 'out' => []], 'types' => ['in' => ['expense'], 'out' => []], 'offset' => 2, 'numToFetch' => 2, 'displayFrom' => 3, 'displayTo' => 4]], ['name' => 'cash account expenses', 'filter' => ['accounts' => ['in' => [2], 'out' => []], 'types' => ['in' => ['expense'], 'out' => []], 'displayFrom' => 1, 'displayTo' => 30]], ['name' => 'bank account income', 'filter' => ['accounts' => ['in' => [1], 'out' => []], 'types' => ['in' => ['income'], 'out' => []], 'displayFrom' => 1, 'displayTo' => 30]], ['name' => 'cash account income', 'filter' => ['accounts' => ['in' => [2], 'out' => []], 'types' => ['in' => ['income'], 'out' => []], 'displayFrom' => 1, 'displayTo' => 30]]]; $users = User::all(); foreach ($users as $user) { foreach ($filters as $filter) { $mergedFilter = array_merge($this->defaults, $filter['filter']); $newFilter = new SavedFilter(['name' => $filter['name'], 'filter' => $mergedFilter]); $newFilter->user()->associate($user); $newFilter->save(); } } }