Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

  • 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

  • Back-End (foram desenvolvidas APIs no endpoint /v1/services/license/pulse):
    • Método: GET | Endpoint: /client-distinct | Descrição: Retorna lista de clientes únicos (tcode + displayName) para popular filtro T-Code;
    • Método: POST | Endpoint: /app-distinct | Descrição: Retorna lista de aplicativos móveis únicos, opcionalmente filtrados por tcodes;
    • Método: POST | Endpoint: /device-distinct | Descrição: Retorna lista de dispositivos únicos, opcionalmente filtrados por tcodes;
    • Método: POST | Endpoint: /user-distinct | Descrição: Retorna lista de usuários únicos, opcionalmente filtrados por tcodes;
    • Método: POST | Endpoint: /metrics-distinct | Descrição: Retorna métricas agregadas (dispositivos, apps, usuários únicos + total de registros);
    • Método: POST | Endpoint: /filter | Descrição: Retorna dados paginados aplicando filtros e paginação;
    • Método: POST | Endpoint: /export | Descrição: Exporta todos dados filtrados para CSV (ignora paginação).
  • Front-end:Refatorado o fluxo de login para centralizar o set/captura do token, evitando múltiplos pontos de manipulação e corrigindo problemas de autenticação;
  • Implementada verificação de licenças excedidas após login (para Role do tipo CLIENTE);

...