sys_job.go 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. package models
  2. import (
  3. "git.cestong.com.cn/cecf/config-center-server/common/models"
  4. "gorm.io/gorm"
  5. )
  6. type SysJob struct {
  7. JobId int `json:"jobId" gorm:"primaryKey;autoIncrement"` // 编码
  8. JobName string `json:"jobName" gorm:"size:255;"` // 名称
  9. JobGroup string `json:"jobGroup" gorm:"size:255;"` // 任务分组
  10. JobType int `json:"jobType" gorm:"size:1;"` // 任务类型
  11. CronExpression string `json:"cronExpression" gorm:"size:255;"` // cron表达式
  12. InvokeTarget string `json:"invokeTarget" gorm:"size:255;"` // 调用目标
  13. Args string `json:"args" gorm:"size:255;"` // 目标参数
  14. MisfirePolicy int `json:"misfirePolicy" gorm:"size:255;"` // 执行策略
  15. Concurrent int `json:"concurrent" gorm:"size:1;"` // 是否并发
  16. Status int `json:"status" gorm:"size:1;"` // 状态
  17. EntryId int `json:"entry_id" gorm:"size:11;"` // job启动时返回的id
  18. models.ControlBy
  19. models.ModelTime
  20. DataScope string `json:"dataScope" gorm:"-"`
  21. }
  22. func (SysJob) TableName() string {
  23. return "sys_job"
  24. }
  25. func (e *SysJob) Generate() models.ActiveRecord {
  26. o := *e
  27. return &o
  28. }
  29. func (e *SysJob) GetId() interface{} {
  30. return e.JobId
  31. }
  32. func (e *SysJob) SetCreateBy(createBy int) {
  33. e.CreateBy = createBy
  34. }
  35. func (e *SysJob) SetUpdateBy(updateBy int) {
  36. e.UpdateBy = updateBy
  37. }
  38. func (e *SysJob) GetList(tx *gorm.DB, list interface{}) (err error) {
  39. return tx.Table(e.TableName()).Where("status = ?", 2).Find(list).Error
  40. }
  41. // 更新SysJob
  42. func (e *SysJob) Update(tx *gorm.DB, id interface{}) (err error) {
  43. return tx.Table(e.TableName()).Where(id).Updates(&e).Error
  44. }
  45. func (e *SysJob) RemoveAllEntryID(tx *gorm.DB) (update SysJob, err error) {
  46. if err = tx.Table(e.TableName()).Where("entry_id > ?", 0).Update("entry_id", 0).Error; err != nil {
  47. return
  48. }
  49. return
  50. }