saveinmed/frontend/DIAGNOSTICO_ERROS_COLLECTIONS.md
2026-03-07 07:04:27 -06:00

105 lines
No EOL
3.6 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

> Nota de atualização
>
> Este documento contém referências históricas a BFF, Appwrite ou papéis legados. No fluxo ativo do frontend, a referência correta é API direta e os papéis válidos são `admin`, `owner`, `employee` e `delivery`.
# Diagnóstico e Soluções para Erros das Collections
## 🚨 Problemas Identificados
### 1. Erro: "The current user is not authorized to perform the requested action" (usuarios-data)
**Causa**: A collection `usuarios-data` não possui permissões configuradas corretamente.
**Solução**:
1. Acesse o Appwrite Console
2. Vá para Database → Collections → usuarios-data → Settings → Permissions
3. Configure as seguintes permissões:
```
Role: users
Permissions: read, create, update, delete
```
**Variável de ambiente necessária**:
```
NEXT_PUBLIC_APPWRITE_COLLECTION_USUARIOS_DATA_ID=your-usuarios-data-collection-id
```
### 2. Erro: "Collection with the requested ID could not be found" (empresas)
**Causa**: A collection `empresas` não existe ou o ID está incorreto.
**Soluções possíveis**:
#### Opção A: Criar a collection empresas
1. Acesse o Appwrite Console
2. Vá para Database → Collections
3. Crie uma nova collection com ID: `empresas`
4. Configure os atributos necessários (veja CONFIGURACAO_COLLECTIONS_APPWRITE.md)
#### Opção B: Verificar se o ID está correto
1. Verifique no Appwrite Console qual é o ID real da collection
2. Atualize a variável de ambiente:
```
NEXT_PUBLIC_APPWRITE_COLLECTION_EMPRESAS_ID=id-correto-da-collection
```
### 3. Erro: "Invalid document structure: Attribute 'capital-social' has invalid format. Value must be a valid float" (empresas-dados)
**Status**: ✅ **CORRIGIDO**
**O que foi feito**:
1. ✅ Corrigido o processamento do campo no frontend (parseFloat)
2. ✅ Atualizado os tipos TypeScript
3. ✅ Adicionada validação para valores inválidos
**Configuração necessária no Appwrite**:
- Tipo do campo: **Float**
- Min: 0
- Max: 999999999999
## 🔧 Variáveis de Ambiente Necessárias
Adicione estas variáveis ao seu arquivo `.env.local`:
```env
# Collections principais
NEXT_PUBLIC_APPWRITE_COLLECTION_USUARIOS_ID=your-usuarios-collection-id
NEXT_PUBLIC_APPWRITE_COLLECTION_USUARIOS_DATA_ID=your-usuarios-data-collection-id
NEXT_PUBLIC_APPWRITE_COLLECTION_EMPRESAS_ID=your-empresas-collection-id
NEXT_PUBLIC_APPWRITE_COLLECTION_EMPRESAS_DADOS_ID=your-empresas-dados-collection-id
```
## 📋 Checklist de Verificação
### Para usuarios-data:
- [ ] Collection existe no Appwrite
- [ ] Variável de ambiente configurada
- [ ] Permissões configuradas (users: read, create, update, delete)
- [ ] Atributos necessários criados
### Para empresas:
- [ ] Collection existe no Appwrite
- [ ] Variável de ambiente configurada
- [ ] Permissões configuradas
- [ ] Atributos necessários criados
### Para empresas-dados:
- [x] Collection existe no Appwrite
- [x] Variável de ambiente configurada
- [x] Campo capital-social configurado como Float
- [x] Código frontend corrigido
## 🚀 Próximos Passos
1. **Verificar collections no Appwrite Console**
2. **Configurar permissões das collections**
3. **Atualizar variáveis de ambiente**
4. **Testar cada funcionalidade**
## 📞 Suporte
Se os problemas persistirem após seguir estas instruções:
1. Verifique os logs do console do navegador
2. Verifique os logs do terminal do Next.js
3. Confirme que todas as variáveis de ambiente estão definidas
4. Verifique se as collections existem no Appwrite Console