Time:
- Gestão e Rastreamento de Ativos via QR Code: Cadastro, identificação rápida pela câmera do dispositivo e impressão direta de etiquetas térmicas/físicas.
- Catalogação Inteligente com Inteligência Artificial: Reconhecimento visual de equipamentos laboratoriais por foto (visão computacional com IA multimodal), preenchendo automaticamente nome, especificações, categoria e localização em lote ou individualmente.
- Controle de Ordens de Serviço (O.S.) e Manutenções: Abertura, acompanhamento, atribuição de técnicos responsáveis e conclusão de manutenções preventivas e corretivas com observações técnicas.
- Agendamentos e Reservas de Equipamentos: Controle de horários e períodos de uso de cada ativo por técnicos e pesquisadores, evitando conflitos.
- Painel Central (Dashboard) em Tempo Real: Indicadores de ativos disponíveis, ordens de serviço pendentes, reservas do dia e atalhos operacionais rápidos.
- Histórico Completo de Movimentações: Linha do tempo integrada no detalhe do ativo cruzando ordens de serviço executadas e agendamentos anteriores.
- Gestão de Associados e Equipe: Controle de funcionários, status operacional (Ativo, Inativo, Temp. Inativo), criação e atribuição de cargos, e gestão de credenciais de acesso (e-mail e redefinição segura de senha).
- Diferenciação de Níveis de Acesso: Perfis administrativos (corporation) e operacionais (associate) com fluxos e permissões direcionadas.
- Log de Auditoria Crítica Imutável: Registro detalhado e com carimbo de tempo de ações sensíveis (criação, edição e exclusão de ativos, associados, cargos, status e manutenções) para atendimento a normas ISO e Anvisa.
SiGLab/app/src/main/java/br/com/firjansenaisesi/aluno/siglab/
├── MainActivity.kt # Ponto de entrada da aplicação Android
├── MainApplication.kt # Inicialização do Koin (DI) e contexto global
├── ui/ # Camada de Interface do Usuário (Jetpack Compose)
│ ├── App.kt # Navegação centralizada (NavHost) e transições
│ ├── component/ # Componentes reutilizáveis (Cards, Dialogs, Dropdowns, Chips)
│ ├── screen/ # Telas do aplicativo
│ └── theme/ # Definição de cores, tipografia e temas claro/escuro
├── viewmodel/ # ViewModels (Gerenciamento de estado via StateFlow)
├── data/ # Camada de Dados e Modelos
│ ├── AppRepository.kt # Repositório central de regras de negócio e dados
│ ├── appwrite/ # Modelos de tabelas, constantes e permissões Appwrite
│ ├── datastore/ # Persistência local segura de preferências e sessão
│ └── openrouter/ # Integração com API de IA para análise multimodal de fotos
├── di/ # Módulos de Injeção de Dependências (Koin)
└── util/ # Utilitários (Formatação de data/hora e geração/impressão de QR Code)
| Tecnologia / Biblioteca | Finalidade no SiGLab |
|---|---|
| Kotlin (2.3.x) & Jetpack Compose (Material 3) | Interface de usuário moderna, declarativa e totalmente responsiva. |
| Koin (Annotations & ViewModel) | Injeção de dependências leve e idiomática em Kotlin. |
| Appwrite Android SDK (1.6.0) | Backend-as-a-Service (Autenticação de contas, Banco de Dados NoSQL e Storage). |
| CameraX & ML Kit Barcode Scanning | Acesso de alta performance à câmera para leitura instantânea de QR Codes. |
| ZXing & AndroidX Print | Geração de bitmaps de QR Code e impressão direta de etiquetas em impressoras de rede/térmicas. |
| Retrofit & OkHttp | Cliente HTTP com suporte a serialização JSON para integração com APIs REST externas. |
| OpenRouter API (Gemini Flash Vision) | Análise multimodal de imagens para catalogação automática de equipamentos por IA. |
| AndroidX DataStore | Armazenamento reativo de dados de sessão e preferências locais do usuário. |
| Coil | Carregamento assíncrono e cache otimizado de imagens e logotipos. |
- Compile SDK: 37
- Target SDK: 36
- Min SDK: 26 (Android 8.0 Oreo ou superior)
- Java / JDK: 11 ou superior
Para executar o projeto, crie um arquivo secrets.properties na raiz do projeto (baseado no arquivo secrets.properties.example fornecido) com as credenciais do seu backend Appwrite e da API do OpenRouter:
# Appwrite
APPWRITE_ENDPOINT=https://sfo.cloud.appwrite.io/v1
APPWRITE_PROJECT_ID=seu_appwrite_project_id
APPWRITE_DATABASE_ID=seu_appwrite_database_id
# OpenRouter (IA Multimodal)
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1/
OPENROUTER_API_KEY=sua_openrouter_api_key
OPENROUTER_MODEL=google/gemma-4-26b-a4b-it:free










