From 97f1df31715004785f3ad3fea409206a34aa0f83 Mon Sep 17 00:00:00 2001 From: liuxiaolong <736321739@qq.com> Date: 星期二, 29 十月 2019 09:36:37 +0800 Subject: [PATCH] fix personIds get --- controllers/fileController.go | 43 +++++++++++++++++++++++++++++-------------- 1 files changed, 29 insertions(+), 14 deletions(-) diff --git a/controllers/fileController.go b/controllers/fileController.go index 8820970..dd13cd0 100644 --- a/controllers/fileController.go +++ b/controllers/fileController.go @@ -6,6 +6,7 @@ "basic.com/pubsub/protomsg.git" "bytes" "encoding/base64" + "encoding/json" "errors" "fmt" "github.com/gin-gonic/gin" @@ -525,6 +526,10 @@ util.ResponseFormat(c,code.Success,m) } +type PersonId struct { + Id string `json:"id"` +} + func GetCompareDataTwice(co *service.CompareOnce,searchBody *models.EsSearch) map[string]interface{} { m := make(map[string]interface{},0) @@ -582,21 +587,31 @@ } else {//搴曞簱鏁版嵁鐨勪簩娆℃绱� var dbpApi dbapi.DbPersonApi personIds, _ := dbpApi.FindLikePersonIds(searchBody.DataBases, searchBody.InputValue) - logger.Debug("searchPhoto first Result.len:",len(*co.CompareData),"twice len(personIds):",len(personIds)) - if personIds !=nil && len(personIds)>0 { - var aResult protomsg.SdkCompareResult - aList := getTwiceSearchResult(co, &personIds) - aTotal := aList.Len() - if aTotal <= to { - aResult.CompareResult = (*aList)[from:aTotal] - } else { - aResult.CompareResult = (*aList)[from:to] + logger.Debug("searchPhoto first Result.len:",len(*co.CompareData),"personIds:",personIds) + if personIds !=nil { + var pIds []PersonId + b, _ := json.Marshal(personIds) + json.Unmarshal(b, &pIds) + if len(pIds) >0 { + var personIdArr []string + for _,pid :=range pIds{ + personIdArr = append(personIdArr, pid.Id) + } + var aResult protomsg.SdkCompareResult + aList := getTwiceSearchResult(co, &personIdArr) + aTotal := aList.Len() + if aTotal <= to { + aResult.CompareResult = (*aList)[from:aTotal] + } else { + aResult.CompareResult = (*aList)[from:to] + } + out := FillDataToCompareResult(&aResult) + m["total"] = aTotal + m["compareNum"] = searchBody.CompareNum + m["totalList"] = out + return m } - out := FillDataToCompareResult(&aResult) - m["total"] = aTotal - m["compareNum"] = searchBody.CompareNum - m["totalList"] = out - return m + } else { m["total"] = 0 m["compareNum"] = searchBody.CompareNum -- Gitblit v1.8.0