# O que é e o que faz

O **Business Intelligence (BI)** da CEBI Informática é uma plataforma web de painéis gerenciais (dashboards), desenvolvida pela própria CEBI. Ele transforma dados vindos de outros sistemas em indicadores, gráficos e tabelas prontos para consulta, acompanhamento e apresentação — sem que o usuário precise programar nem montar consultas.

## Para que serve

- **Acompanhar indicadores** de uma operação (faturamento, inadimplência, ordens de serviço, chamados etc.) em um só lugar.
- **Comparar e analisar**: por período, por categoria (bairro, tipo de serviço, situação…) e com filtros.
- **Apresentar resultados** em reuniões e em TVs, com atualização automática.
- **Compartilhar** painéis com quem não usa o sistema, por link somente leitura (público ou com senha).

## Como funciona

O uso segue quatro etapas:

| Etapa | O que acontece |
|---|---|
| 1. **Fonte de dados** | Cadastra-se o endereço de uma API (REST) que devolve uma lista de registros em JSON. O BI busca os dados, detecta os campos (valores, datas, categorias, situações) e os atualiza automaticamente na frequência escolhida. |
| 2. **Novo dashboard** | Escolhe-se a fonte e o BI **gera o painel automaticamente**, já com indicadores, gráficos e filtros adequados aos dados. |
| 3. **Edição** | O usuário ajusta o que quiser: adiciona, remove, move e redimensiona componentes, troca títulos e cores. |
| 4. **Publicação** | O painel publicado pode ser consultado, filtrado, exportado, apresentado e compartilhado por link. |

## Principais funcionalidades

- **Geração automática de dashboards** a partir dos dados, com modelos prontos: *Visão geral*, *Comparativo*, *Acompanhamento* e *Análise detalhada* (ou tela em branco).
- **Componentes**: indicadores (KPI) com comparação ao período anterior, gráficos de linha, área, barras (verticais e horizontais), pizza/donut, ranking e tabela.
- **Filtros**: filtros pré-definidos no topo do painel e **filtro por clique** — ao clicar em uma barra, fatia ou linha de ranking, todo o painel passa a mostrar só aquele valor.
- **Paletas de cores** prontas (Corporativo, Executivo, Financeiro, Moderno etc.) ou personalizada a partir da cor da marca.
- **Exportação** do painel em imagem (PNG/JPG) e PDF, e dos dados em Excel (.xlsx) e CSV, respeitando os filtros aplicados.
- **Modo apresentação** em tela cheia, com relógio e atualização automática a cada 30 segundos.
- **Compartilhamento por link** somente leitura, público ou protegido por senha, com expiração (7, 15, 30 dias ou sem expiração) e controle de acessos na tela *Publicações*.
- **Atualização automática dos dados** de cada fonte (a cada 15 min, 1 hora, 6 horas, diária ou manual).
- **Identidade visual** da empresa (nome e logotipo) aplicada ao sistema, às exportações e aos links.
- **Auditoria** de todas as ações (criação, edição, publicação, exclusão, login…).
- Funciona no computador, no tablet e no celular, com **modo claro e escuro**.

## Segurança

- Acesso com **e-mail e senha** individuais e controle de **permissões por perfil** (visualizar, criar, editar, excluir) para cada área do sistema.
- Links compartilhados são **somente leitura**: quem recebe não edita nem exporta, e o link pode ser revogado a qualquer momento.
- Senhas e tokens de acesso às fontes de dados são guardados **criptografados**.
- Toda ação relevante fica registrada na **Auditoria**.

## Arquitetura e tecnologia

| Parte | Tecnologia |
|---|---|
| Tela (frontend) | React 18 + TypeScript, Vite, Tailwind CSS, Recharts (gráficos), Zustand |
| API (backend) | .NET 8 (ASP.NET Core, C#), Entity Framework Core, autenticação JWT |
| Banco de dados | Oracle 19c (SQLite como alternativa local de desenvolvimento) |
| Publicação | IIS no Windows Server |

O usuário acessa a **tela** pelo navegador; a tela conversa com a **API do BI**, que guarda painéis, fontes e usuários no **Oracle** e busca os dados nas **APIs de origem**. Por isso as APIs de origem precisam estar acessíveis **a partir do servidor do BI** (não do computador do usuário).

## Limitações atuais

- As fontes de dados são APIs REST que respondem a uma consulta simples (GET) com uma lista de registros em JSON. Conexão direta a bancos de dados ou planilhas ainda não está disponível.
- Cada dashboard usa uma única fonte de dados.

## Documentação relacionada

- **Manual de instalação** — como instalar o BI em um Windows Server.
- **Manual de atualização** — como atualizar uma instalação existente para uma versão nova.
- **Manual do usuário** — como usar o sistema, passo a passo e com imagens.