sunty
2019-11-19 df4e05af6aee00109360e40b9c2132da8d13f5f8
EsApi.go
@@ -104,8 +104,8 @@
}
// 根据抓拍人员id查询抓拍人员信息
func Videopersonsinfosbyid (id []string, indexName string, serverIp string, serverPort string) ([]protomsg.Videopersons, error) {
   var videopersonsInfo []protomsg.Videopersons
func AIOceaninfosbyid (id []string, indexName string, serverIp string, serverPort string) ([]protomsg.AIOcean, error) {
   var aIOceanInfo []protomsg.AIOcean
   videopersonsPersonId := strings.Replace(strings.Trim(fmt.Sprint(id), "[]"), " ", "\",\"", -1)
   var dbinfoRequest = `
            {
@@ -125,17 +125,17 @@
        `
   buf, err := EsReq("POST", "http://"+serverIp+":"+serverPort+"/"+indexName+"/_search",[]byte(dbinfoRequest))
   if err != nil {
      return videopersonsInfo,  err
      return aIOceanInfo,  err
   }
   sources, err := Sourcelist(buf)
   if err != nil {
      return videopersonsInfo , err
      return aIOceanInfo , err
   }
   videoperson := Videopersonsbyid(sources)
   println(videoperson)
   return videoperson,nil
   aIOcean := AIOceanAnalysis(sources)
   println(aIOcean)
   return aIOcean,nil
}
// 根据底库人员id查询底库人员信息
@@ -505,8 +505,8 @@
}
//初始化实时抓拍
func InitRealTimeCapture(serverIp string, serverPort string, indexName string, isAlarm bool   ,quantity int) ([]protomsg.Videopersons, error){
   var videopersonsInfo []protomsg.Videopersons
func InitRealTimeCapture(serverIp string, serverPort string, indexName string, isAlarm bool   ,quantity int) ([]protomsg.AIOcean, error){
   var aIOceanInfo []protomsg.AIOcean
   url := "http://" + serverIp + ":" + serverPort +
      "/" + indexName + "/_search"
   queryStr := ""
@@ -520,7 +520,7 @@
         "filter":[
            {
               "term":{
                  "isAlarm":1
                  "isAlarm":true
               }
            }
         ]
@@ -531,26 +531,26 @@
   "size":`+strconv.Itoa(quantity)+`,
   `+queryStr+`
   "sort":[{"picDate":{"order":"desc"}}],
   "_source": ["baseInfo", "alarmRules", "sex", "analyServerName", "sdkName", "ageDescription", "content", "id", "cameraAddr", "picMaxUrl", "picDate", "race", "videoUrl", "picSmUrl", "taskName", "personIsHub", "isAlarm", "analyServerIp", "cameraId"]
   "_source": {"includes":[],"excludes":["*.feature"]}
   }`
   buf, err := EsReq("POST", url, []byte(DSLJson))
   if err != nil {
      return videopersonsInfo, err
      return aIOceanInfo, err
   }
   sources, err := Sourcelist(buf)
   if err != nil {
      return videopersonsInfo, err
      return aIOceanInfo, err
   }
   videoperson := Videopersonsbyid(sources)
   aIOcean := AIOceanAnalysis(sources)
   //fmt.Println(len(videoperson))
   return videoperson, nil
   return aIOcean, nil
}
//实时抓拍
func RealTimeCapture(serverIp string, serverPort string, indexName string, isAlarm bool   ) ([]protomsg.Videopersons, error){
   var videopersonsInfo []protomsg.Videopersons
func RealTimeCapture(serverIp string, serverPort string, indexName string, isAlarm bool   ) ([]protomsg.AIOcean, error){
   var aIOceanInfo []protomsg.AIOcean
   url := "http://" + serverIp + ":" + serverPort +
      "/" + indexName + "/_search"
   queryStr := ""
@@ -587,24 +587,24 @@
   buf, err := EsReq("POST", url, []byte(DSLJson))
   if err != nil {
      return videopersonsInfo, err
      return aIOceanInfo, err
   }
   sources, err := Sourcelist(buf)
   if err != nil {
      return videopersonsInfo, err
      return aIOceanInfo, err
   }
   videoperson := Videopersonsbyid(sources)
   fmt.Println(len(videoperson))
   return videoperson, nil
   aIOcean := AIOceanAnalysis(sources)
   fmt.Println(len(aIOcean))
   return aIOcean, nil
}
//综合统计
func StatisticsComprehensive(serverIp string, serverPort string, indexName string, isAlarm bool) (total int, err error){
   isAlarmStr := ""
   if isAlarm == true {
      isAlarmStr = `,{"term":{"isAlarm":1}}`
      isAlarmStr = `,{"term":{"isAlarm":true}}`
   }
   url := "http://" + serverIp + ":" + serverPort +
      "/" + indexName + "/_search"
@@ -662,9 +662,9 @@
      }
   },
   "aggs":{
      "sdkName_status":{
      "sdkId_status":{
         "terms":{
            "field":"taskName.raw"
            "field":"taskId"
         }
      }
   }
@@ -683,7 +683,7 @@
   if !ok {
      return nil, errors.New("first hits change error!")
   }
   sdkName_status, ok := middle["sdkName_status"].(map[string]interface{})
   sdkName_status, ok := middle["sdkId_status"].(map[string]interface{})
   if !ok {
      return nil, errors.New("first hits change error!")
   }
@@ -695,9 +695,9 @@
         fmt.Println("change to source error!")
         continue
      }
      sdkName := tmpbuf["key"].(string)
      sdkId := tmpbuf["key"].(string)
      count := int(tmpbuf["doc_count"].(float64))
      source["name"] = sdkName
      source["id"] = sdkId
      source["value"] = count
      sources = append(sources, source)
   }
@@ -705,6 +705,7 @@
   return sources,nil
}
//聚合任务列表,taskId+taskName
func AggregateTaskList(serverIp string, serverPort string, indexName string, analyServerId string) (sources []map[string]interface{},err error){
   url := "http://" + serverIp + ":" + serverPort +