From 93421c83d94932bc9dc6b157703c80d5baaa0e0c Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@aiotlink.com>
Date: 星期二, 15 十二月 2020 17:42:56 +0800
Subject: [PATCH] 添加CameraPolygonRelation

---
 cameraPolygonRelation.go |   97 ++++++++++++++++++++++++++++++++++++++++++++++++
 .gitignore               |    2 +
 2 files changed, 99 insertions(+), 0 deletions(-)

diff --git a/.gitignore b/.gitignore
index 706fd07..1d5b0c2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,4 @@
 .idea
 .vscode
+go.mod
+go.sum
\ No newline at end of file
diff --git a/cameraPolygonRelation.go b/cameraPolygonRelation.go
new file mode 100644
index 0000000..970ea32
--- /dev/null
+++ b/cameraPolygonRelation.go
@@ -0,0 +1,97 @@
+package dbapi
+
+import (
+	"basic.com/pubsub/protomsg.git"
+	"encoding/json"
+	"strconv"
+)
+
+type CameraPolygonRelationApi struct{
+	Ip string
+	Port int
+}
+
+func (api CameraPolygonRelationApi) getBasicUrl() string {
+	if api.Ip == "" {
+		return BASIC_URL
+	}
+	if api.Ip == "" {
+		api.Ip = DEFAULT_IP
+	}
+	if api.Port == 0 {
+		api.Port = DEFAULT_PORT
+	}
+	return "http://"+api.Ip+":"+strconv.Itoa(api.Port)
+}
+
+func (api CameraPolygonRelationApi) FindAll() (flag bool,list []protomsg.CameraPolygonRelation) {
+	url := api.getBasicUrl() + DATA_URL_PREFIX + "/polygon/relation/findAll"
+	client := NewClient()
+
+	body, err := client.DoGetRequest(url, nil, nil)
+	if err != nil {
+		logPrint("polygon relation findAll err:", err)
+		return false, nil
+	}
+
+	var res Result
+	if err = json.Unmarshal(body, &res); err != nil {
+		logPrint("relations unmarshal err:", err)
+		return false,nil
+	}
+
+	bts, _ := json.Marshal(res.Data)
+	err = json.Unmarshal(bts, &list)
+	if err != nil {
+		return false, nil
+	}
+
+	return true, list
+}
+
+func (api CameraPolygonRelationApi) Relations(paramBody map[string]interface{}) (bool,interface{}) {
+	url := api.getBasicUrl() + DATA_URL_PREFIX + "/polygon/relations"
+	client := NewClient()
+	body, err := client.DoPostRequest(url,CONTENT_TYPE_JSON,paramBody,nil,nil)
+	if err != nil {
+		return false,nil
+	}
+
+	var res Result
+	if err = json.Unmarshal(body, &res); err != nil {
+		return false,nil
+	}
+	return res.Success, res.Data
+}
+
+func (api CameraPolygonRelationApi) SaveRelation(paramBody map[string]interface{}) (bool,interface{}) {
+	url := api.getBasicUrl() + DATA_URL_PREFIX + "/polygon/relation/save"
+	client := NewClient()
+	body, err := client.DoPostRequest(url,CONTENT_TYPE_JSON,paramBody,nil,nil)
+	if err != nil {
+		return false,nil
+	}
+
+	var res Result
+	if err = json.Unmarshal(body, &res); err != nil {
+		return false,nil
+	}
+	return res.Success,res.Data
+}
+
+func (api CameraPolygonRelationApi) DelRelation(id string) bool {
+	url := api.getBasicUrl() + DATA_URL_PREFIX + "/polygon/relation/del"
+	client := NewClient()
+	paramMap := make(map[string]string,0)
+	paramMap["id"] = id
+	body, err := client.DoDeleteRequest(url,CONTENT_TYPE_FORM,nil,paramMap)
+	if err != nil {
+		return false
+	}
+
+	var res Result
+	if err = json.Unmarshal(body, &res); err != nil {
+		return false
+	}
+	return res.Success
+}
\ No newline at end of file

--
Gitblit v1.8.0