Fluxa
Projetos

Plataforma corporativa · Segurança patrimonial

Operação de segurança multi-site em um só painel.

Papel
Concepção, arquitetura e desenvolvimento full-stack
Formato
Aplicativo desktop + servidor web na rede
Escala
11 módulos · mais de 20 mil linhas de Python
Contexto
Corporativo · apresentado de forma genericizada

11

módulos integrados

+20k

linhas de Python

3

formatos de exportação

Contexto

O problema e a resposta

Operações de segurança patrimonial com vários sites costumam viver em planilhas, grupos de mensagem e formulários soltos: cada site registra do seu jeito, ninguém consolida e a auditoria vira caça ao tesouro.

O CCTV Control Panel nasceu para ser a fonte única dessa operação. Cada usuário enxerga apenas os sites aos quais está vinculado; cada registro tem numeração sequencial por site e ano, trilha de auditoria e evidência fotográfica; e a gestão acompanha tudo em um overview com gráficos consolidados.

O mesmo código roda como aplicativo desktop (pywebview + WebView2) ou como servidor na rede para acesso multi-dispositivo, com atualização automática e rollback em caso de falha.

O que faz

Módulos e funcionalidades

01

Ocorrências e investigações

Registro com fotos, priorização, status e código sequencial por site.

02

Não conformidades (ANC)

Abertura → plano de ação → fechamento, com exclusão aprovada por admin e e-mails transacionais.

03

Análises investigativas

Dossiê com imagens e exportação em PDF.

04

Passagem de turno

Assinaturas digitais (canvas) de saída e entrada, com histórico.

05

Câmeras e portas

Cadastro e checklists periódicos com evidência fotográfica.

06

Claviculário e armários

Retirada e devolução de chaves, termo assinado, chave reserva e vistorias com foto.

07

Portas de emergência

Checklists, disparos de alarme e botões de pânico.

08

Achados & perdidos e descarte

Registro fotográfico, devolução assinada e numeração por site/ano.

09

Overview e exportações

KPIs com Chart.js; Excel, PDF e apresentação PPTX gerada por código com os gráficos do front.

Destaques de engenharia

Decisões que fazem diferença

  1. 01

    Escopo por site aplicado na consulta

    Cada usuário enxerga só os sites vinculados — e o filtro entra na query de todos os módulos, não na tela. Não existe caminho para vazar dado de outro site.

  2. 02

    Soft-delete com auditoria via filtro global de ORM

    Mixin SQLAlchemy + do_orm_execute / with_loader_criteria: nenhuma listagem precisa lembrar de filtrar excluídos. Lixeira genérica com restauração para 11 módulos, registrando quem, quando e por quê.

  3. 03

    Canonicalização de sites

    Qualquer grafia é resolvida para o nome oficial antes de gravar, eliminando divergências de cadastro na origem.

  4. 04

    Auto-update com rollback

    Releases versionados em banco; o app confere a versão mínima no boot, baixa e aplica a atualização — e reverte sozinho se algo falhar.

  5. 05

    Numeração sequencial resistente

    Sequência por site/ano com verificação de unicidade que sobrevive a exclusões e registros legados.

  6. 06

    LGPD por padrão

    Aceite obrigatório com registro de data, textos de privacidade e bloqueio de acesso até o consentimento.

Stack

Backend

PythonFlaskSQLAlchemyOracleSupabase

Frontend

Jinja2HTMXChart.jsCSS com design tokens

Documentos

reportlabopenpyxlpython-pptxPillow

Desktop

pywebview / WebView2PyInstallerwaitress

Marca, credenciais e dados de clientes foram removidos. Arquitetura, interfaces e funcionalidades são as reais.

Quer algo assim?

Me conte o processo que hoje depende de planilha, papel ou boa vontade.

Próximo projeto

Risk Event Report

App desktop · Gestão de risco