package models import "time" // BackendUserNotifyConfig 租户用户通知配置表: yz_backend_user_notify_config // 每个用户一条记录,保存自己的接收渠道配置(邮箱/手机号/Bark) type BackendUserNotifyConfig struct { ID uint64 `orm:"column(id);pk;auto" json:"id"` Tid uint64 `orm:"column(tid)" json:"tid"` UserID uint64 `orm:"column(user_id)" json:"user_id"` Email *string `orm:"column(email);size(128);null" json:"email"` Phone *string `orm:"column(phone);size(20);null" json:"phone"` BarkDeviceKey *string `orm:"column(bark_device_key);size(128);null" json:"bark_device_key"` BarkServerURL *string `orm:"column(bark_server_url);size(255);null" json:"bark_server_url"` // 为空用默认 https://api.day.app CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime)" json:"create_time"` UpdateTime time.Time `orm:"column(update_time);auto_now;type(datetime)" json:"update_time"` } func (m *BackendUserNotifyConfig) TableName() string { return "yz_backend_user_notify_config" } // GetBackendUserNotifyConfig 按 tid+user_id 查询配置,不存在返回 nil func GetBackendUserNotifyConfig(tid, userID uint64) *BackendUserNotifyConfig { var cfg BackendUserNotifyConfig err := Orm.QueryTable(new(BackendUserNotifyConfig)). Filter("tid", tid).Filter("user_id", userID).One(&cfg) if err != nil { return nil } return &cfg }