---
panlei
2019-07-02 0cbddb6f06c9ebbfe9151b5c3425906786b62a3e
ruleserver/ruleToformula.go
@@ -139,7 +139,7 @@
   RuleText    string // 文字版规则组
}
type LittleRuleResult struct {
   SdkName string //记录下此结果是哪个sdk的结果
   SdkName string // 记录下此结果是哪个sdk的结果
   Result  string // 已包含了前置连接符
   Sort    int32
}
@@ -329,14 +329,14 @@
            sdkName := ""
            for j := 0; j < len(groupRule.Rules); j++ {
               for _, sdkData := range args.Sdkdata {
                  if groupRule.Rules[j].SdkId == sdkData.SdkId && sdkData.IsYolo { // 只记录yolo符合规则的sdk
                  if groupRule.Rules[j].SdkId == sdkData.SdkId && sdkData.IsYolo && !strings.Contains(sdkName,sdkData.SdkName) { // 只记录yolo符合规则的sdk 同时要避免重复拼接
                     sdkName = sdkName + "," + sdkData.SdkName
                  }
               }
            }
            // 过完规则后打个标签,告诉调用者本帧数据针对哪个任务哪组规则报警了     后加:可能还不够,还需要区分触发报警的对象,后面往es数据库插数据时要用
            args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]Result), Result{taskId, sdkName, groupRule.GroupId, groupRule.AlarmLevel, groupRule.GroupText})
            log.Println("-------------------结果标签",args.RuleResult["yolo"].([]Result))
            log.Println("-------------------yolo结果标签",args.RuleResult["yolo"].([]Result))
            log.Println("-------------------face结果标签",args.RuleResult["faces"].([]Arg))
            return true
         } else {
            return false