From 2fb553ab4774ad2605f18dacb5bacb481bfe2f8c Mon Sep 17 00:00:00 2001 From: sunty <1172534965@qq.com> Date: 星期五, 12 七月 2019 11:23:07 +0800 Subject: [PATCH] add querybyId controllers --- esutil/EsApi.go | 160 ++++++++++++++++++++++++++++++++-------------------- 1 files changed, 98 insertions(+), 62 deletions(-) diff --git a/esutil/EsApi.go b/esutil/EsApi.go index 8be8c68..4de958e 100644 --- a/esutil/EsApi.go +++ b/esutil/EsApi.go @@ -1,24 +1,24 @@ package esutil import ( - "errors" - "strconv" + "errors" + "strconv" - "basic.com/pubsub/protomsg.git" - ) + "basic.com/pubsub/protomsg.git" +) // 鏌ヨ搴曞簱浜哄憳淇℃伅 -func DbPersoninfos( queryindex int, querynums int ) ([]*protomsg.Esinfo, error){ - var dbinfos []*protomsg.Esinfo - point := strconv.Itoa(queryindex) - number := strconv.Itoa(querynums) +func DbPersoninfos(queryindex int, querynums int) ([]*protomsg.Esinfo, error) { + var dbinfos []*protomsg.Esinfo + point := strconv.Itoa(queryindex) + number := strconv.Itoa(querynums) - var dbinfoRequest = ` { - "from": ` + point + `, + var dbinfoRequest = ` { + "from": ` + point + `, "query": { "match_all": {} }, - "size":`+ number +`, + "size":` + number + `, "_source": [ "id", "tableId", @@ -26,61 +26,97 @@ ] }` - buf, err := EsReq("POST", "http://192.168.1.182:9200/dbtablepersons/dbpersons/_search",[]byte(dbinfoRequest)) - if err != nil { - return dbinfos ,errors.New("http request dbtablename info is err!") - } + buf, err := EsReq("POST", "http://192.168.1.182:9200/dbtablepersons/dbpersons/_search", []byte(dbinfoRequest)) + if err != nil { + return dbinfos, errors.New("http request dbtablename info is err!") + } - // 杩斿洖 _source 鏁扮粍 - sources, err := Sourcelist(buf) - if err != nil { - return dbinfos,err - } + // 杩斿洖 _source 鏁扮粍 + sources, err := Sourcelist(buf) + if err != nil { + return dbinfos, err + } - // 杩斿洖鎵�鏈夋煡璇㈢殑鏁版嵁 - dbpersoninfos := Parsesources(sources) - return dbpersoninfos, nil + // 杩斿洖鎵�鏈夋煡璇㈢殑鏁版嵁 + dbpersoninfos := Parsesources(sources) + return dbpersoninfos, nil } // 鏍规嵁搴曞簱id鏌ヨ搴曞簱淇℃伅 -func Dbpersoninfosbyid (id string) (protomsg.Baseinfo, error) { - var dbinfo protomsg.Baseinfo - - var dbinfoRequest = ` +func Dbtablefosbyid(id string) (protomsg.Dbtable, error) { + var dbinfo protomsg.Dbtable + + var dbinfoRequest = ` { - "query":{ - "terms":{ - "_id":[ - "`+ id +`" - ] - } - } + "query": { + "bool": { + "filter": [{ + "terms": { + "_id": [ + "` + id + `" + ] + } + }] + } + } } ` - buf, err := EsReq("POST", "http://192.168.1.182:9200/dbtablepersons/_search",[]byte(dbinfoRequest)) - if err != nil { - return dbinfo, err - } + buf, err := EsReq("POST", "http://192.168.1.182:9200/dbtables/_search", []byte(dbinfoRequest)) + if err != nil { + return dbinfo, err + } - sources, err := Sourcelist(buf) - if err != nil { - return dbinfo , err - } + sources, err := Sourcelist(buf) + if err != nil { + return dbinfo, err + } - baseinfo := Dbpersonbyid(sources) - return baseinfo, nil + dbtable := Dbtablebyid(sources) + return dbtable, nil } +// 鏍规嵁搴曞簱浜哄憳id鏌ヨ搴曞簱浜哄憳淇℃伅 +func Dbpersoninfosbyid(id string) (protomsg.Dbperson, error) { + var dbinfo protomsg.Dbperson + + var dbinfoRequest = ` + { + "query": { + "bool": { + "filter": [{ + "terms": { + "_id": [ + "` + id + `" + ] + } + }] + } + } + } + ` + buf, err := EsReq("POST", "http://192.168.1.182:9200/dbtablepersons/_search", []byte(dbinfoRequest)) + if err != nil { + return dbinfo, err + } + + sources, err := Sourcelist(buf) + if err != nil { + return dbinfo, err + } + + dbperson := Dbpersonbyid(sources) + return dbperson, nil +} // 鏍规嵁tableid 鏌ヨtablename -func Dbtablename(tableid string ) (tablename string, err error) { - var dbinfotable =` { +func Dbtablename(tableid string) (tablename string, err error) { + var dbinfotable = ` { "query": { "bool": { "filter": [ { "term": { - "id":"`+tableid+`" + "id":"` + tableid + `" } } ] @@ -91,20 +127,20 @@ ] } ` - buf, err := EsReq("POST", "http://192.168.1.182:9200/dbtables/_search",[]byte(dbinfotable)) - if err != nil { - return "" ,errors.New("http request dbtablename info is err!") - } - sources, err := Sourcelist(buf) - if err != nil { - return "",err - } + buf, err := EsReq("POST", "http://192.168.1.182:9200/dbtables/_search", []byte(dbinfotable)) + if err != nil { + return "", errors.New("http request dbtablename info is err!") + } + sources, err := Sourcelist(buf) + if err != nil { + return "", err + } - for _, source := range sources { - if name, ok := source["tableName"].(string); ok { - tablename = name - break - } - } - return tablename, nil + for _, source := range sources { + if name, ok := source["tableName"].(string); ok { + tablename = name + break + } + } + return tablename, nil } -- Gitblit v1.8.0