From eb4dcf58beb8d42580f1e371591dcddb3e433da9 Mon Sep 17 00:00:00 2001 From: panlei <2799247126@qq.com> Date: 星期二, 09 七月 2019 13:51:28 +0800 Subject: [PATCH] --- --- ruleserver/ruleToformula.go | 117 +++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 83 insertions(+), 34 deletions(-) diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go index 805b37f..32adbb3 100644 --- a/ruleserver/ruleToformula.go +++ b/ruleserver/ruleToformula.go @@ -10,10 +10,13 @@ "strings" "time" + bigCache "basic.com/pubsub/cache.git" "basic.com/pubsub/protomsg.git" "github.com/knetic/govaluate" ) - +func init () { + bigCache.Init() +} // 浠诲姟 type Task struct { camID string //鎽勫儚鏈篒D @@ -63,6 +66,7 @@ IsYolo bool // 鏄惁鏄痽olo鏁版嵁 Location Rect // 璁颁笅姣忎釜鐩爣鐨勪綅缃弬鏁帮紝鏈�鍚庣粰缁撴灉瑁呴厤浜鸿劯鏁版嵁鐨勬椂鍊欑敤鐨勫埌 SdkName string + Feature []byte ThftRes protomsg.ThftResult Liker []*protomsg.Baseinfo } @@ -98,7 +102,7 @@ IsYolo bool // 鏄惁鏄痽olo鏁版嵁 SdkName string ThftRes protomsg.ThftResult - Liker []*protomsg.Baseinfo // 濡傛灉鏄汉鑴哥殑璇濆挨鍏舵槸姣斿锛屽簲瀛樹笅浠栬窡搴曞簱鐨勪汉鍛樼殑鐩镐技鎯呭喌 yolo鐨勮瘽缁檔il灏辫 + Feature []byte } // 姣忎釜绠楁硶瀵逛簬褰撳墠甯х敾闈㈣嚜宸辨彁鍙栫殑鏁版嵁 @@ -162,7 +166,7 @@ func GetPolygons(cameraId string) []protomsg.CameraPolygon { //var api dbapi.CameraApi //data := api.FindAllPolygons() - ////fmt.Println("鏌ュ埌鐨勬墍鏈夊尯鍩燂細", data) + ////logger.Info("鏌ュ埌鐨勬墍鏈夊尯鍩燂細", data) //// 鏍规嵁id浠巑ap涓嬁鍒板尯鍩� var cameraPolygons []protomsg.CameraPolygon //for _, item := range data { @@ -181,6 +185,7 @@ // 鎶妔dk浠庢暟鎹抚涓婃彁鍙栫殑鎸夌収鍖哄煙鍒嗙被褰掔疆 func SdkDataFormat(cameraId string, arg *SdkData, cameraPolygons []protomsg.CameraPolygon) { + logger.Info("--------鐪嬬湅瑙f瀽鍑烘潵鐨勬暟鎹�---",*arg) for _, polygon := range cameraPolygons { //logger.Println("++++++鍦ㄨ繖鍎跨湅涓�涓嬪尯鍩熷晩:", polygon.Polygon) areaMap := AreaMap{cameraId: cameraId, areaId: polygon.Id, areaJson: polygon.Polygon, triggerLine: polygon.TriggerLine, directionLine: polygon.DirectionLine} @@ -228,13 +233,56 @@ } } } +func Compare(args *SdkDatas, groupRule *protomsg.GroupRule) { + compareFlag := false + // 鐪嬬湅鏄惁鏈夊彧閰嶄汉鑴告瘮瀵圭畻娉曚絾娌℃湁閰嶅姣斿簱鐨勮鍒欙紝濡傛灉鏈夛紝鍒欐瘮瀵瑰璞′负鍏ㄩ儴搴曞簱 + for j := 0; j < len(groupRule.Rules); j++ { + if groupRule.Rules[j].SdkId == "812b674b-2375-4589-919a-5c1c3278a972" { + if groupRule.Rules[j].SdkArgAlias == "compareBase" { + compareFlag = true + } + } + } + if compareFlag { + logger.Info("閰嶇疆浜嗗姣斿簳搴撳弬鏁�") + } else { + logger.Info("娌℃湁閰嶇疆瀵规瘮搴曞簱鍙傛暟") + } + for j := 0; j < len(groupRule.Rules); j++ { + // 鍙湁鏄汉鑴稿姣斿苟涓旈厤缃殑鍙傛暟鏄姣斿簳搴撴墠璧帮紙鑻ラ厤鐨勫姣旈槇鍊煎垯涓嶈蛋锛� + if groupRule.Rules[j].SdkId == "812b674b-2375-4589-919a-5c1c3278a972" && groupRule.Rules[j].SdkArgAlias == "compareBase" { + for _, sdkData := range args.Sdkdata { + if sdkData.SdkId == "812b674b-2375-4589-919a-5c1c3278a97e" { // 鎼滅储鍒颁汉鑴告娴嬬殑sdkdata 鐜板湪鍏充簬浜鸿劯鐨勫彧鏈変粬涓�涓猻dk锛屽叏鎵句粬 + for _, areaMap := range sdkData.AreaMapList { + // 鎷垮尯鍩熶腑姣忎釜浜鸿劯鐗瑰緛鍊煎幓瀵规瘮锛屽~鍏呭叾liker + if groupRule.Rules[j].PolygonId == areaMap.areaId { + for _, arg := range areaMap.args { + bytes := bigCache.Getdbpersonmsg("", arg.Feature, true) + var m map[string]float32 + json.Unmarshal(bytes, &m) + for key, val := range m { + fmt.Println(key) + baseinfo := protomsg.Baseinfo{} + baseinfo.CompareScore = val + arg.Liker = append(arg.Liker, &baseinfo) + } + logger.Info("-------------------鎴愬姛缁檒iker璧嬪�硷細", arg.Liker) + } + } + } + } + } + } + } +} func RunRule(args *SdkDatas, groupRule *protomsg.GroupRule, taskId string) bool { defer func() { if err := recover(); err != nil { - fmt.Println("姣斿瑙勫垯鏈夎", err.(string)) + logger.Error("姣斿瑙勫垯鏈夎", err.(string)) } }() - logger.Info("+++++++++++瑙勫垯寮�濮嬭繍琛�+++++++++++++++++褰撳墠瑙勫垯--锛�", (*groupRule).GroupText) + logger.Info("+++++++++++瑙勫垯寮�濮嬭繍琛�+++++++++++++++++褰撳墠瑙勫垯--锛�", *groupRule) + Compare(args, groupRule) resultSplice := []*LittleRuleResult{} // 鍏堣繃瀹屾潯浠惰鍒� for j := 0; j < len(groupRule.Rules); j++ { @@ -291,12 +339,12 @@ if strings.HasPrefix(completeFormula, "&&") || strings.HasPrefix(completeFormula, "||") || strings.HasPrefix(completeFormula, ">=") || strings.HasPrefix(completeFormula, "<=") || strings.HasPrefix(completeFormula, "==") || strings.HasPrefix(completeFormula, "!=") || strings.HasPrefix(completeFormula, ">") || strings.HasPrefix(completeFormula, "<") { // 浠ヨ繖浜涘紑澶寸殑鍩烘湰鏄仈鍔ㄤ换鍔� if strings.HasPrefix(completeFormula, "&&") || strings.HasPrefix(completeFormula, "||") || strings.HasPrefix(completeFormula, ">=") || strings.HasPrefix(completeFormula, "<=") || strings.HasPrefix(completeFormula, "==") || strings.HasPrefix(completeFormula, "!=") { - completeFormula = completeFormula[2 :] + completeFormula = completeFormula[2:] } if strings.HasPrefix(completeFormula, ">") || strings.HasPrefix(completeFormula, "<") { - completeFormula = completeFormula[1 :] + completeFormula = completeFormula[1:] } - logger.Info("-------------------鐪嬬湅鎷旀瘺鍚庣殑琛ㄨ揪寮忥細",completeFormula) + logger.Info("-------------------鐪嬬湅鎷旀瘺鍚庣殑琛ㄨ揪寮忥細", completeFormula) expression, _ := govaluate.NewEvaluableExpression(completeFormula) result, _ := expression.Evaluate(nil) // 寰楀埌鏁板鍏紡鐨勭粨鏋� return result.(bool) @@ -316,7 +364,7 @@ timeEle.N = timeEle.InitN // 閲嶇疆瀹氭椂鍣� } } - logger.Info("--------------------璧拌繖閲屼簡鍚�---------------") + logger.Info("-------------------閲嶇疆瀹氭椂鍣ㄥ苟杩斿洖false---------------") return false } else { // 鏈�鍚庢垚鍔熸姤璀︽墠鎶婄鍚堟潯浠剁殑浜鸿劯鏁版嵁濉炶繘缁撴灉鏍囩閲� @@ -331,7 +379,7 @@ // 閰嶄簡浜鸿劯鐨勭畻娉曟墠鎶婁汉鑴哥殑鏁版嵁鐢╁嚭鏉ユ墦鏍囩 flag11 := false for j := 0; j < len(groupRule.Rules); j++ { - if groupRule.Rules[j].SdkId == "812b674b-2375-4589-919a-5c1c3278a97e" || groupRule.Rules[j].SdkId == "812b674b-2375-4589-919a-5c1c3278a971" { + if groupRule.Rules[j].SdkId == "812b674b-2375-4589-919a-5c1c3278a97e" || groupRule.Rules[j].SdkId == "812b674b-2375-4589-919a-5c1c3278a972" { flag11 = true } } @@ -349,7 +397,7 @@ } } if flag { - fmt.Println("___________________________________________________________________________缁堜簬璧板畬涓囬噷闀垮緛") + logger.Warn("___________________________________________________________________________缁堜簬璧板畬涓囬噷闀垮緛") // 濡傛灉鎴愬姛浜嗘垜搴旇鎵惧埌瑙勫垯涓秹鍙婂埌鐨剆dk锛岃褰曚笅浠栦滑鐨剆dkname sdkName := "" for j := 0; j < len(groupRule.Rules); j++ { @@ -379,7 +427,7 @@ //if flag11 { // args.RuleResult["face"] = faces //} - args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkName, groupRule.GroupId, groupRule.AlarmLevel, groupRule.GroupText,locations}) + args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkName, groupRule.GroupId, groupRule.AlarmLevel, groupRule.GroupText, locations}) logger.Info("-------------------yolo缁撴灉鏍囩", args.RuleResult["yolo"].([]Result)) } if args.RuleResult["face"] != nil { @@ -397,7 +445,7 @@ func putFaceToResult(rule *protomsg.Rule, am *AreaMap) []Arg { faces := []Arg{} - if rule.SdkId == am.sdkId && rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a97e" || rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a971" { + if rule.SdkId == am.sdkId && rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a97e" || rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a972" { if len(am.filterData) > 0 { for _, data := range am.filterData { faces = append(faces, data) @@ -410,7 +458,7 @@ func putYolosToResult(rule *protomsg.Rule, am *AreaMap) []Rect { locations := []Rect{} - if rule.SdkId == am.sdkId && rule.SdkId != "812b674b-2375-4589-919a-5c1c3278a97e" && rule.SdkId != "812b674b-2375-4589-919a-5c1c3278a971" { + if rule.SdkId == am.sdkId && rule.SdkId != "812b674b-2375-4589-919a-5c1c3278a97e" && rule.SdkId != "812b674b-2375-4589-919a-5c1c3278a972" { if len(am.filterData) > 0 { for _, data := range am.filterData { locations = append(locations, data.Location) @@ -439,11 +487,11 @@ // } for _, obj := range arg.Photo { - logger.Info("------------------鐪嬬湅sdkData:", arg.SdkName, "鐨凱hoto鏁版嵁----------------", obj, "----椤轰究鐪嬬湅鍗犳瘮-----锛�", PgsInterPercent(areaPoints, obj.Rects, widthScale, heigthScale)) + //logger.Info("------------------鐪嬬湅sdkData:", arg.SdkName, "鐨凱hoto鏁版嵁----------------", obj, "----椤轰究鐪嬬湅鍗犳瘮-----锛�", PgsInterPercent(areaPoints, obj.Rects, widthScale, heigthScale)) if threshold <= obj.Score && size <= float64(obj.Rects.Width*obj.Rects.Height) && intersectionper <= PgsInterPercent(areaPoints, obj.Rects, widthScale, heigthScale) { // 杩欐瑕佸榻愯〃杈惧紡閲屾墍闇�瑕佺殑鎵�鏈夊弬鏁� a.targetNum++ - arg1 := Arg{obj.Score, PgsInterPercent(areaPoints, obj.Rects, widthScale, heigthScale), float64(obj.Rects.Width * obj.Rects.Height), obj.IsYolo, obj.Rects, obj.SdkName, obj.ThftRes, obj.Liker} + arg1 := Arg{obj.Score, PgsInterPercent(areaPoints, obj.Rects, widthScale, heigthScale), float64(obj.Rects.Width * obj.Rects.Height), obj.IsYolo, obj.Rects, obj.SdkName, obj.Feature, obj.ThftRes, []*protomsg.Baseinfo{}} //logger.Println("鏀捐繘鍘荤殑arg锛�-------", arg1) a.args = append(a.args, arg1) a.filterData = append(a.filterData, arg1) @@ -468,7 +516,7 @@ } else { err := json.Unmarshal([]byte(areaPoints), &pts) if err != nil { - fmt.Println("json.Unmarshal閿欒", err) + logger.Error("json.Unmarshal閿欒", err) panic("搴忓垪鍖栧潗鏍囧紓甯革紝绋嬪簭閫�鍑�") } } @@ -481,7 +529,7 @@ // 绗竴姝ユ煡鍑鸿窡杩欎釜鎽勫儚鏈虹浉鍏崇殑group_id(澶ц鍒�) //var api dbapi.CameraTaskArgsApi // - ////fmt.Println("鎵�鏈夎鍒�:", all) + ////logger.Info("鎵�鏈夎鍒�:", all) //var taskArgs []*protomsg.TaskGroupArgs //for _, camArg := range all { // if camArg.CameraId == cameraId { @@ -508,7 +556,7 @@ timeEle := TimeElement{N: 3, InitN: 3, GroupId: groupRule.GroupId} // 鎵旇繘鍘讳竴涓畾鏃跺櫒鍏冪礌 //TimeEleList = make(map[string]timeElement) TimeEleList[groupRule.GroupId] = &timeEle // 瀹氭椂鍣ㄥ厓绱犱互瑙勫垯缁刬d涓洪敭 - fmt.Println("---------------------------------------------鑱斿姩浠诲姟鍒涘缓浜嗚鏁板櫒骞朵笖璁℃暟鍣ㄩ泦鍚堜负锛�", TimeEleList) + logger.Info("---------------------------------------------鑱斿姩浠诲姟鍒涘缓浜嗚鏁板櫒骞朵笖璁℃暟鍣ㄩ泦鍚堜负锛�", TimeEleList) // 寰楀嚭杩欑粍瀹屾暣瑙勫垯閲屾秹鍙婂埌鍑犱釜鎽勫儚鏈猴紝鍐冲畾鐫�鏁扮粍閲屾湁鍑犱釜缁撴瀯浣�,鍘婚噸娣诲姞鏂瑰紡 for j := 0; j < len(groupRule.Rules); j++ { var flag1 bool = true @@ -525,7 +573,7 @@ // 寰�鏁扮粍閲岃祴鍊� isOk := RunRule(args, groupRule, taskId) if isOk { - fmt.Println("杩欏抚鍥惧儚鍦ㄤ换鍔′笅鐨勪竴鏁存潯瑙勫垯涓嬶紙鑱斿姩浠诲姟涓嬪氨鏄窡鏈憚鍍忔満鍍忕浉鍏崇殑灏忚鍒欙級鐨勫垽鏂粨鏋滀负true") + logger.Info("杩欏抚鍥惧儚鍦ㄤ换鍔′笅鐨勪竴鏁存潯瑙勫垯涓嬶紙鑱斿姩浠诲姟涓嬪氨鏄窡鏈憚鍍忔満鍍忕浉鍏崇殑灏忚鍒欙級鐨勫垽鏂粨鏋滀负true") // 鏍规嵁cameraId鍘绘洿鏂版垨鑰呮彃鍏ョ粨鏋�,鐒跺悗鍒ゆ柇鏄惁鏁扮粍鏄惁鍙互寰楀嚭鎶ヨ鐨勭粨璁� // 寰�鑱斿姩浠诲姟鐨勭粨鏋滄暟缁勯噷鏀惧�兼垨鏇存柊 for _, va := range timeEle.RuleResults { @@ -565,7 +613,7 @@ } } if sdkName != "" { - args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkName, groupRule.GroupId, groupRule.AlarmLevel, groupRule.GroupText,[]Rect{}}) + args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkName, groupRule.GroupId, groupRule.AlarmLevel, groupRule.GroupText, []Rect{}}) logger.Info("-------------------yolo缁撴灉鏍囩", args.RuleResult["yolo"].([]Result)) } if args.RuleResult["face"] != nil { @@ -575,10 +623,10 @@ } } } else { - fmt.Println("鏁扮粍涓嶅渾婊′笉鎵撴爣绛�") + logger.Warn("鏁扮粍涓嶅渾婊′笉鎵撴爣绛�") } } else { // 娌℃湁鎶ヨ锛� - fmt.Println("杩欏抚鍥惧儚鍦ㄤ换鍔′笅鐨勪竴鏁存潯瑙勫垯涓嬶紙鑱斿姩浠诲姟涓嬪氨鏄窡鏈憚鍍忔満鍍忕浉鍏崇殑灏忚鍒欙級鐨勫垽鏂粨鏋滀负false") + logger.Info("杩欏抚鍥惧儚鍦ㄤ换鍔′笅鐨勪竴鏁存潯瑙勫垯涓嬶紙鑱斿姩浠诲姟涓嬪氨鏄窡鏈憚鍍忔満鍍忕浉鍏崇殑灏忚鍒欙級鐨勫垽鏂粨鏋滀负false") // 鎵�浠ヤ篃瑕佸幓缁撴灉鏁扮粍閲屾斁鍊兼垨鏇存柊 for _, va := range timeEle.RuleResults { if args.CameraId != "" && va.CameraId == args.CameraId { // arg.CameraId 闅忎究鎵句竴涓暟鎹� @@ -591,23 +639,24 @@ // 杩囨护瑙勫垯鍏堢瓫閫夊嚭绗﹀悎鏉′欢鐨勭洰鏍囨暟閲� func filterRule(rule *protomsg.Rule, am *AreaMap) LittleRuleResult { - if rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a97e" || rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a971" { + if rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a97e" || rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a972" { // 澶勭悊鐨勬槸浜鸿劯绠楁硶 濡傛灉杩欐潯瑙勫垯閰嶇疆鐨勬槸浜鸿劯绠楁硶锛岃繃婊ゅ畬鏉′欢涔嬪悗鐩存帴寰楀嚭缁撴灉锛屽洜涓鸿偗瀹氭病鏈夋暟閲忔潯浠讹紝鑷繁鎷兼帴 - + logger.Info("瑙勫垯鐨勭畻娉昳d鍜屽尯鍩熺殑绠楁硶id锛�", rule.SdkId, "===", am.sdkId) if rule.SdkId == am.sdkId && rule.PolygonId == am.areaId { // 绠楁硶鍜屽尯鍩熼兘寰楀鐨勪笂 - if rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a971" { + if rule.SdkId == "812b674b-2375-4589-919a-5c1c3278a972" && rule.SdkArgAlias != "time_rule" { // 鍙渶瑕佽繃婊ら槇鍊硷紝杩囨护瀹屽悗鏁扮粍闀垮害澶т簬0鍗充负鎶ヨ锛屼絾瑕佽�冭檻濡備綍瀵规瘡涓�寮犻兘鎶ヨ鍛� argValue, err := strconv.ParseFloat(rule.SdkArgValue, 64) if err != nil { - logger.Info("瑙勫垯閰嶇疆鐨勯槇鍊奸潪娉�") + logger.Error("瑙勫垯閰嶇疆鐨勯槇鍊奸潪娉�") return LittleRuleResult{am.sdkName, rule.RuleWithPre + "" + "false", rule.Sort} } flag := "false" for _, obj := range am.filterData { for index := 0; index < len(obj.Liker); { // 灏嗚揪涓嶅埌闃堝�肩殑鐩镐技鑰呬粠鐩镐技鑰呮暟缁勪腑鍒犻櫎 - if float64(obj.Liker[index].CompareScore) < argValue { + logger.Warn("=======================鐩镐技鍊硷細", float64(obj.Liker[index].CompareScore*100)) + if float64(obj.Liker[index].CompareScore*100) < argValue { // Go 璇█涓垏鐗囧垹闄ゅ厓绱犵殑鏈川鏄細浠ヨ鍒犻櫎鍏冪礌涓哄垎鐣岀偣锛屽皢鍓嶅悗涓や釜閮ㄥ垎鐨勫唴瀛橀噸鏂拌繛鎺ヨ捣鏉ャ�備笉鐢ㄦ��鐤戯紝鏁扮粍鍒犻櫎鍏冪礌灏辫繖涔堝潙鐖� obj.Liker = append(obj.Liker[:index], obj.Liker[index+1:]...) } else { @@ -735,7 +784,7 @@ for k, _ := range TimeEleList { if k == am.taskId+" "+am.sdkId+" "+am.areaId { flag = false // 鏈夊氨缃负false - fmt.Println("鏈夎繖涓畾鏃跺櫒锛屼笉鍐嶅垱寤轰簡锛�") + logger.Info("鏈夎繖涓畾鏃跺櫒锛屼笉鍐嶅垱寤轰簡锛�") } } @@ -744,7 +793,7 @@ timeEle := TimeElement{N: timeLength, InitN: timeLength} // 鎵旇繘鍘讳竴涓畾鏃跺櫒鍏冪礌 //TimeEleList = make(map[string]timeElement) TimeEleList[am.taskId+" "+am.sdkId+" "+am.areaId] = &timeEle // 瀹氭椂鍣ㄥ厓绱犱互鎽勫儚鏈篿d鎷兼帴鍖哄煙id涓洪敭 - fmt.Println("鍒涘缓浜嗚鏁板櫒骞朵笖璁℃暟鍣ㄩ泦鍚堜负锛�", TimeEleList) + logger.Info("鍒涘缓浜嗚鏁板櫒骞朵笖璁℃暟鍣ㄩ泦鍚堜负锛�", TimeEleList) } } } @@ -769,7 +818,7 @@ func transferParameters(rule *protomsg.Rule, am *AreaMap) LittleRuleResult { if rule.SdkId == am.sdkId && rule.PolygonId == am.areaId { // 棣栧厛瑙勫垯鎵�瀵瑰簲鐨勫尯鍩焛d瑕佽窡鍖哄煙鏁版嵁鐨刬d瀵圭殑涓� if rule.SdkArgAlias == "targetNum" { // 濡傛灉鍙傛暟鏄鍖哄煙鍐呯洰鏍囨暟閲� 鍗硑olo 浜鸿劯涓嶄細鏈夋暟閲� - //fmt.Println("寰楀嚭缁撴灉闃舵", "姣旇緝鐨勮鍒欐槸锛�", rule) + //logger.Info("寰楀嚭缁撴灉闃舵", "姣旇緝鐨勮鍒欐槸锛�", rule) if rule.Operator == "" { return LittleRuleResult{am.sdkName, strconv.Itoa(am.targetNum) + "" + rule.RuleWithPre, rule.Sort} // 濡傛灉鍚庨潰涓嶈窡鎿嶄綔绗﹀氨鐩存帴杩斿洖鏁伴噺 姣斿瑕佽窡涓嬩竴涓尯鍩熸瘮杈冩暟閲忕殑灏辩洿鎺ヨ繑鍥炴湰鍖哄煙鐨勬暟閲� } @@ -806,12 +855,12 @@ if rule.SdkArgAlias == "time_rule" { // 鍒ゆ柇鏄惁绗﹀悎鏃堕棿瑙勫垯 logger.Info("----------褰撳墠鏃堕棿瑙勫垯锛�---------", rule) // 鏍规嵁鏀惧�煎瓧娈甸噷瀛樼殑鏃堕棿瑙勫垯鐨刬d鍘诲彟涓�涓〃閲屾煡闇�瑕佹瘮瀵圭殑鏃堕棿娈碉紙姣斿褰撳墠鏃堕棿鏄懆涓夛紝搴旀牴鎹尯鍩焛d鏌ュ嚭鍏跺懆涓夌殑鍑犱釜甯冮槻鏃堕棿娈碉紝鏁扮粍锛� - //fmt.Println("鏃堕棿瑙勫垯鐨勬祴璇�") + //logger.Info("鏃堕棿瑙勫垯鐨勬祴璇�") now := time.Now() index := getIndexOfWeek(now.Weekday().String()) timeList := GetTimeById(rule.SdkArgValue, index) logger.Info("褰撳ぉ鐨勬椂闂存闆嗗悎锛�----------", timeList) - //fmt.Println("浠庢暟鎹簱涓煡鍑虹殑鏃堕棿瑙勫垯锛�", timeList) + //logger.Info("浠庢暟鎹簱涓煡鍑虹殑鏃堕棿瑙勫垯锛�", timeList) // 鍒ゆ柇鍥剧墖鏁版嵁鐨勬椂闂存槸鍚︾鍚堝綋鍓嶈鍒� 鍦ㄤ竴涓嵆涓簍rue锛屽叏涓嶅湪涓篺alse if rule.Operator == "satisfy" || rule.Operator == "==" { // 婊¤冻鎵�閫夌殑鏃堕棿瑙勫垯 @@ -824,7 +873,7 @@ formula1 := "'" + timeSlot.End + "'" + ">" + "'" + am.time + "'" expression1, _ := govaluate.NewEvaluableExpression(formula1) // 寰楀埌鏁板鍏紡 result1, _ := expression1.Evaluate(nil) // 寰楀埌鏁板鍏紡鐨勭粨鏋� - //fmt.Println("鐪嬬湅杩欎袱灏婂ぇ绁�", result, result1) + //logger.Info("鐪嬬湅杩欎袱灏婂ぇ绁�", result, result1) if result.(bool) && result1.(bool) { flag = "true" break -- Gitblit v1.8.0