| | |
| | | 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" |
| | |
| | | analyServerFilterStr = "{\"term\":{\"analyServerId\":\"\"}}" // / 同步库 |
| | | } else if isSync == "2" { |
| | | analyServerFilterStr = "{\"term\":{\"analyServerId\":\"" + sysconf.ServerId + "\"}}" // 本地库 |
| | | } |
| | | if analyServerFilterStr != "" { |
| | | analyServerFilterStr = "," + analyServerFilterStr |
| | | } |
| | | params := "{\"query\":{\"bool\":{\"must\":[" + |
| | | "{\"term\":{\"isDelete\":\"0\"}}" + analyServerFilterStr + "]}}," + |
| | |
| | | uuid = dbtable.Id |
| | | logger.Debug("body中获取底库id") |
| | | } |
| | | 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() |
| | |
| | | //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 添加底库 |
| | |
| | | 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) |
| | |
| | | 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, "删除成功")) |