package dbapi import ( "basic.com/pubsub/protomsg.git" "encoding/json" "fmt" ) type CameraApi struct{} func (api CameraApi) CameraAdd(camera protomsg.Camera) bool { url := BASIC_URL + DATA_URL_PREFIX + "/camera/add" client := NewClient() bodyParam := make(map[string]interface{},0) bodyParam["name"]=camera.Name bodyParam["areaid"] = camera.Areaid body, err := client.DoPostRequest(url,CONTENT_TYPE_JSON,bodyParam,nil,nil) if err != nil { return false } var res Result if err = json.Unmarshal(body, &res); err != nil { return false } return res.Success } //通过cameraId获取摄像机信息 func (api CameraApi) GetCameraById(cameraId string) (result protomsg.Camera, err error) { url := BASIC_URL + DATA_URL_PREFIX + "/camera/show/" + cameraId client := NewClient() body, err := client.DoGetRequest(url, nil, nil) if err != nil { return result, err } var res Result if err = json.Unmarshal(body, &res); err != nil { fmt.Println(err) return result,err } bytes, _ := json.Marshal(res.Data) err = json.Unmarshal(bytes, &result) return result, err } func (api CameraApi) FindAll() (cameras []protomsg.Camera) { url := BASIC_URL + DATA_URL_PREFIX + "/camera/showAll" client := NewClient() body, err := client.DoGetRequest(url, nil, nil) if err != nil { return nil } var res Result if err = json.Unmarshal(body, &res); err != nil { fmt.Println(err) return nil } bytes, _ := json.Marshal(res.Data) err = json.Unmarshal(bytes, &cameras) return cameras } //获取所有摄像机的信息以及其所有任务 func (api CameraApi) FindAllCameraAndTask() (cameraTasks []protomsg.CameraAndTaskInfo){ url := BASIC_URL + DATA_URL_PREFIX + "/camera/queryCameraAndTaskInfo" client := NewClient() body, err := client.DoGetRequest(url, nil, nil) if err != nil { return nil } var res Result if err = json.Unmarshal(body, &res); err != nil { fmt.Println(err) return nil } bytes, _ := json.Marshal(res.Data) err = json.Unmarshal(bytes, &cameraTasks) return cameraTasks }