Não é possível salvar os dados de cálculo por categoria ao criar novos dados no laravel

Model SpentTime

Não consigo salvar os dados de cálculo por categoria ao criar novos dados no laravel

public static function findOrCreate($plan_id, $data)
{
    $fromDate = Carbon::now()->subDay()->startOfWeek()->toDateString();
    $nowDate = Carbon::now()->today()->toDateString();

    $spent_time = static::where('plan_id', $plan_id)->first();

    if (is_null($spent_time)) {
        return static::create($data);
    }else{
        $task_category = SpentTime::where('task_category', $spent_time->task_category)->get();
        $create_spent_times = SpentTime::where('task_category', $spent_time->task_category)->sum('daily_spent_time', $fromDate);
        $request['spent_time'] = (int)$create_spent_times + $spent_time->daily_spent_time;

        $create_spent_times = SpentTime::where('task_category', $spent_time->task_category)->sum('daily_percentage', $fromDate);
        $request['percentage'] = (int)$create_spent_times + $spent_time->daily_percentage;

        $spent_time->save();
        return $spent_time->update($data);
    }
}
TrackerController

Esta é a função do controlador para armazenar dados:

public function store(Request $request)
{      
    $spent_time = SpentTime::findOrCreate($request->get('plan_id'), [
        'plan_id' => $request->get ('plan_id'),
        'daily_spent_time' => $request->get ('daily_spent_time'),
        'daily_percentage' => $request->get ('daily_percentage'),
        'reason' => $request->get ('reason')
    ]);
    return redirect()->route('real.index', compact( 'spent_time'));
}

questionAnswers(2)

yourAnswerToTheQuestion