From bae7a9a30b89c519460746cfa19cd7e66a0196e2 Mon Sep 17 00:00:00 2001 From: sunty <1172534965@qq.com> Date: 星期日, 19 一月 2020 17:13:07 +0800 Subject: [PATCH] update _source list and struct --- controllers/camera.go | 86 ++++++++++++++++++++++++++++++++++++------ 1 files changed, 73 insertions(+), 13 deletions(-) diff --git a/controllers/camera.go b/controllers/camera.go index e7105b2..882e043 100644 --- a/controllers/camera.go +++ b/controllers/camera.go @@ -1,10 +1,12 @@ package controllers import ( + "basic.com/pubsub/protomsg.git" "encoding/json" "fmt" "strconv" "basic.com/valib/logger.git" + "strings" "webserver/cache" "github.com/gin-gonic/gin" @@ -85,6 +87,7 @@ err := c.BindJSON(&cam) if err != nil { + logger.Debug("err:",err) util.ResponseFormat(c, code.RequestParamError, "鍙傛暟閿欒") return } @@ -123,8 +126,8 @@ // @Produce json // @Tags camera // @Param cid path string true "鎽勫儚鏈篿d" -// @Success 200 {string} json "{"code":200, success:true, msg:"璇锋眰澶勭悊鎴愬姛", data:"鎽勫儚鏈轰俊鎭�"}" -// @Failure 500 {string} json "{"code":500, success:false msg:"",data:"閿欒淇℃伅鍐呭"}" +// @Success 200 {string} json "{"code":200, success:true, msg:"", data:""}" +// @Failure 500 {string} json "{"code":500, success:false, msg:"",data:""}" // @Router /data/api-v/camera/show/{cid} [get] func (ac CameraController) CameraSel(c *gin.Context) { var api dbapi.CameraApi @@ -134,8 +137,35 @@ util.ResponseFormat(c, code.ComError, "鏌ヨ澶辫触") return } - - util.ResponseFormat(c, code.Success, camera) + //2019-11-02鏂板闇�姹傦紝鏄剧ず姣忎釜鎽勫儚鏈虹殑澶勭悊鏈嶅姟鍣ㄤ俊鎭�,褰掑睘鐨勮妭鐐规湇鍔″櫒鍚嶇О + m := util.Struct2Map(camera) + m["runServerName"] = "" + if camera.RunServerId !="" { + localConf, e := cache.GetServerInfo() + if e ==nil { + if camera.RunServerId == localConf.ServerId {//褰掑睘鏈彴鏈嶅姟鍣� + m["runServerName"] = localConf.ServerName + } else {//灞炰簬鍏朵粬鏈嶅姟鍣� + var clusterApi dbapi.ClusterApi + b, data := clusterApi.FindCluster() + if b && data !=nil { + cb, _ := json.Marshal(data) + var clu ClusterDb + if err := json.Unmarshal(cb, &clu);err ==nil { + if len(clu.Nodes) >0 { + for _,n :=range clu.Nodes { + if camera.RunServerId == n.NodeId { + m["runServerName"] = n.NodeName + break + } + } + } + } + } + } + } + } + util.ResponseFormat(c, code.Success, m) } @@ -170,9 +200,9 @@ return json.Marshal(test) } +// @Security ApiKeyAuth // @Summary 灏嗘憚鍍忔満鎸傚埌鎸囧畾鐨勭洰褰曟爲涓� // @Description 灏嗘憚鍍忔満鎸傚埌鎸囧畾鐨勭洰褰曟爲涓� -// @Security ApiKeyAuth // @Produce json // @Tags camera // @Param cameraId path string true "鎽勫儚鏈篿d" @@ -187,9 +217,9 @@ fmt.Println(areaId) } +// @Security ApiKeyAuth // @Summary 鍒犻櫎鏌愪竴涓洰褰曟爲涓嬬殑鎸囧畾鎽勫儚鏈� // @Description 鍒犻櫎鏌愪竴涓洰褰曟爲涓嬬殑鎸囧畾鎽勫儚鏈� -// @Security ApiKeyAuth // @Produce json // @Tags camera // @Param cameraId path string true "鎽勫儚鏈篿d" @@ -204,9 +234,9 @@ fmt.Println(areaId) } +// @Security ApiKeyAuth // @Summary 鏍规嵁server鑾峰彇鎵�鏈夋憚鍍忔満鍒楄〃鍙婁俊鎭� // @Description 鏍规嵁server鑾峰彇鎵�鏈夋憚鍍忔満鍒楄〃鍙婁俊鎭� -// @Security ApiKeyAuth // @Produce json // @Tags camera // @Param cameraName query string false "鎽勫儚鏈哄悕绉�" @@ -230,9 +260,9 @@ } } +// @Security ApiKeyAuth // @Summary 鑾峰彇杩愯绫诲瀷鑾峰彇鎽勫儚鏈哄垪琛� // @Description 鑾峰彇杩愯绫诲瀷鑾峰彇鎽勫儚鏈哄垪琛� -// @Security ApiKeyAuth // @Produce json // @Tags camera // @Param runType query int true "0锛氭煡杞锛�1锛氭煡瀹炴椂" @@ -263,9 +293,10 @@ } } +// @Security ApiKeyAuth // @Summary 鍒囨崲鎽勫儚鏈鸿繍琛屽疄鏃舵垨杞鐨勫紑鍏� // @Description 鍒囨崲鎽勫儚鏈鸿繍琛屽疄鏃舵垨杞鐨勫紑鍏� -// @Security ApiKeyAuth +// @Accept x-www-form-urlencoded // @Produce json // @Tags camera // @Param cameraId formData string true "鎽勫儚鏈篿d" @@ -292,9 +323,9 @@ } } +// @Security ApiKeyAuth // @Summary 鏇存柊搴曞浘 // @Description 鍒锋柊搴曞浘 -// @Security ApiKeyAuth // @Produce json // @Tags camera // @Param cid path string true "鎽勫儚鏈篿d" @@ -304,13 +335,42 @@ func(cc CameraController) UpdateSnapshotUrl(c *gin.Context){ cid := c.Param("cid") //filename, err := service.UpdateSnapshotUrl(cid) + if cid == "" { + util.ResponseFormat(c, code.RequestParamError, "鍙傛暟鏈夎") + return + } + if strings.HasPrefix(cid, File_Video_Id_Pre) || strings.HasPrefix(cid, File_Img_Id_Pre) || strings.HasPrefix(cid, File_Audio_Id_Pre) { + var fileApi dbapi.FileAnalysisApi + b, d := fileApi.Show(cid) + if b { + var file protomsg.FileAnalysis + bytes, _ := json.Marshal(d) + err := json.Unmarshal(bytes, &file) + if err == nil { + util.ResponseFormat(c, code.Success, map[string]string{ + "cameraId": cid, + "snapshotUrl": file.SnapshotUrl, + }) + return + } else { + util.ResponseFormat(c, code.ComError, "鏇存柊澶辫触") + return + } + } else { + util.ResponseFormat(c, code.ComError, "鏇存柊澶辫触") + return + } + } filename, err := service.UpdateCapture(cid) if err != nil { logger.Debug("UpdateSnapshotUrl.err:",err) util.ResponseFormat(c, code.ComError, "鏇存柊澶辫触") return } - util.ResponseFormat(c, code.Success, filename) + util.ResponseFormat(c, code.Success, map[string]string{ + "cameraId": cid, + "snapshotUrl": filename, + }) } type CameraChangeRunVo struct { @@ -318,9 +378,9 @@ RunType int `json:"run_type"` } +// @Security ApiKeyAuth // @Summary 鎽勫儚鏈鸿疆璇㈠拰瀹炴椂鐘舵�佸垏鎹� // @Description 鎽勫儚鏈鸿疆璇㈠拰瀹炴椂鐘舵�佸垏鎹� -// @Security ApiKeyAuth // @Produce json // @Tags camera // @Param changeRunBody body controllers.CameraChangeRunVo true "鍙傛暟缁撴瀯浣�,0锛氬疄鏃跺垏杞锛�1锛氳疆璇㈠垏瀹炴椂" @@ -343,9 +403,9 @@ } } +// @Security ApiKeyAuth // @Summary 缁熻瀹炴椂鍜岃疆璇㈢殑杩愯璺暟鎯呭喌 // @Description 缁熻瀹炴椂鍜岃疆璇㈢殑杩愯璺暟鎯呭喌 -// @Security ApiKeyAuth // @Produce json // @Tags camera // @Success 200 {string} json "{"code":200, success:true, msg:"", data:""}" -- Gitblit v1.8.0