SupportCaseAttachment representa um arquivo anexado a um SupportCase, normalmente por meio de uma SupportCaseMessage.
Campos
| Campo | Tipo | Descrição |
|---|---|---|
supportCaseAttachmentId | UUID | Identificador único |
supportCaseId | UUID | Referência ao chamado |
supportCaseMessageId | UUID? | Referência à mensagem que originou o anexo |
uploadedByUserId | UUID? | Usuário que enviou o arquivo |
storageKey | String | Chave do objeto no storage |
fileName | String | Nome original do arquivo |
contentType | String | MIME type do arquivo |
sizeBytes | Int | Tamanho do arquivo em bytes |
createdAt | DateTime | Data de criação |
deletedAt | DateTime? | Data de remoção lógica |
Relacionamentos
- Relaciona-se com SupportCase.
- Relaciona-se com SupportCaseMessage, quando o anexo veio de uma mensagem.
- Relaciona-se com User como usuário de upload.
Regras de Negócio
- Todo anexo pertence a um chamado via
supportCaseId. supportCaseMessageIdé opcional para permitir anexos no nível do chamado.storageKeydeve apontar para um arquivo privado no storage.- A autorização de leitura do anexo deve seguir a autorização do chamado e a visibilidade da mensagem, quando houver
supportCaseMessageId. - Remoção lógica do anexo não deve remover o chamado nem a mensagem.