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