123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- package cron
- import (
- "github.com/xinliangnote/go-gin-api/internal/pkg/core"
- "github.com/xinliangnote/go-gin-api/internal/repository/mysql"
- "github.com/xinliangnote/go-gin-api/internal/repository/mysql/cron_task"
- )
- type SearchData struct {
- Page int // 第几页
- PageSize int // 每页显示条数
- Name string // 任务名称
- Protocol int32 // 执行方式
- IsUsed int32 // 是否启用
- }
- func (s *service) PageList(ctx core.Context, searchData *SearchData) (listData []*cron_task.CronTask, err error) {
- page := searchData.Page
- if page == 0 {
- page = 1
- }
- pageSize := searchData.PageSize
- if pageSize == 0 {
- pageSize = 10
- }
- offset := (page - 1) * pageSize
- qb := cron_task.NewQueryBuilder()
- if searchData.Name != "" {
- qb.WhereName(mysql.EqualPredicate, searchData.Name)
- }
- if searchData.Protocol != 0 {
- qb.WhereProtocol(mysql.EqualPredicate, searchData.Protocol)
- }
- if searchData.IsUsed != 0 {
- qb.WhereIsUsed(mysql.EqualPredicate, searchData.IsUsed)
- }
- listData, err = qb.
- Limit(pageSize).
- Offset(offset).
- OrderById(false).
- QueryAll(s.db.GetDbR().WithContext(ctx.RequestContext()))
- if err != nil {
- return nil, err
- }
- return
- }
|