From 01dfd9dc8de7b19f9dfa4284722e01bbd5837801 Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期五, 19 一月 2024 09:10:30 +0800
Subject: [PATCH] replace json to json-iterator

---
 chanmanageApi.go |  126 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 126 insertions(+), 0 deletions(-)

diff --git a/chanmanageApi.go b/chanmanageApi.go
index 46a78b7..5116f20 100644
--- a/chanmanageApi.go
+++ b/chanmanageApi.go
@@ -1 +1,127 @@
 package bhomedbapi
+
+import (
+	"basic.com/pubsub/protomsg.git"
+	jsoniter "github.com/json-iterator/go"
+)
+
+type ChanManageApi struct {
+}
+
+//淇濆瓨杞閰嶇疆
+func (api ChanManageApi) SavePollPeriod(period int) (bool, interface{}) {
+	url := DATA_URL_PREFIX + "/pollConfig/savePollPeriod"
+	netNode := getNetNode(url2Topic(Topic_Chanmanage_Service, url))
+	client := NewClient(WithNodes(netNode))
+	paramBody := make(map[string]interface{}, 0)
+	paramBody["period"] = period
+	body, err := client.DoPostRequest(url, CONTENT_TYPE_FORM, paramBody, nil, nil)
+	if err != nil {
+		return false, nil
+	}
+
+	var res Result
+	var json = jsoniter.ConfigCompatibleWithStandardLibrary
+	if err = json.Unmarshal(body, &res); err != nil {
+		logPrint(err)
+		return false, nil
+	}
+
+	return res.Success, res.Data
+}
+
+func (api ChanManageApi) SavePollDelay(delay int) (bool, interface{}) {
+	url := DATA_URL_PREFIX + "/pollConfig/savePollDelay"
+	netNode := getNetNode(url2Topic(Topic_Chanmanage_Service, url))
+	client := NewClient(WithNodes(netNode))
+	paramBody := make(map[string]interface{}, 0)
+	paramBody["delay"] = delay
+	body, err := client.DoPostRequest(url, CONTENT_TYPE_FORM, paramBody, nil, nil)
+	if err != nil {
+		return false, nil
+	}
+
+	var res Result
+	var json = jsoniter.ConfigCompatibleWithStandardLibrary
+	if err = json.Unmarshal(body, &res); err != nil {
+		logPrint(err)
+		return false, nil
+	}
+
+	return res.Success, res.Data
+}
+
+//鑾峰彇杞閰嶇疆
+func (api ChanManageApi) GetPollConfig() (flag bool, config protomsg.PollConfig) {
+	url := DATA_URL_PREFIX + "/pollConfig/getPollConfig"
+	netNode := getNetNode(url2Topic(Topic_Chanmanage_Service, url))
+	client := NewClient(WithNodes(netNode))
+
+	body, err := client.DoGetRequest(url, nil, nil)
+	if err != nil {
+		return false, config
+	}
+
+	var res Result
+	var json = jsoniter.ConfigCompatibleWithStandardLibrary
+	if err = json.Unmarshal(body, &res); err != nil {
+		logPrint("unmarshal to Result err:", err)
+		return false, config
+	}
+
+	b, err := json.Marshal(res.Data)
+	if err != nil {
+		logPrint("marshal res.Data err:", err)
+		return false, config
+	} else {
+		err = json.Unmarshal(b, &config)
+		if err != nil {
+			logPrint("unmarshal config err:", err)
+			return false, config
+		} else {
+			return true, config
+		}
+	}
+}
+
+//鍒囨崲杞鏄惁寮�鍚拰鍏抽棴
+func (api ChanManageApi) UpdatePollEnable(enable bool) bool {
+	url := DATA_URL_PREFIX + "/pollConfig/updateEnable"
+	netNode := getNetNode(url2Topic(Topic_Chanmanage_Service, url))
+	client := NewClient(WithNodes(netNode))
+	paramBody := make(map[string]interface{}, 0)
+	paramBody["enable"] = enable
+	body, err := client.DoPostRequest(url, CONTENT_TYPE_JSON, paramBody, nil, nil)
+	if err != nil {
+		return false
+	}
+
+	var res Result
+	var json = jsoniter.ConfigCompatibleWithStandardLibrary
+	if err = json.Unmarshal(body, &res); err != nil {
+		return false
+	}
+
+	return res.Success
+}
+
+func (api ChanManageApi) UpdateChannelCount(pollChannelCount int, videoChannelCount int) bool {
+	url := DATA_URL_PREFIX + "/pollConfig/updateChannelCount"
+	netNode := getNetNode(url2Topic(Topic_Chanmanage_Service, url))
+	client := NewClient(WithNodes(netNode))
+	paramBody := make(map[string]interface{}, 0)
+	paramBody["pollChannelCount"] = pollChannelCount
+	paramBody["videoChannelCount"] = videoChannelCount
+	body, err := client.DoPostRequest(url, CONTENT_TYPE_JSON, paramBody, nil, nil)
+	if err != nil {
+		return false
+	}
+
+	var res Result
+	var json = jsoniter.ConfigCompatibleWithStandardLibrary
+	if err = json.Unmarshal(body, &res); err != nil {
+		return false
+	}
+
+	return res.Success
+}

--
Gitblit v1.8.0