114 lines
2.7 KiB
Markdown
114 lines
2.7 KiB
Markdown
# 🚛 Gade Logística — Sistema de Controle de Custos
|
|
|
|
Sistema web para controle de custos de entregas hospitalares da **Gade Hospitalar**.
|
|
|
|
**Stack:** Ruby on Rails 7+ · PostgreSQL 15 · Docker · Tailwind CSS · Hotwire
|
|
|
|
---
|
|
|
|
## 🚀 Setup rápido (Docker)
|
|
|
|
### 1. Clone o repositório
|
|
```bash
|
|
git clone https://git.xenserver.com.br/[USUARIO]/logistica-controle-custos.git
|
|
cd logistica-controle-custos
|
|
```
|
|
|
|
### 2. Configure o ambiente
|
|
```bash
|
|
cp .env.example .env
|
|
# Edite .env com suas credenciais reais
|
|
nano .env
|
|
```
|
|
|
|
### 3. Gere o SECRET_KEY_BASE
|
|
```bash
|
|
docker run --rm ruby:3.2.2-slim bundle exec rails secret
|
|
# Cole o valor gerado no .env → SECRET_KEY_BASE=...
|
|
```
|
|
|
|
### 4. Suba os containers
|
|
```bash
|
|
docker-compose up -d
|
|
```
|
|
|
|
### 5. Crie o banco e rode as migrations
|
|
```bash
|
|
docker-compose exec app bundle exec rails db:create db:migrate db:seed
|
|
```
|
|
|
|
### 6. Acesse
|
|
```
|
|
http://localhost:3000
|
|
Login: admin@gade.com
|
|
Senha: Gade@2026! ← ALTERE NO PRIMEIRO ACESSO
|
|
```
|
|
|
|
---
|
|
|
|
## ⚠️ Banco de dados existente
|
|
|
|
A tabela `public.db_reem_simplerout_2026` **já existe** no PostgreSQL da Gade Hospitalar
|
|
e é atualizada automaticamente a cada 1 hora por outro sistema.
|
|
|
|
**NUNCA execute:** `DROP TABLE`, `TRUNCATE`, `DELETE` ou migrations nessa tabela.
|
|
|
|
Se o banco existente estiver em servidor separado, configure `DB_HOST` no `.env`
|
|
apontando para o IP/hostname correto.
|
|
|
|
---
|
|
|
|
## 🔧 Comandos úteis
|
|
|
|
```bash
|
|
# Rodar migrations
|
|
docker-compose exec app bundle exec rails db:migrate
|
|
|
|
# Rodar seeds
|
|
docker-compose exec app bundle exec rails db:seed
|
|
|
|
# Console Rails
|
|
docker-compose exec app bundle exec rails console
|
|
|
|
# Logs da app
|
|
docker-compose logs -f app
|
|
|
|
# Parar containers
|
|
docker-compose down
|
|
```
|
|
|
|
---
|
|
|
|
## 🏗️ Fases de implementação
|
|
|
|
| Fase | Status | Descrição |
|
|
|------|--------|-----------|
|
|
| 1 | ✅ | Setup + Docker + Git + Models + Migrations |
|
|
| 2 | ⏳ | Auth (Devise/Pundit) + Perfis + Configurações |
|
|
| 3 | ⏳ | Dashboard com métricas e gráficos |
|
|
| 4 | ⏳ | Job de atualização automática (1h) + Auditoria |
|
|
| 5 | ⏳ | Consolidação — wizard Passo 1 |
|
|
| 6 | ⏳ | Validação de entregas + toggles + ações em massa |
|
|
| 7 | ⏳ | Geração de PDFs (relatório + holerite) |
|
|
| 8 | ⏳ | Painel motorista + notificações + finalização |
|
|
|
|
---
|
|
|
|
## 🔐 Segurança
|
|
|
|
- **NUNCA** versione o arquivo `.env`
|
|
- **NUNCA** commite `config/master.key` ou credenciais
|
|
- Repositório deve ser marcado como **PRIVADO**
|
|
- Use `ENV['VARIAVEL']` no código — nunca hardcode senhas
|
|
|
|
---
|
|
|
|
## 👥 Perfis de acesso
|
|
|
|
| Perfil | Acesso |
|
|
|--------|--------|
|
|
| Admin | Tudo |
|
|
| Gerente | Dashboard + Consolidações + PDFs |
|
|
| Operador | Consolidações (criar + validar) |
|
|
| Motorista | Painel pessoal + baixar próprio PDF |
|