From a25d8a11e6955d44bb51ac73799ab82acd2c62a7 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期六, 20 四月 2024 13:50:53 +0800
Subject: [PATCH] 完善楼层的bug

---
 model/model.go    |   17 +++++++++++++++++
 service/server.go |   40 +++++++++++++++++++++++++++++++++++-----
 main.go           |    1 -
 3 files changed, 52 insertions(+), 6 deletions(-)

diff --git a/main.go b/main.go
index b2797d5..d9364c8 100644
--- a/main.go
+++ b/main.go
@@ -4,7 +4,6 @@
 	"data_msg_push_server/config"
 	"data_msg_push_server/service"
 
-	"fmt"
 	"time"
 
 	"basic.com/valib/logger.git"
diff --git a/model/model.go b/model/model.go
index 58e175c..037246b 100644
--- a/model/model.go
+++ b/model/model.go
@@ -11,3 +11,20 @@
 	PicMaxImages: nil,
 	PicSmImages:  nil,
 }
+
+var PushDataInfoV2 = &pushDataInfoV2{
+	PicMaxImages: nil,
+	PicSmImages:  nil,
+	CameraFloor:  "",
+	DataSource:   "smart-ai",
+}
+
+type pushDataInfoV2 struct {
+	CameraId     string   `json:"cameraId"`
+	CameraFloor  string   `json:"cameraFloor"` //鎽勫儚鏈烘ゼ灞�
+	PicDate      string   `json:"picDate"`
+	PicId        string   `json:"picId"`
+	DataSource   string   `json:"dataSource"`
+	PicMaxImages [][]byte `json:"picMaxImages"`
+	PicSmImages  [][]byte `json:"picSmImages"`
+}
diff --git a/service/server.go b/service/server.go
index 2ad02fd..4bbf983 100644
--- a/service/server.go
+++ b/service/server.go
@@ -12,6 +12,8 @@
 	"fmt"
 	"io/ioutil"
 	"net/http"
+	"regexp"
+	"strings"
 )
 
 func ConnectControl() bool {
@@ -145,13 +147,41 @@
 	}
 
 	// 涓婃姤鏈烘瀯鍚嶇О
-	source[0]["orgName"] = config.Options.OrgName
+	//source[0]["orgName"] = config.Options.OrgName
 
-	model.PushDataInfo.SourceData = source[0]
-	model.PushDataInfo.PicMaxImages = picMaxImages
-	model.PushDataInfo.PicSmImages = picSmImages
+	cameraAddr := source[0]["cameraAddr"].(string)
+	if len(cameraAddr) > 6 {
+		if cameraAddr[len(cameraAddr)-3:] == "妤�" {
+			cameraAddr = cameraAddr[:len(cameraAddr)-3] + "F"
+		}
+		if cameraAddr[len(cameraAddr)-3:] == "灞�" {
+			cameraAddr = cameraAddr[:len(cameraAddr)-3] + "F"
+		}
+	}
+
+	if strings.HasSuffix(cameraAddr, "F") {
+		model.PushDataInfoV2.CameraFloor = extractFloor(cameraAddr)
+	} else {
+		model.PushDataInfoV2.CameraFloor = ""
+	}
+
+	model.PushDataInfoV2.CameraId = source[0]["cameraId"].(string)
+	model.PushDataInfoV2.PicDate = source[0]["picDate"].(string)
+	model.PushDataInfoV2.PicId = source[0]["id"].(string)
+	model.PushDataInfoV2.PicMaxImages = picMaxImages
+	model.PushDataInfoV2.PicSmImages = picSmImages
 	//fmt.Println(model.PushDataInfo.SourceData)
-	return model.PushDataInfo, nil
+	return model.PushDataInfoV2, nil
+}
+
+func extractFloor(s string) string {
+	// 浣跨敤姝e垯琛ㄨ揪寮忓尮閰嶆ゼ灞備俊鎭�
+	re := regexp.MustCompile(`[-\d]+F`)
+	matches := re.FindStringSubmatch(s)
+	if len(matches) >= 1 {
+		return matches[0] // 杩斿洖鍖归厤鍒扮殑妤煎眰淇℃伅
+	}
+	return "" // 濡傛灉娌℃湁鍖归厤鍒帮紝杩斿洖绌哄瓧绗︿覆
 }
 
 func SendData(pushDataInfo interface{}, url string) (id string, err error) {

--
Gitblit v1.8.0