---
panlei
2019-07-01 17bd1f6943b94381386fb3d9a38b8592cef5f70a
ruleserver/ruleToformula.go
@@ -295,11 +295,11 @@
   if completeFormula != "" {
      log.Println("看看公式-----------:", completeFormula)
      expression, _ := govaluate.NewEvaluableExpression(completeFormula)
      result, err := expression.Evaluate(nil) // 得到数学公式的结果
      if err != nil {
         panic("得到的数学公式不可解析")
      if strings.HasPrefix(completeFormula,"&&") || strings.HasPrefix(completeFormula,"||"){
         panic("规则有误,得到的数学公式不可解析")
      }
      if result.(bool) {
      result,_ := expression.Evaluate(nil) // 得到数学公式的结果
      if !result.(bool) {
         // 给这帧数据打上规则组标签
         //args.RuleResult = append(args.RuleResult, Result{TaskId: taskId, RuleGroupId: groupRule.GroupId})
         for k, timeEle := range TimeEleList {
@@ -720,11 +720,12 @@
         now := time.Now()
         index := getIndexOfWeek(now.Weekday().String())
         timeList := GetTimeById(rule.SdkArgValue, index)
         log.Println("当天的时间规则:----------",timeList)
         //fmt.Println("从数据库中查出的时间规则:", timeList)
         // 判断图片数据的时间是否符合当前规则 在一个即为true,全不在为false
         flag := "false"
         for _, timeSlot := range timeList {
            if rule.Operator == "satisfy" { // 满足所选的时间规则
            if rule.Operator == "satisfy" || rule.Operator == "=="{ // 满足所选的时间规则
               formula := "'" + timeSlot.Start + "'" + "<" + "'" + am.time + "'"
               expression, _ := govaluate.NewEvaluableExpression(formula) // 得到数学公式
               result, _ := expression.Evaluate(nil)                      // 得到数学公式的结果
@@ -738,7 +739,7 @@
                  break
               }
            }
            if rule.Operator == "unsatisfy" { // 不满足所选的时间规则
            if rule.Operator == "unsatisfy" || rule.Operator == "!="{ // 不满足所选的时间规则
               formula := timeSlot.Start + "<" + am.time
               expression, _ := govaluate.NewEvaluableExpression(formula) // 得到数学公式
               result, _ := expression.Evaluate(nil)                      // 得到数学公式的结果