Estou desenvolvendo um projeto meu para treinar. Do mesmo modo que foi proposto no curso a criação de uma classe Repository, resolvi separar as regras de negócio da minha classe Ocorrencias para uma classe chamada OcorrenciaService.
<?php
namespace App\Services;
class OcorrenciaService
{
\\ lógica
}
Porém quando tento injetá-la na minha classe OcorrenciaController:
namespace App\Http\Controllers;
use App\Models\Setor;
use App\Models\TipoOcorrencia;
use App\Services\OcorrenciaService;
use Illuminate\Http\Request;
use Illuminate\Validation\Rule;
class OcorrenciaController extends Controller
{
public function report(Request $request)
{
//codigo
}
public function store(OcorrenciaService $ocorrenciaService, Request $request)
{
$request->validate([
'report' => ['required', Rule::in(['Parada', 'Retorno', 'Observacao'])],
'setor' => ['required', 'exists:App\Models\Setor,cosset_codigo'],
'tipo' => ['exists:App\Models\TipoOcorrencia,tpocor_codigo'],
'data' => ['required'],
'hora' => ['required']
]);
$data = (object) $request->except('_token');
if($ocorrenciaService->saveOcorrencia($data)){
return to_route('home');
}
return to_route('setores.index');
}
}
O laravel diz que a classe OcorrenciaService não existe: Ja revirei todo o código, ja rodei o composer dump-autoload, ja mudei o nome da classe, o local, o namespace, mas nada resolve. Alguma dica????