From d0bc216665a6d53135641ff009014a02a3774dd9 Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期三, 24 七月 2019 18:06:02 +0800
Subject: [PATCH] 事件推送

---
 go.sum                           |    4 
 insertdata/insertDataToEs.go     |   22 +++
 go.mod                           |    4 
 ruleserver/ruleToformula.go      |    2 
 labelFilter/readyDataForLabel.go |   14 ++
 labelFilter/ruleForLabel.go      |  166 +++++++++++++++++++++++++++++---
 ruleserver/timeTicker.go         |   32 +++---
 7 files changed, 199 insertions(+), 45 deletions(-)

diff --git a/go.mod b/go.mod
index 2d6649d..ff7e8a6 100644
--- a/go.mod
+++ b/go.mod
@@ -3,9 +3,9 @@
 go 1.12
 
 require (
-	basic.com/dbapi.git v0.0.0-20190701055817-73bca225181f
+	basic.com/dbapi.git v0.0.0-20190724082851-b6ae90344405
 	basic.com/pubsub/cache.git v0.0.0-20190718093725-6a413e1d7d48
-	basic.com/pubsub/protomsg.git v0.0.0-20190722020214-73680afe2ba3
+	basic.com/pubsub/protomsg.git v0.0.0-20190724081647-e1995f9a80e8
 	basic.com/pubsub/sdkcompare.git v0.0.0-20190715013640-f536a4647d00
 	basic.com/valib/deliver.git v0.0.0-20190531095353-25d8c3b20051
 	basic.com/valib/gopherdiscovery.git v0.0.0-20190605034340-15d89d8b4e28
diff --git a/go.sum b/go.sum
index 8120819..3769a80 100644
--- a/go.sum
+++ b/go.sum
@@ -1,5 +1,7 @@
 basic.com/dbapi.git v0.0.0-20190701055817-73bca225181f h1:CVB4pmUXTPPFN7w/DQfU1YWg2Tp2gG93TTr1M5W86sE=
 basic.com/dbapi.git v0.0.0-20190701055817-73bca225181f/go.mod h1:eDXPnxaz6jZPDvBSk7ya7oSASWPCuUEgRTJCjsfKt/Q=
+basic.com/dbapi.git v0.0.0-20190724082851-b6ae90344405 h1:BJzdtGipKxQAaptrwUNOVQZ3Qx4jbeAf72wkqBmm5vE=
+basic.com/dbapi.git v0.0.0-20190724082851-b6ae90344405/go.mod h1:eDXPnxaz6jZPDvBSk7ya7oSASWPCuUEgRTJCjsfKt/Q=
 basic.com/pubsub/cache.git v0.0.0-20190712095028-e73efb4afc3b h1:UAasACFqEYUBCuZkkdxYVc1QmSyB7McvNHS36QxDJp4=
 basic.com/pubsub/cache.git v0.0.0-20190712095028-e73efb4afc3b/go.mod h1:gHLJZz2ee1cGL0X0ae69fs56bAxkDgEQwDhhXZJNUcY=
 basic.com/pubsub/cache.git v0.0.0-20190718024458-be52360c4814 h1:KoSik/aiJNDt3d+qRKExLW4pNHZ7vU1wXHhWXxZi4qo=
@@ -8,6 +10,8 @@
 basic.com/pubsub/cache.git v0.0.0-20190718093725-6a413e1d7d48/go.mod h1:gHLJZz2ee1cGL0X0ae69fs56bAxkDgEQwDhhXZJNUcY=
 basic.com/pubsub/protomsg.git v0.0.0-20190722020214-73680afe2ba3 h1:qgY1QFopeLa24Q9LGToXAVkbU9+QUMLzTxRsYur0tgs=
 basic.com/pubsub/protomsg.git v0.0.0-20190722020214-73680afe2ba3/go.mod h1:un5NV5VWQoblVLZfx1Rt5vyLgwR0jI92d3VJhfrJhWU=
+basic.com/pubsub/protomsg.git v0.0.0-20190724081647-e1995f9a80e8 h1:hZYUcHcivGiofP3mGUWOOv6zKFAQp1V2uAkhjAXFfys=
+basic.com/pubsub/protomsg.git v0.0.0-20190724081647-e1995f9a80e8/go.mod h1:un5NV5VWQoblVLZfx1Rt5vyLgwR0jI92d3VJhfrJhWU=
 basic.com/pubsub/sdkcompare.git v0.0.0-20190715013640-f536a4647d00 h1:sK+Tx7rvM9J2WnNIwrzMDjZSylWiKNfQO0prUBfKsDk=
 basic.com/pubsub/sdkcompare.git v0.0.0-20190715013640-f536a4647d00/go.mod h1:8by33F9E1w17Pw/rDgJGJXAo122w0wDENG14hiMS+RE=
 basic.com/valib/deliver.git v0.0.0-20190531095353-25d8c3b20051 h1:9flC2o3kasaM2Y6I+mY+mxmve/pyAY/UzGQZLT3lFHM=
diff --git a/insertdata/insertDataToEs.go b/insertdata/insertDataToEs.go
index 651fd81..23557b6 100644
--- a/insertdata/insertDataToEs.go
+++ b/insertdata/insertDataToEs.go
@@ -135,7 +135,7 @@
 	if msg.RuleResult["face"] != nil && len(msg.RuleResult["face"].([]ruleserver.FaceResult)) > 0 {
 		logger.Info("寰�ES鎻掍汉鑴告暟鎹�")
 		for _, faceResult := range msg.RuleResult["face"].([]ruleserver.FaceResult) {
-			for _,face := range faceResult.Args  {
+			for _, face := range faceResult.Args {
 				// 涓婁紶澶у浘
 				// 瑙e帇缂╁苟涓婁紶鍥剧墖
 				bdata, err := util.UnCompress(msg.Data)
@@ -344,10 +344,26 @@
 			logger.Error("鏌ヨ鎽勫儚鏈轰俊鎭け璐�")
 		}
 		serverIp, err := GetLocalIP()
+		url := []string{}
+		url = append(url,strings.Split(resp["fileUrl"].(string), "/")[1])
 		if msg.RuleResult["cacheData"] != nil {
 			InsertYolo(msg.RuleResult["cacheData"].(ruleserver.ResultMsg))
 			// 鎶婄紦瀛樼殑鏁版嵁涓婁紶鍚庡緱鍒板湴鍧�瀛樿繘鍘�
-
+			// 瑙e帇缂╁苟涓婁紶鍥剧墖
+			msg1 := msg.RuleResult["cacheData"].(ruleserver.ResultMsg)
+			bdata, err := util.UnCompress(msg1.Data)
+			if err != nil {
+				panic("瑙e帇缂╁浘鐗囨椂鍑虹幇閿欒")
+			}
+			i := protomsg.Image{}
+			err = proto.Unmarshal(bdata, &i)
+			resp1, err1 := util.DrawPolygonOnImage(msg.Cid, i, msg.RuleResult["yolo"].([]ruleserver.Result), weedfsUrl)
+			if err1 != nil {
+				logger.Error("缂撳瓨鏁版嵁鐢绘鎴栦笂浼犲浘鐗囨湇鍔″櫒鍑洪敊", err)
+			} else {
+				logger.Info("涓婁紶鐨勫浘鐗囦俊鎭細", resp1)
+			}
+			url = append(url,strings.Split(resp1["fileUrl"].(string), "/")[1])
 		}
 		peraction := Personaction{
 			uuid.NewV4().String(),
@@ -363,7 +379,7 @@
 			localConfig.ServerName,
 			serverIp,
 			"",
-			[]string{strings.Split(resp["fileUrl"].(string), "/")[1]},
+			url,
 			i.Timestamp,
 			"",
 			isAlarm,
diff --git a/labelFilter/readyDataForLabel.go b/labelFilter/readyDataForLabel.go
index 143302f..613f407 100644
--- a/labelFilter/readyDataForLabel.go
+++ b/labelFilter/readyDataForLabel.go
@@ -12,8 +12,8 @@
 	CameraAddr    string
 	TaskId        string
 	Time		  string
-	Persons       []ruleserver.Arg
-	DefenceLevel  string
+	Persons       []ruleserver.FaceResult
+	DefenceLevel  []int32
 }
 // 鎶婃暟鎹閰嶅埌label
 func (label *Label)DataFormatToLabel(result ruleserver.ResultMsg) {
@@ -25,8 +25,14 @@
 	label.CameraName = camera.Name
 	label.CameraAddr = camera.Addr
 	label.TaskId = result.Tasklab.Taskid
-	label.Persons = result.RuleResult["face"].([]ruleserver.Arg)
-	//labelData.DefenceLevel = result.
+	for _,faceGroup := range result.RuleResult["face"].([]ruleserver.FaceResult) {
+		label.Persons = append(label.Persons,faceGroup)
+		label.DefenceLevel = append(label.DefenceLevel,faceGroup.AlarmLevel)
+	}
+	for _,yoloGroup := range result.RuleResult["yolo"].([]ruleserver.FaceResult) {
+		label.DefenceLevel = append(label.DefenceLevel,yoloGroup.AlarmLevel)
+	}
+	Judge(label,result)
 }
 
 // 浠庣紦瀛樹腑鏌ュ嚭鎵�鏈夌殑瑙勫垯鏁版嵁
diff --git a/labelFilter/ruleForLabel.go b/labelFilter/ruleForLabel.go
index 0300723..fe905b2 100644
--- a/labelFilter/ruleForLabel.go
+++ b/labelFilter/ruleForLabel.go
@@ -1,27 +1,85 @@
 package labelFilter
 
 import (
+	"basic.com/dbapi.git"
+	"basic.com/pubsub/protomsg.git"
 	"github.com/knetic/govaluate"
 	"ruleprocess/logger"
 	"ruleprocess/ruleserver"
+	"strconv"
+	"time"
 )
 
-func Judge(){
+func Judge(label *Label, result ruleserver.ResultMsg){
 	//鎷垮埌鎵�鏈夎鍒欑粍
-
+	var api dbapi.EventPushApi
+	b,allRules := api.FindAllDetails()
+	if !b {
+		logger.Error("鏌ヨ鏃堕棿鎺ㄩ�佽鍒欏け璐ワ紒")
+	}
 	//閬嶅巻鎵�鏈夌殑瑙勫垯缁勶紝鐪嬬湅绗﹀悎鍝釜瑙勫垯缁勶紝灏辨妸鏁版嵁鎻掑叆鍒板摢涓鍒欑粍鐨勭洰鏍囨満鍣ㄤ笂
-
-	//鍏堝垽鏂椂闂磋鍒欙紝涓嶇鍚堟瑙勫垯锛岀洿鎺ョ暐杩�
-
-		//閬嶅巻瑙勫垯缁勪腑鐨勫皬瑙勫垯锛屾瘡涓皬瑙勫垯寰楀嚭涓�涓猻tring绫诲瀷鐨刡ool鍊硷紝鐒跺悗鐢� && 鎴� || 鎷兼帴璧锋潵
-
-	//寰楀嚭鎬荤殑鍒ゆ柇缁撴灉
+	for _,ruleGroup := range allRules {
+		// 鍏堣繃鏃堕棿瑙勫垯
+		timeJudge(label,ruleGroup)
+		result := ""
+		var Connector string
+		if ruleGroup.IsSatisfyAll {
+			Connector = "&&"
+		} else {
+			Connector = "||"
+		}
+		for _,rule := range ruleGroup.Rules {
+			// 杩囨瘡涓�涓皬瑙勫垯
+			if rule.TopicType == "camera" {
+				result = Connector + cameraJudge(label,rule)
+			}
+			if rule.TopicType == "baseLibrary" {
+				result = Connector + baseJudge(label,rule)
+			}
+			if rule.TopicType == "task" {
+				result = Connector + taskJudge(label,rule)
+			}
+			if rule.TopicType == "person" {
+				result = Connector + taskJudge(label,rule)
+			}
+			if rule.TopicType == "defence" {
+				result = Connector + defenceJudge(label,rule)
+			}
+		}
+		// 寰楀嚭鎬荤殑鍒ゆ柇缁撴灉
+		if result != "" {
+			result = result[2:] // 鎶婂墠涓や綅瀛楃鍘绘帀
+			expression, err:= govaluate.NewEvaluableExpression(result);
+			if err != nil {
+				logger.Error("琛ㄨ揪寮忔湁璇紝璇锋鏌ワ紒")
+			}
+			result, err1:= expression.Evaluate(nil)
+			if err1 != nil {
+				logger.Error("甯﹀叆鍙傛暟鏈夎")
+			}
+			if result.(bool) {
+				logger.Info("閫氳繃瑙勫垯锛岃〃杈惧紡涓猴細",result)
+				// 鎺ㄩ�佹湇鍔″櫒
+				pushData(ruleGroup.IpPorts,result.(ruleserver.ResultMsg))
+			} else {
+				logger.Info("娌¢�氳繃瑙勫垯,琛ㄨ揪寮忎负锛�",result)
+			}
+		}
+	}
 
 	//绗﹀悎鏈鍒欑粍鐨勫氨鎶婃暟鎹帹閫佸埌璇ョ洰鐨勬湇鍔″櫒涓�
 }
 // 鏄惁绗﹀悎鏃堕棿瑙勫垯
-func timeJudge(label *Label,groupRule *GroupRule) string{
-
+func timeJudge(label *Label,groupRule protomsg.EventPush) string{
+	timeNow := time.Now().Format("2006-01-02 15:04:05")
+	flag1 := isBefore(groupRule.TimeStart,timeNow)
+	flag2 := isBefore(timeNow,groupRule.TimeEnd)
+	if flag1 && flag2 {
+		return "true"
+	} else {
+		logger.Info("涓嶅湪瑙勫畾鐨勬椂闂磋寖鍥村唴锛�")
+		return "false"
+	}
 }
 // 浼犲叆涓や釜鏃堕棿鐨勫瓧绗︿覆锛屽垽鏂涓�涓椂闂存槸鍚﹀皬浜庣浜屼釜鏃堕棿
 func isBefore(time1 string,time2 string) bool{
@@ -40,25 +98,95 @@
 }
 
 // 鏄惁绗﹀悎鎽勫儚鏈鸿鍒�
-func cameraJudge(label *Label,rule *Rule) string{
-	return "true"
+func cameraJudge(label *Label,rule *protomsg.EventPushRule) string{
+	if rule.TopicArg == "cameraName" {
+		if label.CameraName == rule.RuleValue {
+			logger.Info("绗﹀悎鎽勫儚鏈哄悕绉拌鍒�")
+			return "true"
+		} else {
+			logger.Info("涓嶇鍚堟憚鍍忔満鍚嶇О瑙勫垯")
+			return "false"
+		}
+	}
+	if rule.TopicArg == "cameraLocation" {
+		if label.CameraAddr == rule.RuleValue {
+			logger.Info("绗﹀悎鎽勫儚鏈轰綅缃鍒�")
+			return "true"
+		} else {
+			logger.Info("涓嶇鍚堟憚鍍忔満浣嶇疆瑙勫垯")
+			return "false"
+		}
+	}
+	return ""
 }
 
 // 鏄惁绗﹀悎搴曞簱瑙勫垯
-func baseJudge(label *Label,rule *Rule) string{
-	return "true"
+func baseJudge(label *Label,rule *protomsg.EventPushRule) string{
+	flag := "false"
+	for _,personGroup := range label.Persons  {
+		for _,arg := range personGroup.Args {
+			for _,liker := range arg.Liker{
+				if liker.TableId == rule.RuleValue {
+					logger.Info("绗﹀悎搴曞簱瑙勫垯锛�")
+					flag = "true"
+				}
+			}
+		}
+	}
+	return flag
 }
 
 //鏄惁绗﹀悎浜哄憳瑙勫垯
-func personJudge(label *Label,rule *Rule) string{
-	return "true"
+func personJudge(label *Label,rule *protomsg.EventPushRule) string{
+	for _,personGroup := range label.Persons  {
+		for _,person := range personGroup.Args {
+			if rule.TopicArg == "sex" && strconv.Itoa(int(person.ThftRes.Gender)) == rule.RuleValue{
+				logger.Info("绗﹀悎浜哄憳鎬у埆瑙勫垯锛�")
+				return  "true"
+			}
+			if rule.TopicArg == "race" && strconv.Itoa(int(person.ThftRes.Race)) == rule.RuleValue {
+				logger.Info("绗﹀悎浜哄憳绉嶆棌瑙勫垯锛�")
+				return "true"
+			}
+			if rule.TopicArg == "age" && strconv.Itoa(int(person.ThftRes.Age)) == rule.RuleValue {
+				logger.Info("绗﹀悎浜哄憳骞撮緞瑙勫垯锛�")
+				return "true"
+			}
+			if rule.TopicArg == "others" {
+				// 鍏朵粬杩欎釜鍊煎厛杩欎箞澶勭悊
+				return "true"
+			}
+		}
+		if strconv.Itoa(int(personGroup.AlarmLevel)) == rule.RuleValue {
+			logger.Info("绗﹀悎浜哄憳鎶ヨ绛夌骇瑙勫垯锛�")
+			return "true"
+		}
+	}
+	logger.Info("涓嶇鍚堜汉鍛樿鍒�")
+	return "false"
 }
 
 // 鏄惁绗﹀悎甯冮槻绛夌骇瑙勫垯
-func defenceJudge(label *Label,rule *Rule) string{
-	return "true"
+func defenceJudge(label *Label,rule *protomsg.EventPushRule) string{
+	for _,def := range label.DefenceLevel {
+		if strconv.Itoa(int(def)) == rule.RuleValue {
+			logger.Info("绗﹀悎甯冮槻绛夌骇瑙勫垯锛�")
+			return "true"
+		}
+	}
+	logger.Info("涓嶇鍚堝竷闃茬瓑绾ц鍒�")
+	return "false"
+}
+// 鏄惁绗﹀悎浠诲姟瑙勫垯
+func taskJudge(label *Label,rule *protomsg.EventPushRule) string{
+	if label.TaskId == rule.RuleValue {
+		logger.Info("绗﹀悎浠诲姟瑙勫垯!")
+		return "true"
+	}
+	logger.Info("涓嶇鍚堜换鍔¤鍒�")
+	return "false"
 }
 // 璋冪敤鐩爣鏈嶅姟鍣ㄧ殑鎻掑叆鎺ュ彛
-func pushData (data ruleserver.ResultMsg){
+func pushData (urls []*protomsg.PushIpPort, data ruleserver.ResultMsg){
 
 }
\ No newline at end of file
diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index a64c0ab..1dd709b 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -584,7 +584,7 @@
 				timeLength, _ := strconv.Atoi(rule.SdkArgValue)
 				timeEle := TimeElement{N: timeLength, InitN: timeLength, AlarmFlag: false, BufferFlag: 10, CacheSdkData: ResultMsg{message, args.RuleResult}} // 鎵旇繘鍘讳竴涓畾鏃跺櫒鍏冪礌锛堝苟缂撳瓨褰撳墠鐢婚潰甯ф暟鎹級
 				//TimeEleList = make(map[string]timeElement)
-				TimeEleList[groupId+" "+rule.Id] = &timeEle // 瀹氭椂鍣ㄥ厓绱犱互鎽勫儚鏈篿d鎷兼帴鍖哄煙id涓洪敭
+				TimeEleList[groupId+" "+rule.Id] = &timeEle // 瀹氭椂鍣ㄥ厓绱犱互缁勮鍒檌d鍜屽綋鍓嶆寔缁椂闂村皬瑙勫垯id涓洪敭
 				logger.Info("鍒涘缓浜嗚鏁板櫒骞朵笖璁℃暟鍣ㄩ泦鍚堜负锛�", TimeEleList)
 			}
 		}
diff --git a/ruleserver/timeTicker.go b/ruleserver/timeTicker.go
index 0809fb4..d8126a7 100644
--- a/ruleserver/timeTicker.go
+++ b/ruleserver/timeTicker.go
@@ -14,12 +14,12 @@
 
 // 瀹氭椂鍣ㄥ厓绱�
 type TimeElement struct {
-	N            int                  // 鎸夋椂闂翠緷娆¢�掑噺鐨勫綋鍓嶅��
-	InitN        int                  // 璧嬪�煎悗灏变笉鍙樼殑鍒濆鍊�
-	BufferFlag   int                  // 缂撳啿瀹归敊浣� 杩炵画n甯alse鎵嶄负false
-	AlarmFlag    bool                 // 鎶ヨ鏍囧織浣� 瀹氭椂鍣ㄥ紑鍚悗绗竴娆℃姤璀︽椂浼氳缃负true 寰�鍚庡啀鏉ユ姤璀︿篃涓嶄細鎻掕繘ES
+	N            int       // 鎸夋椂闂翠緷娆¢�掑噺鐨勫綋鍓嶅��
+	InitN        int       // 璧嬪�煎悗灏变笉鍙樼殑鍒濆鍊�
+	BufferFlag   int       // 缂撳啿瀹归敊浣� 杩炵画n甯alse鎵嶄负false
+	AlarmFlag    bool      // 鎶ヨ鏍囧織浣� 瀹氭椂鍣ㄥ紑鍚悗绗竴娆℃姤璀︽椂浼氳缃负true 寰�鍚庡啀鏉ユ姤璀︿篃涓嶄細鎻掕繘ES
 	CacheSdkData ResultMsg // 瀹氭椂鍣ㄧ殑缂撳瓨鏁版嵁 鎸佺画鏃堕棿绫荤殑寮�鍚畾鏃跺櫒鏃惰缂撳瓨涓�甯�
-	GroupId      string               // 鑱斿姩瑙勫垯闇�瑕佽褰曚笅姝ゆ椂鐨勮鍒欑粍id
+	GroupId      string    // 鑱斿姩瑙勫垯闇�瑕佽褰曚笅姝ゆ椂鐨勮鍒欑粍id
 	RuleResults  []*RuleResult
 }
 type RuleResult struct {
@@ -45,7 +45,7 @@
 				for k, timeEle := range TimeEleList {
 					if timeEle.N > 0 {
 						timeEle.N = timeEle.N - 1
-						logger.Error("-------------------------------------鎵撳嵃瀹氭椂鍣ㄥ厓绱犲綋鍓嶅��-----------------------------------------锛�", timeEle.N)
+						logger.Error("-------------------------------------鎵撳嵃瀹氭椂鍣ㄨ鏁板厓绱犲綋鍓嶅��-----------------------------------------锛�", timeEle.N)
 					}
 					if timeEle.GroupId != "" && timeEle.N == 0 {
 						// 璇存槑鏄仈鍔ㄤ换鍔$殑鏃堕棿绐楀彛 鍒扮偣鍎夸簡璇ラ攢姣佷簡,鍐嶆潵浜嗗啀鍒涘缓
@@ -67,19 +67,18 @@
 	TimeTicker()
 }
 
-
 // 鍒ゆ柇鏄惁绗﹀悎瀹氭椂鍣ㄦ潯浠�
-func TimerAlarm(args *SdkDatas,groupId string,result bool) (string) {
-	var flagTime string  //
+func TimerAlarm(args *SdkDatas, groupId string, result bool) (string) {
+	var flagTime string //
 	// 鍒ゆ柇鏈夋棤姝よ鍒欑粍鐨勫畾鏃跺櫒
 	flag := false
-	for k,_ := range TimeEleList {
-		logger.Debug("-----------------鐪嬬湅杩欎釜key鍜実roupId",k,groupId)
+	for k, _ := range TimeEleList {
+		logger.Debug("-----------------鐪嬬湅杩欎釜key鍜実roupId", k, groupId)
 		if strings.Contains(k, groupId) {
 			flag = true
 		}
 	}
-	if flag {     // 鏈夊畾鏃跺櫒
+	if flag { // 鏈夊畾鏃跺櫒
 		if result { // 缁撴灉涓虹湡
 			for k, timeEle := range TimeEleList {
 				if strings.Contains(k, groupId) {
@@ -99,7 +98,7 @@
 						flagTime = "00"
 						// 鏈夊畾鏃跺櫒浣嗕笉涓�0鎶婂凡鎵撶殑鏍囩鍒犻櫎
 						args.RuleResult = nil
-						logger.Debug("------------------------缁撴灉涓虹湡浣嗚鏁板櫒涓嶅埌0锛屼笉鎶ヨ,姝ゆ椂鐨勮鏁板櫒鐨勫�间负锛�",timeEle.N)
+						logger.Debug("------------------------缁撴灉涓虹湡浣嗚鏁板櫒涓嶅埌0锛屼笉鎶ヨ,姝ゆ椂鐨勮鏁板櫒鐨勫�间负锛�", timeEle.N)
 					}
 				}
 			}
@@ -108,17 +107,17 @@
 				if strings.Contains(k, groupId) {
 					if timeEle.AlarmFlag {
 						if timeEle.BufferFlag == 0 {
-							logger.Debug("------------------------------鏉�姝诲畾鏃跺櫒锛屾姤璀︽甯х姸鎬佹敼鍙樼殑鏁版嵁锛屾鏃剁殑璁℃暟鍣ㄧ殑鍊间负",timeEle.N)
+							logger.Debug("------------------------------鏉�姝诲畾鏃跺櫒锛屾姤璀︽甯х姸鎬佹敼鍙樼殑鏁版嵁锛屾鏃剁殑璁℃暟鍣ㄧ殑鍊间负", timeEle.N)
 							flagTime = "12"
 							args.RuleResult["timeLabel"] = flagTime
-							delete(TimeEleList,k)
+							delete(TimeEleList, k)
 						} else {
 							if timeEle.BufferFlag > 0 {
 								timeEle.BufferFlag--
 							}
 						}
 					} else {
-						delete(TimeEleList,k)
+						delete(TimeEleList, k)
 					}
 				}
 			}
@@ -134,6 +133,7 @@
 	}
 	return flagTime
 }
+
 // 缁撴瀯浣撴牴鎹煇瀛楁鎺掑簭
 type SubList []*RuleResult
 

--
Gitblit v1.8.0