From dc765761b9bb6866635f06f754d28895507e711f Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期四, 06 六月 2024 16:26:40 +0800
Subject: [PATCH] 完善打印

---
 service/resend.go |   35 +++++++++++++++++++++++++----------
 1 files changed, 25 insertions(+), 10 deletions(-)

diff --git a/service/resend.go b/service/resend.go
index e56ffc1..667b237 100644
--- a/service/resend.go
+++ b/service/resend.go
@@ -9,28 +9,43 @@
 	"gat1400Exchange/vo"
 )
 
-func ResendImageData() {
-	var cacheMod models.Cache
-	cacheItems, _ := cacheMod.FindAll()
+var resendTaskRunning bool
 
-	logger.Debug("Start resend task. cache len:%d", len(cacheItems))
-	if err := util.HttpGet(config.ForwardConf.SyncServer); err != nil {
-		logger.Debug("The server cannot be reached. %s", err.Error())
+func ResendImageData() {
+	if resendTaskRunning {
 		return
 	}
+	resendTaskRunning = true
+	defer func() { resendTaskRunning = false }()
 
-	for _, c := range cacheItems {
-		if c.Type == "1400" {
+	var cacheMod models.Cache
+	total, _ := cacheMod.Count()
+	logger.Debug("Start resend task. cache len:%d", total)
+
+	for i := 0; i < int(total); i++ {
+		var c models.Cache
+		err := c.First()
+		if err != nil {
+			logger.Error(err.Error())
+			return
+		}
+		if c.Type == "1400-face" {
 			if client.FaceCapture([]byte(c.Data)) != vo.StatusSuccess {
 				c.UpdateRetryCount()
 				logger.Warn("The data resend failed. retry count %d", c.Retry+1)
-				continue
+				return
+			}
+		} else if c.Type == "1400-person" {
+			if client.PersonCapture([]byte(c.Data)) != vo.StatusSuccess {
+				c.UpdateRetryCount()
+				logger.Warn("The data resend failed. retry count %d", c.Retry+1)
+				return
 			}
 		} else {
 			if !util.SendData([]byte(c.Data), config.ForwardConf.SyncServer) {
 				c.UpdateRetryCount()
 				logger.Warn("The data resend failed. retry count %d", c.Retry+1)
-				continue
+				return
 			}
 		}
 

--
Gitblit v1.8.0