From f9bf85d9f2f834995d4a485054bf5cb6810ad029 Mon Sep 17 00:00:00 2001
From: sunty <1172534965@qq.com>
Date: 星期四, 20 八月 2020 21:11:12 +0800
Subject: [PATCH] add pic url
---
EsApi.go | 58 ++++++++++++++++++++++++++++++++++++----------------------
1 files changed, 36 insertions(+), 22 deletions(-)
diff --git a/EsApi.go b/EsApi.go
index 748d4f4..eabf7cf 100644
--- a/EsApi.go
+++ b/EsApi.go
@@ -234,7 +234,7 @@
return nil, err
}
- sources, err := SourceAggregations(buf,thresholdTime)
+ sources, err := SourceAggregations(buf, thresholdTime)
if err != nil {
return nil, err
}
@@ -243,53 +243,67 @@
}
//鏍规嵁鎶撴媿浜哄憳id鏇存柊锛坧icurl锛夊浘鐗囧湴鍧�---棰勫紑鍙�
-func UpdatePicUrlById(id string, picurl string, indexName string, serverIp string, serverPort string) (statu int, err error) {
+func UpdatePicUrlById(id string, picUrl string, indexName string, serverIp string, serverPort string) (err error) {
+ tRes, err := AIOceaninfosbyid([]string{id}, indexName, serverIp, serverPort)
+ if err != nil || len(tRes) == 0 {
+ return err
+ }
+ picMaxUrls := tRes[0].PicMaxUrl
+ sourceStr := `
+ "lang":"painless",
+ "inline": "ctx._source.picMaxUrl.add(` + picUrl + `)"
+`
+ if len(picMaxUrls) >= 2 {
+ sourceStr = `"source": "ctx._source.picMaxUrl[1]='` + picUrl + `'"`
+ }
var info interface{}
url := "http://" + serverIp + ":" + serverPort + "/" + indexName + "/_update_by_query?refresh=true"
- sourceStr := "ctx._source.videoUrl='" + picurl + "'"
- var videoUrlInfo = `
+
+ var picUrlInfo = `
{
"script": {
- "source": "` + sourceStr + `"
+ ` + sourceStr + `
},
- "query": {
- "term": {
- "id": "` + id + `"
- }
- }
+ "query": {
+ "bool": {
+ "filter": [
+ {
+ "term": {
+ "id": "` + id + `"
+ }
+ }
+ ]
+ }
+ }
}
`
//logPrint("url: ", url, videoUrlInfo)
- buf, err := EsReq("POST", url, []byte(videoUrlInfo))
+ //fmt.Println(url, picUrlInfo)
+ buf, err := EsReq("POST", url, []byte(picUrlInfo))
if err != nil {
logPrint("http request videoUrlInfo info is err!")
- statu = 500
- return statu, err
+ return err
}
json.Unmarshal(buf, &info)
//logPrint(info)
out, ok := info.(map[string]interface{})
if !ok {
logPrint("http response interface can not change map[string]interface{}")
- statu = 500
- return statu, errors.New("http response interface can not change map[string]interface{}")
+ return errors.New("http response interface can not change map[string]interface{}")
}
middle, ok := out["updated"].(float64)
if !ok {
logPrint("first updated change error!")
- statu = 500
- return statu, errors.New("first updated change error!")
+ return errors.New("first updated change error!")
}
if middle == 1 {
- statu = 200
- return statu, nil
+ return nil
}
if middle == 0 {
- statu = 201
- return statu, errors.New("宸茬粡淇敼")
+ return errors.New("宸茬粡淇敼")
}
- return statu, nil
+ return nil
}
//鏍规嵁鎶撴媿浜哄憳id鏇存柊锛坴ideourl锛夋憚鍍忔満鍦板潃
--
Gitblit v1.8.0