Skip to content

SIHEALTH: Plataforma completa de gestão de estoque de medicamentos e dispensações. Oferece visualização em tempo real (KPIs e gráficos interativos), controle de validade/baixo estoque e rastreabilidade de lotes, focada na agilidade operacional e conformidade da farmácia.

Notifications You must be signed in to change notification settings

Naliat/SiHealth

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Demo

sihealth.netlify.app

Prototipação

Protótipo do Figma

📌 Roadmap do Projeto

flowchart TD
    A[Projeto Social - UBS Educacional] --> B[Sprint 1: Infraestrutura + CRUD Inicial]
    A --> C[Sprint 2: CRUD Completo + Dashboard]
    A --> D[Sprint 3: Gestão de Estoque + Relatórios]

    %% Sprint 1
    B --> B1[Backend Sprint 1]
    B --> B2[Frontend Sprint 1]

    B1 --> B1a[Criar projeto FastAPI - estrutura base]
    B1 --> B1b[Configurar conexão MongoDB Atlas]
    B1 --> B1c[Implementar ODMantic ou Motor]
    B1 --> B1d[Modelo e schema Medicamento]
    B1 --> B1e[Endpoints iniciais: POST e GET medicamentos]
    B1 --> B1f[Testar na documentação FastAPI]
    B1 --> B1g[Critérios: API sem erros, conexão estável, cadastro e listagem ok]

    B2 --> B2a[Setup inicial com HTML, CSS e JS]
    B2 --> B2b[Layout base: Navbar e Sidebar]
    B2 --> B2c[Tela Listagem Medicamentos - mock]
    B2 --> B2d[Componente de Tabela Reutilizável em JS]
    B2 --> B2e[Critérios: tela aparece, navegação funciona, layout pronto]

    %% Sprint 2
    C --> C1[Backend Sprint 2]
    C --> C2[Frontend Sprint 2]

    C1 --> C1a[Modelo e schema Usuário - nome, cargo, cpf]
    C1 --> C1b[Finalizar CRUD Medicamento: GET, PUT, DELETE]
    C1 --> C1c[Testes no Insomnia ou Postman]
    C1 --> C1d[Critérios: CRUD completo, banco salva, atualizar e remover ok]

    C2 --> C2a[Integração listagem com API - GET real]
    C2 --> C2b[Tela Cadastro e Editar Medicamento]
    C2 --> C2c[Ações: Criar, Editar, Deletar + feedback visual]
    C2 --> C2d[Dashboard Home - dados mock: total, estoque baixo, últimos cadastros]
    C2 --> C2e[Critérios: UI CRUD completo, tabela atualiza, dashboard aparece]

    %% Sprint 3
    D --> D1[Backend Sprint 3]
    D --> D2[Frontend Sprint 3]

    D1 --> D1a[Modelo Movimentação - entrada, saída, quantidade, medicamento, usuário, data]
    D1 --> D1b[Endpoints: POST entrada, POST saída, GET histórico]
    D1 --> D1c[Regras: não permitir saída maior que estoque, atualizar estoque automático]
    D1 --> D1d[Relatórios: estoque baixo, movimentações]
    D1 --> D1e[Critérios: estoque correto, bloqueio saída insuficiente, histórico ok]

    D2 --> D2a[Telas: Entrada Estoque, Saída Medicamento, Histórico Movimentações]
    D2 --> D2b[Relatórios simples: estoque baixo]
    D2 --> D2c[Feedback: entrada registrada, saída registrada, estoque insuficiente]
    D2 --> D2d[Critérios: fluxo completo UI, estoque e histórico atualizados, validações ok]
Loading
erDiagram

    MEDICAMENTO {
        int id_medicamento PK
        string nome
        string fabricante
        string principio_ativo
        string dosagem
        string categoria
        string descricao
        datetime criado_em
    }

    LOTE {
        int id_lote PK
        int id_medicamento FK
        string numero_lote UK
        string numero_caixa
        int quantidade_por_caixa
        int quantidade_inicial
        int quantidade_atual
        date data_fabricacao
        date data_validade
        datetime criado_em
    }

    ENTRADA {
        int id_entrada PK
        int id_lote FK
        int id_usuario FK
        int quantidade
        datetime data_entrada
        string fornecedor
    }

    SAIDA {
        int id_saida PK
        int id_lote FK
        int id_paciente FK
        int id_usuario_responsavel FK
        int numero_de_caixas_entregues
        int quantidade_por_caixa
        int quantidade_total_entregue
        datetime data_saida
        string observacao
    }

    PACIENTE {
        int id_paciente PK
        string CNS UK
        string nome
        date data_nascimento
        string sexo
        string cpf UK
        datetime criado_em
    }

    USUARIO {
        int id_usuario PK
        string nome
        string email UK
        string senha_hash
        datetime criado_em
    }

    MEDICAMENTO ||--o{ LOTE : "possui"
    LOTE ||--o{ ENTRADA : "registra"
    LOTE ||--o{ SAIDA : "gera"
    PACIENTE ||--o{ SAIDA : "recebe"
    USUARIO ||--o{ ENTRADA : "realiza"
    USUARIO ||--o{ SAIDA : "autoriza"
Loading

About

SIHEALTH: Plataforma completa de gestão de estoque de medicamentos e dispensações. Oferece visualização em tempo real (KPIs e gráficos interativos), controle de validade/baixo estoque e rastreabilidade de lotes, focada na agilidade operacional e conformidade da farmácia.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •