File manager - Edit - /var/www/html/portalHomolog/routes/admin.php
Back
<?php use App\Http\Controllers\AcaoSocial\CentrosDeReferencia\CentrosDeReferenciaController; use App\Http\Controllers\Accounts\AccountAddressController; use App\Http\Controllers\Accounts\AccountController; use App\Http\Controllers\Accounts\Adesoes\AdesoesController; use App\Http\Controllers\Accounts\AuthenticationController; use App\Http\Controllers\Accounts\Chamados\ChamadoPesquisaSatisfacaoController; use App\Http\Controllers\Accounts\Chamados\ChamadosArquivosController; use App\Http\Controllers\Accounts\Chamados\ChamadosController; use App\Http\Controllers\Accounts\Chamados\ChamadosMensagensController; use App\Http\Controllers\Accounts\ContasPublicasController; use App\Http\Controllers\Accounts\GovBrController; use App\Http\Controllers\Accounts\Cronogramas\CronogramasController; use App\Http\Controllers\Accounts\LinhasDoTempo\LinhasDoTempoController; use App\Http\Controllers\Accounts\NovaContaAngraController; use App\Http\Controllers\Accounts\ProfilesAddressController; use App\Http\Controllers\Accounts\ProfilesController; use App\Http\Controllers\Accounts\RecuperacaoDeSenhaController; use App\Http\Controllers\Admin\ThemeController; use App\Http\Controllers\ArquivosParquesJardinsController; use App\Http\Controllers\AtaController; use App\Http\Controllers\CartaServicos\CartaServicosController; use App\Http\Controllers\Comunicacao\BannersController; use App\Http\Controllers\Comunicacao\BoletinsController; use App\Http\Controllers\Comunicacao\NoticiasController; use App\Http\Controllers\ConselhosMunicipais\ArquivosController; use App\Http\Controllers\ConselhosMunicipais\ConselhosController; use App\Http\Controllers\ContaAngra\ChamadosTiController; use App\Http\Controllers\ContaAngra\ContaAngraController; use App\Http\Controllers\ContratoController; use App\Http\Controllers\CurriculoController; use App\Http\Controllers\DefesaCivil\BoletimMeteorologicoController; use App\Http\Controllers\EmpresasController; use App\Http\Controllers\Escolas\EscolasCrechesController; use App\Http\Controllers\GestorIdController; use App\Http\Controllers\HtmlController; use App\Http\Controllers\AtivosTi\AtivosTiController; use App\Http\Controllers\AtivosTi\EquipamentosController; use App\Http\Controllers\AtivosTi\LicencasController; use App\Http\Controllers\HtmlMenuLinkController; use App\Http\Controllers\Demandas\DemandaController; use App\Http\Controllers\Demandas\DemandaRelatorioController; use App\Http\Controllers\Demandas\DemandaTiController; use App\Http\Controllers\Demandas\GerenciarAssuntosController as DemandaGerenciarAssuntosController; use App\Http\Controllers\Demandas\GerenciarClientesController as DemandaGerenciarClientesController; use App\Http\Controllers\IndicadoresTi\GerenciarAssuntosController; use App\Http\Controllers\IndicadoresTi\GerenciarClientesController; use App\Http\Controllers\IndicadoresTi\IndicadoresTiController; use App\Http\Controllers\IndicadoresTi\IndicadoresTiRelatorioController; use App\Http\Controllers\LegislacaoAutoresController; use App\Http\Controllers\LegislacaoCadastrosController; use App\Http\Controllers\LegislacaoCargosController; use App\Http\Controllers\LegislacaoCategoriasController; use App\Http\Controllers\LegislacaoController; use App\Http\Controllers\LegislacaoPortariaController; use App\Http\Controllers\LegislacaoPortariaRetificacaoController; use App\Http\Controllers\LegislacaoRetificacaoController; use App\Http\Controllers\LegislacaoTiposController; use App\Http\Controllers\LicitacaoProcedimentoController; use App\Http\Controllers\LinkController; use App\Http\Controllers\Mobiangra\MobiangraController; use App\Http\Controllers\OcorrenciasPcaController; use App\Http\Controllers\Organizacao\UnidadeOrganizacionalController; use App\Http\Controllers\Paginas\AdminController; use App\Http\Controllers\ParquesJardinsController; use App\Http\Controllers\ParqueTecnologico\AreasController; use App\Http\Controllers\ParqueTecnologico\DecretosLeisController; use App\Http\Controllers\ParqueTecnologico\EditaisController; use App\Http\Controllers\ParqueTecnologico\FaqsController; use App\Http\Controllers\ParqueTecnologico\ParqueTecnologicoController; use App\Http\Controllers\ParqueTecnologico\StartupsController; use App\Http\Controllers\PhoneController; use App\Http\Controllers\PontoFocalController; use App\Http\Controllers\Sei\SeiAlertaController; use App\Http\Controllers\ProcessosController; use App\Http\Controllers\ProjetosProgramas\ProjetosProgramasController; use App\Http\Controllers\RepositorioController; use App\Http\Controllers\ReusableMenusController; use App\Http\Controllers\RHInformativoController; // use App\Http\Controllers\Saude\PessoasTrans\PessoasTransController; // módulo pessoas trans desativado use App\Http\Controllers\StrategicDashboardController; use App\Http\Controllers\StructureController; use App\Http\Controllers\TurisAngra\EmpresasDeTurismo\EmpresasTurismoController; use App\Http\Controllers\TurisAngra\Guias\GuiasController; use App\Http\Controllers\UnidadesDeSaudeController; use App\Http\Controllers\UrlController; use App\Http\Controllers\ValidacaoDocumentosController; use Illuminate\Support\Facades\Route; Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth']], function () { Route::get('painel', [AdminController::class, 'dashboard'])->name('dashboard'); Route::get('adesao/fibromialgia', [AdesoesController::class, 'fibromialgia'])->name('adesao.fibromialgia'); Route::get('adesao/credenciamento/musicos', [AdesoesController::class, 'credenciamentoMusicos'])->name('adesao.credenciamentoMusicos'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'cronogramas']], function () { Route::prefix('cronogramas')->name('cronogramas.')->group(function () { Route::get('/', [CronogramasController::class, 'dashboard'])->name('dashboard'); Route::get('/projetos/criar', [CronogramasController::class, 'createProject'])->name('projetos.create'); Route::post('/projetos', [CronogramasController::class, 'storeProject'])->name('projetos.store'); Route::get('/projetos/{project}', [CronogramasController::class, 'showProject'])->name('projetos.show'); Route::get('/projetos/{project}/editar', [CronogramasController::class, 'editProject'])->name('projetos.edit'); Route::put('/projetos/{project}', [CronogramasController::class, 'updateProject'])->name('projetos.update'); Route::delete('/projetos/{project}', [CronogramasController::class, 'destroyProject'])->name('projetos.destroy'); Route::delete('/projetos-arquivados', [CronogramasController::class, 'projectsBulkDestroy'])->name('projetos.arquivados.destroy'); Route::post('/projetos/{project}/arquivar', [CronogramasController::class, 'archiveProject'])->name('projetos.arquivar'); Route::post('/projetos/{project}/desarquivar', [CronogramasController::class, 'unarchiveProject'])->name('projetos.desarquivar'); Route::post('/projetos/{project}/encerrar', [CronogramasController::class, 'closeProject'])->name('projetos.encerrar'); Route::get('/projetos/{project}/exportar/pdf/{type?}', [CronogramasController::class, 'exportPdf'])->name('projetos.export.pdf'); Route::get('/projetos/{project}/exportar/excel', [CronogramasController::class, 'exportExcel'])->name('projetos.export.excel'); Route::get('/projetos/{project}/atividades/dados', [CronogramasController::class, 'activitiesData'])->name('atividades.data'); Route::post('/projetos/{project}/atividades', [CronogramasController::class, 'activityStore'])->name('atividades.store'); Route::get('/projetos/{project}/atividades/{activity}', [CronogramasController::class, 'activityDetails'])->name('atividades.show'); Route::put('/projetos/{project}/atividades/{activity}', [CronogramasController::class, 'activityUpdate'])->name('atividades.update'); Route::patch('/projetos/{project}/atividades/{activity}/inline', [CronogramasController::class, 'activityInline'])->name('atividades.inline'); Route::post('/projetos/{project}/atividades/{activity}/duplicar', [CronogramasController::class, 'activityDuplicate'])->name('atividades.duplicate'); Route::post('/projetos/{project}/atividades/{activity}/arquivar', [CronogramasController::class, 'activityArchive'])->name('atividades.arquivar'); Route::post('/projetos/{project}/atividades/{activity}/restaurar', [CronogramasController::class, 'activityRestore'])->name('atividades.restaurar'); Route::delete('/projetos/{project}/atividades/{activity}', [CronogramasController::class, 'activityDestroy'])->name('atividades.destroy'); Route::delete('/projetos/{project}/atividades-arquivadas', [CronogramasController::class, 'activitiesBulkDestroy'])->name('atividades.arquivadas.destroy'); Route::post('/projetos/{project}/atividades/reordenar', [CronogramasController::class, 'activityReorder'])->name('atividades.reorder'); Route::post('/projetos/{project}/atividades/{activity}/comentarios', [CronogramasController::class, 'commentStore'])->name('comentarios.store'); Route::delete('/projetos/{project}/atividades/{activity}/comentarios/{comment}', [CronogramasController::class, 'commentDestroy'])->name('comentarios.destroy'); Route::post('/projetos/{project}/atividades/{activity}/anexos', [CronogramasController::class, 'attachmentStore'])->name('atividades.attachments'); Route::get('/projetos/{project}/atividades/{activity}/anexos/{attachment}/baixar', [CronogramasController::class, 'attachmentDownload'])->name('atividades.attachments.download'); Route::delete('/projetos/{project}/atividades/{activity}/anexos/{attachment}', [CronogramasController::class, 'attachmentDestroy'])->name('atividades.attachments.destroy'); }); }); Route::group(['prefix' => 'conta-angra', 'as' => 'admin.', 'middleware' => ['auth']], function () { Route::get('/', [ContaAngraController::class, 'index'])->name('contaAngra.index'); Route::get('perfil', [ProfilesController::class, 'perfil'])->name('profile'); Route::post('perfil', [ProfilesController::class, 'perfilUpdate'])->name('profile.update'); Route::get('senha', [ProfilesController::class, 'senha'])->name('password'); Route::post('senha', [ProfilesController::class, 'senhaUpdate'])->name('password.update'); Route::resource('enderecos', ProfilesAddressController::class)->names('perfilEnderecos'); Route::post('enderecos/{endereco}/fixar', [ProfilesAddressController::class, 'fixar']) ->name('perfilEnderecos.fixar'); Route::post('enderecos/{endereco}/status', [ProfilesAddressController::class, 'status']) ->name('perfilEnderecos.status'); Route::get('foto', [ProfilesController::class, 'foto'])->name('photo'); Route::post('foto', [ProfilesController::class, 'fotoUpdate'])->name('photo.update'); Route::resource('chamados', ChamadosController::class)->names('contaAngra.chamados'); Route::get('chamados/{chamado}/solicitacao', [ChamadosMensagensController::class, 'index']) ->name('contaAngra.chamados.solicitacao'); Route::post('chamados/{chamado}/solicitacao', [ChamadosMensagensController::class, 'update']) ->name('contaAngra.chamados.solicitacaoUpdate'); Route::get('chamados/{chamado}/pesquisa-satisfacao', [ChamadoPesquisaSatisfacaoController::class, 'show']) ->name('contaAngra.chamados.pesquisa-satisfacao.show'); Route::post('chamados/{chamado}/pesquisa-satisfacao', [ChamadoPesquisaSatisfacaoController::class, 'store']) ->name('contaAngra.chamados.pesquisa-satisfacao.store'); Route::get('chamados/{chamado}/arquivos/{mensagem}/update', [ChamadosArquivosController::class, 'index']) ->name('contaAngra.chamados.arquivos'); Route::post('chamados/{chamado}/arquivos/{mensagem}/update', [ChamadosArquivosController::class, 'update']) ->name('contaAngra.chamados.arquivosUpdate'); Route::post('chamados/{chamado}/nova/mensagem', [ChamadosController::class, 'novaMensagem']) ->name('contaAngra.chamados.novaMensagem'); Route::get('chamados-ti', [ChamadosTiController::class, 'index'])->name('contaAngra.chamadosTi.index'); Route::get('chamados-ti/abrir', [ChamadosTiController::class, 'create'])->name('contaAngra.chamadosTi.create'); Route::post('chamados-ti', [ChamadosTiController::class, 'store'])->name('contaAngra.chamadosTi.store'); Route::get('chamados-ti/{chamadoTi}', [ChamadosTiController::class, 'show'])->name('contaAngra.chamadosTi.show'); Route::post('chamados-ti/{chamadoTi}/interagir', [ChamadosTiController::class, 'interagir'])->name('contaAngra.chamadosTi.interagir'); Route::get('chamados-ti/{chamadoTi}/anexos/{anexo}', [ChamadosTiController::class, 'servirAnexo'])->name('contaAngra.chamadosTi.anexo'); Route::middleware(['linhasDoTempo'])->prefix('linhas-do-tempo')->name('contaAngra.linhasDoTempo.')->group(function () { Route::get('/', [LinhasDoTempoController::class, 'index'])->name('index'); Route::get('/criar', [LinhasDoTempoController::class, 'create'])->name('create'); Route::post('/', [LinhasDoTempoController::class, 'store'])->name('store'); Route::post('/rascunhos/criacao-linha', [LinhasDoTempoController::class, 'draftUpsertNewTimeline'])->name('draft.createTimeline'); Route::get('/rascunhos/criacao-linha', [LinhasDoTempoController::class, 'draftShowNewTimeline'])->name('draft.createTimeline.show'); Route::delete('/rascunhos/criacao-linha', [LinhasDoTempoController::class, 'draftDestroyNewTimeline'])->name('draft.createTimeline.destroy'); Route::get('/{timeline}/exportar/pdf', [LinhasDoTempoController::class, 'exportPdf'])->name('export.pdf'); Route::get('/{timeline}/exportar/excel', [LinhasDoTempoController::class, 'exportExcel'])->name('export.excel'); Route::post('/{timeline}/rascunho', [LinhasDoTempoController::class, 'draftUpsert'])->name('draft.upsert'); Route::get('/{timeline}/rascunho', [LinhasDoTempoController::class, 'draftShow'])->name('draft.show'); Route::delete('/{timeline}/rascunho', [LinhasDoTempoController::class, 'draftDestroy'])->name('draft.destroy'); Route::post('/{timeline}/anexos', [LinhasDoTempoController::class, 'attachmentStoreTimeline'])->name('attachments.timeline'); Route::get('/{timeline}/anexos/{attachment}/baixar', [LinhasDoTempoController::class, 'attachmentDownload'])->name('attachments.download'); Route::get('/{timeline}/editar', [LinhasDoTempoController::class, 'edit'])->name('edit'); Route::put('/{timeline}', [LinhasDoTempoController::class, 'update'])->name('update'); Route::delete('/{timeline}', [LinhasDoTempoController::class, 'destroy'])->name('destroy'); Route::post('/{timeline}/arquivar', [LinhasDoTempoController::class, 'arquivar'])->name('arquivar'); Route::post('/{timeline}/pontos/rascunho', [LinhasDoTempoController::class, 'draftUpsertNewPoint'])->name('pontos.draft.create'); Route::get('/{timeline}/pontos/rascunho', [LinhasDoTempoController::class, 'draftShowNewPoint'])->name('pontos.draft.create.show'); Route::delete('/{timeline}/pontos/rascunho', [LinhasDoTempoController::class, 'draftDestroyNewPoint'])->name('pontos.draft.create.destroy'); Route::post('/{timeline}/pontos', [LinhasDoTempoController::class, 'pointStore'])->name('pontos.store'); Route::put('/{timeline}/pontos/{historicalPoint}', [LinhasDoTempoController::class, 'pointUpdate'])->name('pontos.update'); Route::delete('/{timeline}/pontos/{historicalPoint}', [LinhasDoTempoController::class, 'pointDestroy'])->name('pontos.destroy'); Route::post('/{timeline}/pontos/{historicalPoint}/rascunho', [LinhasDoTempoController::class, 'draftUpsertPoint'])->name('pontos.draft.upsert'); Route::get('/{timeline}/pontos/{historicalPoint}/rascunho', [LinhasDoTempoController::class, 'draftShowPoint'])->name('pontos.draft.show'); Route::delete('/{timeline}/pontos/{historicalPoint}/rascunho', [LinhasDoTempoController::class, 'draftDestroyPoint'])->name('pontos.draft.destroy'); Route::post('/{timeline}/pontos/{historicalPoint}/anexos', [LinhasDoTempoController::class, 'attachmentStorePoint'])->name('pontos.attachments'); Route::post('/{timeline}/pontos/{historicalPoint}/notas', [LinhasDoTempoController::class, 'noteStore'])->name('notas.store'); Route::put('/{timeline}/pontos/{historicalPoint}/notas/{note}', [LinhasDoTempoController::class, 'noteUpdate'])->name('notas.update'); Route::delete('/{timeline}/pontos/{historicalPoint}/notas/{note}', [LinhasDoTempoController::class, 'noteDestroy'])->name('notas.destroy'); Route::get('/{timeline}', [LinhasDoTempoController::class, 'show'])->name('show'); }); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'usuarios']], function () { Route::resource('users', AccountController::class)->names('contas'); Route::post('users/status/{user}', [AccountController::class, 'status'])->name('contas.status'); Route::resource('users.enderecos', AccountAddressController::class)->names('contas.enderecos'); Route::post('users/{user}/enderecos/{endereco}/status', [AccountAddressController::class, 'status'])->name('contas.enderecos.status'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'banners']], function () { Route::post('banners/status/{banner}', [BannersController::class, 'status'])->name('banners.status'); Route::resource('banners', BannersController::class)->names('banners'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'guias']], function () { Route::match(['get', 'post'], 'guias/verify', [GuiasController::class, 'verify'])->name('guias.verify'); Route::post('guias/status/{guia}', [GuiasController::class, 'status'])->name('guias.status'); Route::resource('guias', GuiasController::class)->names('guias'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'boletins']], function () { Route::resource('boletins', BoletinsController::class) ->names('boletins') ->parameters(['boletins' => 'boletim']); Route::post('boletins/status/{boletim}', [BoletinsController::class, 'status'])->name('boletins.status'); Route::post('boletins/indexacao/{boletim}', [BoletinsController::class, 'indexacao'])->name('boletins.indexacao'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'noticias']], function () { Route::resource('noticias', NoticiasController::class)->names('noticias')->except(['news', 'details']); Route::post('noticias/status/{noticia}', [NoticiasController::class, 'status'])->name('noticias.status'); Route::post('noticias/fixar/{noticia}', [NoticiasController::class, 'fixar'])->name('noticias.fix'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'empresasDeTurismo']], function () { Route::get('empresas-de-turismo/{empresaTurismo}/enderecos/{endereco}/edit', [EmpresasTurismoController::class, 'endereco']) ->name('empresasDeTurismo.endereco'); Route::post('empresas-de-turismo/{empresaTurismo}/enderecos/{endereco}/edit', [EmpresasTurismoController::class, 'enderecoUpdate']) ->name('empresasDeTurismo.enderecoUpdate'); Route::get('empresas-de-turismo/{empresaTurismo}/proprietario/{user}/edit', [EmpresasTurismoController::class, 'proprietario']) ->name('empresasDeTurismo.proprietario'); Route::post('empresas-de-turismo/{empresaTurismo}/proprietario/{user}/edit', [EmpresasTurismoController::class, 'proprietarioUpdate']) ->name('empresasDeTurismo.proprietarioUpdate'); Route::get('empresas-de-turismo/{empresaTurismo}/preposto/edit', [EmpresasTurismoController::class, 'preposto']) ->name('empresasDeTurismo.preposto'); Route::post('empresas-de-turismo/{empresaTurismo}/preposto/edit', [EmpresasTurismoController::class, 'prepostoUpdate']) ->name('empresasDeTurismo.prepostoUpdate'); Route::get('empresas-de-turismo/{empresaTurismo}/clipboard/edit', [EmpresasTurismoController::class, 'clipboard']) ->name('empresasDeTurismo.clipboard'); Route::post('empresas-de-turismo/{empresaTurismo}/clipboard/edit', [EmpresasTurismoController::class, 'clipboardUpdate']) ->name('empresasDeTurismo.clipboardUpdate'); Route::post('empresas-de-turismo/{empresaTurismo}/preposto/{user}/remove', [EmpresasTurismoController::class, 'prepostoRemove']) ->name('empresasDeTurismo.prepostoRemove'); Route::get('empresas-de-turismo/{empresaTurismo}/ficha-comprovacao/pdf', [EmpresasTurismoController::class, 'gerarFichaComprovacaoPdf']) ->name('empresasDeTurismo.fichaComprovacaoPdf'); Route::match(['get', 'post'], 'empresas-de-turismo/verify', [EmpresasTurismoController::class, 'verify']) ->name('empresasDeTurismo.verify'); Route::post('empresas-de-turismo/status/{empresaTurismo}', [EmpresasTurismoController::class, 'status']) ->name('empresasDeTurismo.status'); Route::resource('empresas-de-turismo', EmpresasTurismoController::class) ->names('empresasDeTurismo') ->parameters([ 'empresas-de-turismo' => 'empresaTurismo', ]); Route::post('empresas-de-turismo/{empresaTurismo}/embarcacoes/{embarcacao}/status', [EmpresasTurismoController::class, 'embarcacoesStatus']) ->name('embarcacoes.status'); Route::get('empresas-de-turismo/{empresaTurismo}/embarcacoes', [EmpresasTurismoController::class, 'embarcacoesIndex']) ->name('embarcacoes.index'); Route::get('empresas-de-turismo/{empresaTurismo}/embarcacoes/create', [EmpresasTurismoController::class, 'embarcacoesCreate']) ->name('embarcacoes.create'); Route::post('empresas-de-turismo/{empresaTurismo}/embarcacoes', [EmpresasTurismoController::class, 'embarcacoesStore']) ->name('embarcacoes.store'); Route::get('empresas-de-turismo/{empresaTurismo}/embarcacoes/{embarcacao}/edit', [EmpresasTurismoController::class, 'embarcacoesEdit']) ->name('embarcacoes.edit'); Route::put('empresas-de-turismo/{empresaTurismo}/embarcacoes/{embarcacao}', [EmpresasTurismoController::class, 'embarcacoesUpdate']) ->name('embarcacoes.update'); Route::delete('empresas-de-turismo/{empresaTurismo}/embarcacoes/{embarcacao}', [EmpresasTurismoController::class, 'embarcacoesDestroy']) ->name('embarcacoes.destroy'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'empresas']], function () { Route::match(['get', 'post'], 'empresas/verify', [EmpresasController::class, 'verify'])->name('empresas.verify'); Route::post('empresas/status/{empresa}', [EmpresasController::class, 'status'])->name('empresas.status'); Route::resource('empresas', EmpresasController::class)->except(['show'])->names('empresas'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'centrosReferencia']], function () { Route::post('centros/status/{centro}', [CentrosDeReferenciaController::class, 'status'])->name('acaoSocial.centrosDeReferencia.status'); Route::resource('centros', CentrosDeReferenciaController::class)->names('acaoSocial.centrosDeReferencia'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => 'auth'], function () { Route::get('reset-password', [AuthenticationController::class, 'resetPassword'])->name('resetPassword'); Route::post('reset-password', [AuthenticationController::class, 'resetPasswordUpdate'])->name('resetPasswordUpdate'); Route::post('unidades-de-saude/status/{unidade}', [UnidadesDeSaudeController::class, 'status'])->name('unidadesSaude.status'); Route::resource('unidades-de-saude', UnidadesDeSaudeController::class) ->names('unidadesSaude') ->parameters([ 'unidades-de-saude' => 'unidade', ]); Route::post('informativos-recursos-humanos/status/{rHInformativo}', [RHInformativoController::class, 'status'])->name('informativos_recursos_humanos.status'); Route::resource('informativos-recursos-humanos', RHInformativoController::class) ->names('informativos_recursos_humanos') ->parameters([ 'informativos-recursos-humanos' => 'rHInformativo', ]); Route::post('parques-e-jardins/status/{parque}', [ParquesJardinsController::class, 'status'])->name('parquesJardins.status'); Route::resource('parques-e-jardins', ParquesJardinsController::class)->names('parquesJardins') ->parameters([ 'parques-e-jardins' => 'parque', ]); Route::post('parques-e-jardins/{parque}/status/{arquivo}', [ArquivosParquesJardinsController::class, 'status'])->name('parquesJardins.arquivos.status'); Route::post('parques-e-jardins/{parque}/indexacao/{arquivo}', [ArquivosParquesJardinsController::class, 'indexacao'])->name('parquesJardins.arquivos.indexacao'); Route::resource('parques-e-jardins.arquivos', ArquivosParquesJardinsController::class) ->names('parquesJardins.arquivos') ->parameters([ 'parques-e-jardins' => 'parque', ]); Route::post('conselhos/status/{conselho}', [ConselhosController::class, 'status'])->name('conselhosMunicipais.conselhos.status'); Route::resource('conselhos', ConselhosController::class)->names('conselhosMunicipais.conselhos'); Route::post('conselhos/{conselho}/status/{arquivo}', [ArquivosController::class, 'status'])->name('conselhosMunicipais.arquivos.status'); Route::post('conselhos/{conselho}/indexacao/{arquivo}', [ArquivosController::class, 'indexacao'])->name('conselhosMunicipais.arquivos.indexacao'); Route::resource('conselhos.arquivos', ArquivosController::class)->names('conselhosMunicipais.arquivos'); Route::post('escolas/status/{escola}', [EscolasCrechesController::class, 'status'])->name('escolas.status'); Route::resource('escolas', EscolasCrechesController::class)->names('escolas'); Route::resource('urls', UrlController::class)->names('urls'); Route::post('urls/{url}/toggle', [UrlController::class, 'toggle'])->name('urls.toggle'); Route::resource('boletim-meteorologico', BoletimMeteorologicoController::class)->names('boletim-meteorologico'); Route::get('curriculos', [CurriculoController::class, 'index'])->name('curriculos.index'); Route::get('curriculos/acompanhamento/{id}', [CurriculoController::class, 'acompanhamentoCurriculo'])->name('curriculos.acompanhamentoCurriculo'); Route::post('curriculos/acompanhamento/store', [CurriculoController::class, 'store'])->name('curriculos.acompanhamento.store'); Route::put('curriculos/acompanhamento/update/{id}', [CurriculoController::class, 'update'])->name('curriculos.acompanhamento.update'); Route::get('curriculos/gerarCurriculo/{id}', [CurriculoController::class, 'gerarCurriculo'])->name('curriculos.gerarCurriculo'); Route::get('curriculos/gerarRelatorio', [CurriculoController::class, 'gerarRelatorio'])->name('curriculos.gerarRelatorio'); Route::get('curriculos/listaCadastros', [CurriculoController::class, 'listaCadastros'])->name('curriculos.listaCadastros'); Route::get('curriculos/edit/{tipo}/{id}', [CurriculoController::class, 'edit'])->name('curriculos.edit'); Route::put('curriculos/updateCadastro/{tipo}/{id}', [CurriculoController::class, 'updateCadastro'])->name('curriculos.updateCadastro'); Route::get('curriculos/logs', [CurriculoController::class, 'logs'])->name('curriculos.logs'); Route::get('gerador-id', [GestorIdController::class, 'index'])->name('gerador-id.index'); Route::get('gerador-id/create', [GestorIdController::class, 'create'])->name('gerador-id.create'); Route::post('gerador-id/store', [GestorIdController::class, 'store'])->name('gerador-id.store'); Route::put('/gerador-id/{id}', [GestorIdController::class, 'update'])->name('gerador-id.update'); Route::patch('gerador-id/toggleStatus/{id}', [GestorIdController::class, 'toggleStatus'])->name('gerador-id.toggleStatus'); Route::get('gerador-id/logs/usuarios', [GestorIdController::class, 'logsUsuario'])->name('gerador-id.logs.logsUsuario'); Route::get('ocorrencias-pca', [OcorrenciasPcaController::class, 'index'])->name('ocorrencias-pca.index'); Route::get('ocorrencias-pca/acompanhamento', [OcorrenciasPcaController::class, 'show'])->name('ocorrencias-pca.acompanhamento'); Route::get('ocorrencias-pca/fichaUsuario/{id}', [OcorrenciasPcaController::class, 'fichaUsuario']) ->name('ocorrencias-pca.fichaUsuario'); Route::get('ocorrencias-pca/pdf/{id}', [OcorrenciasPcaController::class, 'gerarFichaPDF']) ->name('ocorrencias-pca.gerarPdf'); Route::resource('processos', ProcessosController::class)->names('processos'); Route::post('processos/status/{processo}', [ProcessosController::class, 'status'])->name('processos.status'); Route::match(['get', 'post'], 'processos/acompanhamento/{processo}', [ProcessosController::class, 'acompanhamento'])->name('processos.acompanhamento'); Route::match(['post', 'patch'], 'htmls/preview', [HtmlController::class, 'preview'])->name('htmls.preview'); Route::resource('htmls', HtmlController::class)->names('htmls'); Route::post('htmls/visibility/{html}', [HtmlController::class, 'toggleVisibility'])->name('htmls.visibility'); Route::post('htmls/status/{html}', [HtmlController::class, 'toggleStatus'])->name('htmls.status'); Route::post('htmls/custom-menu/{html}', [HtmlController::class, 'toggleCustomMenu'])->name('htmls.customMenu'); Route::match(['get', 'post'], 'htmls/{html}/menu', [HtmlMenuLinkController::class, 'index'])->name('htmls.menu.index'); Route::match(['get', 'post'], 'htmls/{html}/menu/update/{id}', [HtmlMenuLinkController::class, 'update'])->name('htmls.menu.update'); Route::match(['get', 'delete'], 'htmls/{html}/menu/destroy/{id}', [HtmlMenuLinkController::class, 'destroy'])->name('htmls.menu.destroy'); // Gerenciador de Menus Reutilizáveis (Portal) Route::resource('menus-reutilizaveis', ReusableMenusController::class) ->names('menusReutilizaveis') ->parameters(['menus-reutilizaveis' => 'menu']); Route::post('menus-reutilizaveis/status/{menu}', [ReusableMenusController::class, 'toggleStatus']) ->name('menusReutilizaveis.status'); Route::post('menus-reutilizaveis/{menu}/links', [ReusableMenusController::class, 'storeLink']) ->name('menusReutilizaveis.links.store'); Route::post('menus-reutilizaveis/{menu}/links/update/{link}', [ReusableMenusController::class, 'updateLink']) ->name('menusReutilizaveis.links.update'); Route::delete('menus-reutilizaveis/{menu}/links/destroy/{link}', [ReusableMenusController::class, 'destroyLink']) ->name('menusReutilizaveis.links.destroy'); Route::post('repositorio/status/{repositorio}', [RepositorioController::class, 'status'])->name('repositorio.status'); Route::resource('repositorio', RepositorioController::class)->names('repositorio'); Route::post('secretarias/status/{structure}', [StructureController::class, 'status'])->name('secretarias.status'); Route::resource('secretarias', StructureController::class)->parameters([ 'secretarias' => 'structure', ]); Route::match(['get', 'post'], 'telefones/{structure_id}', [PhoneController::class, 'index'])->name('telefones.index'); Route::match(['get', 'post'], 'telefones/{structure_id}/update/{id}', [PhoneController::class, 'update'])->name('telefones.update'); Route::match(['get', 'delete'], 'telefones/{structure_id}/destroy/{id}', [PhoneController::class, 'destroy'])->name('telefones.destroy'); Route::match(['get', 'post'], 'links/{structure_id}', [LinkController::class, 'index'])->name('links.index'); Route::match(['get', 'post'], 'links/{structure_id}/update/{id}', [LinkController::class, 'update'])->name('links.update'); Route::match(['get', 'delete'], 'links/{structure_id}/destroy/{id}', [LinkController::class, 'destroy'])->name('links.destroy'); Route::post('validacao-de-documentos/check-user/{cpf?}', [ValidacaoDocumentosController::class, 'checkUser'])->name('validacaoDocumentos.checkUser'); Route::post('validacao-de-documentos/status/{validacao}', [ValidacaoDocumentosController::class, 'status'])->name('validacaoDocumentos.status'); Route::resource('validacao-de-documentos', ValidacaoDocumentosController::class) ->names('validacaoDocumentos') ->parameters([ 'validacao-de-documentos' => 'validacao', ]); // Gerenciador de Temas (Portal + Admin) Route::resource('temas', ThemeController::class) ->names('temas') ->parameters(['temas' => 'tema']); Route::post('temas/{tema}/activate', [ThemeController::class, 'activate']) ->name('temas.activate'); Route::post('temas/{tema}/reset', [ThemeController::class, 'resetTheme']) ->name('temas.resetTheme'); Route::post('temas/reset-to-default', [ThemeController::class, 'resetToDefault']) ->name('temas.resetToDefault'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'pontosFocais']], function () { Route::resource('pontos-focais', PontoFocalController::class) ->names('pontosFocais') ->parameters(['pontos-focais' => 'pontoFocal']); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'seiAlerta']], function () { Route::get('alerta-sei', [SeiAlertaController::class, 'index'])->name('seiAlertas.index'); Route::put('alerta-sei', [SeiAlertaController::class, 'update'])->name('seiAlertas.update'); Route::post('alerta-sei/status', [SeiAlertaController::class, 'status'])->name('seiAlertas.status'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'dashboardEstrategico']], function () { Route::get('dashboard-estrategico', [StrategicDashboardController::class, 'index'])->name('dashboardEstrategico.index'); Route::get('dashboard-estrategico/ppp/{id}/export/{type}', [StrategicDashboardController::class, 'exportPpp'])->name('dashboardEstrategico.exportPpp'); Route::get('dashboard-estrategico/projetos-e-programas', [ProjetosProgramasController::class, 'painelEstrategico']) ->name('dashboardEstrategico.projetosProgramas'); Route::post('dashboard-estrategico/projetos-e-programas/prioridade/toggle/{projeto}', [ProjetosProgramasController::class, 'prioridadeToggleDashboard']) ->name('dashboardEstrategico.projetosProgramas.prioridade.toggle'); Route::post('dashboard-estrategico/projetos-e-programas/prioridades/ordenar', [ProjetosProgramasController::class, 'prioridadesOrdenarDashboard']) ->name('dashboardEstrategico.projetosProgramas.prioridades.ordenar'); Route::get('dashboard-estrategico/projetos-e-programas/prioridades/candidatos', [ProjetosProgramasController::class, 'prioridadesCandidatosDashboard']) ->name('dashboardEstrategico.projetosProgramas.prioridades.candidatos'); Route::post('dashboard-estrategico/projetos-e-programas/prioridades/adicionar', [ProjetosProgramasController::class, 'prioridadesAdicionarDashboard']) ->name('dashboardEstrategico.projetosProgramas.prioridades.adicionar'); Route::get('dashboard-estrategico/projetos-e-programas/relatorio', [ProjetosProgramasController::class, 'relatorioDashboard']) ->name('dashboardEstrategico.projetosProgramas.relatorio'); Route::get('dashboard-estrategico/projetos-e-programas/relatorio/imprimir', [ProjetosProgramasController::class, 'relatorioDashboardImprimir']) ->name('dashboardEstrategico.projetosProgramas.relatorio.imprimir'); Route::get('dashboard-estrategico/projetos-e-programas/mapa/dados', [ProjetosProgramasController::class, 'mapaDadosDashboard']) ->name('dashboardEstrategico.projetosProgramas.mapa.dados'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'projetosProgramas']], function () { Route::get('projetos-e-programas', [ProjetosProgramasController::class, 'index'])->name('projetosProgramas.index'); Route::get('projetos-e-programas/create', [ProjetosProgramasController::class, 'create'])->name('projetosProgramas.create'); Route::get('projetos-e-programas/imprimir/lista', [ProjetosProgramasController::class, 'imprimirLista'])->name('projetosProgramas.imprimirLista'); Route::get('projetos-e-programas/relatorio', [ProjetosProgramasController::class, 'relatorio'])->name('projetosProgramas.relatorio'); Route::get('projetos-e-programas/relatorio/imprimir', [ProjetosProgramasController::class, 'relatorioImprimir'])->name('projetosProgramas.relatorio.imprimir'); Route::get('projetos-e-programas/mapa/dados', [ProjetosProgramasController::class, 'mapaDados'])->name('projetosProgramas.mapa.dados'); Route::get('projetos-e-programas/{projeto}/visualizar', [ProjetosProgramasController::class, 'visualizar'])->name('projetosProgramas.visualizar'); Route::get('projetos-e-programas/{projeto}/identificacao', [ProjetosProgramasController::class, 'identificacao'])->name('projetosProgramas.identificacao'); Route::post('projetos-e-programas/identificacao', [ProjetosProgramasController::class, 'storeIdentificacao'])->name('projetosProgramas.identificacao.store'); Route::get('projetos-e-programas/{projeto}/cronograma', [ProjetosProgramasController::class, 'cronograma'])->name('projetosProgramas.cronograma'); Route::post('projetos-e-programas/{projeto}/cronograma', [ProjetosProgramasController::class, 'storeCronograma'])->name('projetosProgramas.cronograma.store'); Route::get('projetos-e-programas/{projeto}/historicos-andamento', [ProjetosProgramasController::class, 'historicosAndamentoList'])->name('projetosProgramas.historicosAndamento.list'); Route::post('projetos-e-programas/{projeto}/historicos-andamento', [ProjetosProgramasController::class, 'storeHistoricoAndamento'])->name('projetosProgramas.historicosAndamento.store'); Route::get('projetos-e-programas/{projeto}/areas', [ProjetosProgramasController::class, 'areas'])->name('projetosProgramas.areas'); Route::post('projetos-e-programas/{projeto}/areas', [ProjetosProgramasController::class, 'storeAreas'])->name('projetosProgramas.areas.store'); Route::get('projetos-e-programas/{projeto}/contato', [ProjetosProgramasController::class, 'contato'])->name('projetosProgramas.contato'); Route::post('projetos-e-programas/{projeto}/contato', [ProjetosProgramasController::class, 'storeContato'])->name('projetosProgramas.contato.store'); Route::get('projetos-e-programas/{projeto}/dados', [ProjetosProgramasController::class, 'dados'])->name('projetosProgramas.dados'); Route::post('projetos-e-programas/{projeto}/dados', [ProjetosProgramasController::class, 'storeDados'])->name('projetosProgramas.dados.store'); Route::get('projetos-e-programas/{projeto}/investimento', [ProjetosProgramasController::class, 'investimento'])->name('projetosProgramas.investimento'); Route::post('projetos-e-programas/{projeto}/investimento', [ProjetosProgramasController::class, 'storeInvestimento'])->name('projetosProgramas.investimento.store'); Route::get('projetos-e-programas/{projeto}/imprimir', [ProjetosProgramasController::class, 'imprimir'])->name('projetosProgramas.imprimir'); Route::get('projetos-e-programas/{projeto}/anexos/view', [ProjetosProgramasController::class, 'anexosView'])->name('projetosProgramas.anexos.view'); Route::post('projetos-e-programas/{projeto}/anexos/store', [ProjetosProgramasController::class, 'storeAnexos'])->name('projetosProgramas.anexos.store'); Route::get( 'projetos-e-programas/{projeto}/anexos', [ProjetosProgramasController::class, 'anexos'] )->name('projetosProgramas.anexos'); Route::post('projetos-e-programas/{projeto}/upload', [ProjetosProgramasController::class, 'upload'])->name('projetosProgramas.upload'); Route::get('projetos-e-programas/{projeto}/anexos/{anexo}/download', [ProjetosProgramasController::class, 'downloadAnexo'])->name('projetosProgramas.anexos.download'); Route::post('projetos-e-programas/{projeto}/anexos/{anexo}/remover', [ProjetosProgramasController::class, 'removeAnexo'])->name('projetosProgramas.anexos.remove'); Route::get('projetos-e-programas/exclusao-em-massa', [ProjetosProgramasController::class, 'exclusaoEmMassa']) ->name('projetosProgramas.exclusaoEmMassa'); Route::post('projetos-e-programas/excluir-em-massa', [ProjetosProgramasController::class, 'destroyMany']) ->name('projetosProgramas.destroyMany'); Route::delete('projetos-e-programas/{projeto}', [ProjetosProgramasController::class, 'destroy'])->name('projetosProgramas.destroy'); // Prioridades (drag and drop / toggle) Route::post('projetos-e-programas/prioridades/ordenar', [ProjetosProgramasController::class, 'prioridadesOrdenar']) ->name('projetosProgramas.prioridades.ordenar'); Route::get('projetos-e-programas/prioridades/candidatos', [ProjetosProgramasController::class, 'prioridadesCandidatos']) ->name('projetosProgramas.prioridades.candidatos'); Route::post('projetos-e-programas/prioridades/adicionar', [ProjetosProgramasController::class, 'prioridadesAdicionar']) ->name('projetosProgramas.prioridades.adicionar'); Route::post('projetos-e-programas/{projeto}/prioridade/toggle', [ProjetosProgramasController::class, 'prioridadeToggle']) ->name('projetosProgramas.prioridade.toggle'); // CRUD: Programas Route::get('projetos-e-programas/programas', [\App\Http\Controllers\ProjetosProgramas\ProgramasController::class, 'index']) ->name('projetosProgramas.programas.index'); Route::get('projetos-e-programas/programas/create', [\App\Http\Controllers\ProjetosProgramas\ProgramasController::class, 'create']) ->name('projetosProgramas.programas.create'); Route::post('projetos-e-programas/programas', [\App\Http\Controllers\ProjetosProgramas\ProgramasController::class, 'store']) ->name('projetosProgramas.programas.store'); Route::get('projetos-e-programas/programas/{programa}/edit', [\App\Http\Controllers\ProjetosProgramas\ProgramasController::class, 'edit']) ->name('projetosProgramas.programas.edit'); Route::put('projetos-e-programas/programas/{programa}', [\App\Http\Controllers\ProjetosProgramas\ProgramasController::class, 'update']) ->name('projetosProgramas.programas.update'); Route::delete('projetos-e-programas/programas/{programa}', [\App\Http\Controllers\ProjetosProgramas\ProgramasController::class, 'destroy']) ->name('projetosProgramas.programas.destroy'); // CRUD: Objetivos Route::get('projetos-e-programas/objetivos', [\App\Http\Controllers\ProjetosProgramas\ObjetivosController::class, 'index']) ->name('projetosProgramas.objetivos.index'); Route::get('projetos-e-programas/objetivos/create', [\App\Http\Controllers\ProjetosProgramas\ObjetivosController::class, 'create']) ->name('projetosProgramas.objetivos.create'); Route::post('projetos-e-programas/objetivos', [\App\Http\Controllers\ProjetosProgramas\ObjetivosController::class, 'store']) ->name('projetosProgramas.objetivos.store'); Route::get('projetos-e-programas/objetivos/{objetivo}/edit', [\App\Http\Controllers\ProjetosProgramas\ObjetivosController::class, 'edit']) ->name('projetosProgramas.objetivos.edit'); Route::put('projetos-e-programas/objetivos/{objetivo}', [\App\Http\Controllers\ProjetosProgramas\ObjetivosController::class, 'update']) ->name('projetosProgramas.objetivos.update'); Route::delete('projetos-e-programas/objetivos/{objetivo}', [\App\Http\Controllers\ProjetosProgramas\ObjetivosController::class, 'destroy']) ->name('projetosProgramas.objetivos.destroy'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth']], function () { Route::post('eventos/status/{evento}', [\App\Http\Controllers\Admin\EventosController::class, 'status'])->name('eventos.status'); Route::resource('eventos', \App\Http\Controllers\Admin\EventosController::class)->names('eventos'); // PPPs Route::post('ppps/status/{ppp}', [\App\Http\Controllers\Admin\PppController::class, 'status'])->name('ppps.status'); Route::get('ppps/export/all', [\App\Http\Controllers\Admin\PppController::class, 'exportAllPdf'])->name('ppps.exportAll'); Route::delete('ppps/historico/{historico}', [\App\Http\Controllers\Admin\PppController::class, 'deleteHistorico']) ->name('ppps.historico.delete'); Route::resource('ppps', \App\Http\Controllers\Admin\PppController::class)->names('ppps'); // Convênios Route::post('convenios/status/{convenio}', [\App\Http\Controllers\Admin\ConvenioController::class, 'status'])->name('convenios.status'); Route::get('convenios/export/all', [\App\Http\Controllers\Admin\ConvenioController::class, 'exportAllPdf'])->name('convenios.exportAll'); Route::resource('convenios', \App\Http\Controllers\Admin\ConvenioController::class)->names('convenios'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'parqueTecnologico']], function () { Route::get('parque-tecnologico', [ParqueTecnologicoController::class, 'index'])->name('parqueTecnologico.index'); Route::post('parque-tecnologico/editais/status/{edital}', [EditaisController::class, 'status'])->name('parqueTecnologico.editais.status'); Route::resource('parque-tecnologico/editais', EditaisController::class)->names('parqueTecnologico.editais')->parameters(['editais' => 'edital']); Route::post('parque-tecnologico/decretos-leis/status/{decretoLei}', [DecretosLeisController::class, 'status'])->name('parqueTecnologico.decretosLeis.status'); Route::resource('parque-tecnologico/decretos-leis', DecretosLeisController::class)->names('parqueTecnologico.decretosLeis')->parameters(['decretos-leis' => 'decretoLei']); Route::resource('parque-tecnologico/areas', AreasController::class) ->names('parqueTecnologico.areas') ->parameters(['areas' => 'area']); Route::resource('parque-tecnologico/faqs', FaqsController::class) ->names('parqueTecnologico.faqs') ->parameters(['faqs' => 'faq']); Route::post('parque-tecnologico/startups/status/{startup}', [StartupsController::class, 'status']) ->name('parqueTecnologico.startups.status'); Route::resource('parque-tecnologico/startups', StartupsController::class) ->names('parqueTecnologico.startups') ->parameters(['startups' => 'startup']); }); // Módulo administrativo de cadastro de pessoas trans desativado. // Route::group(['prefix' => 'admin/saude', 'as' => 'admin.saude.', 'middleware' => ['auth', 'pessoasTrans']], function () { // Route::resource('pessoas-trans', PessoasTransController::class) // ->names('pessoas-trans') // ->parameters(['pessoas-trans' => 'pessoas_trans']); // // Route::post('pessoas-trans/relatorio', [PessoasTransController::class, 'relatorio']) // ->name('pessoas-trans.relatorio'); // }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'mobiangra']], function () { Route::get('mobiangra', [MobiangraController::class, 'adminIndex'])->name('mobiangra.index'); Route::post('mobiangra/force-update', [MobiangraController::class, 'adminForceUpdate'])->name('mobiangra.forceUpdate'); Route::post('mobiangra/upload-gtfs', [MobiangraController::class, 'adminUploadGtfs'])->name('mobiangra.uploadGtfs'); Route::post('mobiangra/settings', [MobiangraController::class, 'adminSaveSettings'])->name('mobiangra.saveSettings'); Route::get('mobiangra/fleet/download', [MobiangraController::class, 'adminDownloadFleet'])->name('mobiangra.downloadFleet'); Route::post('mobiangra/fleet/upload', [MobiangraController::class, 'adminUploadFleet'])->name('mobiangra.uploadFleet'); Route::post('mobiangra/fleet/reset', [MobiangraController::class, 'adminResetFleet'])->name('mobiangra.resetFleet'); // ── CRUD Horários ────────────────────────────────────────────────────────── // Linhas Route::get('mobiangra/horarios/linhas', [MobiangraController::class, 'adminHorariosLinhas'])->name('mobiangra.horarios.linhas'); Route::get('mobiangra/horarios/linhas/buscar', [MobiangraController::class, 'adminHorariosLinhasBuscar'])->name('mobiangra.horarios.linhas.buscar'); Route::get('mobiangra/horarios/linhas/create', [MobiangraController::class, 'adminHorariosLinhaCreate'])->name('mobiangra.horarios.linhas.create'); Route::post('mobiangra/horarios/linhas', [MobiangraController::class, 'adminHorariosLinhaStore'])->name('mobiangra.horarios.linhas.store'); Route::get('mobiangra/horarios/linhas/{linha}/edit', [MobiangraController::class, 'adminHorariosLinhaEdit'])->name('mobiangra.horarios.linhas.edit'); Route::put('mobiangra/horarios/linhas/{linha}', [MobiangraController::class, 'adminHorariosLinhaUpdate'])->name('mobiangra.horarios.linhas.update'); Route::delete('mobiangra/horarios/linhas/{linha}', [MobiangraController::class, 'adminHorariosLinhaDestroy'])->name('mobiangra.horarios.linhas.destroy'); Route::post('mobiangra/horarios/linhas/{linha}/status', [MobiangraController::class, 'adminHorariosLinhaStatus'])->name('mobiangra.horarios.linhas.status'); // Seções (dentro de uma linha) Route::post('mobiangra/horarios/linhas/{linha}/secoes', [MobiangraController::class, 'adminHorariosSecaoStore'])->name('mobiangra.horarios.secoes.store'); Route::put('mobiangra/horarios/secoes/{secao}', [MobiangraController::class, 'adminHorariosSecaoUpdate'])->name('mobiangra.horarios.secoes.update'); Route::delete('mobiangra/horarios/secoes/{secao}', [MobiangraController::class, 'adminHorariosSecaoDestroy'])->name('mobiangra.horarios.secoes.destroy'); // Grades (horários por período dentro de uma seção) Route::post('mobiangra/horarios/secoes/{secao}/grades', [MobiangraController::class, 'adminHorariosGradeStore'])->name('mobiangra.horarios.grades.store'); Route::delete('mobiangra/horarios/grades/{grade}', [MobiangraController::class, 'adminHorariosGradeDestroy'])->name('mobiangra.horarios.grades.destroy'); // Importação XLSX (opcional, para recarregar o banco rapidamente) Route::post('mobiangra/horarios/importar-xlsx', [MobiangraController::class, 'adminHorariosImportarXlsx'])->name('mobiangra.horarios.importarXlsx'); Route::get('mobiangra/manifestacoes/{manifestacao}', [MobiangraController::class, 'adminManifestacaoShow']) ->name('mobiangra.manifestacoes.show'); Route::post('mobiangra/manifestacoes/{manifestacao}/mensagem', [MobiangraController::class, 'adminManifestacaoNovaMensagem']) ->name('mobiangra.manifestacoes.novaMensagem'); Route::post('mobiangra/alertas', [MobiangraController::class, 'adminAlertaStore'])->name('mobiangra.alertas.store'); Route::put('mobiangra/alertas/{alerta}', [MobiangraController::class, 'adminAlertaUpdate'])->name('mobiangra.alertas.update'); Route::delete('mobiangra/alertas/{alerta}', [MobiangraController::class, 'adminAlertaDestroy'])->name('mobiangra.alertas.destroy'); Route::post('mobiangra/alertas/{alerta}/status', [MobiangraController::class, 'adminAlertaStatus'])->name('mobiangra.alertas.status'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'licitacoesProcedimentos']], function () { Route::resource('licitacoes-procedimentos', LicitacaoProcedimentoController::class) ->names('licitacoesProcedimentos') ->parameters(['licitacoes-procedimentos' => 'licitacaoProcedimento']); Route::get( 'licitacoes-procedimentos/{licitacaoProcedimento}/uploads/{upload}/download', [LicitacaoProcedimentoController::class, 'downloadUpload'] )->name('licitacoesProcedimentos.uploads.download'); Route::get( 'licitacoes-procedimentos/{licitacaoProcedimento}/uploads', [LicitacaoProcedimentoController::class, 'uploads'] )->name('licitacoesProcedimentos.uploads'); Route::post( 'licitacoes-procedimentos/{licitacaoProcedimento}/uploads', [LicitacaoProcedimentoController::class, 'storeUpload'] )->name('licitacoesProcedimentos.uploads.store'); Route::put( 'licitacoes-procedimentos/{licitacaoProcedimento}/uploads/{upload}', [LicitacaoProcedimentoController::class, 'updateUpload'] )->name('licitacoesProcedimentos.uploads.update'); Route::delete( 'licitacoes-procedimentos/{licitacaoProcedimento}/uploads/{upload}', [LicitacaoProcedimentoController::class, 'destroyUpload'] )->name('licitacoesProcedimentos.uploads.destroy'); Route::get( 'licitacoes-procedimentos/{licitacaoProcedimento}/homologacao', [LicitacaoProcedimentoController::class, 'homologacao'] )->name('licitacoesProcedimentos.homologacao'); Route::put( 'licitacoes-procedimentos/{licitacaoProcedimento}/homologacao', [LicitacaoProcedimentoController::class, 'updateHomologacao'] )->name('licitacoesProcedimentos.homologacao.update'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'contratos']], function () { Route::get('contratos/search-licitacoes', [ContratoController::class, 'searchLicitacoes']) ->name('contratos.searchLicitacoes'); Route::resource('contratos', ContratoController::class) ->names('contratos') ->parameters(['contratos' => 'contrato']); Route::get( 'contratos/{contrato}/arquivos', [ContratoController::class, 'arquivos'] )->name('contratos.arquivos'); Route::post( 'contratos/{contrato}/arquivos', [ContratoController::class, 'storeArquivo'] )->name('contratos.arquivos.store'); Route::put( 'contratos/{contrato}/arquivos/{contrato_arquivo}', [ContratoController::class, 'updateArquivo'] )->name('contratos.arquivos.update'); Route::delete( 'contratos/{contrato}/arquivos/{contrato_arquivo}', [ContratoController::class, 'destroyArquivo'] )->name('contratos.arquivos.destroy'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'atas']], function () { Route::get('atas/search-licitacoes', [AtaController::class, 'searchLicitacoes']) ->name('atas.searchLicitacoes'); Route::resource('atas', AtaController::class) ->except(['show']) ->names('atas') ->parameters(['atas' => 'ata']); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'legislacao']], function () { Route::resource('legislacao', LegislacaoController::class) ->except(['show']) ->names('legislacao') ->parameters(['legislacao' => 'legislacao']); Route::post('legislacao/{legislacao}/retificacoes', [LegislacaoRetificacaoController::class, 'store']) ->name('legislacao.retificacoes.store'); Route::get('legislacao/{legislacao}/retificacoes/{retificacao}/edit', [LegislacaoRetificacaoController::class, 'edit']) ->name('legislacao.retificacoes.edit'); Route::put('legislacao/{legislacao}/retificacoes/{retificacao}', [LegislacaoRetificacaoController::class, 'update']) ->name('legislacao.retificacoes.update'); Route::delete('legislacao/{legislacao}/retificacoes/{retificacao}', [LegislacaoRetificacaoController::class, 'destroy']) ->name('legislacao.retificacoes.destroy'); Route::group(['prefix' => 'legislacao', 'as' => 'legislacao.'], function () { Route::get('cadastros', [LegislacaoCadastrosController::class, 'index'])->name('cadastros.index'); Route::resource('portarias', LegislacaoPortariaController::class) ->except(['show']) ->parameters(['portarias' => 'portaria']); Route::post('portarias/{portaria}/retificacoes', [LegislacaoPortariaRetificacaoController::class, 'store']) ->name('portarias.retificacoes.store'); Route::get('portarias/{portaria}/retificacoes/{retificacao}/edit', [LegislacaoPortariaRetificacaoController::class, 'edit']) ->name('portarias.retificacoes.edit'); Route::put('portarias/{portaria}/retificacoes/{retificacao}', [LegislacaoPortariaRetificacaoController::class, 'update']) ->name('portarias.retificacoes.update'); Route::delete('portarias/{portaria}/retificacoes/{retificacao}', [LegislacaoPortariaRetificacaoController::class, 'destroy']) ->name('portarias.retificacoes.destroy'); Route::resource('tipos', LegislacaoTiposController::class) ->except(['show']) ->parameters(['tipos' => 'tipo']); Route::resource('categorias', LegislacaoCategoriasController::class) ->except(['show']) ->parameters(['categorias' => 'categoria']); Route::resource('cargos', LegislacaoCargosController::class) ->except(['show']) ->parameters(['cargos' => 'cargo']); Route::resource('autores', LegislacaoAutoresController::class) ->except(['show']) ->parameters(['autores' => 'autor']); }); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'cartaServicos']], function () { Route::get('carta-de-servicos', [CartaServicosController::class, 'index'])->name('cartaServicos.index'); Route::get('carta-de-servicos/create', [CartaServicosController::class, 'create'])->name('cartaServicos.create'); Route::post('carta-de-servicos', [CartaServicosController::class, 'store'])->name('cartaServicos.store'); Route::get('carta-de-servicos/{cartaServico}/edit', [CartaServicosController::class, 'edit'])->name('cartaServicos.edit'); Route::put('carta-de-servicos/{cartaServico}', [CartaServicosController::class, 'update'])->name('cartaServicos.update'); Route::delete('carta-de-servicos/{cartaServico}', [CartaServicosController::class, 'destroy'])->name('cartaServicos.destroy'); Route::get('carta-de-servicos/categorias/create', [CartaServicosController::class, 'createTipo'])->name('cartaServicos.tipos.create'); Route::post('carta-de-servicos/categorias', [CartaServicosController::class, 'storeTipo'])->name('cartaServicos.tipos.store'); Route::put('carta-de-servicos/categorias/{tipo}', [CartaServicosController::class, 'updateTipo'])->name('cartaServicos.tipos.update'); Route::delete('carta-de-servicos/categorias/{tipo}', [CartaServicosController::class, 'destroyTipo'])->name('cartaServicos.tipos.destroy'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'indicadoresTi']], function () { Route::get('indicadoresTi', [IndicadoresTiController::class, 'index'])->name('indicadoresTi.index'); Route::post('indicadoresTi', [IndicadoresTiController::class, 'store'])->name('indicadoresTi.store'); Route::post('indicadoresTi/clientes', [IndicadoresTiController::class, 'storeCliente'])->name('indicadoresTi.clientes.store'); Route::get('indicadoresTi/relatorio', [IndicadoresTiRelatorioController::class, 'index'])->name('indicadoresTi.relatorio.index'); Route::post('indicadoresTi/relatorio/pdf', [IndicadoresTiRelatorioController::class, 'exportarPdf'])->name('indicadoresTi.relatorio.pdf'); Route::post('indicadoresTi/relatorio/csv', [IndicadoresTiRelatorioController::class, 'exportarCsv'])->name('indicadoresTi.relatorio.csv'); Route::get('indicadoresTi/relatorio/assuntos/{setor}', [IndicadoresTiRelatorioController::class, 'assuntosPorSetor'])->name('indicadoresTi.relatorio.assuntos'); Route::get('indicadoresTi/relatorio/subassuntos/{assunto}', [IndicadoresTiRelatorioController::class, 'subassuntosPorAssunto'])->name('indicadoresTi.relatorio.subassuntos'); Route::post('indicadoresTi/relatorio/pdf-matricial', [IndicadoresTiRelatorioController::class, 'exportarPdfMatricial']) ->name('indicadoresTi.relatorio.pdf.matricial'); Route::get('indicadoresTi/relatorio/assuntos/{setor}', [IndicadoresTiRelatorioController::class, 'assuntosPorSetor'])->name('indicadoresTi.relatorio.assuntos'); Route::get('indicadoresTi/relatorio/subassuntos/{assunto}', [IndicadoresTiRelatorioController::class, 'subassuntosPorAssunto'])->name('indicadoresTi.relatorio.subassuntos'); Route::get('indicadoresTi/assuntos/{setor}', [IndicadoresTiController::class, 'assuntosPorSetor'])->name('indicadoresTi.assuntos'); Route::get('indicadoresTi/subassuntos/{assunto}', [IndicadoresTiController::class, 'subassuntosPorAssunto'])->name('indicadoresTi.subassuntos'); Route::get('indicadoresTi/gerenciar/clientes', [GerenciarClientesController::class, 'index'])->name('indicadoresTi.gerenciar.clientes'); Route::post('indicadoresTi/gerenciar/clientes', [GerenciarClientesController::class, 'store'])->name('indicadoresTi.gerenciar.clientes.store'); Route::get('indicadoresTi/gerenciar/clientes/{cliente}', [GerenciarClientesController::class, 'show'])->name('indicadoresTi.gerenciar.clientes.show'); Route::put('indicadoresTi/gerenciar/clientes/{cliente}', [GerenciarClientesController::class, 'update'])->name('indicadoresTi.gerenciar.clientes.update'); Route::delete('indicadoresTi/gerenciar/clientes/{cliente}', [GerenciarClientesController::class, 'destroy'])->name('indicadoresTi.gerenciar.clientes.destroy'); Route::get('indicadoresTi/gerenciar/assuntos', [GerenciarAssuntosController::class, 'index'])->name('indicadoresTi.gerenciar'); Route::post('indicadoresTi/gerenciar/setores', [GerenciarAssuntosController::class, 'storeSetor'])->name('indicadoresTi.gerenciar.setores.store'); Route::put('indicadoresTi/gerenciar/setores/{setor}', [GerenciarAssuntosController::class, 'updateSetor'])->name('indicadoresTi.gerenciar.setores.update'); Route::delete('indicadoresTi/gerenciar/setores/{setor}', [GerenciarAssuntosController::class, 'destroySetor'])->name('indicadoresTi.gerenciar.setores.destroy'); Route::post('indicadoresTi/gerenciar/assuntos', [GerenciarAssuntosController::class, 'storeAssunto'])->name('indicadoresTi.gerenciar.assuntos.store'); Route::put('indicadoresTi/gerenciar/assuntos/{assunto}', [GerenciarAssuntosController::class, 'updateAssunto'])->name('indicadoresTi.gerenciar.assuntos.update'); Route::delete('indicadoresTi/gerenciar/assuntos/{assunto}', [GerenciarAssuntosController::class, 'destroyAssunto'])->name('indicadoresTi.gerenciar.assuntos.destroy'); Route::post('indicadoresTi/gerenciar/subassuntos', [GerenciarAssuntosController::class, 'storeSubassunto'])->name('indicadoresTi.gerenciar.subassuntos.store'); Route::put('indicadoresTi/gerenciar/subassuntos/{subassunto}', [GerenciarAssuntosController::class, 'updateSubassunto'])->name('indicadoresTi.gerenciar.subassuntos.update'); Route::delete('indicadoresTi/gerenciar/subassuntos/{subassunto}', [GerenciarAssuntosController::class, 'destroySubassunto'])->name('indicadoresTi.gerenciar.subassuntos.destroy'); Route::get('indicadoresTi/clientes/buscar', [IndicadoresTiController::class, 'buscarClientes'])->name('indicadoresTi.clientes.buscar'); Route::get('indicadoresTi/unidades/buscar', [IndicadoresTiController::class, 'buscarUnidades'])->name('indicadoresTi.unidades.buscar'); Route::get('indicadoresTi/{chamado}', [IndicadoresTiController::class, 'show'])->name('indicadoresTi.show'); Route::put('indicadoresTi/{chamado}', [IndicadoresTiController::class, 'update'])->name('indicadoresTi.update'); Route::post('indicadoresTi/{chamado}/concluir', [IndicadoresTiController::class, 'concluir'])->name('indicadoresTi.concluir'); Route::post('indicadoresTi/{chamado}/participantes', [IndicadoresTiController::class, 'adicionarParticipante'])->name('indicadoresTi.participantes.store'); Route::delete('indicadoresTi/{chamado}/participantes', [IndicadoresTiController::class, 'removerParticipante'])->name('indicadoresTi.participantes.destroy'); Route::delete('indicadoresTi/{chamado}', [IndicadoresTiController::class, 'destroy'])->name('indicadoresTi.destroy'); Route::get('indicadoresTi/{chamado}/fechar-aba', [IndicadoresTiController::class, 'fecharAba'])->name('indicadoresTi.fecharAba'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'unidadesOrganizacionais']], function () { Route::post('unidades-organizacionais/status/{unidade_organizacional}', [UnidadeOrganizacionalController::class, 'status']) ->name('unidadesOrganizacionais.status'); Route::resource('unidades-organizacionais', UnidadeOrganizacionalController::class) ->names('unidadesOrganizacionais') ->parameters(['unidades-organizacionais' => 'unidade_organizacional']); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'gerenciadorDemandas']], function () { Route::get('demandas', [DemandaController::class, 'dashboard'])->name('demandas.dashboard'); Route::get('demandas/lista', [DemandaController::class, 'index'])->name('demandas.index'); Route::post('demandas', [DemandaController::class, 'store'])->name('demandas.store'); Route::get('demandas/criar', [DemandaController::class, 'create'])->name('demandas.create'); Route::get('demandas/responsaveis/buscar', [DemandaController::class, 'buscarResponsaveis'])->name('demandas.responsaveis.buscar'); Route::get('demandas/ti/assuntos/{setor}', [DemandaTiController::class, 'assuntos'])->name('demandas.ti.assuntos'); Route::get('demandas/ti/subassuntos/{assunto}', [DemandaTiController::class, 'subassuntos'])->name('demandas.ti.subassuntos'); Route::get('demandas/ti/solicitantes', [DemandaTiController::class, 'buscarSolicitantes'])->name('demandas.ti.solicitantes'); Route::post('demandas/ti/clientes', [DemandaTiController::class, 'storeCliente'])->name('demandas.ti.clientes.store'); Route::get('demandas/relatorio', [DemandaRelatorioController::class, 'index'])->name('demandas.relatorio.index'); Route::get('demandas/relatorio/pdf-resumido', [DemandaRelatorioController::class, 'exportarPdfResumido'])->name('demandas.relatorio.pdf-resumido'); Route::get('demandas/relatorio/pdf-detalhado', [DemandaRelatorioController::class, 'exportarPdfDetalhado'])->name('demandas.relatorio.pdf-detalhado'); Route::get('demandas/relatorio/pdf-matricial', [DemandaRelatorioController::class, 'exportarPdfMatricial'])->name('demandas.relatorio.pdf-matricial'); Route::get('demandas/relatorio/csv', [DemandaRelatorioController::class, 'exportarCsv'])->name('demandas.relatorio.csv'); Route::get('demandas/{demanda}', [DemandaController::class, 'show'])->name('demandas.show'); Route::put('demandas/{demanda}', [DemandaController::class, 'update'])->name('demandas.update'); Route::post('demandas/{demanda}/mover', [DemandaController::class, 'moverStatus'])->name('demandas.mover'); Route::post('demandas/{demanda}/interagir', [DemandaController::class, 'interagir'])->name('demandas.interagir'); Route::post('demandas/{demanda}/destinatarios', [DemandaController::class, 'destinatarioStore'])->name('demandas.destinatarios.store'); Route::patch('demandas/{demanda}/destinatarios/{destinatario}/status', [DemandaController::class, 'destinatarioStatus'])->name('demandas.destinatarios.status'); Route::patch('demandas/{demanda}/destinatarios/{destinatario}/aceitar', [DemandaController::class, 'aceitarDestinatario'])->name('demandas.destinatarios.aceitar'); Route::delete('demandas/{demanda}/destinatarios/{destinatario}', [DemandaController::class, 'destinatarioDestroy'])->name('demandas.destinatarios.destroy'); Route::post('demandas/{demanda}/subtarefas', [DemandaController::class, 'subtarefaStore'])->name('demandas.subtarefas.store'); Route::patch('demandas/{demanda}/subtarefas/{subtarefa}', [DemandaController::class, 'subtarefaToggle'])->name('demandas.subtarefas.toggle'); Route::delete('demandas/{demanda}/subtarefas/{subtarefa}', [DemandaController::class, 'subtarefaDestroy'])->name('demandas.subtarefas.destroy'); Route::post('demandas/{demanda}/anexos', [DemandaController::class, 'anexoStore'])->name('demandas.anexos.store'); Route::get('demandas/{demanda}/anexos/{anexo}/visualizar', [DemandaController::class, 'anexoView'])->name('demandas.anexos.view'); Route::get('demandas/{demanda}/anexos/{anexo}/baixar', [DemandaController::class, 'anexoDownload'])->name('demandas.anexos.download'); Route::delete('demandas/{demanda}/anexos/{anexo}', [DemandaController::class, 'anexoDestroy'])->name('demandas.anexos.destroy'); Route::get('demandas/gerenciar/clientes', [DemandaGerenciarClientesController::class, 'index'])->name('demandas.gerenciar.clientes'); Route::post('demandas/gerenciar/clientes', [DemandaGerenciarClientesController::class, 'store'])->name('demandas.gerenciar.clientes.store'); Route::get('demandas/gerenciar/clientes/{cliente}', [DemandaGerenciarClientesController::class, 'show'])->name('demandas.gerenciar.clientes.show'); Route::put('demandas/gerenciar/clientes/{cliente}', [DemandaGerenciarClientesController::class, 'update'])->name('demandas.gerenciar.clientes.update'); Route::delete('demandas/gerenciar/clientes/{cliente}', [DemandaGerenciarClientesController::class, 'destroy'])->name('demandas.gerenciar.clientes.destroy'); Route::get('demandas/gerenciar/assuntos', [DemandaGerenciarAssuntosController::class, 'index'])->name('demandas.gerenciar.assuntos'); Route::post('demandas/gerenciar/setores', [DemandaGerenciarAssuntosController::class, 'storeSetor'])->name('demandas.gerenciar.setores.store'); Route::put('demandas/gerenciar/setores/{setor}', [DemandaGerenciarAssuntosController::class, 'updateSetor'])->name('demandas.gerenciar.setores.update'); Route::delete('demandas/gerenciar/setores/{setor}', [DemandaGerenciarAssuntosController::class, 'destroySetor'])->name('demandas.gerenciar.setores.destroy'); Route::post('demandas/gerenciar/assuntos', [DemandaGerenciarAssuntosController::class, 'storeAssunto'])->name('demandas.gerenciar.assuntos.store'); Route::put('demandas/gerenciar/assuntos/{assunto}', [DemandaGerenciarAssuntosController::class, 'updateAssunto'])->name('demandas.gerenciar.assuntos.update'); Route::delete('demandas/gerenciar/assuntos/{assunto}', [DemandaGerenciarAssuntosController::class, 'destroyAssunto'])->name('demandas.gerenciar.assuntos.destroy'); Route::post('demandas/gerenciar/subassuntos', [DemandaGerenciarAssuntosController::class, 'storeSubassunto'])->name('demandas.gerenciar.subassuntos.store'); Route::put('demandas/gerenciar/subassuntos/{subassunto}', [DemandaGerenciarAssuntosController::class, 'updateSubassunto'])->name('demandas.gerenciar.subassuntos.update'); Route::delete('demandas/gerenciar/subassuntos/{subassunto}', [DemandaGerenciarAssuntosController::class, 'destroySubassunto'])->name('demandas.gerenciar.subassuntos.destroy'); Route::patch('demandas/gerenciar/setores/{setor}/publico', [DemandaGerenciarAssuntosController::class, 'toggleSetorPublico'])->name('demandas.gerenciar.setores.publico'); Route::patch('demandas/gerenciar/assuntos/{assunto}/publico', [DemandaGerenciarAssuntosController::class, 'toggleAssuntoPublico'])->name('demandas.gerenciar.assuntos.publico'); Route::patch('demandas/gerenciar/subassuntos/{subassunto}/publico', [DemandaGerenciarAssuntosController::class, 'toggleSubassuntoPublico'])->name('demandas.gerenciar.subassuntos.publico'); }); Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth', 'ativosTi']], function () { Route::get('ativos-ti', [AtivosTiController::class, 'index'])->name('ativosTi.index'); Route::get('ativos-ti/equipamentos', fn() => redirect()->route('admin.ativosTi.index', ['aba' => 'equipamentos']))->name('ativosTi.equipamentos.index'); Route::get('ativos-ti/equipamentos/criar', [EquipamentosController::class, 'create'])->name('ativosTi.equipamentos.create'); Route::post('ativos-ti/equipamentos', [EquipamentosController::class, 'store'])->name('ativosTi.equipamentos.store'); Route::get('ativos-ti/equipamentos/buscar', [EquipamentosController::class, 'buscar'])->name('ativosTi.equipamentos.buscar'); Route::get('ativos-ti/equipamentos/{equipamento}', [EquipamentosController::class, 'show'])->name('ativosTi.equipamentos.show'); Route::get('ativos-ti/equipamentos/{equipamento}/editar', [EquipamentosController::class, 'edit'])->name('ativosTi.equipamentos.edit'); Route::put('ativos-ti/equipamentos/{equipamento}', [EquipamentosController::class, 'update'])->name('ativosTi.equipamentos.update'); Route::delete('ativos-ti/equipamentos/{equipamento}', [EquipamentosController::class, 'destroy'])->name('ativosTi.equipamentos.destroy'); Route::put('ativos-ti/equipamentos/{equipamento}/especificacoes', [EquipamentosController::class, 'salvarEspecificacoes'])->name('ativosTi.equipamentos.especificacoes.update'); Route::get('ativos-ti/equipamentos/{equipamento}/laudo', [EquipamentosController::class, 'laudo'])->name('ativosTi.equipamentos.laudo'); Route::post('demandas/{demanda}/equipamentos', [EquipamentosController::class, 'vincularDemanda'])->name('ativosTi.equipamentos.vincular'); Route::delete('demandas/{demanda}/equipamentos/{equipamento}', [EquipamentosController::class, 'desvincularDemanda'])->name('ativosTi.equipamentos.desvincular'); Route::post('demandas/{demanda}/licencas', [EquipamentosController::class, 'vincularLicencaDemanda'])->name('ativosTi.licencas.vincular'); Route::delete('demandas/{demanda}/licencas/{licenca}', [EquipamentosController::class, 'desvincularLicencaDemanda'])->name('ativosTi.licencas.desvincular'); Route::get('ativos-ti/licencas', fn() => redirect()->route('admin.ativosTi.index', ['aba' => 'licencas']))->name('ativosTi.licencas.index'); Route::get('ativos-ti/licencas/criar', [LicencasController::class, 'create'])->name('ativosTi.licencas.create'); Route::post('ativos-ti/licencas', [LicencasController::class, 'store'])->name('ativosTi.licencas.store'); Route::get('ativos-ti/licencas/{licenca}', [LicencasController::class, 'show'])->name('ativosTi.licencas.show'); Route::get('ativos-ti/licencas/{licenca}/editar', [LicencasController::class, 'edit'])->name('ativosTi.licencas.edit'); Route::put('ativos-ti/licencas/{licenca}', [LicencasController::class, 'update'])->name('ativosTi.licencas.update'); Route::delete('ativos-ti/licencas/{licenca}', [LicencasController::class, 'destroy'])->name('ativosTi.licencas.destroy'); }); Route::group([ 'prefix' => 'admin/observatorio', 'as' => 'admin.observatorio.', 'middleware' => ['auth', 'observatorio'], ], function () { Route::resource('indicadores', \App\Http\Controllers\Observatorio\IndicadorController::class) ->except(['show']) ->names('indicadores') ->parameters(['indicadores' => 'indicador']); Route::resource('temas', \App\Http\Controllers\Observatorio\TemaController::class) ->except(['show']) ->names('temas') ->parameters(['temas' => 'tema']); Route::resource('mapa-temas', \App\Http\Controllers\Observatorio\MapaTemaController::class) ->except(['show']) ->names('mapaTemas') ->parameters(['mapa-temas' => 'mapaTema']); Route::resource('mapas', \App\Http\Controllers\Observatorio\MapaController::class) ->except(['show']) ->names('mapas') ->parameters(['mapas' => 'mapa']); }); Route::group(['prefix' => '', 'as' => 'admin.'], function () { Route::get('/login/govbr', [GovBrController::class, 'redirectToProvider'])->name('login.govbr')->middleware('throttle:auth'); Route::get('/login/callback', [GovBrController::class, 'handleProviderCallback'])->name('login.govbr.callback')->middleware('throttle:auth'); Route::get('/logout/govbr', [GovBrController::class, 'logout'])->name('logout.govbr'); Route::get('login', [AuthenticationController::class, 'login'])->name('login'); Route::post('login', [AuthenticationController::class, 'authentication'])->name('loginAuthentication')->middleware('throttle:auth'); Route::get('logout', [AuthenticationController::class, 'logout'])->name('logout'); Route::get('esqueceu-senha', [RecuperacaoDeSenhaController::class, 'esqueceuSenha'])->name('esqueceuSenha'); Route::post('esqueceu-senha', [RecuperacaoDeSenhaController::class, 'enviarEmailRecuperacao'])->name('enviarEmailRecuperacao')->middleware('throttle:password-recovery'); Route::get('nova-conta/{token}', [NovaContaAngraController::class, 'create'])->name('novaConta'); Route::post('nova-conta/{token}', [NovaContaAngraController::class, 'store'])->name('novaContaStore')->middleware('throttle:password-recovery'); Route::resource('contas', ContasPublicasController::class) ->names('contas.publicas') ->parameters([ 'contas' => 'user', ]); });
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.25 |
proxy
|
phpinfo
|
Settings