first commit
This commit is contained in:
163
README_LOCAL.md
Normal file
163
README_LOCAL.md
Normal 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.
|
||||
Reference in New Issue
Block a user