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 +++++++++++++++++++++++++++++--------------
 go.sum                        |    4 ++--
 go.mod                        |    2 +-
 3 files changed, 32 insertions(+), 17 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
diff --git a/go.mod b/go.mod
index 5bfaf6d..3b91290 100644
--- a/go.mod
+++ b/go.mod
@@ -3,7 +3,7 @@
 go 1.12
 
 require (
-	basic.com/dbapi.git v0.0.0-20191028103813-b5aadb41f6cf // indirect
+	basic.com/dbapi.git v0.0.0-20191028130548-872f0d29a2d3 // indirect
 	basic.com/fileServer/WeedFSClient.git v0.0.0-20190919054037-0182b6c3f5cb // indirect
 	basic.com/pubsub/cache.git v0.0.0-20190718093725-6a413e1d7d48 // indirect
 	basic.com/pubsub/esutil.git v0.0.0-20191028114432-6eaaf713ab1b // indirect
diff --git a/go.sum b/go.sum
index 5cbe625..a36d412 100644
--- a/go.sum
+++ b/go.sum
@@ -1,5 +1,5 @@
-basic.com/dbapi.git v0.0.0-20191028103813-b5aadb41f6cf h1:J2xUolBqEaZ9BrK5U0uwMcRlouMmMk88tNl/d+cUUYc=
-basic.com/dbapi.git v0.0.0-20191028103813-b5aadb41f6cf/go.mod h1:eDXPnxaz6jZPDvBSk7ya7oSASWPCuUEgRTJCjsfKt/Q=
+basic.com/dbapi.git v0.0.0-20191028130548-872f0d29a2d3 h1:oM/P/GEUMXGX6Ig1Why0rdkbm82cG5BWWb0DQNrw760=
+basic.com/dbapi.git v0.0.0-20191028130548-872f0d29a2d3/go.mod h1:eDXPnxaz6jZPDvBSk7ya7oSASWPCuUEgRTJCjsfKt/Q=
 basic.com/fileServer/WeedFSClient.git v0.0.0-20190919054037-0182b6c3f5cb h1:fM6DojeInFSCFO+wkba1jtyPiSDqw0jYKi4Tk+e+ka4=
 basic.com/fileServer/WeedFSClient.git v0.0.0-20190919054037-0182b6c3f5cb/go.mod h1:FTryK8BsVLfUplx8a3+l8hJWub6VbAWZCUH7sPRZaso=
 basic.com/pubsub/cache.git v0.0.0-20190718093725-6a413e1d7d48 h1:BBA30Rgljn6MRieC4gUncETJDyna3ObyubTo9HEQ2M0=

--
Gitblit v1.8.0