From b164fd5ea9ae7d94c542a953795b2fdd54c6ba47 Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期四, 18 七月 2019 17:01:13 +0800
Subject: [PATCH] ---

---
 ruleserver/timeTicker.go |   68 ++++++++++++++++++++++++++++++++++
 1 files changed, 68 insertions(+), 0 deletions(-)

diff --git a/ruleserver/timeTicker.go b/ruleserver/timeTicker.go
index 6b95c31..0809fb4 100644
--- a/ruleserver/timeTicker.go
+++ b/ruleserver/timeTicker.go
@@ -3,6 +3,7 @@
 import (
 	"fmt"
 	"ruleprocess/logger"
+	"strings"
 	"time"
 )
 
@@ -66,6 +67,73 @@
 	TimeTicker()
 }
 
+
+// 鍒ゆ柇鏄惁绗﹀悎瀹氭椂鍣ㄦ潯浠�
+func TimerAlarm(args *SdkDatas,groupId string,result bool) (string) {
+	var flagTime string  //
+	// 鍒ゆ柇鏈夋棤姝よ鍒欑粍鐨勫畾鏃跺櫒
+	flag := false
+	for k,_ := range TimeEleList {
+		logger.Debug("-----------------鐪嬬湅杩欎釜key鍜実roupId",k,groupId)
+		if strings.Contains(k, groupId) {
+			flag = true
+		}
+	}
+	if flag {     // 鏈夊畾鏃跺櫒
+		if result { // 缁撴灉涓虹湡
+			for k, timeEle := range TimeEleList {
+				if strings.Contains(k, groupId) {
+					if timeEle.N == 0 && timeEle.AlarmFlag {
+						logger.Debug("-------------------------绗﹀悎鎸佺画鏃堕棿瑙勫垯浣嗗苟涓嶆槸棣栨锛屼笉鎶ヨ")
+						flagTime = "11"
+						args.RuleResult["timeLabel"] = flagTime
+					}
+					if timeEle.N == 0 && !timeEle.AlarmFlag { // 杩欑粍瑙勫垯鐨勫畾鏃跺櫒瑕佸叏閮ㄧ瓑浜�0   鏆備笖璁や负涓�缁勮鍒欏彧鏈変竴涓畾鏃跺櫒
+						logger.Debug("鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺��-------------棣栨绗﹀悎鎸佺画鏃堕棿瑙勫垯骞舵姤璀�")
+						flagTime = "10"
+						timeEle.AlarmFlag = true
+						args.RuleResult["cacheData"] = timeEle.CacheSdkData
+						args.RuleResult["timeLabel"] = flagTime
+					}
+					if timeEle.N != 0 {
+						flagTime = "00"
+						// 鏈夊畾鏃跺櫒浣嗕笉涓�0鎶婂凡鎵撶殑鏍囩鍒犻櫎
+						args.RuleResult = nil
+						logger.Debug("------------------------缁撴灉涓虹湡浣嗚鏁板櫒涓嶅埌0锛屼笉鎶ヨ,姝ゆ椂鐨勮鏁板櫒鐨勫�间负锛�",timeEle.N)
+					}
+				}
+			}
+		} else { // 缁撴灉涓哄亣
+			for k, timeEle := range TimeEleList {
+				if strings.Contains(k, groupId) {
+					if timeEle.AlarmFlag {
+						if timeEle.BufferFlag == 0 {
+							logger.Debug("------------------------------鏉�姝诲畾鏃跺櫒锛屾姤璀︽甯х姸鎬佹敼鍙樼殑鏁版嵁锛屾鏃剁殑璁℃暟鍣ㄧ殑鍊间负",timeEle.N)
+							flagTime = "12"
+							args.RuleResult["timeLabel"] = flagTime
+							delete(TimeEleList,k)
+						} else {
+							if timeEle.BufferFlag > 0 {
+								timeEle.BufferFlag--
+							}
+						}
+					} else {
+						delete(TimeEleList,k)
+					}
+				}
+			}
+
+		}
+	} else { // 鏃犲畾鏃跺櫒
+		if result {
+			flagTime = "01"
+			args.RuleResult["timeLabel"] = flagTime
+		} else {
+			flagTime = "00"
+		}
+	}
+	return flagTime
+}
 // 缁撴瀯浣撴牴鎹煇瀛楁鎺掑簭
 type SubList []*RuleResult
 

--
Gitblit v1.8.0