From d25f504c5fabb9eadb77c38f0df3cda983495be1 Mon Sep 17 00:00:00 2001
From: 554325746@qq.com <554325746@qq.com>
Date: 星期一, 08 七月 2019 15:40:39 +0800
Subject: [PATCH] add query dbperson info by id
---
dbpersoninfo.go | 4 +-
esutil/EsApi.go | 39 +++++++++++++------
esutil/EsClient.go | 33 ++++++++++++++++
3 files changed, 62 insertions(+), 14 deletions(-)
diff --git a/dbpersoninfo.go b/dbpersoninfo.go
index 1d5914b..cc0ab87 100644
--- a/dbpersoninfo.go
+++ b/dbpersoninfo.go
@@ -7,8 +7,8 @@
"sync"
"encoding/base64"
- "cache/esutil"
- "cache/shardmap"
+ "basic.com/pubsub/cache.git/esutil"
+ "basic.com/pubsub/cache.git/shardmap"
"basic.com/valib/gosdk.git"
)
diff --git a/esutil/EsApi.go b/esutil/EsApi.go
index 7893b16..8be8c68 100644
--- a/esutil/EsApi.go
+++ b/esutil/EsApi.go
@@ -43,18 +43,33 @@
}
// 鏍规嵁搴曞簱id鏌ヨ搴曞簱淇℃伅
-//func Dbpersoninfosbyid (id string) (protomsg.Baseinfo, error) {
-// var dbinfo protomsg.Baseinfo
-//
-// url := fmt.Sprintf("http://192.168.1.182:9200/dbtablepersons/dbpersons/_search", id)
-// buf, err := EsReq("POST", "http://192.168.1.182:9200/dbtablepersons/dbpersons/_search",[]byte(dbinfoRequest))
-// if err != nil {
-// return dbinfo, nil
-// }
-//
-// sources, err := Sourcelist(buf)
-// if err != nil {}
-//}
+func Dbpersoninfosbyid (id string) (protomsg.Baseinfo, error) {
+ var dbinfo protomsg.Baseinfo
+
+ var dbinfoRequest = `
+ {
+ "query":{
+ "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
+ }
+
+ baseinfo := Dbpersonbyid(sources)
+ return baseinfo, nil
+}
// 鏍规嵁tableid 鏌ヨtablename
diff --git a/esutil/EsClient.go b/esutil/EsClient.go
index 212dbb9..53a5072 100644
--- a/esutil/EsClient.go
+++ b/esutil/EsClient.go
@@ -46,6 +46,38 @@
return
}
+func Dbpersonbyid(sources []map[string]interface{}) (protomsg.Baseinfo) {
+ var ok bool
+
+ var tmpinfo protomsg.Baseinfo
+ for _, source := range sources{
+ tmpinfo.FaceFeature, ok = source["faceFeature"].(string)
+ Isnil("faceFeature", ok)
+ tmpinfo.PersonId, ok = source["id"].(string)
+ Isnil("id", ok)
+ tmpinfo.TableId, ok = source["tableId"].(string)
+ Isnil("tableId", ok)
+
+ tmpinfo.PersonName,ok = source["personName"].(string)
+ Isnil("personName", ok)
+ tmpinfo.PersonPicUrl,ok = source["personPicUrl"].(string)
+ Isnil("personPicUrl", ok)
+ tmpinfo.PhoneNum,ok = source["phoneNum"].(string)
+ Isnil("phoneNum", ok)
+ tmpinfo.Sex,ok = source["sex"].(string)
+ Isnil("sex", ok)
+ tmpinfo.Idcard,ok = source["idCard"].(string)
+ Isnil("idCard", ok)
+ tmpinfo.MonitorLevel,ok = source["monitorLevel"].(string)
+
+ //鏍规嵁 tableid 鑾峰彇 tablename
+ name, _:= Dbtablename(tmpinfo.TableId)
+ tmpinfo.TableName= name
+ }
+
+ return tmpinfo
+}
+
func Sourcelist(buf []byte)(sources []map[string]interface{}, err error){
var info interface{}
json.Unmarshal(buf, &info)
@@ -53,6 +85,7 @@
if !ok {
return nil, errors.New("http response interface can not change map[string]interface{}")
}
+
middle, ok := out["hits"].(map[string]interface{})
if !ok {
return nil, errors.New("first hits change error!")
--
Gitblit v1.8.0