From 0e28dd6942c8a7207146f6a6b542bc45f75462b0 Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期一, 16 十二月 2019 13:35:26 +0800 Subject: [PATCH] --- --- algorithm/face/face.go | 35 ++++++++++++++++++----------------- 1 files changed, 18 insertions(+), 17 deletions(-) diff --git a/algorithm/face/face.go b/algorithm/face/face.go index d692b01..262358e 100644 --- a/algorithm/face/face.go +++ b/algorithm/face/face.go @@ -2,14 +2,14 @@ import ( "basic.com/pubsub/protomsg.git" - "basic.com/valib/logger.git" "github.com/knetic/govaluate" "ruleprocess/structure" + "basic.com/valib/logger.git" "strconv" ) // 浜鸿劯绠楁硶 -func Entrance(rule *protomsg.Rule, am *structure.AreaMap) structure.LittleRuleResult { - logger.Debug("---------璧颁簡浜鸿劯绠楁硶",rule.Id,rule.SdkArgAlias,rule.Operator,rule.SdkArgValue,am.AreaId) +func Entrance(rule *protomsg.Rule, am *structure.AreaMap,lable *structure.Others,args *structure.SdkDatas,message *protomsg.SdkMessage) structure.LittleRuleResult { + logger.Debug("---------璧颁簡浜鸿劯妫�娴嬬畻娉�",rule.Id,rule.SdkArgAlias,rule.Operator,rule.SdkArgValue,am.AreaId) return filterRule(rule,am) } @@ -29,7 +29,7 @@ // 鎶婃病鏈夌浉浼艰�呯殑浜鸿劯浠巉ilterData涓垹闄� for index := 0; index < len(am.FilterData); { // 灏嗚揪涓嶅埌闃堝�肩殑鐩镐技鑰呬粠鐩镐技鑰呮暟缁勪腑鍒犻櫎 - logger.Info("鐪嬬湅鐩镐技鑰呬汉鏁帮細",len(am.FilterData[index].Liker)) + //logger.Info("鐪嬬湅鐩镐技鑰呬汉鏁帮細",len(am.FilterData[index].Liker)) if len(am.FilterData[index].Liker) == 0 { // Go 璇█涓垏鐗囧垹闄ゅ厓绱犵殑鏈川鏄細浠ヨ鍒犻櫎鍏冪礌涓哄垎鐣岀偣锛屽皢鍓嶅悗涓や釜閮ㄥ垎鐨勫唴瀛橀噸鏂拌繛鎺ヨ捣鏉ャ�備笉鐢ㄦ��鐤戯紝鏁扮粍鍒犻櫎鍏冪礌灏辫繖涔堝潙鐖� am.FilterData = append(am.FilterData[:index], am.FilterData[index+1:]...) @@ -40,7 +40,7 @@ if len(am.FilterData) > 0 { flag = "true" } - logger.Info("---------浜鸿劯姣斿绗﹀悎鏉′欢鐨勬暟閲忎负锛�",len(am.FilterData)) + //logger.Info("---------浜鸿劯姣斿绗﹀悎鏉′欢鐨勬暟閲忎负锛�",len(am.FilterData)) return structure.LittleRuleResult{am.SdkName, rule.RuleWithPre + "" + flag, rule.Sort} } } @@ -49,7 +49,7 @@ if rule.Operator == "==" || rule.Operator == ">=" || rule.Operator == "<=" || rule.Operator == "<" || rule.Operator == ">" || rule.Operator == "!=" { // 濡傛灉鏄笉瑙勭煩鐨勮繛鎺ョ缁熺粺杩斿洖false 瑙勫垯涔熷彧鑳藉垽鏂汉鑴哥殑鐩镐技搴︼紝鎵�浠ヤ笉瀛樺湪鍒殑杩炴帴绗� if rule.SdkArgAlias == "score" || rule.SdkArgAlias == "proportion" || rule.SdkArgAlias == "size" { // 鍒ゆ柇鐨勬槸鐩镐技鍊硷紝鍗犳瘮锛屽昂瀵哥瓑杩囨护鏉′欢锛屽鏋滃啀鏈夛紝杩樺彲浠ュ啀鍔� - logger.Info("-----------------------杩囪鍒欎箣鍓嶅尯鍩熷唴鐨勪汉鑴告暟閲忎负锛�",am.TargetNum) + //logger.Info("-----------------------杩囪鍒欎箣鍓嶅尯鍩熷唴鐨勪汉鑴告暟閲忎负锛�",am.TargetNum) var args []*structure.Arg if rule.RuleWithPre == "&&" { args = am.FilterData @@ -64,15 +64,16 @@ //logger.Info("-----------------------浜鸿劯杩囨护鐨刟rgs閲岀殑鏁伴噺锛�", len(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) // 寰楀埌鏁板鍏紡鐨勭粨鏋� @@ -81,7 +82,6 @@ } } am.TargetNum = len(am.FilterData) // 鎶婄鍚堟潯浠剁殑鐩爣鏁伴噺鏇存柊鍒皌argetNum瀛楁 - logger.Info("杩囧畬鏉′欢鍚庣殑鐩爣鏁伴噺涓猴細",am.TargetNum) if am.TargetNum > 0 { logger.Info("锛侊紒锛侊紒锛侊紒锛侊紒锛佷汉鑴告娴嬫垚鍔�") return structure.LittleRuleResult{am.SdkName, rule.RuleWithPre + "" + "true", rule.Sort} @@ -100,4 +100,5 @@ } } return structure.LittleRuleResult{} -} \ No newline at end of file +} + -- Gitblit v1.8.0