From ed50fd820fa8299f328e85400a08db997e86b349 Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期五, 09 八月 2019 18:04:54 +0800
Subject: [PATCH] 加个取联动数据的判断以防偶尔的nil导致宕机
---
ruleserver/ruleToformula.go | 28 +++++++++++++++-------------
1 files changed, 15 insertions(+), 13 deletions(-)
diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index 84569b7..7043d36 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -491,20 +491,22 @@
result, _ := expression.Evaluate(nil) // 寰楀埌鏁板鍏紡鐨勭粨鏋�
if result.(bool) {
logger.Info("___________________________________________________________________鑱斿姩浠诲姟鎶ヨ")
- // 鎶婃暟缁勯噷缂撳瓨鐨勬暟鎹彇鍑烘潵涓�璧锋姤璀�
- label.LinkCache = []ResultMsg{}
- for _, ruleRes := range TimeEleList[groupRule.GroupId].RuleResults {
- label.LinkCache = append(label.LinkCache, ruleRes.CacheData)
- }
- logger.Debug("鑱斿姩浠诲姟缂撳瓨浜嗗嚑涓暟鎹�", len(label.LinkCache))
- for i := 0; i < len(args.RuleResult["yolo"].([]Result)); i++ {
- if args.RuleResult["yolo"].([]Result)[i].RuleGroupId == groupRule.GroupId { // 鎶婅仈鍔ㄦ暟鎹拷鍔犱笂
- args.RuleResult["yolo"].([]Result)[i].Others.LinkCache = label.LinkCache
+ if TimeEleList[groupRule.GroupId] != nil { // 鏋佸伓灏旀湁鎯呭喌浼氱瓑浜巒il锛屼笉鐭ラ亾涓哄暐锛屽仛涓垽鏂互闃插畷鏈�
+ // 鎶婃暟缁勯噷缂撳瓨鐨勬暟鎹彇鍑烘潵涓�璧锋姤璀�
+ label.LinkCache = []ResultMsg{}
+ for _, ruleRes := range TimeEleList[groupRule.GroupId].RuleResults {
+ label.LinkCache = append(label.LinkCache, ruleRes.CacheData)
}
- }
- for i := 0; i < len(args.RuleResult["face"].([]FaceResult)); i++ {
- if args.RuleResult["face"].([]FaceResult)[i].RuleGroupId == groupRule.GroupId { // 鎶婅仈鍔ㄦ暟鎹拷鍔犱笂
- args.RuleResult["face"].([]FaceResult)[i].Others.LinkCache = label.LinkCache
+ logger.Debug("鑱斿姩浠诲姟缂撳瓨浜嗗嚑涓暟鎹�", len(label.LinkCache))
+ for i := 0; i < len(args.RuleResult["yolo"].([]Result)); i++ {
+ if args.RuleResult["yolo"].([]Result)[i].RuleGroupId == groupRule.GroupId { // 鎶婅仈鍔ㄦ暟鎹拷鍔犱笂
+ args.RuleResult["yolo"].([]Result)[i].Others.LinkCache = label.LinkCache
+ }
+ }
+ for i := 0; i < len(args.RuleResult["face"].([]FaceResult)); i++ {
+ if args.RuleResult["face"].([]FaceResult)[i].RuleGroupId == groupRule.GroupId { // 鎶婅仈鍔ㄦ暟鎹拷鍔犱笂
+ args.RuleResult["face"].([]FaceResult)[i].Others.LinkCache = label.LinkCache
+ }
}
}
}
--
Gitblit v1.8.0