20 lines
544 B
Go
20 lines
544 B
Go
|
|
package models
|
||
|
|
|
||
|
|
import (
|
||
|
|
"time"
|
||
|
|
|
||
|
|
"gorm.io/gorm"
|
||
|
|
)
|
||
|
|
|
||
|
|
// Notification represents email notifications
|
||
|
|
type Notification struct {
|
||
|
|
gorm.Model
|
||
|
|
UserID uint `json:"user_id"`
|
||
|
|
Type string `json:"type"` // welcome, payment_success, payment_failed, meeting_info, reminder
|
||
|
|
Subject string `json:"subject"`
|
||
|
|
Body string `json:"body"`
|
||
|
|
SentAt *time.Time `json:"sent_at"`
|
||
|
|
Status string `json:"status" gorm:"default:'pending'"` // pending, sent, failed
|
||
|
|
ScheduledAt *time.Time `json:"scheduled_at"`
|
||
|
|
}
|