From f4f6d6d6c0d34b96d7bf00999d66cb80abc98b26 Mon Sep 17 00:00:00 2001
From: sunty <suntianyu0923@163.com>
Date: 星期二, 23 七月 2019 20:50:49 +0800
Subject: [PATCH] add alarmLevel model

---
 controllers/esSearch.go |   44 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 44 insertions(+), 0 deletions(-)

diff --git a/controllers/esSearch.go b/controllers/esSearch.go
index 99b1ceb..27e21eb 100644
--- a/controllers/esSearch.go
+++ b/controllers/esSearch.go
@@ -33,6 +33,36 @@
 	util.ResponseFormat(c, code.Success, data)
 }
 
+func getAlarmLevel(alarmlevel int) (string) {
+	d := dbapi.DicApi{}
+        res,data := d.FindByType("ALARMLEVEL")
+        if data == nil {
+                fmt.Println("data is nil")
+        }
+	fmt.Println(res)
+		// fmt.Println(data)
+	alarmLevel := make(map[int]string)
+	
+	tmp := data.(map[string]interface{})
+
+		for _,value := range tmp["ALARMLEVEL"].([]interface{}) {
+			// fmt.Println(value.(map[string]interface{})["value"],"		",value.(map[string]interface{})["name"]) 
+			val := value.(map[string]interface{})["value"].(string)
+			name := value.(map[string]interface{})["name"].(string)
+			vl,err := strconv.Atoi(val)
+			if err != nil {
+				fmt.Println(err)
+			}
+			alarmLevel[vl] = name
+
+		}
+		
+		// fmt.Println(alarmLevel)
+
+		alarmLevelRes = alarmLevel[alarmlevel]
+		return alarmLevelRes	
+}
+
 func findEsData(searchBody map[string]interface{}) map[string]interface{} {
 	webPage := int(searchBody["page"].(float64))
 
@@ -76,12 +106,25 @@
 		index = config.EsInfo.EsIndex.VideoPersons.IndexName
 		esTableIdStr = "{\"terms\":{\"baseInfo.tableId\":[\"" + esTableId + "\"]}},"
 	}
+	//鍒ゆ柇鏀惰棌鐘舵��
 	isCollectStr := ""
 	isCollect := searchBody["collection"].(string)
 	if isCollect != "" {
 		isCollectStr = "{\"term\":{\"isCollect\":\"" + isCollect + "\"}},"
 	}
+	//鍒ゆ柇甯冮槻绛夌骇id
+	alarmLevelId :=searchBody["alarmlevel"].(int)
+	alarmLevelStr := ""
+	if alarmLevelId != nil && alarmLevelId != 0{
+		if alarmLevelId != -1 {
+			id := getAlarmLevel(alarmLevelId)
+			alarmLevelStr = "{\"terms\":{\"alarmRules.alarmLevel\":[\"" + id + "\"]}},{\"terms\":{\"alarmRules.defenceState\":[\"true\"]}},"
 
+		}else{
+			alarmLevelStr = "{\"terms\":{\"alarmRules.defenceState\":[\"false\"]}},"
+		}
+	}
+	
 	//浣跨敤es搴曞眰鏈哄埗澶勭悊鍒嗛〉
 	//璇锋眰澶�
 	url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
@@ -96,6 +139,7 @@
 		"\"query\":{\"bool\":{" + queryStr +
 		"\"filter\":[" +
 		cameraIdStr +
+		alarmLevelStr +
 		taskIdStr +
 		isCollectStr +
 		esTableIdStr +

--
Gitblit v1.8.0