package yb_road_video

import "time"

// YbRoadVideo 研报-路演视频(线上路演)表
type YbRoadVideo struct {
	RoadVideoID        int       `gorm:"primaryKey;column:road_video_id;type:int(10) unsigned;not null" json:"-"`
	Title              string    `gorm:"column:title;type:varchar(255);not null;default:''" json:"title"`                             // 视频标题
	ChartPermissionIds string    `gorm:"column:chart_permission_ids;type:varchar(255);not null;default:''" json:"chartPermissionIds"` // 品种权限ID, 用英文逗号拼接
	CoverImgURL        string    `gorm:"column:cover_img_url;type:varchar(255);not null;default:''" json:"coverImgUrl"`               // 封面图地址
	VideoURL           string    `gorm:"column:video_url;type:varchar(255);not null;default:''" json:"videoUrl"`                      // 视频地址
	VideoSeconds       string    `gorm:"column:video_seconds;type:varchar(30);not null;default:''" json:"videoSeconds"`               // 视频时长
	PublishState       int       `gorm:"column:publish_state;type:tinyint(4) unsigned;not null;default:0" json:"publishState"`        // 发布状态:0-未发布 1-已发布
	SendThsState       int       `gorm:"column:send_ths_state;type:tinyint(4) unsigned;not null;default:0" json:"sendThsState"`       // 推送客群状态:0-未推送 1-已推送
	IsDeleted          int       `gorm:"column:is_deleted;type:tinyint(4) unsigned;not null;default:0" json:"isDeleted"`              // 是否已删除:0-未删除 1-已删除
	AdminId            int       `gorm:"column:admin_id;type:int(11) unsigned;not null;default:0" json:"adminId"`                     // 创建人账号
	AdminRealName      string    `gorm:"column:admin_real_name;type:varchar(50)" json:"adminRealName"`                                // 创建人姓名
	PublishTime        time.Time `gorm:"column:publish_time;type:datetime" json:"publishTime"`                                        // 发布时间
	SendThsTime        time.Time `gorm:"column:send_ths_time;type:datetime" json:"sendThsTime"`                                       // 推送客群时间
	CreateTime         time.Time `gorm:"column:create_time;type:datetime;default:CURRENT_TIMESTAMP" json:"createTime"`                // 创建时间
	ModifyTime         time.Time `gorm:"column:modify_time;type:datetime;default:CURRENT_TIMESTAMP" json:"modifyTime"`                // 更新时间
	DeleteTime         time.Time `gorm:"column:delete_time;type:datetime" json:"deleteTime"`
	ReportID           int       `gorm:"column:report_id;type:int(10) unsigned;not null;default:0" json:"reportId"` // 绑定的报告ID
}

// TableName get sql table name.获取数据库表名
func (r *YbRoadVideo) TableName() string {
	return "yb_road_video"
}

// YbCommunityVideoColumns get sql column name.获取数据库列名
var YbRoadVideoColumns = struct {
	RoadVideoID        string
	Title              string
	ChartPermissionIds string
	CoverImgURL        string
	VideoURL           string
	VideoSeconds       string
	PublishState       string
	SendThsState       string
	IsDeleted          string
	PublishTime        string
	SendThsTime        string
	CreateTime         string
	ModifyTime         string
	DeleteTime         string
	ReportID           string
}{
	RoadVideoID:        "road_video_id",
	Title:              "title",
	ChartPermissionIds: "chart_permission_ids",
	CoverImgURL:        "cover_img_url",
	VideoURL:           "video_url",
	VideoSeconds:       "video_seconds",
	PublishState:       "publish_state",
	SendThsState:       "send_ths_state",
	IsDeleted:          "is_deleted",
	PublishTime:        "publish_time",
	SendThsTime:        "send_ths_time",
	CreateTime:         "create_time",
	ModifyTime:         "modify_time",
	DeleteTime:         "delete_time",
	ReportID:           "report_id",
}