From 2987ec0089a770a3b6a3a63a243f308c57a912f0 Mon Sep 17 00:00:00 2001 From: liuxiaolong <736321739@qq.com> Date: 星期三, 31 七月 2019 19:41:38 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.1.14:10010/r/webserver --- controllers/dbtablesCon.go | 61 +++++++++++++++++++++++++++--- 1 files changed, 55 insertions(+), 6 deletions(-) diff --git a/controllers/dbtablesCon.go b/controllers/dbtablesCon.go index 9a3cf28..831437f 100644 --- a/controllers/dbtablesCon.go +++ b/controllers/dbtablesCon.go @@ -1,7 +1,9 @@ package controllers import ( + "basic.com/dbapi.git" "encoding/json" + "fmt" "github.com/gin-gonic/gin" "github.com/satori/go.uuid" "log" @@ -29,15 +31,20 @@ url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/_search" isSync := c.Params.ByName("isSync") - syncTerm := "" + var setApi dbapi.SysSetApi + _, sysconf := setApi.GetServerInfo() + analyServerFilterStr := "" if isSync == "1" { - syncTerm = ",{\"term\":{\"isSync\":\"1\"}}" // 鍚屾搴� + analyServerFilterStr = "{\"term\":{\"analyServerId\":\"\"}}" // / 鍚屾搴� } else if isSync == "2" { - syncTerm = ",{\"term\":{\"isSync\":\"2\"}}" // / 鏈湴搴� + analyServerFilterStr = "{\"term\":{\"analyServerId\":\"" + sysconf.ServerId + "\"}}" // 鏈湴搴� + } + if analyServerFilterStr != "" { + analyServerFilterStr = "," + analyServerFilterStr } params := "{\"query\":{\"bool\":{\"must\":[" + - "{\"term\":{\"isDelete\":\"0\"}}" + syncTerm + "]}}," + - "\"from\":0,\"size\":100,\"sort\":{\"id\":{\"order\":\"asc\"}}}" + "{\"term\":{\"isDelete\":\"0\"}}" + analyServerFilterStr + "]}}," + + "\"from\":0,\"size\":1000,\"sort\":{\"id\":{\"order\":\"asc\"}}}" logger.Debug("璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params) data := esutil.GetEsDataReq(url, params, true) @@ -71,6 +78,12 @@ uuid = dbtable.Id logger.Debug("body涓幏鍙栧簳搴搃d") } + if dbtable.EndTime == "" { + flag := UpdateEndTime(dbtable.Id) + if flag == false { + util.ResponseFormat(c, code.ServiceInsideError, "淇敼澶辫触") + } + } url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + uuid + "/_update?refresh=wait_for" dbtable.PriUpdate() @@ -93,6 +106,34 @@ } } +func UpdateEndTime(id string) (flag bool) { + flag = false + url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + + "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + id + "/_update?refresh=wait_for" + prama := "{\"script\":\"ctx._source.remove(\\\"endTime\\\")\"}" + buf, err := esutil.EsReq("POST", url, []byte(prama)) + if err != nil { + fmt.Println("http request info is err!") + return + } + var info interface{} + json.Unmarshal(buf, &info) + out, ok := info.(map[string]interface{}) + if !ok { + fmt.Println("http response interface can not change map[string]interface{}") + return + } + middle, ok := out["result"].(string) + if !ok { + fmt.Println("first result change error!") + return + } + if middle == "updated" { + flag = true + } + return flag +} + // @Summary 娣诲姞搴曞簱 // @Description 娣诲姞鍚屾鎴栨湰鍦板簱 // @Accept json @@ -107,6 +148,14 @@ c.BindJSON(&dbtable) tableId := uuid.NewV4().String() dbtable.Id = tableId + if dbtable.AnalyServerId == "sync" { + dbtable.AnalyServerId = "" + } + if dbtable.AnalyServerId == "local" { + var setApi dbapi.SysSetApi + _, sysconf := setApi.GetServerInfo() + dbtable.AnalyServerId = sysconf.ServerId + } url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + tableId + "?refresh=wait_for" dbtable.PriInsert() // 娣诲姞鏃堕棿鍜屽垱寤轰汉 @@ -142,7 +191,7 @@ uuid := c.Params.ByName("id") url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + uuid + "/_update?refresh=wait_for" - params := "{\"doc\":{\"isDelete\":\"1\"}}" + params := "{\"doc\":{\"isDelete\":1}}" logger.Debug("鍒犻櫎璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params) data := esutil.GetEsDataReq(url, params, false) //c.JSON(200, changeEsRespData(data, "鍒犻櫎鎴愬姛")) -- Gitblit v1.8.0