package models

import "time"

type SaDatasetCron struct {
	ID                uint   `gorm:"primaryKey"`
	Identity          string `gorm:"type:char(36);uniqueIndex"`
	SourceID          uint   `gorm:"index;not null"`
	SourceIdentity    string `gorm:"type:char(36);index"`
	CreatedBy         uint   `gorm:"index;not null"`
	CreatedByIdentity string `gorm:"type:char(36);index"`
	Schedule          string `gorm:"size:100;not null"`
	Status            string `gorm:"size:32;not null;default:pending;index"`
	Enabled           bool   `gorm:"not null;default:true;index"`
	NextRunAt         *time.Time
	LastRunAt         *time.Time
	LastResult        string    `gorm:"type:text"`
	CreatedAt         time.Time `gorm:"index"`
	UpdatedAt         time.Time
}

func (SaDatasetCron) TableName() string {
	return "sa_dataset_crons"
}
