Commit 3982ebcd authored by Bess严根旺's avatar Bess严根旺

回调

parent 2fa52818
package console
import (
"bufio"
"context"
"doc-service/domain/entity/serversitemicros/docservercallback"
"doc-service/domain/entity/serversitemicros/docserverproject"
"doc-service/infra/db"
"fmt"
"github.com/nacos-group/nacos-sdk-go/v2/common/logger"
"gitlab.galaxy-immi.com/Backend-group/go-com/third/log"
"os"
"strings"
"time"
)
func recoverPanicCallBack() {
if r := recover(); r != nil {
logger.Error("执行请求回调异常", r)
}
}
// 执行回调
func DoCallback() {
defer recoverPanicCallBack()
fmt.Println("开始请求回调...")
ctxCall := context.Background()
tickerCallback := time.NewTicker(20 * time.Second)
defer tickerCallback.Stop()
go func() {
for {
select {
case <-tickerCallback.C:
//执行转换
i := callbackData(ctxCall)
if i == 0 {
fmt.Println("暂无回调数据: " + time.Now().Format("2006-01-02 15:04:05"))
}
}
}
}()
// 监听命令行输入
reader := bufio.NewReader(os.Stdin)
for {
text, _ := reader.ReadString('\n')
text = strings.TrimSpace(text)
if text == "exit" {
fmt.Println("Exiting process...")
os.Exit(0)
}
}
}
func callbackData(ctx context.Context) int8 {
defer recoverPanicCallBack()
//列表
callBackData, err := db.GetServerSiteMicrosDB().DocServerProject.Query().Where(
docserverproject.StatusEQ(2),
).All(ctx)
if err != nil {
return 0
}
if len(callBackData) <= 0 {
return 0
}
for _, item := range callBackData {
//执行转换
res1, msg := callBackUrl(ctx, item.ID)
var status int32
if res1 {
status = 3
} else {
status = 4
}
_, errUpdate := db.GetServerSiteMicrosDB().DocServerProject.UpdateOneID(item.ID).SetStatus(status).SetCallbackRes(msg).Save(ctx)
if errUpdate != nil {
log.Info("回调请求修改状态出错" + errUpdate.Error())
continue
}
log.Info("请求回调完成: " + string(item.ID))
fmt.Printf("请求回调完成: %d\n", item.ID)
}
return 1
}
// 执行请求
func callBackUrl(c context.Context, projectId int32) (bool, string) {
defer recoverPanicCallBack()
callInfo, callErr := db.GetServerSiteMicrosDB().DocServerCallback.Query().Where(
docservercallback.ServerProjectID(projectId),
).First(c)
var msg string
var res bool
res = true
msg = "success"
if callErr != nil {
logger.Error("获取回调单条出错", callErr.Error())
msg = callErr.Error()
res = false
} else {
if callInfo == nil {
msg = "回调信息为空"
res = false
}
if callInfo.CallbackURL == "" {
msg = "回调地址为空"
res = false
}
}
if res {
//回调
}
return res, msg
}
...@@ -26,13 +26,14 @@ func DoAliData() { ...@@ -26,13 +26,14 @@ func DoAliData() {
fmt.Println("开始刷新请求...") fmt.Println("开始刷新请求...")
ctx := context.Background() ctx := context.Background()
// 启动一个协程来执行定时任务 20秒一次 // 启动一个协程来执行定时任务 20秒一次
ticker := time.NewTicker(5 * time.Second) ticker := time.NewTicker(10 * time.Second)
defer ticker.Stop() defer ticker.Stop()
go func() { go func() {
for { for {
select { select {
case <-ticker.C: case <-ticker.C:
//执行转换
i := toDoData(ctx) i := toDoData(ctx)
if i == 0 { if i == 0 {
fmt.Println("没有数据: " + time.Now().Format("2006-01-02 15:04:05")) fmt.Println("没有数据: " + time.Now().Format("2006-01-02 15:04:05"))
......
...@@ -32,10 +32,12 @@ type DocServerProject struct { ...@@ -32,10 +32,12 @@ type DocServerProject struct {
TaskID string `json:"task_id,omitempty"` TaskID string `json:"task_id,omitempty"`
// 应用id // 应用id
AppID int32 `json:"app_id,omitempty"` AppID int32 `json:"app_id,omitempty"`
// 是否公有 // 是否私有 1 是 0 否
IsPrivate int8 `json:"is_private,omitempty"` IsPrivate int8 `json:"is_private,omitempty"`
// 状态 // 状态 0 待执行 1 创建转换(待获取进度),2 进度完成待回调 3,回调成功(全部成功)
Status int32 `json:"status,omitempty"` Status int32 `json:"status,omitempty"`
// 回调信息
CallbackRes string `json:"callback_res,omitempty"`
// 创建时间 // 创建时间
CreatedAt *time.Time `json:"created_at,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"`
selectValues sql.SelectValues selectValues sql.SelectValues
...@@ -48,7 +50,7 @@ func (*DocServerProject) scanValues(columns []string) ([]any, error) { ...@@ -48,7 +50,7 @@ func (*DocServerProject) scanValues(columns []string) ([]any, error) {
switch columns[i] { switch columns[i] {
case docserverproject.FieldID, docserverproject.FieldAppID, docserverproject.FieldIsPrivate, docserverproject.FieldStatus: case docserverproject.FieldID, docserverproject.FieldAppID, docserverproject.FieldIsPrivate, docserverproject.FieldStatus:
values[i] = new(sql.NullInt64) values[i] = new(sql.NullInt64)
case docserverproject.FieldProjectName, docserverproject.FieldSourceType, docserverproject.FieldTargetType, docserverproject.FieldSourceURL, docserverproject.FieldTargetURL, docserverproject.FieldTaskID: case docserverproject.FieldProjectName, docserverproject.FieldSourceType, docserverproject.FieldTargetType, docserverproject.FieldSourceURL, docserverproject.FieldTargetURL, docserverproject.FieldTaskID, docserverproject.FieldCallbackRes:
values[i] = new(sql.NullString) values[i] = new(sql.NullString)
case docserverproject.FieldCreatedAt: case docserverproject.FieldCreatedAt:
values[i] = new(sql.NullTime) values[i] = new(sql.NullTime)
...@@ -129,6 +131,12 @@ func (dsp *DocServerProject) assignValues(columns []string, values []any) error ...@@ -129,6 +131,12 @@ func (dsp *DocServerProject) assignValues(columns []string, values []any) error
} else if value.Valid { } else if value.Valid {
dsp.Status = int32(value.Int64) dsp.Status = int32(value.Int64)
} }
case docserverproject.FieldCallbackRes:
if value, ok := values[i].(*sql.NullString); !ok {
return fmt.Errorf("unexpected type %T for field callback_res", values[i])
} else if value.Valid {
dsp.CallbackRes = value.String
}
case docserverproject.FieldCreatedAt: case docserverproject.FieldCreatedAt:
if value, ok := values[i].(*sql.NullTime); !ok { if value, ok := values[i].(*sql.NullTime); !ok {
return fmt.Errorf("unexpected type %T for field created_at", values[i]) return fmt.Errorf("unexpected type %T for field created_at", values[i])
...@@ -203,6 +211,9 @@ func (dsp *DocServerProject) String() string { ...@@ -203,6 +211,9 @@ func (dsp *DocServerProject) String() string {
builder.WriteString("status=") builder.WriteString("status=")
builder.WriteString(fmt.Sprintf("%v", dsp.Status)) builder.WriteString(fmt.Sprintf("%v", dsp.Status))
builder.WriteString(", ") builder.WriteString(", ")
builder.WriteString("callback_res=")
builder.WriteString(dsp.CallbackRes)
builder.WriteString(", ")
if v := dsp.CreatedAt; v != nil { if v := dsp.CreatedAt; v != nil {
builder.WriteString("created_at=") builder.WriteString("created_at=")
builder.WriteString(v.Format(time.ANSIC)) builder.WriteString(v.Format(time.ANSIC))
......
...@@ -30,6 +30,8 @@ const ( ...@@ -30,6 +30,8 @@ const (
FieldIsPrivate = "is_private" FieldIsPrivate = "is_private"
// FieldStatus holds the string denoting the status field in the database. // FieldStatus holds the string denoting the status field in the database.
FieldStatus = "status" FieldStatus = "status"
// FieldCallbackRes holds the string denoting the callback_res field in the database.
FieldCallbackRes = "callback_res"
// FieldCreatedAt holds the string denoting the created_at field in the database. // FieldCreatedAt holds the string denoting the created_at field in the database.
FieldCreatedAt = "created_at" FieldCreatedAt = "created_at"
// Table holds the table name of the docserverproject in the database. // Table holds the table name of the docserverproject in the database.
...@@ -48,6 +50,7 @@ var Columns = []string{ ...@@ -48,6 +50,7 @@ var Columns = []string{
FieldAppID, FieldAppID,
FieldIsPrivate, FieldIsPrivate,
FieldStatus, FieldStatus,
FieldCallbackRes,
FieldCreatedAt, FieldCreatedAt,
} }
...@@ -67,7 +70,7 @@ func ValidColumn(column string) bool { ...@@ -67,7 +70,7 @@ func ValidColumn(column string) bool {
// //
// import _ "doc-service/domain/entity/serversitemicros/runtime" // import _ "doc-service/domain/entity/serversitemicros/runtime"
var ( var (
Hooks [4]ent.Hook Hooks [5]ent.Hook
// DefaultProjectName holds the default value on creation for the "project_name" field. // DefaultProjectName holds the default value on creation for the "project_name" field.
DefaultProjectName string DefaultProjectName string
// DefaultSourceType holds the default value on creation for the "source_type" field. // DefaultSourceType holds the default value on creation for the "source_type" field.
...@@ -86,6 +89,8 @@ var ( ...@@ -86,6 +89,8 @@ var (
DefaultIsPrivate int8 DefaultIsPrivate int8
// DefaultStatus holds the default value on creation for the "status" field. // DefaultStatus holds the default value on creation for the "status" field.
DefaultStatus int32 DefaultStatus int32
// DefaultCallbackRes holds the default value on creation for the "callback_res" field.
DefaultCallbackRes string
) )
// OrderOption defines the ordering options for the DocServerProject queries. // OrderOption defines the ordering options for the DocServerProject queries.
...@@ -141,6 +146,11 @@ func ByStatus(opts ...sql.OrderTermOption) OrderOption { ...@@ -141,6 +146,11 @@ func ByStatus(opts ...sql.OrderTermOption) OrderOption {
return sql.OrderByField(FieldStatus, opts...).ToFunc() return sql.OrderByField(FieldStatus, opts...).ToFunc()
} }
// ByCallbackRes orders the results by the callback_res field.
func ByCallbackRes(opts ...sql.OrderTermOption) OrderOption {
return sql.OrderByField(FieldCallbackRes, opts...).ToFunc()
}
// ByCreatedAt orders the results by the created_at field. // ByCreatedAt orders the results by the created_at field.
func ByCreatedAt(opts ...sql.OrderTermOption) OrderOption { func ByCreatedAt(opts ...sql.OrderTermOption) OrderOption {
return sql.OrderByField(FieldCreatedAt, opts...).ToFunc() return sql.OrderByField(FieldCreatedAt, opts...).ToFunc()
......
...@@ -99,6 +99,11 @@ func Status(v int32) predicate.DocServerProject { ...@@ -99,6 +99,11 @@ func Status(v int32) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldEQ(FieldStatus, v)) return predicate.DocServerProject(sql.FieldEQ(FieldStatus, v))
} }
// CallbackRes applies equality check predicate on the "callback_res" field. It's identical to CallbackResEQ.
func CallbackRes(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldEQ(FieldCallbackRes, v))
}
// CreatedAt applies equality check predicate on the "created_at" field. It's identical to CreatedAtEQ. // CreatedAt applies equality check predicate on the "created_at" field. It's identical to CreatedAtEQ.
func CreatedAt(v time.Time) predicate.DocServerProject { func CreatedAt(v time.Time) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldEQ(FieldCreatedAt, v)) return predicate.DocServerProject(sql.FieldEQ(FieldCreatedAt, v))
...@@ -634,6 +639,71 @@ func StatusLTE(v int32) predicate.DocServerProject { ...@@ -634,6 +639,71 @@ func StatusLTE(v int32) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldLTE(FieldStatus, v)) return predicate.DocServerProject(sql.FieldLTE(FieldStatus, v))
} }
// CallbackResEQ applies the EQ predicate on the "callback_res" field.
func CallbackResEQ(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldEQ(FieldCallbackRes, v))
}
// CallbackResNEQ applies the NEQ predicate on the "callback_res" field.
func CallbackResNEQ(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldNEQ(FieldCallbackRes, v))
}
// CallbackResIn applies the In predicate on the "callback_res" field.
func CallbackResIn(vs ...string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldIn(FieldCallbackRes, vs...))
}
// CallbackResNotIn applies the NotIn predicate on the "callback_res" field.
func CallbackResNotIn(vs ...string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldNotIn(FieldCallbackRes, vs...))
}
// CallbackResGT applies the GT predicate on the "callback_res" field.
func CallbackResGT(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldGT(FieldCallbackRes, v))
}
// CallbackResGTE applies the GTE predicate on the "callback_res" field.
func CallbackResGTE(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldGTE(FieldCallbackRes, v))
}
// CallbackResLT applies the LT predicate on the "callback_res" field.
func CallbackResLT(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldLT(FieldCallbackRes, v))
}
// CallbackResLTE applies the LTE predicate on the "callback_res" field.
func CallbackResLTE(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldLTE(FieldCallbackRes, v))
}
// CallbackResContains applies the Contains predicate on the "callback_res" field.
func CallbackResContains(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldContains(FieldCallbackRes, v))
}
// CallbackResHasPrefix applies the HasPrefix predicate on the "callback_res" field.
func CallbackResHasPrefix(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldHasPrefix(FieldCallbackRes, v))
}
// CallbackResHasSuffix applies the HasSuffix predicate on the "callback_res" field.
func CallbackResHasSuffix(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldHasSuffix(FieldCallbackRes, v))
}
// CallbackResEqualFold applies the EqualFold predicate on the "callback_res" field.
func CallbackResEqualFold(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldEqualFold(FieldCallbackRes, v))
}
// CallbackResContainsFold applies the ContainsFold predicate on the "callback_res" field.
func CallbackResContainsFold(v string) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldContainsFold(FieldCallbackRes, v))
}
// CreatedAtEQ applies the EQ predicate on the "created_at" field. // CreatedAtEQ applies the EQ predicate on the "created_at" field.
func CreatedAtEQ(v time.Time) predicate.DocServerProject { func CreatedAtEQ(v time.Time) predicate.DocServerProject {
return predicate.DocServerProject(sql.FieldEQ(FieldCreatedAt, v)) return predicate.DocServerProject(sql.FieldEQ(FieldCreatedAt, v))
......
...@@ -146,6 +146,20 @@ func (dspc *DocServerProjectCreate) SetNillableStatus(i *int32) *DocServerProjec ...@@ -146,6 +146,20 @@ func (dspc *DocServerProjectCreate) SetNillableStatus(i *int32) *DocServerProjec
return dspc return dspc
} }
// SetCallbackRes sets the "callback_res" field.
func (dspc *DocServerProjectCreate) SetCallbackRes(s string) *DocServerProjectCreate {
dspc.mutation.SetCallbackRes(s)
return dspc
}
// SetNillableCallbackRes sets the "callback_res" field if the given value is not nil.
func (dspc *DocServerProjectCreate) SetNillableCallbackRes(s *string) *DocServerProjectCreate {
if s != nil {
dspc.SetCallbackRes(*s)
}
return dspc
}
// SetCreatedAt sets the "created_at" field. // SetCreatedAt sets the "created_at" field.
func (dspc *DocServerProjectCreate) SetCreatedAt(t time.Time) *DocServerProjectCreate { func (dspc *DocServerProjectCreate) SetCreatedAt(t time.Time) *DocServerProjectCreate {
dspc.mutation.SetCreatedAt(t) dspc.mutation.SetCreatedAt(t)
...@@ -231,6 +245,10 @@ func (dspc *DocServerProjectCreate) defaults() error { ...@@ -231,6 +245,10 @@ func (dspc *DocServerProjectCreate) defaults() error {
v := docserverproject.DefaultStatus v := docserverproject.DefaultStatus
dspc.mutation.SetStatus(v) dspc.mutation.SetStatus(v)
} }
if _, ok := dspc.mutation.CallbackRes(); !ok {
v := docserverproject.DefaultCallbackRes
dspc.mutation.SetCallbackRes(v)
}
return nil return nil
} }
...@@ -267,6 +285,9 @@ func (dspc *DocServerProjectCreate) check() error { ...@@ -267,6 +285,9 @@ func (dspc *DocServerProjectCreate) check() error {
if _, ok := dspc.mutation.Status(); !ok { if _, ok := dspc.mutation.Status(); !ok {
return &ValidationError{Name: "status", err: errors.New(`serversitemicros: missing required field "DocServerProject.status"`)} return &ValidationError{Name: "status", err: errors.New(`serversitemicros: missing required field "DocServerProject.status"`)}
} }
if _, ok := dspc.mutation.CallbackRes(); !ok {
return &ValidationError{Name: "callback_res", err: errors.New(`serversitemicros: missing required field "DocServerProject.callback_res"`)}
}
return nil return nil
} }
...@@ -335,6 +356,10 @@ func (dspc *DocServerProjectCreate) createSpec() (*DocServerProject, *sqlgraph.C ...@@ -335,6 +356,10 @@ func (dspc *DocServerProjectCreate) createSpec() (*DocServerProject, *sqlgraph.C
_spec.SetField(docserverproject.FieldStatus, field.TypeInt32, value) _spec.SetField(docserverproject.FieldStatus, field.TypeInt32, value)
_node.Status = value _node.Status = value
} }
if value, ok := dspc.mutation.CallbackRes(); ok {
_spec.SetField(docserverproject.FieldCallbackRes, field.TypeString, value)
_node.CallbackRes = value
}
if value, ok := dspc.mutation.CreatedAt(); ok { if value, ok := dspc.mutation.CreatedAt(); ok {
_spec.SetField(docserverproject.FieldCreatedAt, field.TypeTime, value) _spec.SetField(docserverproject.FieldCreatedAt, field.TypeTime, value)
_node.CreatedAt = &value _node.CreatedAt = &value
......
...@@ -187,6 +187,20 @@ func (dspu *DocServerProjectUpdate) AddStatus(i int32) *DocServerProjectUpdate { ...@@ -187,6 +187,20 @@ func (dspu *DocServerProjectUpdate) AddStatus(i int32) *DocServerProjectUpdate {
return dspu return dspu
} }
// SetCallbackRes sets the "callback_res" field.
func (dspu *DocServerProjectUpdate) SetCallbackRes(s string) *DocServerProjectUpdate {
dspu.mutation.SetCallbackRes(s)
return dspu
}
// SetNillableCallbackRes sets the "callback_res" field if the given value is not nil.
func (dspu *DocServerProjectUpdate) SetNillableCallbackRes(s *string) *DocServerProjectUpdate {
if s != nil {
dspu.SetCallbackRes(*s)
}
return dspu
}
// SetCreatedAt sets the "created_at" field. // SetCreatedAt sets the "created_at" field.
func (dspu *DocServerProjectUpdate) SetCreatedAt(t time.Time) *DocServerProjectUpdate { func (dspu *DocServerProjectUpdate) SetCreatedAt(t time.Time) *DocServerProjectUpdate {
dspu.mutation.SetCreatedAt(t) dspu.mutation.SetCreatedAt(t)
...@@ -308,6 +322,9 @@ func (dspu *DocServerProjectUpdate) sqlSave(ctx context.Context) (n int, err err ...@@ -308,6 +322,9 @@ func (dspu *DocServerProjectUpdate) sqlSave(ctx context.Context) (n int, err err
if value, ok := dspu.mutation.AddedStatus(); ok { if value, ok := dspu.mutation.AddedStatus(); ok {
_spec.AddField(docserverproject.FieldStatus, field.TypeInt32, value) _spec.AddField(docserverproject.FieldStatus, field.TypeInt32, value)
} }
if value, ok := dspu.mutation.CallbackRes(); ok {
_spec.SetField(docserverproject.FieldCallbackRes, field.TypeString, value)
}
if value, ok := dspu.mutation.CreatedAt(); ok { if value, ok := dspu.mutation.CreatedAt(); ok {
_spec.SetField(docserverproject.FieldCreatedAt, field.TypeTime, value) _spec.SetField(docserverproject.FieldCreatedAt, field.TypeTime, value)
} }
...@@ -493,6 +510,20 @@ func (dspuo *DocServerProjectUpdateOne) AddStatus(i int32) *DocServerProjectUpda ...@@ -493,6 +510,20 @@ func (dspuo *DocServerProjectUpdateOne) AddStatus(i int32) *DocServerProjectUpda
return dspuo return dspuo
} }
// SetCallbackRes sets the "callback_res" field.
func (dspuo *DocServerProjectUpdateOne) SetCallbackRes(s string) *DocServerProjectUpdateOne {
dspuo.mutation.SetCallbackRes(s)
return dspuo
}
// SetNillableCallbackRes sets the "callback_res" field if the given value is not nil.
func (dspuo *DocServerProjectUpdateOne) SetNillableCallbackRes(s *string) *DocServerProjectUpdateOne {
if s != nil {
dspuo.SetCallbackRes(*s)
}
return dspuo
}
// SetCreatedAt sets the "created_at" field. // SetCreatedAt sets the "created_at" field.
func (dspuo *DocServerProjectUpdateOne) SetCreatedAt(t time.Time) *DocServerProjectUpdateOne { func (dspuo *DocServerProjectUpdateOne) SetCreatedAt(t time.Time) *DocServerProjectUpdateOne {
dspuo.mutation.SetCreatedAt(t) dspuo.mutation.SetCreatedAt(t)
...@@ -644,6 +675,9 @@ func (dspuo *DocServerProjectUpdateOne) sqlSave(ctx context.Context) (_node *Doc ...@@ -644,6 +675,9 @@ func (dspuo *DocServerProjectUpdateOne) sqlSave(ctx context.Context) (_node *Doc
if value, ok := dspuo.mutation.AddedStatus(); ok { if value, ok := dspuo.mutation.AddedStatus(); ok {
_spec.AddField(docserverproject.FieldStatus, field.TypeInt32, value) _spec.AddField(docserverproject.FieldStatus, field.TypeInt32, value)
} }
if value, ok := dspuo.mutation.CallbackRes(); ok {
_spec.SetField(docserverproject.FieldCallbackRes, field.TypeString, value)
}
if value, ok := dspuo.mutation.CreatedAt(); ok { if value, ok := dspuo.mutation.CreatedAt(); ok {
_spec.SetField(docserverproject.FieldCreatedAt, field.TypeTime, value) _spec.SetField(docserverproject.FieldCreatedAt, field.TypeTime, value)
} }
......
...@@ -69,6 +69,7 @@ var ( ...@@ -69,6 +69,7 @@ var (
{Name: "app_id", Type: field.TypeInt32, Default: 0, SchemaType: map[string]string{"mysql": "int"}}, {Name: "app_id", Type: field.TypeInt32, Default: 0, SchemaType: map[string]string{"mysql": "int"}},
{Name: "is_private", Type: field.TypeInt8, Default: 0, SchemaType: map[string]string{"mysql": "tinyint"}}, {Name: "is_private", Type: field.TypeInt8, Default: 0, SchemaType: map[string]string{"mysql": "tinyint"}},
{Name: "status", Type: field.TypeInt32, Default: 0, SchemaType: map[string]string{"mysql": "int"}}, {Name: "status", Type: field.TypeInt32, Default: 0, SchemaType: map[string]string{"mysql": "int"}},
{Name: "callback_res", Type: field.TypeString, Default: "", SchemaType: map[string]string{"mysql": "varchar(255)"}},
{Name: "created_at", Type: field.TypeTime, Nullable: true, SchemaType: map[string]string{"mysql": "datetime"}}, {Name: "created_at", Type: field.TypeTime, Nullable: true, SchemaType: map[string]string{"mysql": "datetime"}},
} }
// DocServerProjectTable holds the schema information for the "doc_server_project" table. // DocServerProjectTable holds the schema information for the "doc_server_project" table.
......
...@@ -2236,6 +2236,7 @@ type DocServerProjectMutation struct { ...@@ -2236,6 +2236,7 @@ type DocServerProjectMutation struct {
addis_private *int8 addis_private *int8
status *int32 status *int32
addstatus *int32 addstatus *int32
callback_res *string
created_at *time.Time created_at *time.Time
clearedFields map[string]struct{} clearedFields map[string]struct{}
done bool done bool
...@@ -2757,6 +2758,42 @@ func (m *DocServerProjectMutation) ResetStatus() { ...@@ -2757,6 +2758,42 @@ func (m *DocServerProjectMutation) ResetStatus() {
m.addstatus = nil m.addstatus = nil
} }
// SetCallbackRes sets the "callback_res" field.
func (m *DocServerProjectMutation) SetCallbackRes(s string) {
m.callback_res = &s
}
// CallbackRes returns the value of the "callback_res" field in the mutation.
func (m *DocServerProjectMutation) CallbackRes() (r string, exists bool) {
v := m.callback_res
if v == nil {
return
}
return *v, true
}
// OldCallbackRes returns the old "callback_res" field's value of the DocServerProject entity.
// If the DocServerProject object wasn't provided to the builder, the object is fetched from the database.
// An error is returned if the mutation operation is not UpdateOne, or the database query fails.
func (m *DocServerProjectMutation) OldCallbackRes(ctx context.Context) (v string, err error) {
if !m.op.Is(OpUpdateOne) {
return v, errors.New("OldCallbackRes is only allowed on UpdateOne operations")
}
if m.id == nil || m.oldValue == nil {
return v, errors.New("OldCallbackRes requires an ID field in the mutation")
}
oldValue, err := m.oldValue(ctx)
if err != nil {
return v, fmt.Errorf("querying old value for OldCallbackRes: %w", err)
}
return oldValue.CallbackRes, nil
}
// ResetCallbackRes resets all changes to the "callback_res" field.
func (m *DocServerProjectMutation) ResetCallbackRes() {
m.callback_res = nil
}
// SetCreatedAt sets the "created_at" field. // SetCreatedAt sets the "created_at" field.
func (m *DocServerProjectMutation) SetCreatedAt(t time.Time) { func (m *DocServerProjectMutation) SetCreatedAt(t time.Time) {
m.created_at = &t m.created_at = &t
...@@ -2840,7 +2877,7 @@ func (m *DocServerProjectMutation) Type() string { ...@@ -2840,7 +2877,7 @@ func (m *DocServerProjectMutation) Type() string {
// order to get all numeric fields that were incremented/decremented, call // order to get all numeric fields that were incremented/decremented, call
// AddedFields(). // AddedFields().
func (m *DocServerProjectMutation) Fields() []string { func (m *DocServerProjectMutation) Fields() []string {
fields := make([]string, 0, 10) fields := make([]string, 0, 11)
if m.project_name != nil { if m.project_name != nil {
fields = append(fields, docserverproject.FieldProjectName) fields = append(fields, docserverproject.FieldProjectName)
} }
...@@ -2868,6 +2905,9 @@ func (m *DocServerProjectMutation) Fields() []string { ...@@ -2868,6 +2905,9 @@ func (m *DocServerProjectMutation) Fields() []string {
if m.status != nil { if m.status != nil {
fields = append(fields, docserverproject.FieldStatus) fields = append(fields, docserverproject.FieldStatus)
} }
if m.callback_res != nil {
fields = append(fields, docserverproject.FieldCallbackRes)
}
if m.created_at != nil { if m.created_at != nil {
fields = append(fields, docserverproject.FieldCreatedAt) fields = append(fields, docserverproject.FieldCreatedAt)
} }
...@@ -2897,6 +2937,8 @@ func (m *DocServerProjectMutation) Field(name string) (ent.Value, bool) { ...@@ -2897,6 +2937,8 @@ func (m *DocServerProjectMutation) Field(name string) (ent.Value, bool) {
return m.IsPrivate() return m.IsPrivate()
case docserverproject.FieldStatus: case docserverproject.FieldStatus:
return m.Status() return m.Status()
case docserverproject.FieldCallbackRes:
return m.CallbackRes()
case docserverproject.FieldCreatedAt: case docserverproject.FieldCreatedAt:
return m.CreatedAt() return m.CreatedAt()
} }
...@@ -2926,6 +2968,8 @@ func (m *DocServerProjectMutation) OldField(ctx context.Context, name string) (e ...@@ -2926,6 +2968,8 @@ func (m *DocServerProjectMutation) OldField(ctx context.Context, name string) (e
return m.OldIsPrivate(ctx) return m.OldIsPrivate(ctx)
case docserverproject.FieldStatus: case docserverproject.FieldStatus:
return m.OldStatus(ctx) return m.OldStatus(ctx)
case docserverproject.FieldCallbackRes:
return m.OldCallbackRes(ctx)
case docserverproject.FieldCreatedAt: case docserverproject.FieldCreatedAt:
return m.OldCreatedAt(ctx) return m.OldCreatedAt(ctx)
} }
...@@ -3000,6 +3044,13 @@ func (m *DocServerProjectMutation) SetField(name string, value ent.Value) error ...@@ -3000,6 +3044,13 @@ func (m *DocServerProjectMutation) SetField(name string, value ent.Value) error
} }
m.SetStatus(v) m.SetStatus(v)
return nil return nil
case docserverproject.FieldCallbackRes:
v, ok := value.(string)
if !ok {
return fmt.Errorf("unexpected type %T for field %s", value, name)
}
m.SetCallbackRes(v)
return nil
case docserverproject.FieldCreatedAt: case docserverproject.FieldCreatedAt:
v, ok := value.(time.Time) v, ok := value.(time.Time)
if !ok { if !ok {
...@@ -3143,6 +3194,9 @@ func (m *DocServerProjectMutation) ResetField(name string) error { ...@@ -3143,6 +3194,9 @@ func (m *DocServerProjectMutation) ResetField(name string) error {
case docserverproject.FieldStatus: case docserverproject.FieldStatus:
m.ResetStatus() m.ResetStatus()
return nil return nil
case docserverproject.FieldCallbackRes:
m.ResetCallbackRes()
return nil
case docserverproject.FieldCreatedAt: case docserverproject.FieldCreatedAt:
m.ResetCreatedAt() m.ResetCreatedAt()
return nil return nil
......
...@@ -72,6 +72,7 @@ func init() { ...@@ -72,6 +72,7 @@ func init() {
docserverproject.Hooks[1] = docserverprojectHooks[1] docserverproject.Hooks[1] = docserverprojectHooks[1]
docserverproject.Hooks[2] = docserverprojectHooks[2] docserverproject.Hooks[2] = docserverprojectHooks[2]
docserverproject.Hooks[3] = docserverprojectHooks[3] docserverproject.Hooks[3] = docserverprojectHooks[3]
docserverproject.Hooks[4] = docserverprojectHooks[4]
docserverprojectFields := schema.DocServerProject{}.Fields() docserverprojectFields := schema.DocServerProject{}.Fields()
_ = docserverprojectFields _ = docserverprojectFields
// docserverprojectDescProjectName is the schema descriptor for project_name field. // docserverprojectDescProjectName is the schema descriptor for project_name field.
...@@ -110,6 +111,10 @@ func init() { ...@@ -110,6 +111,10 @@ func init() {
docserverprojectDescStatus := docserverprojectFields[9].Descriptor() docserverprojectDescStatus := docserverprojectFields[9].Descriptor()
// docserverproject.DefaultStatus holds the default value on creation for the status field. // docserverproject.DefaultStatus holds the default value on creation for the status field.
docserverproject.DefaultStatus = docserverprojectDescStatus.Default.(int32) docserverproject.DefaultStatus = docserverprojectDescStatus.Default.(int32)
// docserverprojectDescCallbackRes is the schema descriptor for callback_res field.
docserverprojectDescCallbackRes := docserverprojectFields[10].Descriptor()
// docserverproject.DefaultCallbackRes holds the default value on creation for the callback_res field.
docserverproject.DefaultCallbackRes = docserverprojectDescCallbackRes.Default.(string)
} }
const ( const (
......
...@@ -55,11 +55,15 @@ func (DocServerProject) Fields() []ent.Field { ...@@ -55,11 +55,15 @@ func (DocServerProject) Fields() []ent.Field {
field.Int8("is_private").SchemaType(map[string]string{ field.Int8("is_private").SchemaType(map[string]string{
dialect.MySQL: "tinyint", dialect.MySQL: "tinyint",
}).Default(0).Comment(`是否公有`), }).Default(0).Comment(`是否私有 1 是 0 否`),
field.Int32("status").SchemaType(map[string]string{ field.Int32("status").SchemaType(map[string]string{
dialect.MySQL: "int", dialect.MySQL: "int",
}).Default(0).Comment(`状态`), }).Default(0).Comment(`状态 0 待执行 1 创建转换(待获取进度),2 进度完成待回调 3,回调成功(全部成功) `),
field.String("callback_res").SchemaType(map[string]string{
dialect.MySQL: "varchar(255)",
}).Default(``).Comment(`回调信息`),
field.Time("created_at").SchemaType(map[string]string{ field.Time("created_at").SchemaType(map[string]string{
dialect.MySQL: "datetime", dialect.MySQL: "datetime",
...@@ -80,5 +84,6 @@ func (DocServerProject) Hooks() []ent.Hook { ...@@ -80,5 +84,6 @@ func (DocServerProject) Hooks() []ent.Hook {
validator.MaxRuneLen("source_type", 16), validator.MaxRuneLen("source_type", 16),
validator.MaxRuneLen("target_type", 16), validator.MaxRuneLen("target_type", 16),
validator.MaxRuneLen("task_id", 128), validator.MaxRuneLen("task_id", 128),
validator.MaxRuneLen("callback_res", 255),
} }
} }
...@@ -178,6 +178,9 @@ func main() { ...@@ -178,6 +178,9 @@ func main() {
//获取转换进度 //获取转换进度
go console.GetConvert() go console.GetConvert()
//回调
go console.DoCallback()
if err := run(); err != nil && !errors.Is(err, http.ErrServerClosed) { if err := run(); err != nil && !errors.Is(err, http.ErrServerClosed) {
panic(err) panic(err)
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment