From 32abe72b2cba9b8a7f1e407ac25d181118157f8a Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期六, 16 十一月 2019 10:14:40 +0800 Subject: [PATCH] 把非首次报警的也带上缓存 --- algorithm/static/static.go | 33 ++++++++++++++++++++------------- 1 files changed, 20 insertions(+), 13 deletions(-) diff --git a/algorithm/static/static.go b/algorithm/static/static.go index cd205fb..4a0c4b4 100644 --- a/algorithm/static/static.go +++ b/algorithm/static/static.go @@ -112,14 +112,22 @@ initN = init } } - if (structure.StaticMap[am.AreaId] == nil || len(structure.StaticMap[am.AreaId].Targets) == 0) && len(am.FilterData) > 0 { // 鍗崇涓�甯ф暟鎹�(涔熶笉涓�瀹�)锛岃繕娌℃湁缂撳瓨 + if len(am.FilterData) < 0 { + logger.Info("鏈抚鍖哄煙鍐呮棤鏁版嵁锛岃繑鍥�") + // 娓呯┖缂撳瓨鐨勭洰鏍� + + return structure.LittleRuleResult{am.SdkName, rule.RuleWithPre + "" + "false", rule.Sort} + } + m := make(map[string]interface{}) + m["target"] = []structure.Result{} + m["target"] = append(m["target"].([]structure.Result), structure.Result{args.TaskId, "", "", true, 0, "", am.FilterData, am.AreaJson, false,*lable}) + + if structure.StaticMap[am.AreaId] == nil || len(structure.StaticMap[am.AreaId].Targets) == 0 { logger.Info("涔嬪墠鏃犵紦瀛樺苟涓旀娆″尯鍩熷唴鏈変汉") - m := make(map[string]interface{}) - m["target"] = []structure.Result{} - m["target"] = append(m["target"].([]structure.Result), structure.Result{args.TaskId, "", "", true, 0, "", am.FilterData, am.AreaJson, false,*lable}) + objs := []*structure.Obj{} for _, tar := range am.FilterData { - obj := &structure.Obj{Id: tar.Id, Location: tar.Location, N: initN,InitN:initN,CacheSdkData:structure.ResultMsg{message, m}} + obj := &structure.Obj{Id: tar.Id, Location: tar.Location, N: initN, InitN:initN, AlarmFlag: false, BufferFlag: 10, CacheSdkData:structure.ResultMsg{message, m}} objs = append(objs, obj) } structure.StaticMap[am.AreaId] = &structure.CameraArea{objs} @@ -129,10 +137,10 @@ flag := "false" // 浠ヤ箣鍓嶉潤姝㈢殑瀵硅薄涓轰富鍒ゆ柇鏄惁闈欐 tars := []*structure.Arg{} - logger.Info("鐪嬩竴涓嬮潤姝㈠尯鍩熷唴鐨勭洰鏍囷細",am.AreaId) - for _, tar := range structure.StaticMap[am.AreaId].Targets { - logger.Info("鍏蜂綋鐩爣锛�",tar.Location) - } + //logger.Info("鐪嬩竴涓嬮潤姝㈠尯鍩熷唴鐨勭洰鏍囷細",am.AreaId) + //for _, tar := range structure.StaticMap[am.AreaId].Targets { + // logger.Info("鍏蜂綋鐩爣锛�",tar.Location) + //} for _, tar := range structure.StaticMap[am.AreaId].Targets { singleResult,arg := SingleStatic(tar,am,lable,90) if singleResult { @@ -145,7 +153,6 @@ // 鎶婃弧瓒虫潯浠剁殑鐩爣鏀捐繘areaMap涓� am.AlarmObj = tars // 鏇存柊鏁版嵁,鎶婃柊鏉ョ殑鏁版嵁鍐欏叆缂撳瓨 - objs := []*structure.Obj{} for _, tar := range am.FilterData { flag1 := false for _, OBJ := range structure.StaticMap[am.AreaId].Targets { @@ -154,11 +161,10 @@ } } if !flag1 { // 闆嗗悎涓病鏈夌殑鎵嶆彃鍏� - obj := &structure.Obj{Id: tar.Id, Location: tar.Location, N: initN,InitN:initN,AlarmFlag: false, BufferFlag: 10, CacheSdkData: structure.ResultMsg{message, nil}} - objs = append(objs, obj) + obj := &structure.Obj{Id: tar.Id, Location: tar.Location, N: initN, InitN:initN,AlarmFlag: false, BufferFlag: 10, CacheSdkData: structure.ResultMsg{message, m}} + structure.StaticMap[am.AreaId].Targets = append(structure.StaticMap[am.AreaId].Targets, obj) } } - structure.StaticMap[am.AreaId] = &structure.CameraArea{objs} return structure.LittleRuleResult{am.SdkName, rule.RuleWithPre + "" + flag, rule.Sort} } } @@ -217,6 +223,7 @@ if tar.N == 0 && tar.AlarmFlag { logger.Debug("-------------------------绗﹀悎鎸佺画鏃堕棿瑙勫垯浣嗗苟涓嶆槸棣栨锛屼笉鎶ヨ") flagTime = "11" + o.CacheData = tar.CacheSdkData } if tar.N == 0 && !tar.AlarmFlag { // 杩欑粍瑙勫垯鐨勫畾鏃跺櫒瑕佸叏閮ㄧ瓑浜�0 鏆備笖璁や负涓�缁勮鍒欏彧鏈変竴涓畾鏃跺櫒 logger.Debug("鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺��-------------棣栨绗﹀悎鎸佺画鏃堕棿瑙勫垯骞舵姤璀�") -- Gitblit v1.8.0