Project

General

Profile

Actions

Feature #1

open

Implementar atribuição automática de perfil 'Mobilizador' na criação de Evento/Coletivo`

Added by Jonathas Cerqueira Brito about 2 months ago.

Status:
New
Priority:
High
Start date:
11/25/2025
Due date:
% Done:

0%

Estimated time:

Description

Contexto:
O sistema deve promover automaticamente um usuário comum para o perfil de Mobilizador assim que ele criar seu primeiro Evento ou Coletivo. Isso elimina a necessidade de solicitação manual de permissão e incentiva o uso da plataforma.

História de Usuário:

"Como um usuário logado, ao finalizar o cadastro de um Evento ou Coletivo com sucesso, quero que meu perfil seja atualizado para 'Mobilizador' automaticamente no sistema (Backend) e na tela (Frontend), liberando acesso imediato às ferramentas de gestão."


Especificações Técnicas - Backend (Laravel):

  1. Lógica nos Controllers (EventController e CollectiveController):
    • No método store (criação), após a persistência bem-sucedida da entidade (Evento ou Coletivo), verificar se o usuário autenticado já possui a Role 'Mobilizador'.
    • Se não possuir, atribuir a Role ao usuário ($user->assignRole('mobilizador') ou equivalente).
    • Importante: Utilizar Database Transactions para garantir que, se o evento for criado mas a atribuição do perfil falhar, tudo seja desfeito (rollback).

Especificações Técnicas - Frontend:

  1. Interceptação e Atualização de Estado:

    • No serviço/componente responsável pelo submit do formulário, ler a resposta da API.
    • Se a resposta indicar sucesso e mudança de perfil, atualizar imediatamente o estado global da aplicação (Store/Context/Session) para refletir as novas permissões sem necessidade de relogin.
  2. Interface e Navegação:

    • Exibir feedback visual: "Evento criado! Você agora tem acesso às ferramentas de Mobilizador."
    • Forçar a re-renderização do Menu User para exibir as novas opções.
    • Redirecionar o usuário para a área de gestão do item recém-criado.

No data to display

Actions

Also available in: Atom PDF