From 73ed18c9f59ae4adc545731977c1ce3a5c26b3f7 Mon Sep 17 00:00:00 2001
From: liuxiaolong <736321739@qq.com>
Date: 星期二, 06 八月 2019 11:20:17 +0800
Subject: [PATCH] add log
---
controllers/dbtablesCon.go | 86 +++++++++++++++++++++++++++++++++++++++++--
1 files changed, 82 insertions(+), 4 deletions(-)
diff --git a/controllers/dbtablesCon.go b/controllers/dbtablesCon.go
index a0dd2eb..82daabe 100644
--- a/controllers/dbtablesCon.go
+++ b/controllers/dbtablesCon.go
@@ -3,9 +3,11 @@
import (
"basic.com/dbapi.git"
"encoding/json"
+ "fmt"
"github.com/gin-gonic/gin"
"github.com/satori/go.uuid"
"log"
+ "time"
"webserver/extend/code"
"webserver/extend/config"
"webserver/extend/esutil"
@@ -38,8 +40,8 @@
} else if isSync == "2" {
analyServerFilterStr = "{\"term\":{\"analyServerId\":\"" + sysconf.ServerId + "\"}}" // 鏈湴搴�
}
- if analyServerFilterStr !="" {
- analyServerFilterStr = ","+ analyServerFilterStr
+ if analyServerFilterStr != "" {
+ analyServerFilterStr = "," + analyServerFilterStr
}
params := "{\"query\":{\"bool\":{\"must\":[" +
"{\"term\":{\"isDelete\":\"0\"}}" + analyServerFilterStr + "]}}," +
@@ -50,9 +52,9 @@
//c.JSON(200, data)
util.ResponseFormat(c, code.Success, data)
}
-锟�
+
// 渚濇嵁搴曞簱id 鏌ヨ鏁版嵁
-func QueryDbTableInfo(tableId string) map[string]interface{} {锟�
+func QueryDbTableInfo(tableId string) map[string]interface{} {
url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
"/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + tableId
logger.Debug("璇锋眰url:%s;", url)
@@ -77,6 +79,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()
@@ -90,13 +98,63 @@
data := esutil.GetEsDataReq(url, params, false)
//c.JSON(200, changeEsRespData(data, "淇敼鎴愬姛"))
result := changeEsRespData(data, "淇敼鎴愬姛")
+ if dbtable.Enable == 0 {
+ res := UpdateDbPersonsOfDbTable(dbtable.Id)
+ //fmt.Println("鍚屾淇敼浜哄憳鐘舵�佹垚鍔�----",res)
+ logger.Debug("鍚屾淇敼浜哄憳鐘舵�佹垚鍔�----", res)
+ }
if result["success"].(bool) {
//code.Success.Message = "淇敼搴曞簱鎴愬姛"
+ //if dbtable.Enable ==1 {
+ // discovery.AddDbMessage(&protomsg.EsPersonCacheChange{
+ // Type: protomsg.EsCacheChanged_T_DbTable,
+ // PersonId: "",
+ // TableId: []string{ dbtable.Id },
+ // Feature: "",
+ // Action: protomsg.DbAction_Insert,
+ // })
+ //} else {
+ // discovery.AddDbMessage(&protomsg.EsPersonCacheChange{
+ // Type: protomsg.EsCacheChanged_T_DbTable,
+ // PersonId: "",
+ // TableId: []string{ dbtable.Id },
+ // Feature: "",
+ // Action: protomsg.DbAction_Delete,
+ // })
+ //}
util.ResponseFormat(c, code.Success, result["data"])
} else {
//code.ServiceInsideError.Message += result["msg"].(string)
util.ResponseFormat(c, code.ServiceInsideError, result["data"])
}
+}
+
+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 娣诲姞搴曞簱
@@ -124,6 +182,26 @@
url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
"/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + tableId + "?refresh=wait_for"
dbtable.PriInsert() // 娣诲姞鏃堕棿鍜屽垱寤轰汉
+
+ currentTime := time.Now()
+ startTime := dbtable.StartTime
+ endTime := ""
+ if dbtable.EndTime != "" {
+ endTime = dbtable.EndTime
+ }
+ st, _ := time.ParseInLocation("2006-01-02 15:04:05", startTime, time.Local)
+ if endTime != "" {
+ et, _ := time.ParseInLocation("2006-01-02 15:04:05", endTime, time.Local)
+ if et.After(currentTime) && st.Before(currentTime) {
+ dbtable.Enable = 1
+ } else {
+ dbtable.Enable = 0
+ }
+ } else if st.Before(currentTime) && endTime == "" {
+ dbtable.Enable = 1
+ } else {
+ dbtable.Enable = 0
+ }
dbTableByte, err := json.Marshal(dbtable)
if err != nil {
log.Fatalf("Json marshaling failed锛�%s", err)
--
Gitblit v1.8.0