erro ao acessar a index do projeto depois da refatoração da class Service.

Boa noite Carlos, conforme as alterações/refatoração do Service, que foram aplicadas nesta aula agora, quando chamo o metodo index da controller, retorna o erro: Call to a member function getAll() on null
Injetou a classe de serviço no construtor?
Compartilhe o código completo comigo, pelo GitHub

sim injetei a classe de serviço FornecedorService.php no construtor, FornecedorController.php, segue o codigo abaixo:
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use App\Http\Requests\StoreUpdateFornecedor;
use App\Models\Fornecedor;
use App\Services\FornecedorService;
use Illuminate\Http\Request;
class FornecedorController extends Controller
{
public function __construct(
protected FornecedorService $service
){}
public function index(Request $request)
{
$fornecedores = $this->service->getAll($request->filter);
return view('admin/fornecedores/index', compact('fornecedores'));
}

foi criado a pasta em app/Services/FornecedorService.php
FornecedorService.php...
namespace App\Services;
use stdClass;
class FornecedorService
{
protected $repository;
public function __construct()
{
}
public function getAll(string $filter = null): array <---Implicitly nullable parameters are deprecated.---> aqui deprecated
{
return $this->repository->getAll($filter);
}

resolvi o problema deprecated da classe FornecedorService.php
add ' ' no null

agora ao acessar: http://localhost:8989/fornecedores
dá esse erro na controller
App\Services\FornecedorService::getAll(): Argument #1 ($filter) must be of type string, null given,
called in /var/www/app/Http/Controllers/Admin/FornecedorController.php on line 22

Estou travado aqui Carlos não consigo procegir, peço encarecidamente ajuda, desde já obrigado.

prosseguir*
este é meu github esta tudo commit até agora: https://github.com/dluiscamargo/Daniel--laravel-10.git

Eu tambem senti a falta de vc rodar o projeto local para testar o nosso caso de uso com a implementação do Service e na proxima aula 20 já começa com DTO e tambem não roda o projeto, estou tento dificudade para prossegir e entender os patherners, desde já agradeço sua atenção, obrigado.

Use o operador ? para indicar que pode ser string, ou null
public function getAll(?string $filter): array
Ao chamar, pegue assim: getAll($request->filter ?? null)

public function getAll(?string $filter): array
FornecedorService.php

Ao chamar, pegue assim: getAll($request->filter ?? null)
FornecedorController.php
}

mesmo com as duas alterações segue o problema:
http://localhost:8989/fornecedores
retorno:

Call to a member function getAll() on null

Bom dia Carlos, alguma solução para o problema? segui arrisca as aulas, sera que é possivel eu aprender a implementar os patheners neste curso? vc já deve ter se deparado com problemas assim, fico no aguardo de um suporte para resolver o problema, desde já obrigado por sua atenção e consultoria Carlos.

Então deixa o default como '', getAll(string $filter = '')
E ao chamar, faz assim: service->getAll($request->filter ?? '')



olá boa tarde Carlos, obrigado pelo retorno....realizado as alterações sugeridas mas o problema infelizmente continua...
http://localhost:8989/fornecedores
Error: Call to a member function getAll() on null
App\Services\FornecedorService: 22
getAll
App\Http\Controllers\Admin\FornecedorController: 22
index

aqui
Infelizmente não estou conseguindo avançar com as alterações sugeridas, fico no aguardo do suporte e de uma possivel solução, desde
já obrigado

no banco de dados tem registros de fornecedores o crud que foi implementado a index teria que listar estes registros!

Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!