From b50ab8c04f6ae6097701a2a2b0f3cd9226ad77e3 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@iotlink.com>
Date: 星期三, 30 十月 2019 15:19:23 +0800
Subject: [PATCH] fix: change network settings
---
controllers/fileController.go | 69 +++++++++++++++++++++++++++-------
1 files changed, 55 insertions(+), 14 deletions(-)
diff --git a/controllers/fileController.go b/controllers/fileController.go
index 3b6c238..ecdc766 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)
@@ -533,9 +538,10 @@
var hasCompEsPerson = false
if searchBody.DataBases !=nil {
- for _,tableId :=range searchBody.DataBases {
+ for idx,tableId :=range searchBody.DataBases {
if tableId == "esData" {
hasCompEsPerson = true
+ searchBody.DataBases = append(searchBody.DataBases[:idx], searchBody.DataBases[idx+1:]...)
break
}
}
@@ -555,7 +561,8 @@
arg.InputValue = searchBody.InputValue
arg.Collection = searchBody.Collection
arg.AnalyServerId = localConf.ServerId
- captureIds := esApi.GetAllLocalVideopersonsId(arg, config.EsInfo.EsIndex.VideoPersons.IndexName, localConf.AlarmIp, strconv.Itoa(int(localConf.AlarmPort)))
+ alarmLevelTypes := strings.Replace(strings.Trim(fmt.Sprint(getAlarmLevel(searchBody.AlarmLevel)), "[]"), " ", "\",\"", -1)
+ captureIds := esApi.GetAllLocalVideopersonsId(arg, config.EsInfo.EsIndex.VideoPersons.IndexName, localConf.AlarmIp, strconv.Itoa(int(localConf.AlarmPort)), alarmLevelTypes)
logger.Debug("searchPhoto first Result.len:",len(*co.CompareData),"twice len(captureIds):",len(captureIds))
if captureIds !=nil {
var aResult protomsg.SdkCompareResult
@@ -578,29 +585,63 @@
return m
}
}
+ } else {//搴曞簱鏁版嵁鐨勪簩娆℃绱�
+ var dbpApi dbapi.DbPersonApi
+ personIds, _ := dbpApi.FindLikePersonIds(searchBody.DataBases, searchBody.InputValue)
+ 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
+ }
+
+ } else {
+ m["total"] = 0
+ m["compareNum"] = searchBody.CompareNum
+ m["totalList"] = []interface{}{}
+ return m
+ }
}
- var sCompResult protomsg.SdkCompareResult
- total := len(*co.CompareData)
- if total <= to {
- sCompResult.CompareResult = (*co.CompareData)[from:total]
- } else {
- sCompResult.CompareResult = (*co.CompareData)[from:to]
- }
- resultList := FillDataToCompareResult(&sCompResult)
+ //var sCompResult protomsg.SdkCompareResult
+ //total := len(*co.CompareData)
+ //if total <= to {
+ // sCompResult.CompareResult = (*co.CompareData)[from:total]
+ //} else {
+ // sCompResult.CompareResult = (*co.CompareData)[from:to]
+ //}
+ //resultList := FillDataToCompareResult(&sCompResult)
- m["total"] = total
+ m["total"] = 0
m["compareNum"] = searchBody.CompareNum
- m["totalList"] = resultList
+ m["totalList"] = []interface{}{}
return m
}
-func getTwiceSearchResult(co *service.CompareOnce, captureIds *[]string) *service.CompareList{
+func getTwiceSearchResult(co *service.CompareOnce, scopeIds *[]string) *service.CompareList{
m := make(map[string]string)
- for _,capId :=range *captureIds {
+ for _,capId :=range *scopeIds {
m[capId] = capId
}
var totalData service.CompareList
--
Gitblit v1.8.0