task(chat): Vinculando um chat a um item #129
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Descrição do Pull Request
Este Pull Request implementa melhorias no sistema de chat da aplicação AcheiUnB, incluindo a associação direta das salas de chat aos itens cadastrados na plataforma. Agora, é possível criar salas de chat vinculadas a itens específicos, garantindo um fluxo claro e organizado para a comunicação entre os usuários.
O que foi feito?
1. Vinculação de Salas de Chat a Itens
item
no modeloChatRoom
, que agora é uma chave estrangeira para o modeloItem
.item_id
) durante a criação.2. Ajustes nos Serializers
item_id
no serializer deChatRoom
para permitir a entrada do ID do item.item_name
para retornar o nome do item associado à sala de chat na resposta.3. Validações no Backend
item_id
fornecido existe no banco de dados antes de criar a sala.participant_1
,participant_2
eitem_id
) sejam fornecidos no payload.4. Mensagens de Erro Claras
Checklist
Como Testar?
Cenário 1: Criar uma Sala de Chat
POST /api/chat/chatrooms/
Resposta Esperada (Sucesso):
Resposta Esperada (Erro - Item Não Encontrado):
Cenário 2: Listar Salas de Chat
GET /api/chat/chatrooms/
Cenário 3: Erro ao Criar Sala de Chat
Exemplo de Payload Incompleto:
Resposta Esperada:
Cenário 4: Teste de Fluxo Completo
POST /api/items/
.item_id
) para criar uma sala de chat comPOST /api/chat/chatrooms/
.GET /api/chat/chatrooms/
para verificar a criação correta.Observações
Essas mudanças foram testadas localmente e no ambiente de desenvolvimento. Qualquer feedback ou problema adicional pode ser reportado nos comentários deste PR.