panlei
2019-08-01 b18beafcaaa2e2086610f22079842b2e5af6e283
ruleserver/ruleToformula.go
@@ -270,9 +270,9 @@
         completeFormula = completeFormula[1:]
      }
      logger.Info("-------------------看看拔毛后的表达式:", completeFormula)
      expression, _ := govaluate.NewEvaluableExpression(completeFormula)
      result, _ := expression.Evaluate(nil) // 得到数学公式的结果
      return result.(bool)
      //expression, _ := govaluate.NewEvaluableExpression(completeFormula)
      //result, _ := expression.Evaluate(nil) // 得到数学公式的结果
      //return result.(bool)
   }
   if completeFormula != "" {
      logger.Info("结果公式-----------:", completeFormula)
@@ -430,18 +430,14 @@
            tempMap := make(map[string]interface{})
            for k,result := range args.RuleResult {
               if k == "yolo" {
                  logger.Info("有没有yolo标签")
                  tempMap[k] = []Result{}
                  for _,res := range result.([]Result) {
                     logger.Info("进一次yolo循环")
                     tempMap[k] = append(tempMap[k].([]Result),res)
                  }
               }
               if k == "face" {
                  logger.Info("有没有face标签")
                  tempMap[k] = []FaceResult{}
                  for _,res := range result.([]FaceResult) {
                     logger.Info("进一次face循环")
                     tempMap[k] = append(tempMap[k].([]FaceResult),res)
                  }
               }
@@ -479,16 +475,16 @@
                  label.LinkCache = append(label.LinkCache,ruleRes.CacheData)
               }
               logger.Debug("联动任务缓存了几个数据",len(label.LinkCache))
               //for _,result := range args.RuleResult["yolo"].([]Result) {
               //   if result.RuleGroupId == groupRule.GroupId {
               //      result.Others["linkCache"] = label
               //   }
               //}
               for i := 0; i < len(args.RuleResult["yolo"].([]Result)); i++  {
                  if args.RuleResult["yolo"].([]Result)[i].RuleGroupId == groupRule.GroupId { // 把原来那个删掉再存一份新的
                  if args.RuleResult["yolo"].([]Result)[i].RuleGroupId == groupRule.GroupId { // 把联动数据追加上
                     args.RuleResult["yolo"].([]Result)[i].Others.LinkCache = label.LinkCache
                  }
               }
               for i := 0; i < len(args.RuleResult["face"].([]FaceResult)); i++  {
                  if args.RuleResult["face"].([]FaceResult)[i].RuleGroupId == groupRule.GroupId { // 把联动数据追加上
                     args.RuleResult["face"].([]FaceResult)[i].Others.LinkCache = label.LinkCache
                  }
               }
            }
         }
      } else {