50 lines
1.8 KiB
PHP
50 lines
1.8 KiB
PHP
<?php
|
|
|
|
namespace App\Exports\Administracao;
|
|
|
|
use App\Models\Administracao\Funcionalidade;
|
|
use App\Models\Administracao\Modulo;
|
|
use App\Models\Cadastro\Estabelecimento\Infraestrutura;
|
|
use App\Models\Cadastro\Estabelecimento\Unidade;
|
|
use App\Models\Cadastro\SujeitoAtencao\Usuario;
|
|
use App\Services\Administracao\RelatorioAcessoFuncionalidadeService;
|
|
use Illuminate\Contracts\View\View;
|
|
use Maatwebsite\Excel\Concerns\FromView;
|
|
|
|
class RelatorioAcessoFuncionalidade implements FromView
|
|
{
|
|
private const TITLE = 'RELATÓRIO DE ACESSO À FUNCIONALIDADE';
|
|
private const VIEW = 'exportacoes.administracao.relatorio-acesso-funcionalidade';
|
|
|
|
public function view(): View
|
|
{
|
|
$itens = RelatorioAcessoFuncionalidadeService::index();
|
|
|
|
$usuario = Usuario::find(request()->usuario_id);
|
|
$unidade = Unidade::find(request()->unidade_id);
|
|
$infraestrutura = Infraestrutura::find(request()->infraestrutura_id);
|
|
$modulo = Modulo::find(request()->modulo_id);
|
|
$funcionalidade = Funcionalidade::find(request()->funcionalidade_id);
|
|
|
|
$data = [
|
|
'title' => self::TITLE,
|
|
'data' => [
|
|
'start' => request()->data['start'],
|
|
'end' => request()->data['end'],
|
|
],
|
|
'hora' => [
|
|
'start' => request()->hora['start'] ?? '-',
|
|
'end' => request()->hora['end'] ?? '-',
|
|
],
|
|
'usuario' => $usuario->nome ?? 'Todos',
|
|
'unidade' => $unidade->nome_fantasia ?? 'Todas',
|
|
'infraestrutura' => $infraestrutura->nome ?? 'Todos',
|
|
'modulo' => $modulo->nome ?? 'Todos',
|
|
'funcionalidade' => $funcionalidade->nome ?? 'Todas',
|
|
'dados' => $itens,
|
|
];
|
|
|
|
return view(self::VIEW, $data);
|
|
}
|
|
}
|