From 351d03c5ea2ade96c2a796bb6fa3382699c422ee Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期六, 30 十一月 2019 13:49:02 +0800 Subject: [PATCH] --- --- algorithm/intrusion/intrusion.go | 23 ++++++++++++----------- 1 files changed, 12 insertions(+), 11 deletions(-) diff --git a/algorithm/intrusion/intrusion.go b/algorithm/intrusion/intrusion.go index 714e899..1ac2143 100644 --- a/algorithm/intrusion/intrusion.go +++ b/algorithm/intrusion/intrusion.go @@ -2,14 +2,14 @@ import ( "basic.com/pubsub/protomsg.git" - "basic.com/valib/logger.git" + logger "github.com/alecthomas/log4go" "github.com/knetic/govaluate" "ruleprocess/structure" "strconv" ) //鍏ヤ镜绠楁硶 -func Entrance(rule *protomsg.Rule, am *structure.AreaMap) structure.LittleRuleResult { +func Entrance(rule *protomsg.Rule, am *structure.AreaMap,lable *structure.Others,args *structure.SdkDatas,message *protomsg.SdkMessage) structure.LittleRuleResult { if rule.PolygonId == am.AreaId { // 棣栧厛杩欐潯瑙勫垯寰楁槸杩欎釜绠楁硶鐨勮鍒欙紝鍏舵瑙勫垯鎵�瀵瑰簲鐨勫尯鍩焛d瑕佽窡鍖哄煙鏁版嵁鐨刬d瀵圭殑涓� return filterRule(rule, am) } else { @@ -33,15 +33,16 @@ //logger.Debug("鐪嬬湅args锛氾細锛氾細锛�", args) for _, arg := range args { var formula string - if rule.SdkArgAlias == "score" { - formula = strconv.FormatFloat(arg.Score, 'f', -1, 64) + " " + rule.Operator + " " + rule.SdkArgValue // 寰楀埌瀛楃涓插叕寮� - logger.Info("褰撳墠鐩镐技搴﹀皬鍏紡锛�", formula) - } else if rule.SdkArgAlias == "proportion" { - formula = strconv.FormatFloat(arg.Proportion, 'f', -1, 64) + " " + rule.Operator + " " + rule.SdkArgValue // 寰楀埌瀛楃涓插叕寮� - logger.Info("褰撳墠鍗犳瘮灏忓叕寮忥細", formula) - } else { - formula = strconv.FormatFloat(arg.Size, 'f', -1, 64) + " " + rule.Operator + " " + rule.SdkArgValue // 寰楀埌瀛楃涓插叕寮� - logger.Info("褰撳墠灏哄灏忓叕寮忥細", formula) + switch rule.SdkArgAlias { + case "score": + formula = strconv.FormatFloat(arg.Score, 'f', -1, 64) + " " + rule.Operator + " " + rule.SdkArgValue + logger.Info("鐩镐技搴﹀皬鍏紡锛�", formula) + case "proportion": + formula = strconv.FormatFloat(arg.Proportion, 'f', -1, 64) + " " + rule.Operator + " " + rule.SdkArgValue + logger.Info("鍗犳瘮鍏紡锛�", formula) + case "size": + formula = strconv.FormatFloat(arg.Size, 'f', -1, 64) + " " + rule.Operator + " " + rule.SdkArgValue + logger.Info("灏哄灏忓叕寮忥細", formula) } expression, _ := govaluate.NewEvaluableExpression(formula) // 寰楀埌鏁板鍏紡 result, _ := expression.Evaluate(nil) // 寰楀埌鏁板鍏紡鐨勭粨鏋� -- Gitblit v1.8.0