From ecee2cffe7f3b4a66895f3752b143704db4c198e Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期三, 22 五月 2024 01:52:43 +0800
Subject: [PATCH] 完善上报逻辑

---
 service/device.go |   29 +++++++++++++++++++++--------
 1 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/service/device.go b/service/device.go
index 84ef889..c552a4c 100644
--- a/service/device.go
+++ b/service/device.go
@@ -7,7 +7,6 @@
 
 	"gat1400Exchange/config"
 	"gat1400Exchange/models"
-	"gat1400Exchange/pkg/logger"
 	"gat1400Exchange/util"
 )
 
@@ -34,12 +33,6 @@
 		return nil
 	}
 
-	if config.ForwardConf.ReportServer == "" {
-		return nil
-	}
-
-	logger.Info("Start device report task, server:%s.", config.ForwardConf.ReportServer)
-
 	var d models.Ape
 	devices, err := d.FindAll()
 	if err != nil {
@@ -50,11 +43,31 @@
 		// 绾ц仈鐨勮澶囦笉妫�鏌ュ績璺�
 		if dev.FromId == "" {
 			hTime, err := time.ParseInLocation("2006-01-02 15:04:05", dev.HeartbeatTime, time.Local)
-			if err != nil || hTime.Unix()+120 < time.Now().Unix() {
+			if err != nil {
+				dev.HeartbeatTime = time.Now().Format("2006-01-02 15:04:05")
+				dev.Ext.IsOnline = "1"
+			} else {
+				if hTime.Unix()+120 >= time.Now().Unix() {
+					dev.Ext.IsOnline = "1"
+				} else {
+					dev.Ext.IsOnline = "2"
+				}
+			}
+
+			// 鏇存柊鍦ㄧ嚎鐘舵��
+			dev.Save()
+
+			// 绂荤嚎璁惧涓嶆墽琛屼笂鎶�
+			if dev.Ext.IsOnline == "2" {
 				continue
 			}
 		}
 
+		// 閰嶇疆浜嗕笂鎶ュ湴鍧�, 鎺ㄩ�佹暟鎹�
+		if config.ForwardConf.ReportServer == "" {
+			continue
+		}
+
 		device := DevReportData{
 			Code:      dev.Id,
 			Model:     dev.Ext.Model,

--
Gitblit v1.8.0