From 56307a744dc94f9b1eed3f7513a4be16a130e984 Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期二, 17 十月 2023 17:20:25 +0800 Subject: [PATCH] 定时同步任务状态 --- service/task.go | 5 +++++ crontask/cron_task.go | 22 +++++++++++++++++++--- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/crontask/cron_task.go b/crontask/cron_task.go index 5668ea1..2bdb2c2 100644 --- a/crontask/cron_task.go +++ b/crontask/cron_task.go @@ -76,7 +76,7 @@ }) s.Every(60).Seconds().Do(SyncProductionProgress) //鍚屾鐢熶骇鏁版嵁 - s.Every(60).Seconds().Do(SyncTaskStatus) //鍚屾浠诲姟鐘舵�� + s.Every(30).Seconds().Do(SyncTaskStatus) //鍚屾浠诲姟鐘舵�� s.StartAsync() return nil } @@ -110,8 +110,24 @@ } func SyncTaskStatus() { - - //todo + records, err := service.NewTaskService().GetTaskStatusSync(100) + if err != nil { + logx.Errorf("SyncTaskStatus get records err:%v", err) + } + for _, record := range records { + msg := &common.MsgTaskStatusUpdate{ + WorkOrderId: record.WorkOrderId, + ProcedureID: record.ProcedureID, + DeviceId: record.DeviceId, + IsProcessing: record.IsProcessing, + IsFinish: record.IsFinish, + } + caller := nsq.NewCaller(fmt.Sprintf(constvar.NsqTopicTaskProcedureStatusUpdate, conf.Conf.NsqConf.NodeId), "") + err = caller.Send(msg) + if err != nil { + logx.Errorf("sync task status send msg error:%v", err.Error()) + } + } } func StopTask() { diff --git a/service/task.go b/service/task.go index 8129ddf..df68848 100644 --- a/service/task.go +++ b/service/task.go @@ -191,3 +191,8 @@ func (slf TaskService) SaveTaskStatusSync(db *gorm.DB, record *model.TaskStatusSync) (err error) { return model.NewTaskStatusSyncSearch(db).Create(record) } + +// GetTaskStatusSync 鑾峰彇寰呭悓姝ヤ换鍔′俊鎭� +func (slf TaskService) GetTaskStatusSync(limit int) ([]*model.TaskStatusSync, error) { + return model.NewTaskStatusSyncSearch(nil).SetOrder("id desc").SetPage(1, limit).FindNotTotal() +} -- Gitblit v1.8.0