jobs

package
v1.0.50 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 23, 2022 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CodeAbnormal = 0                              // 异常
	CodeError    = http.StatusInternalServerError // 失败
	CodeSuccess  = http.StatusOK                  // 成功
	CodeEnd      = http.StatusCreated             // 结束
)
View Source
const (
	TASK_IN      = "IN"      // 任务运行
	TASK_SUCCESS = "SUCCESS" // 任务完成
	TASK_ERROR   = "ERROR"   // 任务异常
	TASK_TIMEOUT = "TIMEOUT" // 任务超时
	TASK_WAIT    = "WAIT"    // 任务等待
)
View Source
const Version = "1.0.16"

Variables

View Source
var GetFrequencyHour = func(n int64) int64 {
	if n < 0 && n > 23 {
		return -1
	}
	return n * 60 * 60
}

GetFrequencyHour 每天n点执行一次

View Source
var GetFrequencyMinutes = func(n int64) int64 {
	if n < 0 && n > 59 {
		return -1
	}
	return n * 60
}

GetFrequencyMinutes 每隔n分钟执行一次

View Source
var GetFrequencySeconds = func(n int64) int64 {
	if n < 0 && n > 59 {
		return -1
	}
	return n
}

GetFrequencySeconds 每隔n秒执行一次

View Source
var GetSpecHour = func(n int64) string {
	if n < 0 && n > 23 {
		return ""
	}
	return fmt.Sprintf(specHour, n)
}

GetSpecHour 每天n点执行一次

View Source
var GetSpecMinutes = func(n int64) string {
	if n < 0 && n > 59 {
		return ""
	}
	return fmt.Sprintf(specMinutes, n)
}

GetSpecMinutes 每隔n分钟执行一次

View Source
var GetSpecSeconds = func(n int64) string {
	if n < 0 && n > 59 {
		return ""
	}
	return fmt.Sprintf(specSeconds, n)
}

GetSpecSeconds 每隔n秒执行一次

View Source
var ParamsMerchantGoldenBeanType = "merchant.golden_bean"
View Source
var ParamsNewServiceNextType = "new_service.next"
View Source
var ParamsNewServiceType = "new_service"
View Source
var ParamsOrderType = "order"
View Source
var ParamsTeamInvType = "team.inv"

Functions

func GetTypeApiPaySubmit

func GetTypeApiPaySubmit(Type string) string

func GetTypeCustomerAuto

func GetTypeCustomerAuto(Type string) string

func GetTypeGoldenBeansIssue

func GetTypeGoldenBeansIssue(Type string) string

func GetTypeGoldenBeansRefunds

func GetTypeGoldenBeansRefunds(Type string) string

func GetTypeWechatRefundsQuery

func GetTypeWechatRefundsQuery(Type string) string

func GetTypeWechatRefundsSubmit

func GetTypeWechatRefundsSubmit(Type string) string

Types

type App

type App struct {
	RunVersion  int               `json:"run_version"`  // 运行版本
	Os          string            `json:"os"`           // 系统类型
	Arch        string            `json:"arch"`         // 系统架构
	MaxProCs    int               `json:"max_pro_cs"`   // CPU核数
	Version     string            `json:"version"`      // GO版本
	MacAddrS    string            `json:"mac_addr_s"`   // Mac地址
	InsideIp    string            `json:"inside_ip"`    // 内网ip
	OutsideIp   string            `json:"outside_ip"`   // 外网ip
	MainService int               `json:"main_service"` // 主要服务
	Db          *gorm.DB          // 数据库
	Redis       *dorm.RedisClient // 缓存数据库服务
}

func (*App) Add

func (app *App) Add(tx *gorm.DB, Type string, params interface{}, frequency int64) *gorm.DB

Add 添加任务

func (*App) AddCustomId

func (app *App) AddCustomId(tx *gorm.DB, Type string, params interface{}, frequency int64, customId string) *gorm.DB

AddCustomId 添加任务

func (*App) AddCustomIdMaxNumber

func (app *App) AddCustomIdMaxNumber(tx *gorm.DB, Type string, params interface{}, frequency int64, customId string, maxNumber int64) *gorm.DB

AddCustomIdMaxNumber 添加任务并设置最大数量

func (*App) AddIn

func (app *App) AddIn(tx *gorm.DB, param TaskParams, params interface{}) *gorm.DB

AddIn 添加可执行任务 params.Type 任务类型 params.Frequency 任务频率 params.CustomId 自定义编号 params 任务参数

func (*App) AddInMerchantGoldenBean

func (app *App) AddInMerchantGoldenBean(tx *gorm.DB, Type string, params interface{}, frequency int64) *gorm.DB

AddInMerchantGoldenBean 添加商家金豆可执行任务

func (*App) AddInNewService

func (app *App) AddInNewService(tx *gorm.DB, Type string, params interface{}, frequency int64) *gorm.DB

AddInNewService 添加企业自定义可执行任务

func (*App) AddInOrder

func (app *App) AddInOrder(tx *gorm.DB, Type string, params interface{}, frequency int64) *gorm.DB

AddInOrder 添加订单可执行任务

func (*App) AddInOrderCustomId

func (app *App) AddInOrderCustomId(tx *gorm.DB, Type string, params interface{}, frequency int64, customId string) *gorm.DB

AddInOrderCustomId 添加订单可执行任务

func (*App) AddInOrderCustomIdObservation

func (app *App) AddInOrderCustomIdObservation(tx *gorm.DB, Type string, customId string) *gorm.DB

AddInOrderCustomIdObservation 添加观察接口任务

func (*App) AddInOrderCustomIdObservationClone

func (app *App) AddInOrderCustomIdObservationClone(tx *gorm.DB, Type string, customId string) *gorm.DB

AddInOrderCustomIdObservationClone 观察接口关闭

func (*App) AddInOrderCustomIdSpecifyIp

func (app *App) AddInOrderCustomIdSpecifyIp(tx *gorm.DB, Type string, params interface{}, frequency int64, customId, specifyIp string) *gorm.DB

AddInOrderCustomIdSpecifyIp 添加订单可执行任务

func (*App) AddInTeamInv

func (app *App) AddInTeamInv(tx *gorm.DB, Type string, params interface{}, frequency int64) *gorm.DB

AddInTeamInv 添加团队邀请可执行任务

func (*App) AddInUserShareInvitation

func (app *App) AddInUserShareInvitation(tx *gorm.DB, Type string, params interface{}, frequency int64) *gorm.DB

AddInUserShareInvitation 邀请好友

func (*App) AddWait

func (app *App) AddWait(tx *gorm.DB, param TaskParams, params interface{}) *gorm.DB

AddWait 添加等待执行任务 params.Type 任务类型 params.Frequency 任务频率 params.CustomId 自定义编号 params.CustomSequence 自定义顺序 params 任务参数

func (*App) AddWaitNewServiceNext

func (app *App) AddWaitNewServiceNext(tx *gorm.DB, param TaskParams, params interface{}) *gorm.DB

AddWaitNewServiceNext 添加企业自定义下一步等待执行任务

func (*App) Check

func (app *App) Check(tx *gorm.DB, vs []Task)

Check 任务检查

func (*App) Edit

func (app *App) Edit(tx *gorm.DB, id uint) *gorm.DB

Edit 任务修改

func (*App) Lock

func (app *App) Lock(info Task, id any) string

Lock 上锁

func (*App) LockForever

func (app *App) LockForever(info Task, id any) string

LockForever 永远上锁

func (*App) RefreshIp

func (app *App) RefreshIp(tx *gorm.DB)

RefreshIp 刷新Ip

func (*App) Run

func (app *App) Run(tx *gorm.DB, info Task, status int, desc string)

Run 任务执行

func (*App) RunAddLog

func (app *App) RunAddLog(tx *gorm.DB, id uint, runId string) *gorm.DB

RunAddLog 任务执行日志

func (*App) Start

func (app *App) Start(tx *gorm.DB, customId string, customSequence int64) *gorm.DB

Start 任务启动

func (*App) TaskCustomIdTake

func (app *App) TaskCustomIdTake(tx *gorm.DB, Type, customId string) (result Task)

TaskCustomIdTake 查询任务

func (*App) TaskCustomIdTakeStatus

func (app *App) TaskCustomIdTakeStatus(tx *gorm.DB, Type, customId, status string) (result Task)

TaskCustomIdTakeStatus 查询任务

func (*App) TaskFind

func (app *App) TaskFind(tx *gorm.DB, frequency int64) (results []Task)

TaskFind 查询任务

func (*App) TaskFindAll

func (app *App) TaskFindAll(tx *gorm.DB, frequency int64) (results []Task)

TaskFindAll 查询任务

func (*App) TaskIpInit

func (app *App) TaskIpInit(tx *gorm.DB, ips map[string]string) bool

TaskIpInit 实例任务ip

func (*App) TaskIpUpdate

func (app *App) TaskIpUpdate(tx *gorm.DB, taskType, ips string) *gorm.DB

func (*App) TaskLogRunTake

func (app *App) TaskLogRunTake(tx *gorm.DB, taskId uint, runId string) (result TaskLogRun)

TaskLogRunTake 查询任务执行日志

func (*App) TaskTake

func (app *App) TaskTake(tx *gorm.DB, customId string) (result Task)

TaskTake 查询任务

func (*App) Unlock

func (app *App) Unlock(info Task, id any)

Unlock Lock 解锁

func (*App) UpdateFrequency

func (app *App) UpdateFrequency(tx *gorm.DB, id uint, frequency int64) *gorm.DB

UpdateFrequency 更新任务频率

type ParamsOrderId

type ParamsOrderId struct {
	OrderId string `json:"order_id,omitempty"`
}

ParamsOrderId 订单任务

type ParamsTaskId

type ParamsTaskId struct {
	TaskId int64 `json:"task_id,omitempty"`
}

ParamsTaskId 企业自定义任务

type ParamsTaskIdNext

type ParamsTaskIdNext struct {
	TaskId         int64 `json:"task_id,omitempty"`
	MerchantUserId int64 `json:"merchant_user_id,omitempty"`
	CurrentNumber  int   `json:"current_number,omitempty"`
	MaxNumber      int   `json:"max_number,omitempty"`
}

ParamsTaskIdNext 企业自定义下一步任务

type Task

type Task struct {
	Id             uint   `gorm:"primaryKey" json:"id"`        // 记录编号
	Status         string `json:"status"`                      // 状态码
	Params         string `json:"params"`                      // 参数
	ParamsType     string `json:"params_type"`                 // 参数类型
	StatusDesc     string `json:"status_desc"`                 // 状态描述
	Frequency      int64  `json:"frequency"`                   // 频率(秒单位)
	Number         int64  `json:"number"`                      // 当前次数
	MaxNumber      int64  `json:"max_number"`                  // 最大次数
	RunId          string `json:"run_id"`                      // 执行编号
	CustomId       string `json:"custom_id"`                   // 自定义编号
	CustomSequence int64  `json:"custom_sequence"`             // 自定义顺序
	Type           string `json:"type"`                        // 类型
	CreatedIp      string `json:"created_ip"`                  // 创建外网IP
	SpecifyIp      string `json:"specify_ip"`                  // 指定外网IP
	UpdatedIp      string `json:"updated_ip"`                  // 更新外网IP
	Result         string `json:"result"`                      // 结果
	CreatedAt      string `gorm:"type:text" json:"created_at"` // 创建时间
	UpdatedAt      string `gorm:"type:text" json:"updated_at"` // 更新时间
}

Task 任务

func (*Task) TableName

func (m *Task) TableName() string

type TaskIp

type TaskIp struct {
	Id       int64
	TaskType string `json:"task_type"` // 任务编号
	Ips      string `json:"ips"`       // 任务IP
}

TaskIp 任务Ip

func (*TaskIp) TableName

func (m *TaskIp) TableName() string

type TaskLog

type TaskLog struct {
	Id         uint   `gorm:"primaryKey" json:"id"`        // 记录编号
	TaskId     uint   `json:"task_id"`                     // 任务编号
	StatusCode int    `json:"status_code"`                 // 状态码
	Desc       string `json:"desc"`                        // 结果
	Version    int    `json:"version"`                     // 版本
	CreatedAt  string `gorm:"type:text" json:"created_at"` // 创建时间
}

TaskLog 任务日志

func (*TaskLog) TableName

func (m *TaskLog) TableName() string

type TaskLogRun

type TaskLogRun struct {
	Id         uint   `gorm:"primaryKey" json:"id"`        // 记录编号
	TaskId     uint   `json:"task_id"`                     // 任务编号
	RunId      string `json:"run_id"`                      // 执行编号
	OutsideIp  string `json:"outside_ip"`                  // 外网ip
	InsideIp   string `json:"inside_ip"`                   // 内网ip
	Os         string `json:"os"`                          // 系统类型
	Arch       string `json:"arch"`                        // 系统架构
	Gomaxprocs int    `json:"gomaxprocs"`                  // CPU核数
	GoVersion  string `json:"go_version"`                  // GO版本
	MacAddrs   string `json:"mac_addrs"`                   // Mac地址
	CreatedAt  string `gorm:"type:text" json:"created_at"` // 创建时间
}

TaskLogRun 任务执行日志

func (*TaskLogRun) TableName

func (m *TaskLogRun) TableName() string

type TaskParams

type TaskParams = Task

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL