From 676d8bd099fddeedbdbad2840be7e683d647bb51 Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@qq.com>
Date: 星期二, 14 五月 2019 14:00:36 +0800
Subject: [PATCH] area interface
---
/dev/null | 58 -------------------
cameraApi.go | 5 +
entites.go | 13 ++++
httpClient_test.go | 2
areaApi.go | 82 +++++++++++++++++++++++---
5 files changed, 88 insertions(+), 72 deletions(-)
diff --git a/areaApi.go b/areaApi.go
index dee1b49..a81c466 100644
--- a/areaApi.go
+++ b/areaApi.go
@@ -3,30 +3,32 @@
import (
"encoding/json"
"fmt"
- "net/http"
- "strings"
)
type AreaApi struct {
}
-//鏌ヨ鏈湴鎽勫儚鏈烘爲
-func (api AreaApi) GetLocalCameraTree(parentId int) []TreeMenu {
+//parentId 瑕佹煡瀵荤殑鐩綍鏍戠殑鏍硅妭鐐筰d
+//searchType(0:鍏ㄩ儴锛�1:鍒嗘瀽鎽勫儚鏈�,2:鐩戞帶鎽勫儚鏈�)
+//cameraName锛堟憚鍍忔満鍚嶇О锛�
+func (api AreaApi) GetLocalCameraTree(parentId int, searchType int, cameraName string) []TreeMenu {
var result []TreeMenu
- url := BASIC_URL + "/data/api-v/area/localmenu"
- request, err := http.NewRequest("GET", url, strings.NewReader(string(parentId)))
- if err != nil {
- return result
- }
+ client := NewClient()
- body, err := DoRequest(request, "application/json")
+ url := BASIC_URL + DATA_URL_PREFIX + "/area/localmenu"
+ params := make(map[string]string, 0)
+ params["parentId"] = string(parentId)
+ params["searchType"] = string(searchType)
+ params["cameraName"] = cameraName
+
+ respBody, err := client.DoGetRequest(url, params, nil)
if err != nil {
return result
}
var res Result
- if err = json.Unmarshal(body, &res); err != nil {
+ if err = json.Unmarshal(respBody, &res); err != nil {
fmt.Println(err)
}
@@ -41,6 +43,64 @@
//娣诲姞鐩綍鑺傜偣
func (api AreaApi) AreaAdd(area Area) bool {
flag := false
+ url := BASIC_URL + DATA_URL_PREFIX + "/area/add"
+ client := NewClient()
+ paramBody := Struct2Map(area)
+ respBody, err := client.DoPostRequest(url, CONTENT_TYPE_FORM, paramBody, nil, nil)
+ if err != nil {
+ return flag
+ }
+ var res Result
+ if err = json.Unmarshal(respBody, &res); err != nil {
+ fmt.Println(err)
+ return flag
+ }
+ flag = res.Success
+ return flag
+}
+//鐩綍鏇存柊
+func (api AreaApi) AreaUpdate(area Area) bool {
+ flag := false
+ url := BASIC_URL + DATA_URL_PREFIX + "/area/update/" + string(area.Id)
+ client := NewClient()
+
+ if area.Name == "" || area.Id == 0 {
+ return flag
+ }
+ paramBody := Struct2Map(area)
+ respBody, err := client.DoPutRequest(url, CONTENT_TYPE_JSON, paramBody, nil)
+ if err != nil {
+ return flag
+ }
+ var res Result
+ if err = json.Unmarshal(respBody, &res); err != nil {
+ fmt.Println(err)
+ return flag
+ }
+ flag = res.Success
+ return flag
+}
+
+//鍒犻櫎鐩綍
+func (api AreaApi) AreaDelete(id int) bool {
+ flag := false
+ if id == 0 {
+ return flag
+ }
+ url := BASIC_URL + DATA_URL_PREFIX + "/area/del"
+ client := NewClient()
+ paramQuery := make(map[string]string, 0)
+ paramQuery["id"] = string(id)
+ respBody, err := client.DoGetRequest(url, paramQuery, nil)
+ if err != nil {
+ return flag
+ }
+ var res Result
+ if err = json.Unmarshal(respBody, &res); err != nil {
+ fmt.Println(err)
+ return flag
+ }
+ flag = res.Success
return flag
}
diff --git a/cameraApi.go b/cameraApi.go
index 2b3d484..eacba42 100644
--- a/cameraApi.go
+++ b/cameraApi.go
@@ -9,9 +9,10 @@
//閫氳繃cameraId鑾峰彇鎽勫儚鏈轰俊鎭�
func (api CameraApi) GetCameraById(cameraId string) (result Camera, err error) {
- url := BASIC_URL + "/data/api-v/camera/show/" + cameraId
+ url := BASIC_URL + DATA_URL_PREFIX + "/camera/show/" + cameraId
+ client := NewClient()
- body, err := DoGetRequest(url, nil, nil)
+ body, err := client.DoGetRequest(url, nil, nil)
if err != nil {
return result, err
}
diff --git a/common.go b/common.go
deleted file mode 100644
index c6edb76..0000000
--- a/common.go
+++ /dev/null
@@ -1,107 +0,0 @@
-package dbapi
-
-import (
- "bytes"
- "encoding/json"
- "io/ioutil"
- "log"
- "net/http"
- "time"
-)
-
-const (
- BASIC_URL = "http://192.168.1.182:8000"
-)
-
-//鍙戣捣GET璇锋眰
-func DoGetRequest(url string, params map[string]string, headers map[string]string) ([]byte, error) {
- var body []byte
- request, err := http.NewRequest("GET", url, nil)
- if err != nil {
- log.Println(err)
- return body, err
- }
- // add params
- query := request.URL.Query()
- if params != nil {
- for key, val := range params {
- query.Add(key, val)
- }
- request.URL.RawQuery = query.Encode()
- }
- //add headers
- client := &http.Client{}
- log.Printf("Go GET URL : %s \n", request.URL.String())
- resp, err := client.Do(request)
- if err != nil {
- return body, err
- }
- defer resp.Body.Close()
- body, err = ioutil.ReadAll(resp.Body)
- if err != nil {
- return body, err
- }
- return body, nil
-}
-
-//鍙戣捣POST璇锋眰
-func DoPostRequest(url string, body map[string]string, params map[string]string, headers map[string]string) ([]byte, error) {
- var resultByte []byte
- var bodyJson []byte
- if body != nil {
- var err error
- bodyJson, err = json.Marshal(body)
- if err != nil {
- log.Println(err)
- return resultByte, err
- }
- }
- request, err := http.NewRequest("POST", url, bytes.NewBuffer(bodyJson))
- if err != nil {
- log.Println(err)
- return resultByte, err
- }
- request.Header.Set("Content-type", "application/json")
- //add params
- q := request.URL.Query()
- if params != nil {
- for key, val := range params {
- q.Add(key, val)
- }
- request.URL.RawQuery = q.Encode()
- }
- // add headers
- if headers != nil {
- for key, val := range headers {
- request.Header.Add(key, val)
- }
- }
- client := &http.Client{}
- resp, err := client.Do(request)
- if err != nil {
- return resultByte, err
- }
- defer resp.Body.Close()
- resultByte, err = ioutil.ReadAll(resp.Body)
- if err != nil {
- return resultByte, err
- }
- return resultByte, nil
-}
-
-func DoRequest(request *http.Request, contentType string) ([]byte, error) {
- var body []byte
- request.Header.Add("Content-Type", contentType)
- timeout := time.Duration(5 * time.Second) //瓒呮椂鏃堕棿50ms
- client := &http.Client{Timeout: timeout}
- resp, err := client.Do(request)
- if err != nil {
- return body, err
- }
- defer resp.Body.Close()
- body, err = ioutil.ReadAll(resp.Body)
- if err != nil {
- return body, err
- }
- return body, nil
-}
diff --git a/entites.go b/entites.go
index 05ac02c..4bddb2d 100644
--- a/entites.go
+++ b/entites.go
@@ -32,6 +32,19 @@
Reserved string
}
+type TreeMenu struct {
+ Id string `json:"id" `
+ Type string `json:"type"`
+ Name string `json:"name"`
+ Treenodes []TreeMenu `json:"children"`
+}
+
+type TreeNode struct {
+ Id int
+ Name string
+ Parentid int
+}
+
//鎽勫儚鏈虹粨鏋�
type Camera struct {
Id string
diff --git a/httpClient.go b/httpClient.go
deleted file mode 100644
index de800f7..0000000
--- a/httpClient.go
+++ /dev/null
@@ -1,58 +0,0 @@
-package dbapi
-
-import (
- "encoding/json"
- "fmt"
- "io/ioutil"
- "net/http"
- "strings"
- "time"
-
-)
-
-type DbApi struct{}
-
-const (
- BASIC_URL = "http://192.168.1.182:8000"
-)
-
-func DoRequest(request *http.Request, contentType string) ([]byte, error) {
- var body []byte
- request.Header.Add("Content-Type", contentType)
- timeout := time.Duration(5 * time.Second) //瓒呮椂鏃堕棿50ms
- client := &http.Client{Timeout: timeout}
- resp, err := client.Do(request)
- if err != nil {
- return body, err
- }
- defer resp.Body.Close()
- body, err = ioutil.ReadAll(resp.Body)
- if err != nil {
- return body, err
- }
- return body, nil
-}
-
-//閫氳繃cameraId鑾峰彇鎽勫儚鏈轰俊鎭�
-func (api DbApi) GetCameraById(cameraId string) (result Camera, err error) {
- url := BASIC_URL + "/data/api-v/camera/show/" + cameraId
- request, err := http.NewRequest("GET", url, strings.NewReader(cameraId))
- if err != nil {
- return result, err
- }
-
- body, err := DoRequest(request, "application/json")
- if err != nil {
- return result, err
- }
-
- var res Result
- if err = json.Unmarshal(body, &res); err != nil {
- fmt.Println(err)
- }
-
- bytes, _ := json.Marshal(res.Data)
- err = json.Unmarshal(bytes, &result)
-
- return result, err
-}
diff --git a/httpClient_test.go b/httpClient_test.go
index 08e7c4f..64874bc 100644
--- a/httpClient_test.go
+++ b/httpClient_test.go
@@ -6,7 +6,7 @@
)
func TestGetCameraById(t *testing.T) {
- var api DbApi
+ var api CameraApi
camera, _ := api.GetCameraById("cid0")
fmt.Println(camera)
}
--
Gitblit v1.8.0