Hej,
Po zalogowaniu do mojej aplikacji kieruję usera na widok ( dashboard ), do którego każdy user ( rola, w sumie 4 role ) ma dostęp.
Chciałbym w tym miejscu prezentować różnego rodzaju informacje, np.:
- Statystyki jakieś ( ilości pewnych dokumentów o niepożądanych statusach )
- Wykresy
- etc..
i teraz dwa pytania:
-
Jak to powinno być ładnie zrobione. Chodzi mi o to, że owszem mogę w kontrolerze wywyłać 20 serwisowych metod, brać coś z repozytoriów etc... ale nie jestem pewien czy to "ładne" jest? z drugiej strony nie mam pomysłu jak inaczej
-
Jako, że mam różne role nie dla każdej roli chce prezentować te same dane. I nie chodzi tylko o to, że dana rola powinna widzieć tylko dane należące do niego ( admin all ), ale też dla admina parę dodatkowych informacji, dla jakiejś roli parę innych dodatkowych informacji, etc....
Czy może zrobić coś a'la
switch(rola)
{
case: 'rola_1':
$dane = serwis->metoda();
$daneInne = serwis->metoda();
$daneJeszczeInne = repo->metoda();
$widok = 'widok';
case: 'rola_2':
//
//
}
//
return view($widok, ['dane' = $dane]);