From df4e05af6aee00109360e40b9c2132da8d13f5f8 Mon Sep 17 00:00:00 2001 From: sunty <1172534965@qq.com> Date: 星期二, 19 十一月 2019 20:39:30 +0800 Subject: [PATCH] fix esutil --- EsClient.go | 818 ++++++++++++++++++++++++++++++---------------------------- 1 files changed, 422 insertions(+), 396 deletions(-) diff --git a/EsClient.go b/EsClient.go index 6dfe287..1f01186 100644 --- a/EsClient.go +++ b/EsClient.go @@ -1,425 +1,451 @@ package esutil import ( - "bytes" - "encoding/json" - "errors" - "fmt" - "io" - "io/ioutil" - "net/http" - "strconv" + "basic.com/pubsub/protomsg.git" + "bytes" + "encoding/json" + "errors" + "fmt" + "io" + "io/ioutil" + "net/http" + "strings" "time" - "strings" - "basic.com/pubsub/protomsg.git" ) func GetEsDataReq(url string, parama string, isSource bool) map[string]interface{} { - //fmt.Println("es 鏌ヨ璇锋眰璺緞" + url) // 閰嶇疆淇℃伅 鑾峰彇 - var dat map[string]interface{} - req, err := http.NewRequest("POST", url, strings.NewReader(parama)) - req.Header.Add("Content-Type", "application/json") - timeout := time.Duration(10 * time.Second) //瓒呮椂鏃堕棿50ms - client := &http.Client{Timeout: timeout} - resp, err := client.Do(req) - if err != nil { - fmt.Println(err) - return dat - } - defer resp.Body.Close() - dec := json.NewDecoder(resp.Body) - if err := dec.Decode(&dat); err == io.EOF { - fmt.Println(err.Error()) - return dat - } else if err != nil { - fmt.Println(err.Error()) - return dat - } - // 鏄惁闇�瑕� 瑙f瀽 es 杩斿洖鐨� source - if isSource { - dat = dat["hits"].(map[string]interface{}) - var data = make(map[string]interface{}, 2) - data["total"] = dat["total"] - sources := []interface{}{} - for _, value := range dat["hits"].([]interface{}) { - source := value.(map[string]interface{})["_source"].(map[string]interface{}) - //source["id"] = source["id"] - /*sdkType := source["sdkType"] - if sdkType != nil { - sdk, _ := strconv.Atoi(sdkType.(string)) - source["sdkType"] = sdkTypeToValue(sdk) - }*/ - sources = append(sources, source) - } - data["datalist"] = sources - return data - } else { - return dat - } + //fmt.Println("es 鏌ヨ璇锋眰璺緞" + url) // 閰嶇疆淇℃伅 鑾峰彇 + var dat map[string]interface{} + req, err := http.NewRequest("POST", url, strings.NewReader(parama)) + req.Header.Add("Content-Type", "application/json") + timeout := time.Duration(10 * time.Second) //瓒呮椂鏃堕棿50ms + client := &http.Client{Timeout: timeout} + resp, err := client.Do(req) + if err != nil { + fmt.Println(err) + return dat + } + defer resp.Body.Close() + dec := json.NewDecoder(resp.Body) + if err := dec.Decode(&dat); err == io.EOF { + fmt.Println(err.Error()) + return dat + } else if err != nil { + fmt.Println(err.Error()) + return dat + } + // 鏄惁闇�瑕� 瑙f瀽 es 杩斿洖鐨� source + if isSource { + dat = dat["hits"].(map[string]interface{}) + var data = make(map[string]interface{}, 2) + data["total"] = dat["total"] + sources := []interface{}{} + for _, value := range dat["hits"].([]interface{}) { + source := value.(map[string]interface{})["_source"].(map[string]interface{}) + //source["id"] = source["id"] + /*sdkType := source["sdkType"] + if sdkType != nil { + sdk, _ := strconv.Atoi(sdkType.(string)) + source["sdkType"] = sdkTypeToValue(sdk) + }*/ + sources = append(sources, source) + } + data["datalist"] = sources + return data + } else { + return dat + } } func Parsesources(sources []map[string]interface{}) (esinfos []*protomsg.Esinfo) { - var ok bool - for _, source := range sources { - var tmpinfo protomsg.Esinfo - tmpinfo.FaceFeature, ok = source["faceFeature"].(string) - if !ok { - continue - } + var ok bool + for _, source := range sources { + var tmpinfo protomsg.Esinfo + tmpinfo.FaceFeature, ok = source["faceFeature"].(string) + if !ok { + continue + } - tmpinfo.Id, ok = source["id"].(string) - if !ok { - continue - } - tmpinfo.Tableid, ok = source["tableId"].(string) - if !ok { - continue - } + tmpinfo.Id, ok = source["id"].(string) + if !ok { + continue + } + tmpinfo.Tableid, ok = source["tableId"].(string) + if !ok { + continue + } - esinfos = append(esinfos, &tmpinfo) + esinfos = append(esinfos, &tmpinfo) -// 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) + // 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 -// binfos.Infos = append(binfos.Infos, &tmpinfo) + // 鏍规嵁 tableid 鑾峰彇 tablename + // name, _:= Dbtablename(tmpinfo.TableId) + // tmpinfo.TableName= name + // binfos.Infos = append(binfos.Infos, &tmpinfo) - } - return + } + return } //瑙f瀽鎶撴媿搴撲汉鍛樼粨鏋� -func Videopersonsbyid(sources []map[string]interface{}) (tmpinfos []protomsg.Videopersons) { - var ok bool - for _, source := range sources{ - var tmpinfo protomsg.Videopersons - tmpinfo.Id, ok = source["id"].(string) - if !ok { - continue - } - - tmpinfo.CameraId, ok = source["cameraId"].(string) - if !ok { - continue - } - - tmpinfo.CameraAddr, ok = source["cameraAddr"].(string) - if !ok { - continue - } - - tmpinfo.PicDate,ok = source["picDate"].(string) - //Isnil("picDate", ok) - tmpinfo.PicMaxUrl,ok = source["picMaxUrl"].(string) - //Isnil("picMaxUrl", ok) - tmpinfo.TaskId,ok = source["taskId"].(string) - //Isnil("taskId", ok) - tmpinfo.TaskName,ok = source["taskName"].(string) - //Isnil("taskName", ok) - tmpinfo.SdkName,ok = source["sdkName"].(string) - //Isnil("sdkName", ok) - tmpinfo.Content,ok = source["content"].(string) - //Isnil("content",ok) - tmpinfo.LikeDate,ok = source["likeDate"].(string) - //Isnil("likeDate",ok) - tmpinfo.DetectScore,ok = source["detectScore"].(string) - //Isnil("detectScore", ok) - tmpinfo.Sex,ok = source["sex"].(string) - //Isnil("sex",ok) - - age,ok := source["age"].(float64) - if ok { - tmpinfo.Age= int32(age) - } - //Isnil("age", ok) - - tmpinfo.AgeDescription,ok = source["ageDescription"].(string) - //Isnil("ageDescription",ok) - tmpinfo.Race,ok = source["race"].(string) - //Isnil("race",ok) - tmpinfo.SmileLevel,ok = source["smileLevel"].(string) - //Isnil("smileLevel",ok) - tmpinfo.BeautyLevel,ok = source["beautyLevel"].(string) - //Isnil("beautyLevel",ok) - if source["picSmUrl"] != nil { - //fmt.Println(source["picSmUrl"]) - for _,v := range source["picSmUrl"].([]interface{}) { - tmpinfo.PicSmUrl = append(tmpinfo.PicSmUrl, v.(string)) - } - //fmt.Println(tmpinfo.PicSmUrl) - } - tmpinfo.VideoUrl,ok = source["videoUrl"].(string) - //Isnil("videoUrl",ok) - tmpinfo.AnalyServerId,ok = source["analyServerId"].(string) - //Isnil("analyServerId",ok) - tmpinfo.AnalyServerName,ok = source["analyServerName"].(string) - //Isnil("analyServerName",ok) - tmpinfo.AnalyServerIp,ok = source["analyServerIp"].(string) - //Isnil("analyServerIp",ok) - tmpinfo.ClusterId,ok = source["clusterId"].(string) - //Isnil("clusterId",ok) - - isAlarm,ok := source["isAlarm"].(float64) - //fmt.Println(ok) - if ok { - tmpinfo.IsAlarm= strconv.FormatFloat(isAlarm, 'E', -1, 64)//float64 +func AIOceanAnalysis(sources []map[string]interface{}) (tmpinfos []protomsg.AIOcean) { + var ok bool + for _, source := range sources { + var tmpinfo protomsg.AIOcean + tmpinfo.Id, ok = source["id"].(string) + if !ok { + continue } - //Isnil("isAlarm",ok) - - isAckAlarm,ok := source["isAckAlarm"].(float64) - //fmt.Println(ok) - if ok { - tmpinfo.IsAckAlarm= strconv.FormatFloat(isAckAlarm, 'E', -1, 64)//float64 + tmpinfo.CameraId, ok = source["cameraId"].(string) + if !ok { + continue } - //Isnil("isAckAlarm",ok) + tmpinfo.CameraAddr, ok = source["cameraAddr"].(string) + if !ok { + continue + } + tmpinfo.AnalyServerId, ok = source["analyServerId"].(string) + tmpinfo.AnalyServerName, ok = source["analyServerName"].(string) + tmpinfo.AnalyServerIp, ok = source["analyServerIp"].(string) + tmpinfo.ClusterId, ok = source["clusterId"].(string) + tmpinfo.TaskId, ok = source["taskId"].(string) + tmpinfo.TaskName, ok = source["taskName"].(string) + tmpinfo.SdkName, ok = source["sdkName"].(string) + tmpinfo.PicMaxUrl, ok = source["picMaxUrl"].(string) + tmpinfo.VideoUrl, ok = source["videoUrl"].(string) + tmpinfo.PicDate, ok = source["picDate"].(string) + if source["targetInfo"] != nil { + for _, v := range source["targetInfo"].([]interface{}) { + m := v.(map[string]interface{}) + var ti protomsg.TargetInfo + ti.TargetId, ok = m["targetId"].(string) + ti.TargetScore, ok = m["targetScore"].(float64) + ti.Feature, ok = m["feature"].(string) + ti.PicSmUrl, ok = m["picSmUrl"].(string) + targetLocation := m["targetLocation"].(map[string]interface{}) + topLeft := targetLocation["topLeft"].(map[string]interface{}) + tx := topLeft["x"].(float64) + ty := topLeft["y"].(float64) + bottomRight := targetLocation["bottomRight"].(map[string]interface{}) + bx := bottomRight["x"].(float64) + by := bottomRight["y"].(float64) + ti.TargetLocation = &protomsg.TargetLocation{ + TopLeft: &protomsg.Location{ + X: tx, + Y: ty, + }, + BottomRight: &protomsg.Location{ + X: bx, + Y: by, + }, + } + tmpinfo.TargetInfo = append(tmpinfo.TargetInfo, &ti) + } - isCollect,ok := source["isCollect"].(float64) - if ok { - tmpinfo.IsDelete= int32(isCollect) - } - //Isnil("isCollect", ok) + } + tmpinfo.OtherLabels, ok = source["otherLabels"].(string) + tmpinfo.ShowLabels, ok = source["showLabels"].(string) + tmpinfo.LikeDate, ok = source["likeDate"].(string) + if source["baseInfo"] != nil { + for _, v := range source["baseInfo"].([]interface{}) { + m := v.(map[string]interface{}) + var bi protomsg.BaseInfo + bi.TableId, ok = m["tableId"].(string) + bi.TableName, ok = m["tableName"].(string) + bi.CompareScore, ok = m["compareScore"].(float64) + bi.BwType, ok = m["bwType"].(string) + bi.TargetId, ok = m["targetId"].(string) + bi.TableName, ok = m["tableName"].(string) + bi.TargetPicUrl, ok = m["targetPicUrl"].(string) + bi.MonitorLevel, ok = m["monitorLevel"].(string) + bi.Labels, ok = m["labels"].(string) + bi.Content, ok = m["content"].(string) + tmpinfo.BaseInfo = append(tmpinfo.BaseInfo, &bi) + } + } + tmpinfo.IsAlarm, ok = source["isAlarm"].(bool) + tmpinfo.IsAckAlarm, ok = source["isAckAlarm"].(bool) + if source["alarmRules"] != nil { + for _, v := range source["alarmRules"].([]interface{}) { + m := v.(map[string]interface{}) + var ar protomsg.AlarmRules + ar.GroupId, ok = m["groupId"].(string) + ar.AlarmLevel, ok = m["alarmLevel"].(string) + ar.RuleText, ok = m["ruleText"].(string) + ar.DefenceState, ok = m["defenceState"].(bool) + ar.LinkInfo, ok = m["linkInfo"].(string) + tmpinfo.AlarmRules = append(tmpinfo.AlarmRules, &ar) + } - isDelete,ok := source["isDelete"].(float64) - if ok { - tmpinfo.IsDelete= int32(isDelete) - } - //Isnil("isDelete", ok) + } + tmpinfo.IsCollect, ok = source["isCollect"].(bool) + tmpinfo.IsDelete, ok = source["isDelete"].(bool) + tmpinfo.Content, ok = source["content"].(string) + tmpinfo.LinkTag, ok = source["linkTag"].(string) + if source["linkTagInfo"] != nil { + for _, v := range source["linkTagInfo"].([]interface{}) { + var lti protomsg.EsDataBase + lm := v.(map[string]interface{}) + lti.Id, ok = lm["id"].(string) + if !ok { + continue + } + lti.CameraId, ok = lm["cameraId"].(string) + if !ok { + continue + } + lti.CameraAddr, ok = lm["cameraAddr"].(string) + if !ok { + continue + } + lti.AnalyServerId, ok = lm["analyServerId"].(string) + lti.AnalyServerName, ok = lm["analyServerName"].(string) + lti.AnalyServerIp, ok = lm["analyServerIp"].(string) + lti.ClusterId, ok = lm["clusterId"].(string) + lti.TaskId, ok = lm["taskId"].(string) + lti.TaskName, ok = lm["taskName"].(string) + lti.SdkName, ok = lm["sdkName"].(string) + lti.PicMaxUrl, ok = lm["picMaxUrl"].(string) + lti.VideoUrl, ok = lm["videoUrl"].(string) + lti.PicDate, ok = lm["picDate"].(string) + if lm["targetInfo"] != nil { + for _, v := range lm["targetInfo"].([]interface{}) { + m := v.(map[string]interface{}) + var ti protomsg.TargetInfo + ti.TargetId, ok = m["targetId"].(string) + ti.TargetScore, ok = m["targetScore"].(float64) + ti.Feature, ok = m["feature"].(string) + ti.PicSmUrl, ok = m["picSmUrl"].(string) + targetLocation := m["targetLocation"].(map[string]interface{}) + topLeft := targetLocation["topLeft"].(map[string]interface{}) + tx := topLeft["x"].(float64) + ty := topLeft["y"].(float64) + bottomRight := targetLocation["bottomRight"].(map[string]interface{}) + bx := bottomRight["x"].(float64) + by := bottomRight["y"].(float64) + ti.TargetLocation = &protomsg.TargetLocation{ + TopLeft: &protomsg.Location{ + X: tx, + Y: ty, + }, + BottomRight: &protomsg.Location{ + X: bx, + Y: by, + }, + } + lti.TargetInfo = append(lti.TargetInfo, &ti) + } - if source["alarmRules"] != nil { - //fmt.Println(source["alarmRules"]) - for _,v := range source["alarmRules"].([]interface{}) { - m := v.(map[string]interface{}) - var ar protomsg.AlarmRules - //ar := protomsg.AlarmRules{} - ar.GroupId,ok = m["groupId"].(string) - //Isnil("groupId",ok) - ar.AlarmLevel,ok = m["alarmLevel"].(string) - //Isnil("alarmLevel",ok) - ar.RuleText,ok = m["ruleText"].(string) - //Isnil("ruleText",ok) - ar.DefenceState,ok = m["defenceState"].(bool) - //Isnil("DefenceState",ok) - ar.IsLink,ok = m["isLink"].(bool) - ar.LinkInfo,ok = m["linkInfo"].(string) - tmpinfo.AlarmRules = append(tmpinfo.AlarmRules, &ar) - } + } + lti.OtherLabels, ok = lm["otherLabels"].(string) + lti.ShowLabels, ok = lm["showLabels"].(string) + lti.LikeDate, ok = lm["likeDate"].(string) + if lm["baseInfo"] != nil { + for _, v := range lm["baseInfo"].([]interface{}) { + m := v.(map[string]interface{}) + var bi protomsg.BaseInfo + bi.TableId, ok = m["tableId"].(string) + bi.TableName, ok = m["tableName"].(string) + bi.CompareScore, ok = m["compareScore"].(float64) + bi.BwType, ok = m["bwType"].(string) + bi.TargetId, ok = m["targetId"].(string) + bi.TableName, ok = m["tableName"].(string) + bi.TargetPicUrl, ok = m["targetPicUrl"].(string) + bi.MonitorLevel, ok = m["monitorLevel"].(string) + bi.Labels, ok = m["labels"].(string) + bi.Content, ok = m["content"].(string) + tmpinfo.BaseInfo = append(tmpinfo.BaseInfo, &bi) + } + } + lti.IsAlarm, ok = lm["isAlarm"].(bool) + lti.IsAckAlarm, ok = lm["isAckAlarm"].(bool) + if lm["alarmRules"] != nil { + for _, v := range lm["alarmRules"].([]interface{}) { + m := v.(map[string]interface{}) + var ar protomsg.AlarmRules + ar.GroupId, ok = m["groupId"].(string) + ar.AlarmLevel, ok = m["alarmLevel"].(string) + ar.RuleText, ok = m["ruleText"].(string) + ar.DefenceState, ok = m["defenceState"].(bool) + ar.LinkInfo, ok = m["linkInfo"].(string) + lti.AlarmRules = append(lti.AlarmRules, &ar) + } - } - - if source["baseInfo"] != nil { - //fmt.Println(source["baseInfo"]) - for _,v := range source["baseInfo"].([]interface{}) { - m := v.(map[string]interface{}) - //fmt.Println("m:",m) - var bi protomsg.BaseInfo - //bi := protomsg.BaseInfo{} - bi.TableId,ok = m["tableId"].(string) - //Isnil("tableId",ok) - bi.TableName,ok = m["tableName"].(string) - //Isnil("tableName",ok) - compareScore,ok := m["compareScore"].(float64) - if ok { - bi.CompareScore= float32(compareScore) - } - //Isnil("compareScore", ok) - - bi.PersonId,ok = m["personId"].(string) - //Isnil("personId",ok) - bi.PersonName,ok = m["personName"].(string) - //Isnil("personName",ok) - bi.PersonPicUrl,ok = m["personPicUrl"].(string) - //Isnil("personPicUrl",ok) - bi.PhoneNum,ok = m["phoneNum"].(string) - //Isnil("phoneNum",ok) - bi.Sex,ok = m["sex"].(string) - //Isnil("sex",ok) - bi.IdCard,ok = m["idCard"].(string) - //Isnil("idCard",ok) - bi.MonitorLevel,ok = m["monitorLevel"].(string) - //Isnil("monitorLevel",ok) - bi.Content,ok = m["content"].(string) - //Isnil("content",ok) - bi.BwType,ok = m["bwType"].(string) - - //Isnil("bwType", ok) - - tmpinfo.BaseInfo = append(tmpinfo.BaseInfo, &bi) - } - } - - //鏍规嵁 tableid 鑾峰彇 tablename - //name, _:= Dbtablename(tmpinfo.TableId) - //tmpinfo.TableName= name - //fmt.Println(tmpinfos) - tmpinfos = append(tmpinfos, tmpinfo) - } - - return tmpinfos + } + lti.IsCollect, ok = lm["isCollect"].(bool) + lti.IsDelete, ok = lm["isDelete"].(bool) + lti.Content, ok = lm["content"].(string) + tmpinfo.LinkTagInfo = append(tmpinfo.LinkTagInfo, <i) + } + } + tmpinfos = append(tmpinfos, tmpinfo) + } + return tmpinfos } //瑙f瀽搴曞簱浜哄憳缁撴瀯 func Dbpersonbyid(sources []map[string]interface{}) (tmpinfos []protomsg.Dbperson) { - var ok bool + var ok bool - var tmpinfo protomsg.Dbperson - for _, source := range sources{ - tmpinfo.FaceFeature, ok = source["faceFeature"].(string) - if !ok { - continue - } + var tmpinfo protomsg.Dbperson + for _, source := range sources { + tmpinfo.FaceFeature, ok = source["faceFeature"].(string) + if !ok { + continue + } - tmpinfo.Id, ok = source["id"].(string) - if !ok { - continue - } + tmpinfo.Id, ok = source["id"].(string) + if !ok { + continue + } - tmpinfo.TableId, ok = source["tableId"].(string) - if !ok { - continue - } + tmpinfo.TableId, ok = source["tableId"].(string) + if !ok { + continue + } - 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) - //Isnil("monitorLevel",ok) - tmpinfo.UpdateTime,ok = source["updateTime"].(string) - //Isnil("updateTime",ok) - tmpinfo.Age,ok = source["age"].(string) - //Isnil("age", 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) + //Isnil("monitorLevel",ok) + tmpinfo.UpdateTime, ok = source["updateTime"].(string) + //Isnil("updateTime",ok) + tmpinfo.Age, ok = source["age"].(string) + //Isnil("age", ok) - isDelete,ok := source["isDelete"].(float64) - if ok { - tmpinfo.IsDelete= int32(isDelete) - } - //Isnil("isDelete", ok) + isDelete, ok := source["isDelete"].(float64) + if ok { + tmpinfo.IsDelete = int32(isDelete) + } + //Isnil("isDelete", ok) - enable,ok := source["enable"].(float64) - if ok { - tmpinfo.Enable= int32(enable) - } - //Isnil("endTime", ok) + enable, ok := source["enable"].(float64) + if ok { + tmpinfo.Enable = int32(enable) + } + //Isnil("endTime", ok) - tmpinfo.Reserved,ok = source["reserved"].(string) - //Isnil("reserved",ok) - tmpinfo.PicDesc,ok = source["picDesc"].(string) - //Isnil("picDesc",ok) - tmpinfo.CreateTime,ok = source["createTime"].(string) - //Isnil("createTime",ok) - tmpinfo.CreateBy,ok = source["createBy"].(string) - //Isnil("createBy",ok) + tmpinfo.Reserved, ok = source["reserved"].(string) + //Isnil("reserved",ok) + tmpinfo.PicDesc, ok = source["picDesc"].(string) + //Isnil("picDesc",ok) + tmpinfo.CreateTime, ok = source["createTime"].(string) + //Isnil("createTime",ok) + tmpinfo.CreateBy, ok = source["createBy"].(string) + //Isnil("createBy",ok) - //鏍规嵁 tableid 鑾峰彇 tablename - //name, _:= Dbtablename(tmpinfo.TableId) - //tmpinfo.TableName= name - tmpinfos = append(tmpinfos, tmpinfo) - } + //鏍规嵁 tableid 鑾峰彇 tablename + //name, _:= Dbtablename(tmpinfo.TableId) + //tmpinfo.TableName= name + tmpinfos = append(tmpinfos, tmpinfo) + } - return tmpinfos + return tmpinfos } //瑙f瀽搴曞簱缁撴瀯 func Dbtablebyid(sources []map[string]interface{}) (tmpinfos []protomsg.Dbtable) { - var ok bool + var ok bool - var tmpinfo protomsg.Dbtable - for _, source := range sources{ + var tmpinfo protomsg.Dbtable + for _, source := range sources { - tmpinfo.Id, ok = source["id"].(string) - if !ok { - continue - } - tmpinfo.TableName,ok = source["tableName"].(string) - //Isnil("tableName", ok) - tmpinfo.TableType,ok = source["tableType"].(string) - //Isnil("tableType", ok) - tmpinfo.CreateBy,ok = source["createBy"].(string) - //Isnil("createBy", ok) - tmpinfo.TableDesc,ok = source["tableDesc"].(string) - //Isnil("tableDesc", ok) - tmpinfo.BwType,ok = source["bwType"].(string) - //Isnil("bwType", ok) - tmpinfo.StartTime,ok = source["startTime"].(string) - //Isnil("startTime", ok) - tmpinfo.EndTime,ok = source["endTime"].(string) - //Isnil("endTime", ok) + tmpinfo.Id, ok = source["id"].(string) + if !ok { + continue + } + tmpinfo.TableName, ok = source["tableName"].(string) + //Isnil("tableName", ok) + tmpinfo.TableType, ok = source["tableType"].(string) + //Isnil("tableType", ok) + tmpinfo.CreateBy, ok = source["createBy"].(string) + //Isnil("createBy", ok) + tmpinfo.TableDesc, ok = source["tableDesc"].(string) + //Isnil("tableDesc", ok) + tmpinfo.BwType, ok = source["bwType"].(string) + //Isnil("bwType", ok) + tmpinfo.StartTime, ok = source["startTime"].(string) + //Isnil("startTime", ok) + tmpinfo.EndTime, ok = source["endTime"].(string) + //Isnil("endTime", ok) - isDelete,ok := source["isDelete"].(float64) - if ok { - tmpinfo.IsDelete= int32(isDelete) - } - //Isnil("isDelete", ok) + isDelete, ok := source["isDelete"].(float64) + if ok { + tmpinfo.IsDelete = int32(isDelete) + } + //Isnil("isDelete", ok) - enable,ok := source["enable"].(float64) - if ok { - tmpinfo.Enable= int32(enable) - } - //Isnil("endTime", ok) + enable, ok := source["enable"].(float64) + if ok { + tmpinfo.Enable = int32(enable) + } + //Isnil("endTime", ok) - tmpinfo.CreateTime,ok = source["createTime"].(string) - //Isnil("createTime", ok) - tmpinfo.UpdateTime,ok = source["updateTime"].(string) - //Isnil("updateTime", ok) - tmpinfo.IsForever,ok = source["isForever"].(string) - //Isnil("isForever", ok) - tmpinfo.IsSync,ok = source["isSync"].(string) - //Isnil("isSync", ok) - tmpinfo.AnalyServerId,ok = source["analyServerId"].(string) - //Isnil("analyServerId", ok) + tmpinfo.CreateTime, ok = source["createTime"].(string) + //Isnil("createTime", ok) + tmpinfo.UpdateTime, ok = source["updateTime"].(string) + //Isnil("updateTime", ok) + tmpinfo.IsForever, ok = source["isForever"].(string) + //Isnil("isForever", ok) + tmpinfo.IsSync, ok = source["isSync"].(string) + //Isnil("isSync", ok) + tmpinfo.AnalyServerId, ok = source["analyServerId"].(string) + //Isnil("analyServerId", ok) - tmpinfos = append(tmpinfos, tmpinfo) - } + tmpinfos = append(tmpinfos, tmpinfo) + } - return tmpinfos + return tmpinfos } -func Sourcelist(buf []byte)(sources []map[string]interface{}, err error){ - var info interface{} - json.Unmarshal(buf, &info) - out, ok := info.(map[string]interface{}) - if !ok { - return nil, errors.New("http response interface can not change map[string]interface{}") - } +func Sourcelist(buf []byte) (sources []map[string]interface{}, err error) { + var info interface{} + json.Unmarshal(buf, &info) + out, ok := info.(map[string]interface{}) + 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!") - } - for _, in := range middle["hits"].([]interface{}){ - tmpbuf, ok := in.(map[string]interface{}) - if !ok { - fmt.Println("change to source error!") - continue - } - source, ok := tmpbuf["_source"].(map[string]interface{}) - if !ok { - fmt.Println("change _source error!") - continue - } - sources = append(sources, source ) - } - return sources,nil + middle, ok := out["hits"].(map[string]interface{}) + if !ok { + return nil, errors.New("first hits change error!") + } + for _, in := range middle["hits"].([]interface{}) { + tmpbuf, ok := in.(map[string]interface{}) + if !ok { + fmt.Println("change to source error!") + continue + } + source, ok := tmpbuf["_source"].(map[string]interface{}) + if !ok { + fmt.Println("change _source error!") + continue + } + sources = append(sources, source) + } + return sources, nil } -func Sourcelistforscroll(buf []byte)(datasource map[string]interface{}, err error){ +func Sourcelistforscroll(buf []byte) (datasource map[string]interface{}, err error) { var data = make(map[string]interface{}) var info interface{} json.Unmarshal(buf, &info) @@ -438,8 +464,8 @@ if !ok { return nil, errors.New("first hits change error!") } - var sources = make([]map[string]interface{},0) - for _, in := range middle["hits"].([]interface{}){ + var sources = make([]map[string]interface{}, 0) + for _, in := range middle["hits"].([]interface{}) { tmpbuf, ok := in.(map[string]interface{}) if !ok { fmt.Println("change to source error!") @@ -450,41 +476,41 @@ fmt.Println("change _source error!") continue } - sources = append(sources, source ) + sources = append(sources, source) } data["sourcelist"] = sources data["scroll_id"] = scroll_id - return data,nil + return data, nil } func EsReq(method string, url string, parama []byte) (buf []byte, err error) { - //defer elapsed("page")() - timeout := time.Duration(10 * time.Second) - client := http.Client{ - Timeout: timeout, - } - request, err := http.NewRequest(method, url, bytes.NewBuffer(parama)) - request.Header.Set("Content-type", "application/json") + //defer elapsed("page")() + timeout := time.Duration(10 * time.Second) + client := http.Client{ + Timeout: timeout, + } + request, err := http.NewRequest(method, url, bytes.NewBuffer(parama)) + request.Header.Set("Content-type", "application/json") - if err != nil { - fmt.Println("build request fail !") - return nil, err - } + if err != nil { + fmt.Println("build request fail !") + return nil, err + } - resp, err := client.Do(request) - if err != nil{ - fmt.Println("request error: ", err) - return nil, err - } + resp, err := client.Do(request) + if err != nil { + fmt.Println("request error: ", err) + return nil, err + } - defer resp.Body.Close() - body, err := ioutil.ReadAll(resp.Body) - if err != nil { - fmt.Println(err) - return nil , err - } - return body, nil + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + fmt.Println(err) + return nil, err + } + return body, nil } // 璁$畻鏃堕棿 -- Gitblit v1.8.0