Requisito/Story/Issue (informe o requisito relacionado) :
DAGROFRAME-5541-Plataforma Agro (Frontend) :: Validação ao logar (licenças de usuários/dispositivos excedidas) (Imagem 1 & Imagem 2)ConcluídoDAGROFRAME-5542-Plataforma Agro (Frontend) :: Nova tela de "Gestão de Licenças" (botão ação grid "Clientes") (Imagem 3)Concluído
02. SITUAÇÃO/REQUISITO
Construir APIs e tela para:
Visualizar histórico de pulsos de licença enviados pelos aplicativos móveis com às colunas: Ações, T-Code, ID Dispositivo, Aplicativo, ID Usuário, Tipo Pulso, Data Criação e Data Atualização;
Coluna Ações deverá ter ícone de documento que abre modal para exibir Detalhes do Token de Licença;
Coluna Tipo Pulso deverá exibir badges coloridos diferenciados por tipo de pulso:
LOGIN_SUCCESS, DATA_SYNC_SUCCESS, APP_OPENING e DATA_SYNC_FIRST em verde (color-10);
LOGIN_FAILURE e DATA_SYNC_FAILURE em vermelho (color-07);
APP_CLOSE em cinza (color-05);
LOGIN_ATTEMPT e DATA_SYNC_ATTEMPT em amarelo (color-02);
OTHER em roxo (color-08).
Colunas Data Criação e Data Atualização deverão exibir data no formato dd/MM/yyyy HH:mm:ss (exemplo: 13/11/2025 10:32:20) (considerando UTC);
Filtrar dados por cliente (T-Code), Data Inicial, Data Final, Aplicativo, Usuário, Dispositivo Móvel, Tipo Pulso, Status (status da licença) e Autorizado;
Exibir métricas agregadas de Dispositivos Únicos, Aplicativos Únicos e Usuários Únicos em relação ao Total de Registros;
Permitir busca rápida por texto livre com correspondência parcial (case-insensitive) nos campos: T-Code, ID Dispositivo, Nome App, Nome Exibição App, ID Usuário, Tipo Pulso, Mensagem (token de licença) e Status (token de licença);
Exportar dados filtrados para arquivo CSV com mesmo critério de busca aplicado na tela (desconsiderar paginação);
Visualizar detalhes de cada pulso incluindo informações do token de licença (Data Emissão, Expiração, Status, Autorização, Mensagem) e dados JSON do evento;
Validar período de datas obrigatoriamente em conjunto (ambas devem ser preenchidas) e garantir que data final seja maior ou igual à inicial;
Definir filtros de data padrão automaticamente ao carregar a tela, sendo Data Inicial o primeiro dia do mês corrente e Data Final o dia atual;
Manter persistência do arquivo exportado em localStorage permitindo download posterior, só é atualizado se clicar no botão "Confirmar" e caso a aba seja recarregada;
Aplicar formatação CSS compacta na tabela para melhor visualização de grande volume de dados (modificar CSS da tabela do PO UI no componente da tela);
03. SOLUÇÃO
Refatorado o fluxo de loginpara centralizar o set/captura dotoken, evitandomúltiplos pontosde manipulação e corrigindo problemas de autenticação;
Implementada verificação delicenças excedidasapóslogin(para Role do tipo CLIENTE);
Adicionadacoluna de ações na tabela deGestão de Clientespara redirecionamento à tela deGestão de Licenças;
Criada tela "Gestão de Licenças" com dois containers:
Licença(container superior): permite gerenciar a licença geral do cliente, com opção de habilitar/desabilitar (switch) e inputs numéricos para "Acessos", "Usuários Móveis" e "Dispositivos Móveis";
Configurações por Aplicativos Móveis(container inferior): exibe tabela com colunas "Aplicativo Móvel", "Autorizado" (badge verde/vermelho), "Acessos", "Dispositivos Móveis" e "Ações" (ícone de lápis para editar). Ao editar, abremodalcom botão "Confirmar" queinsereouatualizaos dados.
Corrigido bugdo botão "Carregar mais resultados" na telaGestão de Clientes(paginação e tuplas duplicadas).