Бэкенд: регистрация со входом сразу и /api/config, профиль и смена пароля, свои папки, PATCH письма (прочитано, флажок, перенос; Спам ставит отметку), корзина и очистка, черновики, несколько адресатов и копия, вложения черновика уходят с письмом, вложения и заголовки To/Cc входящих сохраняются, письма заблокированных — в Спам. Исправлено: загрузка файла (415), колонка content_id (500 на любых вложениях), SPA-маршрут с точкой. Фронтенд переписан: все таблицы — грид, оформление — шаблон synthwave-design-showcase.html. α Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
72 lines
2.6 KiB
Java
72 lines
2.6 KiB
Java
package com.mailserver.dto;
|
|
|
|
import java.time.Instant;
|
|
|
|
public class MessageResponse {
|
|
|
|
private Long id;
|
|
private String senderEmail;
|
|
private String senderName;
|
|
private String recipientEmail;
|
|
private String ccEmail;
|
|
private String subject;
|
|
private String body;
|
|
private boolean html;
|
|
private boolean read;
|
|
private boolean flagged;
|
|
private boolean spam;
|
|
private Long messageSize;
|
|
private Instant receivedAt;
|
|
private Long folderId;
|
|
private boolean hasAttachments;
|
|
private int attachmentCount;
|
|
|
|
public Long getId() { return id; }
|
|
public void setId(Long id) { this.id = id; }
|
|
|
|
public String getSenderEmail() { return senderEmail; }
|
|
public void setSenderEmail(String senderEmail) { this.senderEmail = senderEmail; }
|
|
|
|
public String getSenderName() { return senderName; }
|
|
public void setSenderName(String senderName) { this.senderName = senderName; }
|
|
|
|
public String getRecipientEmail() { return recipientEmail; }
|
|
public void setRecipientEmail(String recipientEmail) { this.recipientEmail = recipientEmail; }
|
|
|
|
public String getCcEmail() { return ccEmail; }
|
|
public void setCcEmail(String ccEmail) { this.ccEmail = ccEmail; }
|
|
|
|
public String getSubject() { return subject; }
|
|
public void setSubject(String subject) { this.subject = subject; }
|
|
|
|
public String getBody() { return body; }
|
|
public void setBody(String body) { this.body = body; }
|
|
|
|
public boolean isHtml() { return html; }
|
|
public void setHtml(boolean html) { this.html = html; }
|
|
|
|
public boolean isRead() { return read; }
|
|
public void setRead(boolean read) { this.read = read; }
|
|
|
|
public boolean isFlagged() { return flagged; }
|
|
public void setFlagged(boolean flagged) { this.flagged = flagged; }
|
|
|
|
public boolean isSpam() { return spam; }
|
|
public void setSpam(boolean spam) { this.spam = spam; }
|
|
|
|
public Long getMessageSize() { return messageSize; }
|
|
public void setMessageSize(Long messageSize) { this.messageSize = messageSize; }
|
|
|
|
public Instant getReceivedAt() { return receivedAt; }
|
|
public void setReceivedAt(Instant receivedAt) { this.receivedAt = receivedAt; }
|
|
|
|
public Long getFolderId() { return folderId; }
|
|
public void setFolderId(Long folderId) { this.folderId = folderId; }
|
|
|
|
public boolean isHasAttachments() { return hasAttachments; }
|
|
public void setHasAttachments(boolean hasAttachments) { this.hasAttachments = hasAttachments; }
|
|
|
|
public int getAttachmentCount() { return attachmentCount; }
|
|
public void setAttachmentCount(int attachmentCount) { this.attachmentCount = attachmentCount; }
|
|
}
|