Profile (Perfil de Permissoes)
O Profile define um conjunto de permissoes que pode ser atribuido a usuarios, controlando o que eles podem acessar e fazer no sistema.
Descricao
Profiles sao templates de permissoes que definem o nivel de acesso de usuarios. Ao inves de configurar permissoes individualmente para cada usuario, voce cria Profiles e os atribui aos usuarios.
Dados
Identificacao
| Campo | Tipo | Obrigatorio | Descricao |
|---|
| name | Texto | Sim | Nome do perfil (unico por Account) |
| Campo | Tipo | Descricao |
|---|
| menu_permissions | Multipla Escolha | Modulos que o perfil pode acessar |
Permissoes de Dashboard
| Campo | Tipo | Descricao |
|---|
| dashboard_permissions | Multipla Escolha | Dashboards que o perfil pode visualizar |
Permissoes Funcionais
| Campo | Tipo | Descricao |
|---|
| functional_permissions | Objeto | Acoes permitidas por entidade |
Relacionamentos
Pertence a
| Entidade | Descricao | Obrigatorio |
|---|
| Account | Conta/empresa | Sim |
| Store | Filial especifica | Nao |
Possui Muitos
| Entidade | Descricao |
|---|
| Users | Usuarios com este perfil |
Estrutura de Permissoes
Hierarquia
Controla quais modulos aparecem no menu:
| Modulo | Descricao |
|---|
| pdv | Ponto de Venda |
| beauty_center | Centro de Estetica |
| clinical | Modulo Clinico |
| delivery | Entregas |
| crm | Gestao de Clientes |
| financial | Financeiro |
| tax | Fiscal |
| stock | Estoque |
| rh | Recursos Humanos |
| customers | Clientes |
| pets | Pets |
| products | Produtos |
| packages | Pacotes |
| services | Servicos |
| reports | Relatorios |
Dashboard Permissions
Controla quais dashboards o usuario pode ver:
| Dashboard | Descricao |
|---|
| pdv | Metricas de vendas |
| beauty_center | Metricas de estetica |
| clinical | Metricas clinicas |
| delivery | Metricas de entregas |
| crm | Metricas de clientes |
| financial | Metricas financeiras |
| stock | Metricas de estoque |
| rh | Metricas de RH |
| products | Metricas de produtos |
| services | Metricas de servicos |
| pets | Metricas de pets |
| customers | Metricas de clientes |
Permissoes Funcionais por Modulo
Niveis de Permissao
| Nivel | Descricao |
|---|
| view_all | Ver todos os registros |
| view_own | Ver apenas registros proprios |
| create | Criar novos registros |
| edit_all | Editar todos os registros |
| edit_own | Editar apenas registros proprios |
| destroy_all | Excluir todos os registros |
| destroy_own | Excluir apenas registros proprios |
| [acao] | Acoes especificas da entidade |
PDV - Ponto de Venda
Sale (Venda)
| Permissao | Descricao |
|---|
| view_all | Ver todas as vendas |
| view_own | Ver apenas vendas proprias |
| create | Criar nova venda |
| edit_all | Editar todas as vendas |
| edit_own | Editar apenas vendas proprias |
| finalize | Finalizar venda |
| finalize_and_pay | Finalizar e processar pagamento |
| cancel | Cancelar venda |
Budget (Orcamento)
| Permissao | Descricao |
|---|
| view_all/own | Ver orcamentos |
| create | Criar orcamento |
| edit_all/own | Editar orcamentos |
| destroy_all/own | Excluir orcamentos |
| convert_to_sale | Converter em venda |
Checkout (Pagamento)
| Permissao | Descricao |
|---|
| view_all/own | Ver checkouts |
| create | Criar checkout |
| edit_all/own | Editar checkouts |
| destroy_all/own | Excluir checkouts |
| pay | Processar pagamento |
Cashier (Caixa)
| Permissao | Descricao |
|---|
| view_all/own | Ver caixas |
| create | Criar caixa |
| edit_all/own | Editar caixas |
| destroy_all/own | Excluir caixas |
| view_history | Ver historico |
| open | Abrir caixa |
| close | Fechar caixa |
| cash_supply | Suprimento de caixa |
| cash_drop | Sangria de caixa |
| check | Conferencia de caixa |
| resolve_divergence | Resolver divergencias |
Beauty Center
Beauty Appointment (Agendamento)
| Permissao | Descricao |
|---|
| view_all/own | Ver agendamentos |
| create | Criar agendamento |
| edit_all/own | Editar agendamentos |
| destroy_all/own | Cancelar agendamentos |
| checkin | Fazer check-in |
| start | Iniciar servico |
| finish | Finalizar e checkout |
| cancel_checkin | Desfazer check-in |
| return_to_checkin | Voltar para check-in |
| return_to_running | Retomar servico |
| call | Chamar cliente |
| generate_sale | Gerar venda |
Beauty Service (Servico)
| Permissao | Descricao |
|---|
| view | Ver servicos |
| create | Adicionar servico |
| edit | Editar servico |
| destroy | Remover servico |
| evaluate | Avaliar servico |
| control | Controlar execucao (play/pause/stop) |
| select_professional | Atribuir profissional |
CRM - Gestao de Clientes
Customer (Cliente)
| Permissao | Descricao |
|---|
| view_all/own | Ver clientes |
| create | Cadastrar cliente |
| edit_all/own | Editar clientes |
| destroy_all/own | Excluir clientes |
Pet
| Permissao | Descricao |
|---|
| view_all/own | Ver pets |
| create | Cadastrar pet |
| edit_all/own | Editar pets |
| destroy_all/own | Excluir pets |
Credit/Cashback Transaction
| Permissao | Descricao |
|---|
| view_all/own | Ver transacoes |
| create | Emitir credito/cashback |
| use | Utilizar credito/cashback |
| edit_all/own | Editar transacoes |
Financial - Financeiro
Financial Transaction
| Permissao | Descricao |
|---|
| view_all/own | Ver transacoes |
| create | Criar transacao |
| edit_all/own | Editar transacoes |
| destroy_all/own | Excluir transacoes |
Financial Account
| Permissao | Descricao |
|---|
| view_all/own | Ver contas |
| create | Criar conta |
| edit_all/own | Editar contas |
| destroy_all/own | Excluir contas |
| reconcile | Fazer conciliacao |
Stock - Estoque
Stock Product
| Permissao | Descricao |
|---|
| view | Ver produtos |
| create | Cadastrar produto |
| edit | Editar produto |
| destroy | Excluir produto |
| export | Exportar lista |
Stock Purchase
| Permissao | Descricao |
|---|
| view_all/own | Ver compras |
| create | Criar pedido de compra |
| edit_all/own | Editar compras |
| destroy_all/own | Excluir compras |
| approve | Aprovar compra |
| cancel | Cancelar compra |
| receive | Receber mercadoria |
RH - Recursos Humanos
Professional
| Permissao | Descricao |
|---|
| view_all/own | Ver profissionais |
| create | Cadastrar profissional |
| edit_all/own | Editar profissionais |
| destroy_all/own | Excluir profissionais |
| activate | Ativar profissional |
| deactivate | Desativar profissional |
User Management
| Permissao | Descricao |
|---|
| view | Ver usuarios |
| create | Criar usuario |
| edit | Editar usuario |
| destroy | Excluir usuario |
| view_permissions | Ver permissoes |
| edit_permissions | Alterar permissoes |
Regras de Negocio
Escopo de Permissoes
Dependencias de Permissao
Algumas permissoes requerem outras:
| Permissao | Requer |
|---|
| sale.finalize | sale.edit_all OU sale.edit_own |
| sale.finalize_and_pay | sale.edit_all OU sale.edit_own |
| checkout.pay | checkout.edit_all OU checkout.edit_own |
| cashier.close | cashier.edit_all OU cashier.edit_own |
| budget.convert_to_sale | budget.edit_all OU budget.edit_own |
Exclusividade Mutua
Algumas permissoes sao mutuamente exclusivas:
| Permissao A | Conflita com |
|---|
| view_all | view_own |
| edit_all | edit_own |
| destroy_all | destroy_own |
Auto-habilitacao
Certas permissoes habilitam outras automaticamente:
| Ao selecionar | Auto-habilita |
|---|
| create | view_own |
| edit_all | view_all |
| edit_own | view_own |
| destroy_all | view_all |
| destroy_own | view_own |
| finalize | edit_all OU edit_own |
Grants (Permissoes Relacionadas)
Ao conceder uma permissao, outras sao concedidas automaticamente:
Exemplo: sale.create
Ao conceder sale.create, o usuario recebe:
- sale_product.select, index, show, add_to_sale
- sale_service.select, index, show, add_to_sale
- sale_package.select, index, show, add_to_sale
- cart_items.index, show, update, create, destroy
- professional.select
- customer.select
- pet.select
- address.select
Escopo por Store
Profiles podem ser:
| Tipo | Descricao |
|---|
| Account-level | Aplica-se a todas as Stores |
| Store-level | Aplica-se apenas a uma Store especifica |
Validacoes de Interface
A interface previne combinacoes invalidas:
- view_all/view_own: Mutuamente exclusivos
- edit_all/edit_own: Mutuamente exclusivos
- destroy_all/destroy_own: Mutuamente exclusivos
- Acoes requerem view: Nao pode editar sem poder ver
- Acoes especiais requerem edit: Nao pode finalizar sem poder editar
Permissoes
| Acao | Quem Pode |
|---|
| Criar | Owner, usuarios com permissao de RH |
| Editar | Owner, usuarios com permissao de RH |
| Excluir | Owner, usuarios com permissao de RH |
| Ver | Owner, usuarios com permissao de RH |
Perfis Sugeridos
Gerente
- Todos os menus
- Todos os dashboards
- view_all, create, edit_all, destroy_all em tudo
- Todas as acoes especiais
Atendente/Caixa
- PDV, CRM
- Dashboard PDV
- sale: view_own, create, edit_own, finalize, pay
- cashier: view_own, open, close
- customer: view_all, create
Tosador/Banhista
- Beauty Center
- Dashboard Beauty Center
- beauty_appointment: view_own, edit_own, checkin, start, finish
- beauty_service: view, control
Entregador
- Delivery
- Dashboard Delivery
- delivery: view_own, change_status, receive
Restricoes Importantes
- Nome Unico: Nome do perfil deve ser unico na Account
- Nao Excluir com Usuarios: Profile com usuarios vinculados nao pode ser excluido
- Owner Nao Usa Profile: Owner tem acesso total sem precisar de Profile
- Validacao em Cadeia: Dependencias sao verificadas automaticamente
- Isolamento por Account: Profiles sao especificos de cada Account