From c6ae506a28e9ce6463822bfea5369856acf980e0 Mon Sep 17 00:00:00 2001
From: sunty <1172534965@qq.com>
Date: 星期四, 14 一月 2021 18:19:37 +0800
Subject: [PATCH] add cameraIds to AggregateTaskList
---
EsClient.go | 108 ++++++++++++++++++++++++++----------------------------
1 files changed, 52 insertions(+), 56 deletions(-)
diff --git a/EsClient.go b/EsClient.go
index 295b7fc..d8c9db5 100644
--- a/EsClient.go
+++ b/EsClient.go
@@ -3,60 +3,18 @@
import (
"basic.com/pubsub/protomsg.git"
"bytes"
+ "encoding/base64"
"encoding/json"
"errors"
"fmt"
- "io"
+ "github.com/spf13/viper"
"io/ioutil"
+ "log"
"math"
"net/http"
- "strings"
"time"
)
-func GetEsDataReq(url string, parama string, isSource bool) map[string]interface{} {
- //fmt.Println("es 鏌ヨ璇锋眰璺緞" + url) // 閰嶇疆淇℃伅 鑾峰彇
- var dat map[string]interface{}
- req, err := http.NewRequest("POST", url, strings.NewReader(parama))
- req.Header.Add("Content-Type", "application/json")
- timeout := time.Duration(10 * time.Second) //瓒呮椂鏃堕棿50ms
- client := &http.Client{Timeout: timeout}
- resp, err := client.Do(req)
- if err != nil {
- fmt.Println(err)
- return dat
- }
- defer resp.Body.Close()
- dec := json.NewDecoder(resp.Body)
- if err := dec.Decode(&dat); err == io.EOF {
- fmt.Println(err.Error())
- return dat
- } else if err != nil {
- fmt.Println(err.Error())
- return dat
- }
- // 鏄惁闇�瑕� 瑙f瀽 es 杩斿洖鐨� source
- if isSource {
- dat = dat["hits"].(map[string]interface{})
- var data = make(map[string]interface{}, 2)
- data["total"] = dat["total"]
- sources := []interface{}{}
- for _, value := range dat["hits"].([]interface{}) {
- source := value.(map[string]interface{})["_source"].(map[string]interface{})
- //source["id"] = source["id"]
- /*sdkType := source["sdkType"]
- if sdkType != nil {
- sdk, _ := strconv.Atoi(sdkType.(string))
- source["sdkType"] = sdkTypeToValue(sdk)
- }*/
- sources = append(sources, source)
- }
- data["datalist"] = sources
- return data
- } else {
- return dat
- }
-}
func Parsesources(sources []map[string]interface{}) (multiInfos []*protomsg.MultiFeaCache) {
var ok bool
@@ -556,14 +514,14 @@
realStartTime, _ := time.ParseInLocation("2006-01-02 15:04:05", hitStartTime, loc)
realEndTime, _ := time.ParseInLocation("2006-01-02 15:04:05", hitEndTime, loc)
stayTime = math.Abs(realEndTime.Sub(realStartTime).Seconds())
- if sinTime.Sub(mTime).Seconds() == 0{
+ if sinTime.Sub(mTime).Seconds() == 0 {
sinTime.Add(time.Second * 1)
sinTime.Format("2006-01-02 15:04:05")
hitsSources[len(hitsSources)-1]["endTime"] = tmpTime
stayTime = 1
- } else if stayTime == 0{
+ } else if stayTime == 0 {
stayTime = 1
- hitsSources[len(hitsSources)-1]["endTime"] = realEndTime.Add(time.Second*1).Format("2006-01-02 15:04:05")
+ hitsSources[len(hitsSources)-1]["endTime"] = realEndTime.Add(time.Second * 1).Format("2006-01-02 15:04:05")
}
hitsSources[len(hitsSources)-1]["stayTime"] = stayTime
if point == indexLength {
@@ -695,6 +653,9 @@
baseInfo := source["baseInfo"].([]interface{})[0].(map[string]interface{})
targetInfo := source["targetInfo"].([]interface{})[0].(map[string]interface{})
tmpTime := source["picDate"].(string)
+ if len(tmpTime) > 19 {
+ tmpTime = tmpTime[:19]
+ }
mTime, err := time.ParseInLocation("2006-01-02 15:04:05", tmpTime, loc)
if err != nil {
return nil, errors.New("鏃堕棿瑙f瀽閿欒")
@@ -727,14 +688,14 @@
realStartTime, _ := time.ParseInLocation("2006-01-02 15:04:05", hitStartTime, loc)
realEndTime, _ := time.ParseInLocation("2006-01-02 15:04:05", hitEndTime, loc)
stayTime = math.Abs(realEndTime.Sub(realStartTime).Seconds())
- if sinTime.Sub(mTime).Seconds() == 0{
+ if sinTime.Sub(mTime).Seconds() == 0 {
sinTime.Add(time.Second * 1)
sinTime.Format("2006-01-02 15:04:05")
hitsSources[len(hitsSources)-1]["endTime"] = tmpTime
stayTime = 1
- } else if stayTime == 0{
+ } else if stayTime == 0 {
stayTime = 1
- hitsSources[len(hitsSources)-1]["endTime"] = realEndTime.Add(time.Second*1).Format("2006-01-02 15:04:05")
+ hitsSources[len(hitsSources)-1]["endTime"] = realEndTime.Add(time.Second * 1).Format("2006-01-02 15:04:05")
}
hitsSources[len(hitsSources)-1]["stayTime"] = stayTime
if point == indexLength {
@@ -825,6 +786,9 @@
baseInfo := source["baseInfo"].([]interface{})[0].(map[string]interface{})
targetInfo := source["targetInfo"].([]interface{})[0].(map[string]interface{})
tmpTime := source["picDate"].(string)
+ if len(tmpTime) > 19 {
+ tmpTime = tmpTime[:19]
+ }
mTime, err := time.ParseInLocation("2006-01-02 15:04:05", tmpTime, loc)
if err != nil {
return nil, errors.New("鏃堕棿瑙f瀽閿欒")
@@ -857,14 +821,14 @@
realStartTime, _ := time.ParseInLocation("2006-01-02 15:04:05", hitStartTime, loc)
realEndTime, _ := time.ParseInLocation("2006-01-02 15:04:05", hitEndTime, loc)
stayTime = math.Abs(realEndTime.Sub(realStartTime).Seconds())
- if sinTime.Sub(mTime).Seconds() == 0{
+ if sinTime.Sub(mTime).Seconds() == 0 {
sinTime.Add(time.Second * 1)
sinTime.Format("2006-01-02 15:04:05")
hitsSources[len(hitsSources)-1]["endTime"] = tmpTime
stayTime = 1
- } else if stayTime == 0{
+ } else if stayTime == 0 {
stayTime = 1
- hitsSources[len(hitsSources)-1]["endTime"] = realEndTime.Add(time.Second*1).Format("2006-01-02 15:04:05")
+ hitsSources[len(hitsSources)-1]["endTime"] = realEndTime.Add(time.Second * 1).Format("2006-01-02 15:04:05")
}
hitsSources[len(hitsSources)-1]["stayTime"] = stayTime
if point == indexLength {
@@ -1069,8 +1033,15 @@
if !ok {
return -1, errors.New("first total change error!")
}
- tmp := middle["total"].(float64)
- total = int(tmp)
+
+ tmp,b := middle["total"].(map[string]interface{})
+ if b != true {
+ v := middle["total"].(float64)
+ t := int(v)
+ return t,nil
+ }
+ value := tmp["value"].(float64)
+ total = int(value)
return total, nil
}
@@ -1082,6 +1053,7 @@
}
request, err := http.NewRequest(method, url, bytes.NewBuffer(parama))
request.Header.Set("Content-type", "application/json")
+ request.Header.Set("Authorization",Token)
if err != nil {
fmt.Println("build request fail !")
@@ -1117,3 +1089,27 @@
// fmt.Println(key, "is nil can not asign")
// }
//}
+
+type account struct {
+ Username string `mapstructure: "username"`
+ Userpassword string `mapstructure: "userpassword"`
+}
+
+
+var Account = &account{}
+
+var Token string
+
+func init() {
+ v := viper.New()
+ v.SetConfigType("yaml")
+ v.SetConfigName("pro")
+ v.AddConfigPath("/opt/vasystem/config/")
+ err := v.ReadInConfig()
+ if err != nil {
+ log.Fatal("err on parsing configuration file!",err)
+ }
+ v.UnmarshalKey("es.account",Account)
+
+ Token = "Basic "+base64.StdEncoding.EncodeToString([]byte(Account.Username+":"+Account.Userpassword))
+}
--
Gitblit v1.8.0