Árvore de páginas

Versões comparadas

Chave

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

...

  • 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: (foram desenvolvidos os seguintes recursos):
    • Inicialização automática:

      • Carrega opções de filtros via 4 APIs distintas (clientes, apps, dispositivos, usuários);
      • Define datas padrão: 1º dia do mês atual até hoje;
      • PO-UI dispara busca automaticamente ao preencher initValue nas datas.
    • Widgets de métricas:
      • Dispositivos Únicos / Total Registros na Tabela;
      • Aplicativos Únicos / Total Registros na Tabela;
      • Usuários Únicos / Total Registros na Tabela.
    • Colunas da Tabela (Ações | T-Code | ID Dispositivo | Aplicativo | Usuário ID | Tipo Pulso (badge colorido) | Pulsado em | Data Criação);
    • Busca rápida: Campo texto livre que busca em 8 campos (limpa filtros avançados);
    • Busca avançada: 9 filtros com validação de datas obrigatórias juntas e data final ≥ inicial;
    • Modal de detalhes:
      • Com Token E Dados: Exibe seção token completa + JSON;
      • Sem Token, Com Dados: Oculta seção token, exibe apenas JSON;
      • Com Token, Sem Dados: Exibe token completo, JSON vazio {};
      • Sem Token E Sem Dados: Modal não abre, exibe notificação informativa.
    • Exportação CSV:
      • Botão desabilitado se tabela vazia;
      • Confirmação via popover com loading (mínimo 500ms);
      • Referência do Blob salvo em localStorage com persistência entre recargas;
      • Nome arquivo: license-pulse-history-YYYY-MM-DD.csv;
      • Limpeza automática no ngOnDestroy.
    • CSS  da tabela do PO UI customizado:

      • font-size 11px, padding 6px, line-height 0.9;
      • Escopo local (:host ::ng-deep) para não afetar outras telas.
  • Demonstração:
    • Figura 1:
  • Implementada verificação de licenças excedidas após login (para Role do tipo CLIENTE);

Image Removed

  • Adicionada coluna de ações na tabela de Gestão de Clientes para redirecionamento à tela de Gestã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, abre modal com botão "Confirmar" que insere ou atualiza os dados.

Image Removed

Image Removed

Image Removed

  • Corrigido bug do botão "Carregar mais resultados" na tela Gestão de Clientes (paginação e tuplas duplicadas).

04. DEMAIS INFORMAÇÕES

Não se aplica.

...