From 46d841d93d20773dd2cf31fa1caa7199c65fe037 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期四, 07 九月 2023 11:25:37 +0800
Subject: [PATCH] 定时同步生产进度到云端

---
 crontask/cron_task.go |   21 ++++++++++++++++++++-
 1 files changed, 20 insertions(+), 1 deletions(-)

diff --git a/crontask/cron_task.go b/crontask/cron_task.go
index 35fde2b..28301bf 100644
--- a/crontask/cron_task.go
+++ b/crontask/cron_task.go
@@ -3,9 +3,11 @@
 import (
 	"apsClient/conf"
 	"apsClient/constvar"
+	"apsClient/nsq"
 	"apsClient/pkg/ecode"
 	"apsClient/pkg/logx"
 	"apsClient/service"
+	"fmt"
 	"github.com/go-co-op/gocron"
 	"github.com/spf13/cast"
 	"time"
@@ -39,7 +41,7 @@
 		return err
 	}
 
-	s.Every(totalNumberTimeInterval).Seconds().StartImmediately().Do(func() {
+	s.Every(totalNumberTimeInterval).Seconds().Do(func() {
 		plcConfig, code := service.NewDevicePlcService().GetDevicePlc()
 		if code != ecode.OK {
 			return
@@ -51,6 +53,23 @@
 		logx.Infof("plc read total number:%v, err:%v", totalNumber, err)
 	})
 
+	s.Every(60).Seconds().StartImmediately().Do(SyncProductionProgress) //鍚屾鐢熶骇鏁版嵁
 	s.StartAsync()
 	return nil
 }
+
+func SyncProductionProgress() {
+	progress, err := service.NewProgressService().GetCurrentProgress()
+	if err != nil {
+		return
+	}
+	if progress == nil {
+		return
+	}
+
+	caller := nsq.NewCaller(fmt.Sprintf(constvar.NsqTopicSyncTaskProgress, conf.Conf.NsqConf.NodeId), "")
+	err = caller.Send(progress)
+	if err != nil {
+		logx.Errorf("SyncProductionProgress error:%v", err.Error())
+	}
+}

--
Gitblit v1.8.0