From 684a1f1638b235e26cb6d0ed4e8152d4f4546d3e Mon Sep 17 00:00:00 2001
From: liuxiaolong <736321739@qq.com>
Date: 星期四, 01 八月 2019 11:22:41 +0800
Subject: [PATCH] fix sort

---
 service/FaceCompareService.go |   29 ++++++++++-------------------
 1 files changed, 10 insertions(+), 19 deletions(-)

diff --git a/service/FaceCompareService.go b/service/FaceCompareService.go
index 3882a86..0ff7969 100644
--- a/service/FaceCompareService.go
+++ b/service/FaceCompareService.go
@@ -8,7 +8,6 @@
 	"nanomsg.org/go-mangos/protocol/req"
 	"nanomsg.org/go-mangos/transport/ipc"
 	"nanomsg.org/go-mangos/transport/tcp"
-	"sort"
 	"sync"
 	"webserver/extend/config"
 	"webserver/extend/logger"
@@ -28,28 +27,19 @@
 
 type CompareOnce struct {
 	CompareNum string `json:"compareOnce"`
-	CompareData *[]*protomsg.SdkCompareEach `json:"compareData"`
+	CompareData *CompareResultSort `json:"compareData"`
 }
 
-type CompareResultWrapper struct {
-	CompareData *[]*protomsg.SdkCompareEach
-	By func(p,q *protomsg.SdkCompareEach) bool
-}
+type CompareResultSort []*protomsg.SdkCompareEach
 
-func (crw CompareResultWrapper) Len()int {
-	return len(*crw.CompareData)
+func (crw CompareResultSort) Len()int {
+	return len(crw)
 }
-func (crw CompareResultWrapper) Swap(i,j int) {
-	(*crw.CompareData)[i],(*crw.CompareData)[j] = (*crw.CompareData)[j],(*crw.CompareData)[i]
+func (crw CompareResultSort) Swap(i,j int) {
+	crw[i],crw[j] = crw[j],crw[i]
 }
-func (crw CompareResultWrapper) Less(i,j int) bool{
-	return crw.By((*crw.CompareData)[i],(*crw.CompareData)[j])
-}
-
-func SortByScore(list *[]*protomsg.SdkCompareEach) {
-	sort.Sort(CompareResultWrapper{list, func(p, q *protomsg.SdkCompareEach) bool {
-		return q.CompareScore < p.CompareScore //閫掑噺鎺掑簭
-	}})
+func (crw CompareResultSort) Less(i,j int) bool{//闄嶅簭鎺掑簭
+	return crw[i].CompareScore > crw[j].CompareScore
 }
 
 var compResultHisM = make(map[string]*CompareOnce,0)
@@ -78,7 +68,8 @@
 	compServerList := config.CompServerInfo.Url
 	logger.Debug("compServerList:", compServerList)
 	//1.鍚戝悇涓猚ompare杩涚▼鍙戣捣璇锋眰鎷垮埌姣斿缁撴灉
-	resultList :=make([]*protomsg.SdkCompareEach,0)
+	var resultList CompareResultSort
+	//resultList :=make([]*protomsg.SdkCompareEach,0)
 	for _,str :=range compServerList{
 		reqUrl := "tcp://"+str
 		resultB := doCompareRequest(reqUrl,b)

--
Gitblit v1.8.0