1 Star 0 Fork 0

李童/cmdb

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
app.go 1.11 KB
一键复制 编辑 原始数据 按行查看 历史
李童 提交于 2023-02-27 16:27 +08:00 . tasksecret
package task
import (
"time"
"github.com/go-playground/validator/v10"
"github.com/rs/xid"
)
const (
AppName = "task"
)
var (
validate = validator.New()
)
func (req *CreateTaskRequst) Validate() error {
return validate.Struct(req)
}
func NewTask(req *CreateTaskRequst) (*Task, error) {
err := req.Validate()
if err != nil {
return nil, err
}
ins := NewDefaultTask()
ins.Data = req
ins.Id = xid.New().String()
return ins, nil
// return &ins{
// Id: xid.New().String(),
// Data: req,
// }, nil
}
func NewDefaultTask() *Task {
return &Task{
Data: &CreateTaskRequst{},
Status: &Status{},
}
}
func NewCreateTaskRequest() *CreateTaskRequst {
return &CreateTaskRequst{
Params: map[string]string{},
//同步任务默认超时时间
Timeout: 30 * 60,
}
}
func (s *Task) Run() {
s.Status.StartAt = time.Now().UnixMilli()
s.Status.Stage = Stage_RUNNING
}
func (s *Task) Success() {
s.Status.Stage = Stage_SUCCESS
s.Status.EndAt = time.Now().UnixMilli()
}
func (s *Task) Failed(message string) {
s.Status.EndAt = time.Now().UnixMilli()
s.Status.Stage = Stage_FAILED
s.Status.Message = message
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/vak80/cmdb.git
git@gitee.com:vak80/cmdb.git
vak80
cmdb
cmdb
v0.0.4

搜索帮助