liuxiaolong
2019-12-20 c2f8c24f1ddb67f890f9ac4af5328e65a46aab75
controllers/monitoring.go
@@ -1,7 +1,6 @@
package controllers
import (
   "basic.com/dbapi.git"
   "basic.com/valib/logger.git"
   "fmt"
   "strconv"
@@ -15,6 +14,7 @@
   "webserver/extend/util"
)
// @Security ApiKeyAuth
// @Summary 实时监控
// @Description 实时监控比对数据
// @Accept  json
@@ -29,23 +29,27 @@
   var searchBody InitForMonitorArg
   c.BindJSON(&searchBody)
   index := config.EsInfo.EsIndex.VideoPersons.IndexName + "," + config.EsInfo.EsIndex.Personaction.IndexName
   index := config.EsInfo.EsIndex.AiOcean.IndexName
   cameraIdStr := ""
   linkTagInfoCameraIdStr := ""
   cameraId := searchBody.TreeNodes
   if cameraId != nil && len(cameraId) > 0 {
      esCameraId := strings.Replace(strings.Trim(fmt.Sprint(cameraId), "[]"), " ", "\",\"", -1)
      cameraIdStr = "{\"terms\":{\"cameraId\":[\"" + esCameraId + "\"]}},"
      linkTagInfoCameraIdStr = "{\"terms\":{\"linkTagInfo.cameraId\":[\"" + esCameraId + "\"]}},"
   }
   //判断任务ID
   taskIdStr := "{\"terms\":{\"taskId\":[]}},"
   taskIdStr := ""
   linkTagInfoTaskIdStr := ""
   taskId := searchBody.Tasks
   if taskId != nil && len(taskId) > 0 {
      esTaskId := strings.Replace(strings.Trim(fmt.Sprint(taskId), "[]"), " ", "\",\"", -1)
      taskIdStr = "{\"terms\":{\"taskId\":[\"" + esTaskId + "\"]}},"
      linkTagInfoTaskIdStr = "{\"terms\":{\"linkTagInfo.taskId\":[\"" + esTaskId + "\"]}},"
   }
   //请求头
   localConf, err2 := cache.GetServerInfo()
   if err2 !=nil || localConf.AlarmIp == "" {
   if err2 !=nil || localConf.AlarmIp == "" || localConf.ServerId == "" {
      logger.Debug("localConfig is wrong!!!")
      util.ResponseFormat(c,code.ComError,"localConf wrong")
      return
@@ -53,20 +57,28 @@
   url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) +
      "/" + index + "/_search"
   var setApi dbapi.SysSetApi
   _, sysconf := setApi.GetServerInfo()
   analyServerFilterStr := "{\"term\":{\"analyServerId\":\"" + sysconf.ServerId + "\"}},"
   analyServerFilterStr := "{\"term\":{\"analyServerId\":\"" + localConf.ServerId + "\"}},"
   linkTagInfoAnalyServerFilterStr := "{\"term\":{\"linkTagInfo.analyServerId\":\"" + localConf.ServerId + "\"}},"
   prama := "{\"query\":{\"bool\":{\"filter\":[" +
   prama := "{\"query\":{\"bool\":{\"should\":[" +
      "{\"bool\":{\"filter\":[" +
      cameraIdStr +
      taskIdStr +
      analyServerFilterStr +
      "{\"range\":{\"picDate\":{\"gte\":\"now+8h-15s\",\"lt\":\"now+8h\"}}}]}}," +
      "{\"range\":{\"picDate\":{\"gte\":\"now+8h-15s\",\"lt\":\"now+8h\"}}}" +
      "]}}," +
      "{\"bool\":{\"filter\":[" +
      linkTagInfoCameraIdStr +
      linkTagInfoTaskIdStr +
      linkTagInfoAnalyServerFilterStr +
      "{\"range\":{\"linkTagInfo.picDate\":{\"gte\":\"now+8h-15s\",\"lt\":\"now+8h\"}}}" +
      "]}}" +
      "]}}," +
      "\"sort\":[{\"picDate\":{\"order\":\"desc\"}}]," +
      "\"size\":\"1000\"," +
      "\"_source\":[\"baseInfo\",\"alarmRules\",\"sex\",\"analyServerName\",\"sdkName\",\"ageDescription\",\"content\",\"id\",\"cameraAddr\",\"picMaxUrl\",\"picDate\",\"race\",\"videoUrl\",\"picSmUrl\",\"taskName\",\"personIsHub\",\"isAlarm\",\"analyServerIp\",\"cameraId\"]}"
   fmt.Println(prama)
   fmt.Println(url)
      "\"_source\":{\"includes\":[],\"excludes\":[\"*.feature\"]}}"
   logger.Debug("monitor param:",prama)
   logger.Debug("monitor url:",url)
   tokenRes := esutil.GetEsDataReq(url, prama, true)
   /*   for _, value := range tokenRes["datalist"].([]interface{}) {
      if value.(map[string]interface{})["personId"] != nil {