Feat pedidos #63

Merged
killer-cf merged 4 commits from feat-pedidos into master 2025-12-12 13:22:53 +00:00
2 changed files with 163 additions and 26 deletions
Showing only changes of commit 4eb49d3e63 - Show all commits

View File

@@ -77,27 +77,59 @@
{ {
label: 'Dashboard', label: 'Dashboard',
icon: 'Home', icon: 'Home',
link: '/' link: resolve('/')
}, },
{ {
label: 'Gestão de Pessoas', label: 'Gestão de Pessoas',
icon: 'Users', icon: 'Users',
link: '/recursos-humanos', link: resolve('/recursos-humanos'),
permission: { recurso: 'funcionarios', acao: 'ver' }, permission: { recurso: 'gestao_pessoas', acao: 'ver' },
submenus: [ submenus: [
{ {
label: 'Funcionários', label: 'Funcionários',
link: '/recursos-humanos/funcionarios', link: resolve('/recursos-humanos/funcionarios'),
permission: { recurso: 'funcionarios', acao: 'listar' } permission: { recurso: 'funcionarios', acao: 'listar' },
exact: true
},
{
label: 'Cadastro de Funcionários',
link: resolve('/recursos-humanos/funcionarios/cadastro'),
permission: { recurso: 'funcionarios', acao: 'criar' }
},
{
label: 'Exclusão de Funcionários',
link: resolve('/recursos-humanos/funcionarios/excluir'),
permission: { recurso: 'funcionarios', acao: 'excluir' }
},
{
label: 'Férias',
link: resolve('/recursos-humanos/ferias'),
permission: { recurso: 'ferias', acao: 'dashboard' }
},
{
label: 'Atestados de Licenças',
link: resolve('/recursos-humanos/atestados-licencas'),
permission: { recurso: 'atestados_licencas', acao: 'listar' }
},
{
label: 'Controle de Ponto',
link: resolve('/recursos-humanos/controle-ponto'),
permission: { recurso: 'ponto', acao: 'ver' },
exact: true
},
{
label: 'Banco de Horas',
link: resolve('/recursos-humanos/controle-ponto/banco-horas'),
permission: { recurso: 'banco_horas', acao: 'ver' }
}, },
{ {
label: 'Registro de Ponto', label: 'Registro de Ponto',
link: '/recursos-humanos/registro-pontos', link: resolve('/recursos-humanos/registro-pontos'),
permission: { recurso: 'ponto', acao: 'ver' } permission: { recurso: 'ponto', acao: 'ver' }
}, },
{ {
label: 'Símbolos', label: 'Símbolos',
link: '/recursos-humanos/simbolos', link: resolve('/recursos-humanos/simbolos'),
permission: { recurso: 'simbolos', acao: 'listar' } permission: { recurso: 'simbolos', acao: 'listar' }
} }
] ]
@@ -105,23 +137,23 @@
{ {
label: 'Pedidos', label: 'Pedidos',
icon: 'ClipboardCheck', icon: 'ClipboardCheck',
link: '/pedidos', link: resolve('/pedidos'),
permission: { recurso: 'pedidos', acao: 'listar' }, permission: { recurso: 'pedidos', acao: 'listar' },
submenus: [ submenus: [
{ {
label: 'Meus Pedidos', label: 'Meus Pedidos',
link: '/pedidos', link: resolve('/pedidos'),
permission: { recurso: 'pedidos', acao: 'listar' }, permission: { recurso: 'pedidos', acao: 'listar' },
excludePaths: ['/pedidos/aceite', '/pedidos/minhas-analises'] excludePaths: ['/pedidos/aceite', '/pedidos/minhas-analises']
}, },
{ {
label: 'Pedidos para Aceite', label: 'Pedidos para Aceite',
link: '/pedidos/aceite', link: resolve('/pedidos/aceite'),
permission: { recurso: 'pedidos', acao: 'aceitar' } permission: { recurso: 'pedidos', acao: 'aceitar' }
}, },
{ {
label: 'Minhas Análises', label: 'Minhas Análises',
link: '/pedidos/minhas-analises', link: resolve('/pedidos/minhas-analises'),
permission: { recurso: 'pedidos', acao: 'aceitar' } permission: { recurso: 'pedidos', acao: 'aceitar' }
} }
] ]
@@ -153,17 +185,17 @@
{ {
label: 'Fluxos & Processos', label: 'Fluxos & Processos',
icon: 'GitMerge', icon: 'GitMerge',
link: '/fluxos', link: resolve('/fluxos'),
permission: { recurso: 'fluxos_instancias', acao: 'listar' }, permission: { recurso: 'fluxos_instancias', acao: 'listar' },
submenus: [ submenus: [
{ {
label: 'Meus Processos', label: 'Meus Processos',
link: '/fluxos/meus-processos', link: resolve('/fluxos/meus-processos'),
permission: { recurso: 'fluxos_instancias', acao: 'listar' } permission: { recurso: 'fluxos_instancias', acao: 'listar' }
}, },
{ {
label: 'Modelos de Fluxo', label: 'Modelos de Fluxo',
link: '/fluxos/templates', link: resolve('/fluxos/templates'),
permission: { recurso: 'fluxos_templates', acao: 'listar' } permission: { recurso: 'fluxos_templates', acao: 'listar' }
} }
] ]
@@ -171,7 +203,7 @@
{ {
label: 'Painel de TI', label: 'Painel de TI',
icon: 'Settings', icon: 'Settings',
link: '/ti', link: resolve('/ti'),
permission: { recurso: 'ti_painel_administrativo', acao: 'ver' } permission: { recurso: 'ti_painel_administrativo', acao: 'ver' }
} }
]; ];

View File

@@ -8,15 +8,9 @@ const PERMISSOES_BASE = {
permissoes: [ permissoes: [
// Funcionários // Funcionários
{ {
nome: 'funcionarios.dashboard', nome: 'funcionarios.detalhar',
recurso: 'funcionarios', recurso: 'funcionarios',
acao: 'dashboard', acao: 'detalhar',
descricao: 'Acessar o painel de funcionários'
},
{
nome: 'funcionarios.ver',
recurso: 'funcionarios',
acao: 'ver',
descricao: 'Visualizar detalhes de funcionários' descricao: 'Visualizar detalhes de funcionários'
}, },
{ {
@@ -25,6 +19,12 @@ const PERMISSOES_BASE = {
acao: 'listar', acao: 'listar',
descricao: 'Listar funcionários' descricao: 'Listar funcionários'
}, },
{
nome: 'funcionarios.ver',
recurso: 'funcionarios',
acao: 'ver',
descricao: 'Visualizar dados completos de funcionários'
},
{ {
nome: 'funcionarios.criar', nome: 'funcionarios.criar',
recurso: 'funcionarios', recurso: 'funcionarios',
@@ -50,11 +50,116 @@ const PERMISSOES_BASE = {
descricao: 'Aprovar ausências de funcionários' descricao: 'Aprovar ausências de funcionários'
}, },
{ {
nome: 'funcionarios.aprovar_ferias', nome: 'ferias.aprovar',
recurso: 'funcionarios', recurso: 'ferias',
acao: 'aprovar_ferias', acao: 'aprovar',
descricao: 'Aprovar férias de funcionários' descricao: 'Aprovar férias de funcionários'
}, },
{
nome: 'ferias.dashboard',
recurso: 'ferias',
acao: 'dashboard',
descricao: 'Acessar o painel de férias de funcionários'
},
// Atestados e Licenças
{
nome: 'atestados_licencas.listar',
recurso: 'atestados_licencas',
acao: 'listar',
descricao: 'Listar atestados e licenças'
},
{
nome: 'atestados_licencas.criar',
recurso: 'atestados_licencas',
acao: 'criar',
descricao: 'Registrar novos atestados ou licenças'
},
{
nome: 'atestados_licencas.editar',
recurso: 'atestados_licencas',
acao: 'editar',
descricao: 'Editar atestados ou licenças'
},
{
nome: 'atestados_licencas.excluir',
recurso: 'atestados_licencas',
acao: 'excluir',
descricao: 'Excluir atestados ou licenças'
},
{
nome: 'atestados_licencas.dashboard',
recurso: 'atestados_licencas',
acao: 'dashboard',
descricao: 'Acessar painel e gráficos de atestados e licenças'
},
// Ausências
{
nome: 'ausencias.listar',
recurso: 'ausencias',
acao: 'listar',
descricao: 'Listar solicitações de ausência'
},
{
nome: 'ausencias.criar',
recurso: 'ausencias',
acao: 'criar',
descricao: 'Criar solicitações de ausência'
},
{
nome: 'ausencias.aprovar',
recurso: 'ausencias',
acao: 'aprovar',
descricao: 'Aprovar solicitações de ausência'
},
{
nome: 'ausencias.reprovar',
recurso: 'ausencias',
acao: 'reprovar',
descricao: 'Reprovar solicitações de ausência'
},
{
nome: 'ausencias.excluir',
recurso: 'ausencias',
acao: 'excluir',
descricao: 'Excluir solicitações de ausência'
},
// Ponto e Banco de Horas
{
nome: 'ponto.ver',
recurso: 'ponto',
acao: 'ver',
descricao: 'Visualizar telas e relatórios de ponto'
},
{
nome: 'ponto.registrar',
recurso: 'ponto',
acao: 'registrar',
descricao: 'Registrar batidas de ponto'
},
{
nome: 'ponto.editar',
recurso: 'ponto',
acao: 'editar',
descricao: 'Editar registros de ponto (homologação)'
},
{
nome: 'banco_horas.ver',
recurso: 'banco_horas',
acao: 'ver',
descricao: 'Visualizar saldo e extrato de banco de horas'
},
{
nome: 'banco_horas.ajustar',
recurso: 'banco_horas',
acao: 'ajustar',
descricao: 'Criar e aprovar ajustes de banco de horas'
},
{
nome: 'banco_horas.configurar',
recurso: 'banco_horas',
acao: 'configurar',
descricao: 'Configurar regras e alertas de banco de horas'
},
// Símbolos // Símbolos
{ {
nome: 'simbolos.dashboard', nome: 'simbolos.dashboard',