From b3286a55d1f53bda18653923fff2d013802ff1b9 Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@aiotlink.com>
Date: 星期二, 02 六月 2020 19:39:00 +0800
Subject: [PATCH] add image.go
---
controllers/cameraTask.go | 95 +++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 87 insertions(+), 8 deletions(-)
diff --git a/controllers/cameraTask.go b/controllers/cameraTask.go
index 77fa907..7ae01fb 100644
--- a/controllers/cameraTask.go
+++ b/controllers/cameraTask.go
@@ -2,9 +2,14 @@
import (
"basic.com/dbapi.git"
+ "basic.com/pubsub/esutil.git"
+ "encoding/json"
"fmt"
"github.com/gin-gonic/gin"
+ "strconv"
+ "webserver/cache"
"webserver/extend/code"
+ "webserver/extend/config"
"webserver/extend/util"
"webserver/models"
)
@@ -84,13 +89,58 @@
// @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/alltask [post]
-func (controller CameraTaskController) FindTasksByCameraIds(c *gin.Context){
+func (ctc CameraTaskController) FindTasksByCameraIds(c *gin.Context){
var mulCamera MultiCamera
c.BindJSON(&mulCamera)
var api dbapi.CameraTaskApi
flag, data := api.FindTasksByCameraIds(mulCamera.CameraIds)
if flag {
- util.ResponseFormat(c,code.Success,data)
+ bytes, _ := json.Marshal(data)
+ var camTInfo []CameraTaskInfoVo
+ json.Unmarshal(bytes, &camTInfo)
+
+ //澶勭悊宸茶鍒犻櫎鐨勪换鍔�
+
+ var delTasks []models.Task
+ var taskApi dbapi.TaskApi
+ taskInfos := taskApi.FindAll()
+ m := make(map[string]string)
+ for _,ti :=range taskInfos{
+ if ti.Task.Taskid != FaceExtract_VirtualTaskId{
+ m[ti.Task.Taskid] = ti.Task.Taskid
+ }
+ }
+ localConf, _ := cache.GetServerInfo()
+ if localConf.AlarmIp != "" && localConf.ServerId != "" && localConf.AlarmPort>0 {
+ indexName := config.EsInfo.EsIndex.AiOcean.IndexName
+ esTaskM, e := esutil.AggregateTaskList(localConf.AlarmIp, strconv.Itoa(int(localConf.AlarmPort)), indexName, localConf.ServerId)
+ if e==nil && esTaskM !=nil {
+ for _,tM :=range esTaskM {
+ if _,ok := m[tM["taskId"].(string)];!ok {//琛ㄧず姝や换鍔″凡琚垹闄�
+ taskId := tM["taskId"].(string)
+ m[taskId] = taskId
+ delTasks = append(delTasks, models.Task{
+ Taskid: taskId,
+ Taskname: tM["taskName"].(string),
+ DelFlag: true,
+ })
+ }
+ }
+ }
+ }
+ var result []CameraTaskInfoVo
+ if camTInfo != nil {
+ for _, camIn := range camTInfo {
+ nIfn := CameraTaskInfoVo{
+ Camera: camIn.Camera,
+ Polygon: camIn.Polygon,
+ Tasks: append(camIn.Tasks, delTasks...),
+ }
+ result = append(result, nIfn)
+ }
+ }
+
+ util.ResponseFormat(c,code.Success, result)
} else {
util.ResponseFormat(c,code.ComError,data)
}
@@ -135,7 +185,7 @@
// @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/task/{cameraId} [get]
-func (controller CameraTaskController) CameraTaskAll(c *gin.Context) {
+func (ctc CameraTaskController) CameraTaskAll(c *gin.Context) {
cameraId := c.Param("cameraId")
if cameraId == "" {
util.ResponseFormat(c,code.RequestParamError,"鎽勫儚鏈篿d涓嶈兘涓虹┖")
@@ -160,7 +210,7 @@
// @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/saveTask [post]
-func (ac CameraController) CameraTaskSave(c *gin.Context) {
+func (cc CameraController) CameraTaskSave(c *gin.Context) {
var saveBody CameraTaskSaveArg
err := c.BindJSON(&saveBody)
if err != nil {
@@ -179,6 +229,35 @@
}
}
+type PasteRuleArg struct {
+ SourceId string `json:"sourceId" binding:"required"`
+ TargetIds []string `json:"targetIds" binging:"required"`
+}
+
+// @Summary 澶嶅埗鎽勫儚鏈鸿鍒欏埌閫夊畾鐨勫涓憚鍍忔満
+// @Description 澶嶅埗鎽勫儚鏈鸿鍒欏埌閫夊畾鐨勫涓憚鍍忔満
+// @Accept json
+// @Produce json
+// @Tags CameraTask
+// @Param args body controllers.PasteRuleArg true "瑙勫垯澶嶅埗鍙傛暟"
+// @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/pasteRules [post]
+func (ctc CameraTaskController) PasteRules(c *gin.Context) {
+ var reqBody PasteRuleArg
+ err := c.BindJSON(&reqBody)
+ if err != nil {
+ util.ResponseFormat(c, code.RequestParamError, "")
+ return
+ }
+ var api dbapi.CameraTaskApi
+ if api.PasteRules(reqBody.SourceId, reqBody.TargetIds) {
+ util.ResponseFormat(c,code.Success,"")
+ } else {
+ util.ResponseFormat(c,code.ComError,"")
+ }
+}
+
// @Security ApiKeyAuth
// @Summary 鍒犻櫎鎽勫儚鏈虹殑浠诲姟
// @Description 鍒犻櫎鎽勫儚鏈虹殑浠诲姟
@@ -189,7 +268,7 @@
// @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/delTask/{cameraId}/{taskId} [delete]
-func (ac CameraController) CameraDelTask(c *gin.Context) {
+func (cc CameraController) CameraDelTask(c *gin.Context) {
cameraId := c.Param("cameraId")
taskId := c.Param("taskId")
if cameraId == "" || taskId == "" {
@@ -226,7 +305,7 @@
// @Success 200 {string} json "{"code":200, success:true, msg:"", data:""}"
// @Failure 500 {string} json "{"code":500, success:false, msg:"", data:""}"
// @Router /data/api-v/cameraTask/saveIsDataTrans [post]
-func (controller CameraTaskController) SaveIsDataTrans(c *gin.Context) {
+func (ctc CameraTaskController) SaveIsDataTrans(c *gin.Context) {
var transVo DataTransVo
if err := c.BindJSON(&transVo);err!=nil {
util.ResponseFormat(c,code.RequestParamError,"鍙傛暟鏈夎")
@@ -253,7 +332,7 @@
// @Success 200 {string} json "{"code":200, success:true, msg:"", data:""}"
// @Failure 500 {string} json "{"code":500, success:false, msg:"", data:""}"
// @Router /data/api-v/cameraTask/saveAlarmLevelByGroup [post]
-func (controller CameraTaskController) SaveAlarmLevelByGroup(c *gin.Context) {
+func (ctc CameraTaskController) SaveAlarmLevelByGroup(c *gin.Context) {
var groupLevelVo GroupAlarmLevelVo
if err := c.BindJSON(&groupLevelVo);err !=nil {
util.ResponseFormat(c,code.RequestParamError,"鍙傛暟鏈夎")
@@ -285,7 +364,7 @@
// @Success 200 {string} json "{"code":200, success:true, msg:"", data:""}"
// @Failure 500 {string} json "{"code":500, success:false, msg:"", data:""}"
// @Router /data/api-v/cameraTask/updateCameraTaskStatus [post]
-func (controller CameraTaskController) UpdateCameraTaskStatus(c *gin.Context) {
+func (ctc CameraTaskController) UpdateCameraTaskStatus(c *gin.Context) {
var paramVo CameraTaskStatusVo
if err := c.BindJSON(¶mVo);err !=nil {
util.ResponseFormat(c,code.RequestParamError,"鍙傛暟鏈夎")
--
Gitblit v1.8.0