package dbapi
|
|
import (
|
"basic.com/pubsub/protomsg.git"
|
"encoding/json"
|
"fmt"
|
"strconv"
|
)
|
|
type CameraApi struct{}
|
|
func (api CameraApi) CameraAdd(paramBody map[string]interface{}) bool {
|
url := BASIC_URL + DATA_URL_PREFIX + "/camera/add"
|
client := NewClient()
|
body, err := client.DoPostRequest(url,CONTENT_TYPE_JSON,paramBody,nil,nil)
|
if err != nil {
|
return false
|
}
|
|
var res Result
|
if err = json.Unmarshal(body, &res); err != nil {
|
return false
|
}
|
return res.Success
|
}
|
|
func (api CameraApi) CameraUpdate(paramBody map[string]interface{}) bool {
|
url := BASIC_URL + DATA_URL_PREFIX + "/camera/update"
|
client := NewClient()
|
body, err := client.DoPutRequest(url,CONTENT_TYPE_JSON,paramBody,nil)
|
if err != nil {
|
return false
|
}
|
|
var res Result
|
if err = json.Unmarshal(body, &res); err != nil {
|
return false
|
}
|
return res.Success
|
}
|
|
func (api CameraApi) CameraDelete(cid string) bool {
|
url := BASIC_URL + DATA_URL_PREFIX + "/camera/delete/"+cid
|
client := NewClient()
|
paramMap := make(map[string]string,0)
|
paramMap["cid"] = cid
|
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
|
}
|
|
//通过cameraId获取摄像机信息
|
func (api CameraApi) GetCameraById(cameraId string) (camera 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 camera, err
|
}
|
|
var res Result
|
if err = json.Unmarshal(body, &res); err != nil {
|
return camera,err
|
}
|
|
bytes, _ := json.Marshal(res.Data)
|
err = json.Unmarshal(bytes, &camera)
|
|
return camera, 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
|
}
|
|
func (api CameraApi) SaveCameraPolygon(paramBody map[string]interface{}) (bool,interface{}) {
|
url := BASIC_URL + DATA_URL_PREFIX + "/polygon/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 {
|
fmt.Println(err)
|
return false,nil
|
}
|
|
return res.Success,res.Data
|
}
|
|
func (api CameraApi) DeleteCameraPolygon(id string) (bool,interface{}){
|
url := BASIC_URL + DATA_URL_PREFIX + "/polygon/delete"
|
client := NewClient()
|
paramQuery := make(map[string]string,0)
|
paramQuery["id"]=id
|
body, err := client.DoGetRequest(url, paramQuery, 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 CameraApi) FindAllPolygons() ([]protomsg.CameraPolygon) {
|
polygons := make([]protomsg.CameraPolygon,0)
|
url := BASIC_URL + DATA_URL_PREFIX + "/polygon/findAll"
|
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 {
|
return nil
|
}
|
dataBytes, _ := json.Marshal(res.Data)
|
if err := json.Unmarshal(dataBytes, &polygons);err !=nil {
|
return nil
|
}
|
|
return polygons
|
}
|
|
func (api CameraApi) FindPolygonsByCameraId(cameraId string) (bool,interface{}) {
|
url := BASIC_URL + DATA_URL_PREFIX + "/polygon/findByCameraId"
|
client := NewClient()
|
paramQuery := make(map[string]string,0)
|
paramQuery["cameraId"] = cameraId
|
body, err := client.DoGetRequest(url, paramQuery, nil)
|
if err != nil {
|
return false,nil
|
}
|
|
var res Result
|
if err = json.Unmarshal(body, &res); err != nil {
|
return false,nil
|
}
|
return true,res.Data
|
}
|
|
//新增或更新时间规则
|
func (api CameraApi) SaveCameraTimerule(paramBody map[string]interface{}) (bool,interface{}) {
|
url := BASIC_URL + DATA_URL_PREFIX + "/cameraTimerule/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 {
|
fmt.Println(err)
|
return false,nil
|
}
|
|
return res.Success,res.Data
|
}
|
|
func (api CameraApi) DeleteCameraTimerule (id string) bool {
|
url := BASIC_URL + DATA_URL_PREFIX + "/cameraTimerule/delete"
|
client := NewClient()
|
paramQuery := make(map[string]string,0)
|
paramQuery["id"]=id
|
body, err := client.DoGetRequest(url, paramQuery, nil)
|
if err != nil {
|
return false
|
}
|
|
var res Result
|
if err = json.Unmarshal(body, &res); err != nil {
|
return false
|
}
|
return res.Success
|
}
|
|
//根据摄像机id查找所有的时间规则
|
func (api CameraApi) FindAllTimeRules() (flag bool,rules []protomsg.CameraTimerule) {
|
url := BASIC_URL + DATA_URL_PREFIX + "/cameraTimerule/findAll"
|
client := NewClient()
|
body, err := client.DoGetRequest(url, nil, nil)
|
if err != nil {
|
return false,nil
|
}
|
|
var res Result
|
if err = json.Unmarshal(body, &res); err != nil {
|
return false,nil
|
}
|
dataBytes, _ := json.Marshal(res.Data)
|
if err := json.Unmarshal(dataBytes, &rules);err !=nil {
|
return false,nil
|
}
|
return true,rules
|
}
|
|
func (api CameraApi) UpdateDefenceStateByPolygonId(polygonId string,state string) (bool,interface{}){
|
url := BASIC_URL + DATA_URL_PREFIX + "/polygon/updateDefenceStateByPolygonId"
|
client := NewClient()
|
paramQuery :=make(map[string]string,0)
|
paramQuery["polygonId"] = polygonId
|
paramQuery["defence_state"]=state
|
body, err := client.DoGetRequest(url, paramQuery, nil)
|
if err != nil {
|
return false,nil
|
}
|
|
var res Result
|
if err = json.Unmarshal(body, &res); err != nil {
|
return false,nil
|
}
|
return true,res.Data
|
}
|
|
func (api CameraApi) UpdateDefenceStateByCameraId(cameraId string,state string) (bool,interface{}){
|
url := BASIC_URL + DATA_URL_PREFIX + "/polygon/updateDefenceStateByCameraId"
|
client := NewClient()
|
paramQuery :=make(map[string]string,0)
|
paramQuery["cameraId"] = cameraId
|
paramQuery["defence_state"]=state
|
body, err := client.DoGetRequest(url, paramQuery, nil)
|
if err != nil {
|
return false,nil
|
}
|
|
var res Result
|
if err = json.Unmarshal(body, &res); err != nil {
|
return false,nil
|
}
|
return true,res.Data
|
}
|
|
//根据运行类型获取摄像机列表
|
//runType(0:获取轮询列表,1:获取实时列表)
|
func (api CameraApi) GetCamerasByRunType(runType int)(flag bool,cameras []protomsg.Camera){
|
url := BASIC_URL + DATA_URL_PREFIX + "/camera/getCamerasByRunType"
|
client := NewClient()
|
paramQuery := make(map[string]string,0)
|
paramQuery["runType"]=strconv.Itoa(runType)
|
body, err := client.DoGetRequest(url, paramQuery, nil)
|
if err != nil {
|
return false,nil
|
}
|
|
var res Result
|
if err = json.Unmarshal(body, &res); err != nil {
|
return false,nil
|
}
|
b, err := json.Marshal(res.Data)
|
if err !=nil {
|
fmt.Println("unmarshal GetCamerasByRunType.result err")
|
return false,nil
|
}
|
if err = json.Unmarshal(b, &cameras);err !=nil {
|
return false,nil
|
} else {
|
return true,cameras
|
}
|
}
|
|
func (api CameraApi) UpdateRunEnable(cameraId string,runEnable bool) (bool,interface{}){
|
url := BASIC_URL + DATA_URL_PREFIX + "/camera/updateRunEnable"
|
client := NewClient()
|
paramBody :=make(map[string]interface{},0)
|
paramBody["cameraId"] = cameraId
|
paramBody["runEnable"] = runEnable
|
body,err := client.DoPostRequest(url,CONTENT_TYPE_FORM, paramBody,nil,nil)
|
if err != nil {
|
return false,nil
|
}
|
|
var res Result
|
if err = json.Unmarshal(body, &res); err != nil {
|
fmt.Println(err)
|
return false,nil
|
}
|
|
return res.Success,res.Data
|
}
|
|
func (api CameraApi) ChangeRunType(cameraId string,runType int) (bool,interface{}){
|
url := BASIC_URL + DATA_URL_PREFIX + "/camera/changeRunType"
|
client := NewClient()
|
paramBody :=make(map[string]interface{},0)
|
paramBody["cameraId"] = cameraId
|
paramBody["runType"] = runType
|
body,err := client.DoPostRequest(url,CONTENT_TYPE_FORM, paramBody,nil,nil)
|
if err != nil {
|
return false,nil
|
}
|
|
var res Result
|
if err = json.Unmarshal(body, &res); err != nil {
|
fmt.Println(err)
|
return false,nil
|
}
|
|
return res.Success,res.Data
|
}
|