liuxiaolong
2019-08-22 f4e8f206a6760bdc31734dfcb1c65916b5b76311
controllers/monitoring.go
@@ -1,6 +1,7 @@
package controllers
import (
   "basic.com/dbapi.git"
   "fmt"
   "strings"
@@ -15,7 +16,7 @@
// @Description 实时监控比对数据
// @Accept  json
// @Produce json
// @Tags es
// @Tags realTime
// @Param obj body map true "底库数据"
// @Success 200 {string} json "{"code":200, msg:"目录结构数据", success:true}"
// @Failure 500 {string} json "{"code":500,  msg:"返回错误信息", success:false}"
@@ -25,15 +26,15 @@
   searchBody := make(map[string]interface{}, 0)
   c.BindJSON(&searchBody)
   index := config.EsInfo.EsIndex.VideoPersons.IndexName
   videoReqNumStr := ""
   videoReqNum := searchBody["treeNodes"].([]interface{})
   if videoReqNum != nil && len(videoReqNum) > 0 {
      esVideoReqNum := strings.Replace(strings.Trim(fmt.Sprint(videoReqNum), "[]"), " ", "\",\"", -1)
      videoReqNumStr = "{\"terms\":{\"videoReqNum\":[\"" + esVideoReqNum + "\"]}},"
   index := config.EsInfo.EsIndex.VideoPersons.IndexName + "," + config.EsInfo.EsIndex.Personaction.IndexName
   cameraIdStr := ""
   cameraId := searchBody["treeNodes"].([]interface{})
   if cameraId != nil && len(cameraId) > 0 {
      esCameraId := strings.Replace(strings.Trim(fmt.Sprint(cameraId), "[]"), " ", "\",\"", -1)
      cameraIdStr = "{\"terms\":{\"cameraId\":[\"" + esCameraId + "\"]}},"
   }
   //判断任务ID
   taskIdStr := ""
   taskIdStr := "{\"terms\":{\"taskId\":[]}},"
   taskId := searchBody["tasks"].([]interface{})
   if taskId != nil && len(taskId) > 0 {
      esTaskId := strings.Replace(strings.Trim(fmt.Sprint(taskId), "[]"), " ", "\",\"", -1)
@@ -43,14 +44,20 @@
   url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
      "/" + index + "/_search"
   var setApi dbapi.SysSetApi
   _, sysconf := setApi.GetServerInfo()
   analyServerFilterStr := "{\"term\":{\"analyServerId\":\"" + sysconf.ServerId + "\"}},"
   prama := "{\"query\":{\"bool\":{\"filter\":[" +
      videoReqNumStr +
      cameraIdStr +
      taskIdStr +
      "{\"range\":{\"picDate\":{\"gte\":\"now+8h-5s\",\"lt\":\"now+8h\"}}}]}}," +
      analyServerFilterStr +
      "{\"range\":{\"picDate\":{\"gte\":\"now+8h-15s\",\"lt\":\"now+8h\"}}}]}}," +
      "\"sort\":[{\"picDate\":{\"order\":\"desc\"}}]," +
      "\"size\":\"1000\"," +
      "\"_source\":[\"baseInfo\",\"gender\",\"indeviceName\",\"sdkType\",\"ageDescription\",\"content\",\"ID\",\"picAddress\",\"picMaxUrl\",\"picDate\",\"race\",\"videoNum\",\"picSmUrl\",\"taskName\",\"personIsHub\",\"IDCard\",\"videoIp\",\"videoReqNum\"]}"
      "\"_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)
   tokenRes := esutil.GetEsDataReq(url, prama, true)
   /*   for _, value := range tokenRes["datalist"].([]interface{}) {
      if value.(map[string]interface{})["personId"] != nil {