package model import ( model2 "cold-delivery/common/model" "gorm.io/gorm" ) type SysJob struct { JobId int `json:"jobId" gorm:"primaryKey;autoIncrement"` // 编码 JobName string `json:"jobName" gorm:"size:255;"` // 名称 JobGroup string `json:"jobGroup" gorm:"size:255;"` // 任务分组 JobType int `json:"jobType" gorm:"size:1;"` // 任务类型 1-接口 2-函数 CronExpression string `json:"cronExpression" gorm:"size:255;"` // cron表达式 InvokeTarget string `json:"invokeTarget" gorm:"size:255;"` // 调用目标 Args string `json:"args" gorm:"size:255;"` // 目标参数 MisfirePolicy int `json:"misfirePolicy" gorm:"size:255;"` // 执行策略 1-立即执行 2-执行一次 3-放弃执行 Concurrent int `json:"concurrent" gorm:"size:1;"` // 是否并发 1-禁止 Status int `json:"status" gorm:"size:1;"` // 状态 1-停用 2-正常 EntryId int `json:"entry_id" gorm:"size:11;"` // job启动时返回的id Auto bool `json:"auto" gorm:"size:4;"` // 是否开机自启动 model2.ControlBy model2.ModelTime DataScope string `json:"dataScope" gorm:"-"` } func (SysJob) TableName() string { return "sys_job" } func (e *SysJob) Generate() model2.ActiveRecord { o := *e return &o } func (e *SysJob) GetId() interface{} { return e.JobId } func (e *SysJob) SetCreateBy(createBy int) { e.CreateBy = createBy } func (e *SysJob) SetUpdateBy(updateBy int) { e.UpdateBy = updateBy } func (e *SysJob) GetList(tx *gorm.DB, list interface{}) (err error) { return tx.Table(e.TableName()).Where("status = ?", 2).Find(list).Error } // 更新SysJob func (e *SysJob) Update(tx *gorm.DB, id interface{}) (err error) { return tx.Table(e.TableName()).Where(id).Updates(&e).Error } func (e *SysJob) RemoveAllEntryID(tx *gorm.DB) (update SysJob, err error) { if err = tx.Table(e.TableName()).Where("entry_id > ?", 0).Update("entry_id", 0).Error; err != nil { return } return }