2026-05-18 16:39:29 -03:00

240 lines
5.7 KiB
Markdown

# Projeto Aprovação Pedidos - Ginseng
Este é um projeto Django com a estética visual padronizada de todos os apps da empresa Ginseng. Contém um app `home` com um dashboard completo.
## 📋 Estrutura do Projeto
```
projeto-aprovação-pedidos/
├── aprovacao_pedidos/ # Configuração principal do Django
│ ├── settings.py # Configurações do Django
│ ├── urls.py # URLs principais
│ ├── wsgi.py # WSGI para deploy
│ ├── asgi.py # ASGI para deploy
│ └── middleware.py # Middlewares customizados
├── home/ # App principal com dashboard
│ ├── templates/home/ # Templates HTML
│ ├── views.py # Views
│ ├── urls.py # URLs do app
│ └── migrations/ # Migrações de banco de dados
├── manage.py # Gerenciador do Django
├── requirements.txt # Dependências Python
├── Dockerfile # Configuração Docker
└── .dockerignore # Arquivos ignorados no Docker
```
## 🚀 Como Rodar Localmente
### Pré-requisitos
- Python 3.11+
- pip (gerenciador de pacotes Python)
- Git (opcional)
### Instalação Rápida
1. **Clone ou copie o projeto para sua máquina**
2. **Instale as dependências:**
```bash
pip install -r requirements.txt
```
3. **Execute as migrações do banco de dados:**
```bash
python manage.py migrate
```
4. **Crie um superusuário (opcional, para acessar admin):**
```bash
python manage.py createsuperuser
```
5. **Inicie o servidor de desenvolvimento:**
```bash
python manage.py runserver
```
6. **Acesse a aplicação:**
- **Home:** http://localhost:8000/
- **Admin:** http://localhost:8000/admin/
## 🐳 Como Rodar com Docker
### Pré-requisitos
- Docker instalado e rodando
### Passos
1. **Build da imagem Docker:**
```bash
docker build -t projeto-aprovacao-pedidos .
```
2. **Execute o container:**
```bash
docker run -p 8000:8000 projeto-aprovacao-pedidos
```
3. **Acesse a aplicação:**
```
http://localhost:8000/
```
### Com Docker Compose (Recomendado)
Crie um arquivo `docker-compose.yml`:
```yaml
version: '3.8'
services:
web:
build: .
ports:
- "8000:8000"
environment:
- DEBUG=True
- PYTHONUNBUFFERED=1
volumes:
- .:/app
```
Depois execute:
```bash
docker-compose up --build
```
## 📱 Features Implementadas
✅ **Dashboard Responsivo**
- 4 cards informativos
- Gráfico comparativo com Chart.js
- Layout que se adapta a todos os tamanhos de tela
✅ **Sidebar Colapsível**
- Navegação intuitiva
- Menu fixo no lado esquerdo
- Efeito de backdrop ao abrir
✅ **Painel de Filtros**
- Desliza pela direita da tela
- Filtros customizáveis
- Opção para limpar todos os filtros
✅ **Header com Logo**
- Logo Ginseng oficial
- Ciclo ativo exibido
- Botões de ação rápida
✅ **Design Moderno**
- Cores padronizadas da empresa (#03506B)
- Tipografia clean (Segoe UI)
- Sombras e transições suaves
## 🎨 Personalizando a Página
### Alterar as Cores Principais
Edit o arquivo [home/templates/home/home_page.html](home/templates/home/home_page.html) e modifique as CSS variables no `<style>`:
```css
:root {
--accent: #03506B; /* Cor principal */
--accent-light: #046b8f; /* Cor hover */
--bg-color: #f6f8fb; /* Fundo */
--text-primary: #111; /* Texto principal */
--text-secondary: #6b7280; /* Texto secundário */
}
```
### Adicionar Novos Cards
No template HTML, dentro da seção `.cards-row`, adicione:
```html
<div class="card">
<p class="card-title">Seu título</p>
<p class="card-value" id="seuId">—</p>
</div>
```
Depois, adicione os dados no JavaScript:
```javascript
document.getElementById('seuId').textContent = 'Seu valor';
```
## 📊 Integrando com APIs Reais
Para conectar a dados reais, modifique o arquivo [home/views.py](home/views.py):
```python
@login_required(login_url='/login/')
def home_page(request):
"""Nova página home com estética consistente do projeto."""
# Fetch dados da API
response = requests.get('https://sua-api.com/dados')
dados = response.json()
context = {
'dados': dados,
'user_email': request.user.email if request.user.is_authenticated else '',
}
return render(request, "home/home_page.html", context)
```
## 🔒 Segurança
- Django CSRF protection ativada
- Configuração segura para produção (altere `DEBUG=False` em settings.py)
- Variáveis sensíveis em .env (recomendado usar python-dotenv)
## 📚 Adicionar Dependências
Para instalar novos pacotes:
```bash
pip install nome-do-pacote
pip freeze > requirements.txt
```
## 🐛 Troubleshooting
### Erro "ModuleNotFoundError"
```bash
pip install -r requirements.txt
```
### Porta 8000 já em uso
```bash
python manage.py runserver 8001
```
### Limpar cache e arquivos compilados
```bash
find . -type d -name __pycache__ -exec rm -r {} +
find . -type f -name "*.pyc" -delete
```
## 📝 Próximos Passos
1. Criar superusuário para o admin
2. Integrar com suas APIs de dados
3. Adicionar novos apps Django conforme necessário
4. Configurar autenticação (se necessário)
5. Deploy em servidor (AWS, Heroku, etc.)
## 🤝 Contribuindo
Para fazer mudanças mantendo a estética:
1. Mantenha as cores padronizadas
2. Use os componentes existentes (cards, buttons, etc.)
3. Siga a estrutura de pastas do projeto
4. Documente mudanças significativas
## 📞 Suporte
Para dúvidas ou problemas, entre em contato com o time de desenvolvimento.
---
**© 2026 Ginseng Pedidos. Todos os direitos reservados.**