zhangqian
2024-12-13 6ca12f7771e4224464e73271dd47f040cbaf9d4b
db/task.go
@@ -24,15 +24,17 @@
      AppearInterval int       `gorm:"type:int;" json:"appearInterval"`      //出现间隔,单位为秒
      DaysWindow     int       `gorm:"type:int;" json:"daysWindow" `         //近几天内
      Threshold      int       `gorm:"type:int;" json:"threshold" `          //达几次
      Enabled        bool      `json:"enabled"`                              //是否开启
   }
   ModelTaskSearch struct {
      ModelTask
      Orm      *gorm.DB
      PageNum  int
      PageSize int
      Keyword  string
      ModelIDs []string
      Orm       *gorm.DB
      PageNum   int
      PageSize  int
      Keyword   string
      ModelIDs  []string
      Unexpired bool
   }
)
@@ -113,8 +115,13 @@
   return slf
}
func (slf *ModelTaskSearch) SetEnabled(kw string) *ModelTaskSearch {
   slf.Keyword = kw
func (slf *ModelTaskSearch) SetEnabled(enabled bool) *ModelTaskSearch {
   slf.Enabled = enabled
   return slf
}
func (slf *ModelTaskSearch) SetUnexpired() *ModelTaskSearch {
   slf.Unexpired = true
   return slf
}
@@ -138,6 +145,15 @@
      db = db.Where("name like ?", kw)
   }
   if slf.Enabled {
      db = db.Where("enabled = ?", slf.Enabled)
   }
   if slf.Unexpired {
      now := time.Now()
      db = db.Where("begin_time <= ?", now).Where("end_time >= ?", now)
   }
   return db
}