/** * Creates a new expense * * @param $input * * @return array */ public function create($input) { $expense = $this->expense->newInstance(); $expense->description = $input->description; $expense->date = $input->date; $expense->currency_id = $input->currency_id; $type = $this->getType($input); $expense->type()->associate($type); $source = $this->getSource($input); $expense->source()->associate($source); $expense->save(); return ["id" => $expense->id]; }