first commit

This commit is contained in:
Rodrigo Nogueira de Sousa
2026-05-22 11:12:19 +01:00
commit 47d2cc65c3
91 changed files with 18528 additions and 0 deletions

163
README_LOCAL.md Normal file
View File

@@ -0,0 +1,163 @@
# AppBarber - Sistema de Gestão de Barbearia Local
Este guia explica como usar a versão local do AppBarber com base de dados local.
## 🔧 Configuração
### 1. Instalação das Dependências
```bash
npm install
# ou
yarn install
```
### 2. Base de Dados Local
Este projeto usa **AsyncStorage** para armazenamento local de dados quando o Supabase não está configurado. A base de dados local é criada automaticamente na primeira execução.
## 📱 Utilizadores de Demo
### Administrador
- **Email:** `admin@barbearia.pt`
- **Senha:** `admin123`
- **Função:** Acesso total ao painel administrativo
### Barbeiro
- **Email:** `barbeiro@barbearia.pt`
- **Senha:** `barber123`
- **Função:** Gerir as suas marcações e horários
### Cliente
- **Email:** `cliente@barbearia.pt`
- **Senha:** `cliente123`
- **Função:** Marcar serviços e ver histórico
## 🚀 Como Usar
### 1. Iniciar a Aplicação
```bash
npm start
# ou
expo start
```
### 2. Login como Administrador
1. Abra a aplicação
2. Use as credenciais do administrador
3. Terá acesso ao painel de administração
### 3. Funcionalidades do Administrador
- **Ver estatísticas:** Total de marcações, receita, barbeiros ativos, clientes
- **Gerir marcações:** Confirmar, cancelar ou ver detalhes das marcações
- **Ver clientes:** Informações detalhadas dos clientes
- **Gerir barbeiros:** Ver horários e disponibilidade
### 4. Funcionalidades do Barbeiro
- **Ver as suas marcações:** Horários e serviços agendados
- **Gerir disponibilidade:** Definir horários de trabalho
- **Ver avaliações:** Feedback dos clientes
### 5. Funcionalidades do Cliente
- **Marcar serviços:** Escolher serviços, barbeiros e horários
- **Ver histórico:** Marcações passadas e futuras
- **Avaliar serviços:** Deixar feedback
## 📊 Estrutura de Dados
### Utilizadores
- Admin: Controlo total do sistema
- Barbeiro: Gestão das suas marcações
- Cliente: Marcação de serviços
### Serviços
- Corte Clássico: €35
- Escultura de Barba: €28
- Barbear com Toalha Quente: €45
- Combo Corte + Barba: €55
- Tratamento Real: €95
- Corte para Crianças: €22
### Marcações
- Estados: Pendente, Confirmado, Concluído, Cancelado
- Integração completa com serviços e barbeiros
## 💾 Armazenamento Local
A base de dados local armazena:
- ✅ Utilizadores e perfis
- ✅ Serviços disponíveis
- ✅ Barbeiros e horários
- ✅ Marcações e histórico
- ✅ Avaliações e feedback
- ✅ Promoções ativas
## 🔄 Sincronização
Quando o Supabase estiver configurado, a aplicação usará automaticamente a base de dados em nuvem. Caso contrário, continuará funcionando com a base de dados local.
## 🛠️ Desenvolvimento
### Adicionar Novos Utilizadores
```typescript
const newUser = await localDatabase.createUser({
name: "Nome do Utilizador",
email: "email@exemplo.com",
phone: "+351 912 345 678",
role: "customer", // ou "barber", "admin"
loyalty_points: 0
});
```
### Criar Marcação
```typescript
const booking = await localDatabase.createBooking({
customer_id: "customer-id",
barber_id: "barber-id",
service_id: "service-id",
booking_date: "2025-01-15",
booking_time: "14:00",
status: "pending"
});
```
### Ver Estatísticas
```typescript
const stats = await localDatabase.getStats();
// Retorna: totalBookings, totalRevenue, activeBarbers, totalCustomers
```
## 🐛 Resolução de Problemas
### Problemas Comuns
1. **Login não funciona:** Verifique se está a usar as credenciais corretas
2. **Dados não aparecem:** Reinicie a aplicação para inicializar a base de dados
3. **Marcações não salvam:** Verifique se AsyncStorage está instalado
### Limpar Base de Dados
```typescript
await localDatabase.clearAll();
```
## 📱 Screenshots
- **Login:** Tela de autenticação com credenciais de demo
- **Painel Admin:** Estatísticas e gestão de marcações
- **Marcar Serviço:** Fluxo completo de marcação
- **Perfil:** Informações do utilizador e histórico
## 🎯 Próximos Passos
1. **Configurar Supabase:** Para dados em nuvem
2. **Adicionar notificações:** Lembretes de marcações
3. **Integração com pagamentos:** Processamento online
4. **Relatórios avançados:** Análise detalhada do negócio
## 📞 Suporte
Para suporte técnico ou dúvidas:
- Verifique os logs do console
- Confirme as credenciais de login
- Reinicie a aplicação se necessário
---
**Nota:** Esta versão local é perfeita para demonstração, testes e desenvolvimento. Para produção, configure o Supabase para dados em nuvem.