monorepo/cloud/maplefile-backend/internal/service/blockedemail/dto.go

35 lines
1.1 KiB
Go

// codeberg.org/mapleopentech/monorepo/cloud/maplefile-backend/internal/service/blockedemail/dto.go
package blockedemail
import (
"time"
"github.com/gocql/gocql"
)
// CreateBlockedEmailRequestDTO represents the request to add a blocked email
type CreateBlockedEmailRequestDTO struct {
Email string `json:"email"`
Reason string `json:"reason,omitempty"`
}
// BlockedEmailResponseDTO represents a blocked email in the response
type BlockedEmailResponseDTO struct {
UserID gocql.UUID `json:"user_id"`
BlockedEmail string `json:"blocked_email"`
BlockedUserID gocql.UUID `json:"blocked_user_id,omitempty"`
Reason string `json:"reason,omitempty"`
CreatedAt time.Time `json:"created_at"`
}
// ListBlockedEmailsResponseDTO represents the response for listing blocked emails
type ListBlockedEmailsResponseDTO struct {
BlockedEmails []*BlockedEmailResponseDTO `json:"blocked_emails"`
Count int `json:"count"`
}
// DeleteBlockedEmailResponseDTO represents the response for deleting a blocked email
type DeleteBlockedEmailResponseDTO struct {
Success bool `json:"success"`
Message string `json:"message"`
}