From aa1b946f4ba9b62dee9b9464ff4450ebbc48c4ec Mon Sep 17 00:00:00 2001 From: liuxiaolong <736321739@qq.com> Date: 星期四, 25 七月 2019 16:32:13 +0800 Subject: [PATCH] fix score to %.2f --- controllers/fileController.go | 54 +++++++++++++++++++++++++++++++++--------------------- 1 files changed, 33 insertions(+), 21 deletions(-) diff --git a/controllers/fileController.go b/controllers/fileController.go index 29839f6..74d1b25 100644 --- a/controllers/fileController.go +++ b/controllers/fileController.go @@ -25,6 +25,7 @@ "webserver/extend/code" "webserver/extend/config" "webserver/extend/esutil" + "webserver/extend/logger" "webserver/extend/util" "webserver/models" "webserver/service" @@ -181,9 +182,9 @@ var captureTable = "capturetable" // 鎶撴媿搴� type SearchCondition struct { - Url string `json:"url"` - TableIds []string `json:"tableIds"` - CompThreshold string `json:"compThreshold"` + PicUrl string `json:"picUrl"` + Databases []string `json:"databases"` + Threshold string `json:"threshold"` } // @Summary 浠ュ浘鎼滃浘 // @Description 浠ュ浘鎼滃浘 @@ -197,26 +198,26 @@ func (controller FileController) SearchByPhoto(c *gin.Context) { var condition SearchCondition err := c.BindJSON(&condition) - if err !=nil || condition.Url == "" { + if err !=nil || condition.PicUrl == "" || len(condition.Databases) == 0 { util.ResponseFormat(c, code.RequestParamError, "鍙傛暟鏈夎") return } - compThreshold, err := strconv.ParseFloat(condition.CompThreshold,32) - if condition.Url == "" || err != nil { + compThreshold, err := strconv.ParseFloat(condition.Threshold,32) + if condition.PicUrl == "" || err != nil { util.ResponseFormat(c, code.RequestParamError, "鍙傛暟鏈夎") return } - if face,ok := faceExtractedMap[condition.Url];!ok{ - util.ResponseFormat(c, code.RequestParamError, "鍙傛暟鏈夎") + if face,ok := faceExtractedMap[condition.PicUrl];!ok{ + util.ResponseFormat(c, code.RequestParamError, "璇烽噸鏂颁笂浼犲浘鐗�") return } else { arg := protomsg.CompareArgs{ - TableIds:[]string{ captureTable }, - FaceFeature:face.FaceBytes, - CompareThreshold:float32(compThreshold), + TableIds: condition.Databases, + FaceFeature: face.FaceBytes, + CompareThreshold: float32(compThreshold), } - if condition.TableIds !=nil { - arg.TableIds = append(arg.TableIds, condition.TableIds...) + if condition.Databases !=nil { + arg.TableIds = append(arg.TableIds, condition.Databases...) } b, err := proto.Marshal(&arg) if err !=nil{ @@ -224,48 +225,58 @@ return } compServerList := config.CompServerInfo.Url - fmt.Println("compServerList:", compServerList) + logger.Debug("compServerList:", compServerList) resultList :=make([]CompareResult,0) for _,str :=range compServerList{ reqUrl := "tcp://"+str reqClient := deliver.NewClient(deliver.ReqRep, reqUrl) err = reqClient.Send(b) if err !=nil{ + logger.Debug("reqClient.Send err:",err) continue } resultB, err := reqClient.Recv() if err !=nil{ + logger.Debug("reqClient.Recv err:",err) continue } rList :=make([]protomsg.Esinfo,0) err = json.Unmarshal(resultB, &rList) if err !=nil{ + logger.Debug("recv result Unmarshal err:", err) continue } + logger.Debug("rList:", rList) - var dbPersonM map[string]*protomsg.Esinfo - var captureM map[string]*protomsg.Esinfo - var personIds []string - var captureIds []string + dbPersonM := make(map[string]*protomsg.Esinfo,0) + captureM := make(map[string]*protomsg.Esinfo,0) + personIds :=make([]string,0) + captureIds := make([]string,0) for _,v :=range rList{ if v.Tableid == captureTable { captureM[v.Id] = &v - personIds = append(personIds,v.Id) + captureIds = append(captureIds,v.Id) } else { dbPersonM[v.Id] = &v - captureIds = append(captureIds,v.Id) + personIds = append(personIds,v.Id) } } + logger.Debug("personIds:", personIds) + logger.Debug("captureIds:",captureIds) esServerIp := config.EsInfo.Masterip esServerPort := config.EsInfo.Httpport index := config.EsInfo.EsIndex.Dbtablepersons.IndexName dbpersons, e := esApi.Dbpersoninfosbyid(personIds, index, esServerIp, esServerPort) + if e !=nil { + logger.Debug("Dbpersoninfosbyid.err:",e) + } + logger.Debug("dbpersons:", dbpersons) if e ==nil && dbpersons !=nil { for _,p :=range dbpersons { var dbP = DbPersonVo { PersonId: p.Id, IdCard: p.IdCard, - CompareScore: dbPersonM[p.Id].CompareScore, + CompareScore: util.ParseScore(dbPersonM[p.Id].CompareScore), MonitorLevel: p.MonitorLevel, PersonName: p.PersonName, PersonPicUrl: p.PersonPicUrl, @@ -284,6 +295,7 @@ resultList = append(resultList,cr) } } + logger.Debug("resultList:",resultList) } util.ResponseFormat(c,code.Success,resultList) } -- Gitblit v1.8.0