Correção da pagina de variaveis
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
# Garante que o perfil "Administrador" tenha TODAS as permissões do catálogo.
|
||||
#
|
||||
# Por que existe: 20260826000003 é idempotente — se o perfil já foi criado, ela
|
||||
# não volta a mexer nele. Isso é o certo para não desfazer ajuste do ADM, mas
|
||||
# significa que uma permissão acrescentada ao catálogo DEPOIS daquele deploy
|
||||
# (foi o caso de `notificacao.variaveis`) nunca chega ao perfil: o item some do
|
||||
# menu e a URL responde "sem permissão", sem nada indicando o porquê.
|
||||
#
|
||||
# Mexe SÓ no perfil Administrador, e SÓ acrescentando: ele é, por definição,
|
||||
# "acesso total ao sistema". Perfis criados pelo ADM e os demais de sistema
|
||||
# ficam como estão.
|
||||
class SincronizarPermissoesDoPerfilAdministrador < ActiveRecord::Migration[7.1]
|
||||
TODAS = %w[
|
||||
dashboard.ver dashboard.financeiro dashboard.operacoes dashboard.exportar dashboard.metricas
|
||||
consolidacao.ver consolidacao.criar consolidacao.editar consolidacao.editar_finalizada
|
||||
consolidacao.finalizar consolidacao.arquivar consolidacao.excluir
|
||||
consolidacao.registrar_pagamento consolidacao.cancelar_pagamento
|
||||
consolidacao.gerir_motoristas consolidacao.exportar_pdf
|
||||
notificacao.contatos notificacao.contatos_gerenciar notificacao.contatos_excluir
|
||||
notificacao.eventos notificacao.eventos_gerenciar notificacao.disparar_manual
|
||||
notificacao.variaveis notificacao.envios notificacao.credenciais notificacao.whatsapp_sessao
|
||||
admin.usuarios admin.usuarios_gerenciar admin.perfis
|
||||
admin.configuracoes admin.configuracoes_editar admin.auditoria
|
||||
admin.edicao_lancamento admin.planilha_simpli_route
|
||||
].freeze
|
||||
|
||||
def up
|
||||
return unless table_exists?(:perfis_acesso)
|
||||
|
||||
execute(<<~SQL.squish)
|
||||
UPDATE perfis_acesso
|
||||
SET permissoes = #{quote(TODAS.to_json)}::jsonb, updated_at = NOW()
|
||||
WHERE sistema = true AND LOWER(nome) = 'administrador'
|
||||
SQL
|
||||
end
|
||||
|
||||
# Sem volta: reduzir as permissões do administrador só criaria o problema que
|
||||
# esta migration conserta.
|
||||
def down; end
|
||||
end
|
||||
Reference in New Issue
Block a user