109 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package dto
 | 
						|
 | 
						|
import (
 | 
						|
	"github.com/gin-gonic/gin"
 | 
						|
	"github.com/go-admin-team/go-admin-core/sdk/api"
 | 
						|
	"go-admin/app/jobs/models"
 | 
						|
 | 
						|
	"go-admin/common/dto"
 | 
						|
	common "go-admin/common/models"
 | 
						|
)
 | 
						|
 | 
						|
type SysJobSearch struct {
 | 
						|
	dto.Pagination `search:"-"`
 | 
						|
	JobId          int    `form:"jobId" search:"type:exact;column:job_id;table:sys_job"`
 | 
						|
	JobName        string `form:"jobName" search:"type:icontains;column:job_name;table:sys_job"`
 | 
						|
	JobGroup       string `form:"jobGroup" search:"type:exact;column:job_group;table:sys_job"`
 | 
						|
	CronExpression string `form:"cronExpression" search:"type:exact;column:cron_expression;table:sys_job"`
 | 
						|
	InvokeTarget   string `form:"invokeTarget" search:"type:exact;column:invoke_target;table:sys_job"`
 | 
						|
	Status         int    `form:"status" search:"type:exact;column:status;table:sys_job"`
 | 
						|
}
 | 
						|
 | 
						|
func (m *SysJobSearch) GetNeedSearch() interface{} {
 | 
						|
	return *m
 | 
						|
}
 | 
						|
 | 
						|
func (m *SysJobSearch) Bind(ctx *gin.Context) error {
 | 
						|
	log := api.GetRequestLogger(ctx)
 | 
						|
	err := ctx.ShouldBind(m)
 | 
						|
	if err != nil {
 | 
						|
		log.Errorf("Bind error: %s", err)
 | 
						|
	}
 | 
						|
	return err
 | 
						|
}
 | 
						|
 | 
						|
func (m *SysJobSearch) Generate() dto.Index {
 | 
						|
	o := *m
 | 
						|
	return &o
 | 
						|
}
 | 
						|
 | 
						|
type SysJobControl struct {
 | 
						|
	JobId          int    `json:"jobId"`
 | 
						|
	JobName        string `json:"jobName" validate:"required"` // 名称
 | 
						|
	JobGroup       string `json:"jobGroup"`                    // 任务分组
 | 
						|
	JobType        int    `json:"jobType"`                     // 任务类型
 | 
						|
	CronExpression string `json:"cronExpression"`              // cron表达式
 | 
						|
	InvokeTarget   string `json:"invokeTarget"`                // 调用目标
 | 
						|
	Args           string `json:"args"`                        // 目标参数
 | 
						|
	MisfirePolicy  int    `json:"misfirePolicy"`               // 执行策略
 | 
						|
	Concurrent     int    `json:"concurrent"`                  // 是否并发
 | 
						|
	Status         int    `json:"status"`                      // 状态
 | 
						|
	EntryId        int    `json:"entryId"`                     // job启动时返回的id
 | 
						|
}
 | 
						|
 | 
						|
func (s *SysJobControl) Bind(ctx *gin.Context) error {
 | 
						|
	return ctx.ShouldBind(s)
 | 
						|
}
 | 
						|
 | 
						|
func (s *SysJobControl) Generate() dto.Control {
 | 
						|
	cp := *s
 | 
						|
	return &cp
 | 
						|
}
 | 
						|
 | 
						|
func (s *SysJobControl) GenerateM() (common.ActiveRecord, error) {
 | 
						|
	return &models.SysJob{
 | 
						|
		JobId:          s.JobId,
 | 
						|
		JobName:        s.JobName,
 | 
						|
		JobGroup:       s.JobGroup,
 | 
						|
		JobType:        s.JobType,
 | 
						|
		CronExpression: s.CronExpression,
 | 
						|
		InvokeTarget:   s.InvokeTarget,
 | 
						|
		Args:           s.Args,
 | 
						|
		MisfirePolicy:  s.MisfirePolicy,
 | 
						|
		Concurrent:     s.Concurrent,
 | 
						|
		Status:         s.Status,
 | 
						|
		EntryId:        s.EntryId,
 | 
						|
	}, nil
 | 
						|
}
 | 
						|
 | 
						|
func (s *SysJobControl) GetId() interface{} {
 | 
						|
	return s.JobId
 | 
						|
}
 | 
						|
 | 
						|
type SysJobById struct {
 | 
						|
	dto.ObjectById
 | 
						|
}
 | 
						|
 | 
						|
func (s *SysJobById) Generate() dto.Control {
 | 
						|
	cp := *s
 | 
						|
	return &cp
 | 
						|
}
 | 
						|
 | 
						|
func (s *SysJobById) GenerateM() (common.ActiveRecord, error) {
 | 
						|
	return &models.SysJob{}, nil
 | 
						|
}
 | 
						|
 | 
						|
type SysJobItem struct {
 | 
						|
	JobId          int    `json:"jobId"`
 | 
						|
	JobName        string `json:"jobName" validate:"required"` // 名称
 | 
						|
	JobGroup       string `json:"jobGroup"`                    // 任务分组
 | 
						|
	JobType        int    `json:"jobType"`                     // 任务类型
 | 
						|
	CronExpression string `json:"cronExpression"`              // cron表达式
 | 
						|
	InvokeTarget   string `json:"invokeTarget"`                // 调用目标
 | 
						|
	Args           string `json:"args"`                        // 目标参数
 | 
						|
	MisfirePolicy  int    `json:"misfirePolicy"`               // 执行策略
 | 
						|
	Concurrent     int    `json:"concurrent"`                  // 是否并发
 | 
						|
	Status         int    `json:"status"`                      // 状态
 | 
						|
	EntryId        int    `json:"entryId"`                     // job启动时返回的id
 | 
						|
}
 |