# 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