From 2bd2068c999cda5bda8c0787ed0dcaac6cb7afdb Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@iotlink.com>
Date: 星期四, 31 十月 2019 13:27:46 +0800
Subject: [PATCH] feat: add system reboot api

---
 controllers/fileController.go |   32 ++++++++++++++++++++++++++++----
 1 files changed, 28 insertions(+), 4 deletions(-)

diff --git a/controllers/fileController.go b/controllers/fileController.go
index fadef57..aba0b1f 100644
--- a/controllers/fileController.go
+++ b/controllers/fileController.go
@@ -198,6 +198,7 @@
 	BaseInfo []DbPersonVo `json:"baseInfo"`
 	VideoUrl string `json:"videoUrl"`
 	SdkName string `json:"sdkName"`
+	AlarmRules []AlarmRuleVo `json:"alarmRules"`
 }
 type DbPersonVo struct {
 	BwType string `json:"bwType"`
@@ -217,6 +218,15 @@
 type ScoreIndex struct {
 	CompareScore float32
 	Index int
+}
+
+type AlarmRuleVo struct {
+	GroupId      string `json:"groupId"`
+	AlarmLevel   string `json:"alarmLevel"`
+	RuleText     string `json:"ruleText"`
+	DefenceState bool `json:"defenceState"`
+	IsLink 		 bool `json:"isLink"`
+	LinkInfo 	 string `json:"linkInfo"`
 }
 
 //濉厖鍚戝墠绔繑鍥炵殑鏁版嵁
@@ -304,6 +314,19 @@
 					TableName: p.TableName,
 				})
 			}
+			var alarmRules []AlarmRuleVo
+			if vp.AlarmRules !=nil && len(vp.AlarmRules) >0 {
+				for _,ar :=range vp.AlarmRules {
+					alarmRules = append(alarmRules, AlarmRuleVo{
+						GroupId: ar.GroupId,
+						AlarmLevel: ar.AlarmLevel,
+						RuleText: ar.RuleText,
+						DefenceState: ar.DefenceState,
+						IsLink: ar.IsLink,
+						LinkInfo: ar.LinkInfo,
+					})
+				}
+			}
 			vpE := CompareResult{
 				Id: vp.Id,
 				CompareScore: util.ParseScore(captureM[vp.Id].CompareScore),
@@ -321,6 +344,7 @@
 				VideoUrl: vp.VideoUrl,
 				BaseInfo: bi,
 				SdkName: "浜鸿劯",
+				AlarmRules: alarmRules,
 			}
 			resultList[captureM[vp.Id].Index] = vpE
 		}
@@ -569,7 +593,7 @@
 			logger.Debug("searchPhoto first Result.len:",len(*co.CompareData),"twice len(captureIds):",len(captureIds))
 			if captureIds !=nil {
 				var aResult protomsg.SdkCompareResult
-				aList := getTwiceSearchResult(co, &captureIds)
+				aList := getTwiceSearchResult(co, &captureIds, searchBody)
 				aTotal := aList.Len()
 				if aTotal <= to {
 					aResult.CompareResult = (*aList)[from:aTotal]
@@ -602,7 +626,7 @@
 					personIdArr = append(personIdArr, pid.Id)
 				}
 				var aResult protomsg.SdkCompareResult
-				aList := getTwiceSearchResult(co, &personIdArr)
+				aList := getTwiceSearchResult(co, &personIdArr, searchBody)
 				aTotal := aList.Len()
 				if aTotal <= to {
 					aResult.CompareResult = (*aList)[from:aTotal]
@@ -642,14 +666,14 @@
 	return m
 }
 
-func getTwiceSearchResult(co *service.CompareOnce, scopeIds *[]string) *service.CompareList{
+func getTwiceSearchResult(co *service.CompareOnce, scopeIds *[]string, searchBody *models.EsSearch) *service.CompareList{
 	m := make(map[string]string)
 	for _,capId :=range *scopeIds {
 		m[capId] = capId
 	}
 	var totalData service.CompareList
 	for _,each :=range *co.CompareData {
-		if _,ok :=m[each.Id];ok{
+		if _,ok :=m[each.Id];ok && each.CompareScore >= searchBody.Threshold {
 			totalData = append(totalData, each)
 		}
 	}

--
Gitblit v1.8.0