From 131945ff5bc769dbc1004e12a8afc832df275c96 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期四, 16 五月 2024 10:45:40 +0800
Subject: [PATCH] 人脸通知添加ExecuteOperation

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

diff --git a/service/resend.go b/service/resend.go
index 4353c17..ac62207 100644
--- a/service/resend.go
+++ b/service/resend.go
@@ -1,7 +1,7 @@
 package service
 
 import (
-	"encoding/json"
+	"gat1400Exchange/client"
 	"gat1400Exchange/config"
 	"gat1400Exchange/models"
 	"gat1400Exchange/pkg/logger"
@@ -10,36 +10,32 @@
 )
 
 func ResendImageData() {
+	if err := util.HttpGet(config.ForwardConf.SyncServer); err != nil {
+		logger.Debug("The server cannot be reached. %s", err.Error())
+		return
+	}
+
 	var cacheMod models.Cache
 	cacheItems, _ := cacheMod.FindAll()
+	logger.Debug("Start resend task. cache len:%d", len(cacheItems))
 
 	for _, c := range cacheItems {
-		if !SendData([]byte(c.Data), config.ForwardConf.SyncServer) {
-			logger.Warn("The data resend failed. retry count %d", c.Retry)
-
-			c.Retry = c.Retry + 1
-			c.Update()
+		if c.Type == "1400" {
+			if client.FaceCapture([]byte(c.Data)) != vo.StatusSuccess {
+				c.UpdateRetryCount()
+				logger.Warn("The data resend failed. retry count %d", c.Retry+1)
+				continue
+			}
 		} else {
-			c.Delete()
-			logger.Debug("The data resend successful.")
+			if !util.SendData([]byte(c.Data), config.ForwardConf.SyncServer) {
+				c.UpdateRetryCount()
+				logger.Warn("The data resend failed. retry count %d", c.Retry+1)
+				continue
+			}
 		}
+
+		c.Delete()
+		logger.Debug("The data resend successful.")
 	}
 
-}
-
-func SendData(payload []byte, url string) bool {
-	body, err := util.HttpPost(url, nil, payload)
-	if err != nil {
-		logger.Error("Post request failure, url:%s, err:%s", err.Error())
-		return false
-	}
-
-	var rsp vo.SyncServerResponse
-	err = json.Unmarshal(body, &rsp)
-	if err != nil {
-		logger.Error("Can't parse response, url:%s, rsp: %v", url, body)
-		return false
-	}
-
-	return rsp.Success
 }

--
Gitblit v1.8.0