panlei
2019-10-24 c165dbb634d3c8f3446d499c25894e8d61945c2d
labelFilter/ruleForLabel.go
@@ -14,7 +14,7 @@
   // 装配成自己可以识别的数据
   label := new(Label)
   label.DataFormatToLabel(msg)
   logger.Info("label的信息:", label.CameraName, label.DefenceLevel, label.Time)
   //logger.Info("label的信息:", label.CameraName, label.DefenceLevel, label.Time)
   if label.CameraName == "" {
      logger.Error("无效数据,直接返回")
      return
@@ -22,7 +22,7 @@
   //拿到所有规则组
   var api dbapi.EventPushApi
   b, allRules := api.FindAllDetails()
   logger.Info("查看所有规则组:", allRules)
   //logger.Info("查看所有规则组:", allRules)
   if !b {
      logger.Error("查询时间推送规则失败!")
   }
@@ -92,7 +92,7 @@
// 是否符合时间规则
func timeJudge(label *Label, groupRule protomsg.EventPush) bool {
   timeNow := time.Now().Format("2006-01-02 15:04:05")
   logger.Info("标签过滤器起始时间为:",groupRule.TimeStart,groupRule.TimeEnd)
   //logger.Info("标签过滤器起始时间为:",groupRule.TimeStart,groupRule.TimeEnd)
   flag1 := isBefore(groupRule.TimeStart, timeNow)
   flag2 := isBefore(timeNow, groupRule.TimeEnd)
   if flag1 && flag2 {
@@ -129,7 +129,7 @@
   if rule.TopicArg == "addr" {
      formula = "'" + label.CameraAddr + "'" + rule.Operator + "'" + rule.RuleValue + "'"
   }
   logger.Info("-------打印摄像机规则公式:",formula)
   //logger.Info("-------打印摄像机规则公式:",formula)
   expression, err := govaluate.NewEvaluableExpression(formula);
   if err != nil {
      logger.Error("表达式有误,请检查!", formula)
@@ -144,7 +144,7 @@
      logger.Info("符合摄像机规则!")
      return "true"
   }
   logger.Info("不符合摄像机规则!")
   //logger.Info("不符合摄像机规则!")
   return "false"
}
@@ -166,7 +166,7 @@
            for _, liker := range arg.Liker {
               formula := "'" + liker.TableId + "'" + rule.Operator + "'" + rule.RuleValue + "'"
               expression, err := govaluate.NewEvaluableExpression(formula);
               logger.Info("-------打印底库规则公式:",formula)
               //logger.Info("-------打印底库规则公式:",formula)
               if err != nil {
                  logger.Error("表达式有误,请检查!", formula)
                  return "false"
@@ -206,7 +206,7 @@
            // 其他这个值先这么处理
            return "true"
         }
         logger.Info("-------打印人员规则公式:",formula)
         //logger.Info("-------打印人员规则公式:",formula)
         expression, err := govaluate.NewEvaluableExpression(formula);
         if err != nil {
            logger.Error("表达式有误,请检查!", formula)
@@ -230,7 +230,7 @@
            }
         } else {
            formula := strconv.Itoa(int(personGroup.AlarmLevel)) + rule.Operator + formate(rule.RuleValue)
            logger.Info("-------打印人员等级规则公式:",formula)
            //logger.Info("-------打印人员等级规则公式:",formula)
            expression, err := govaluate.NewEvaluableExpression(formula);
            if err != nil {
               logger.Error("表达式有误,请检查!", formula)
@@ -267,7 +267,7 @@
   } else {
      for _, def := range label.DefenceLevel {
         formula := strconv.Itoa(int(def)) + rule.Operator + rule.RuleValue
         logger.Info("-------打印布防等级规则公式:",formula)
         //logger.Info("-------打印布防等级规则公式:",formula)
         expression, err := govaluate.NewEvaluableExpression(formula);
         if err != nil {
            logger.Error("表达式有误,请检查!", formula)
@@ -292,7 +292,7 @@
func taskJudge(label *Label, rule *protomsg.EventPushRule) string {
   formula := "'"+label.TaskId +"'"+ rule.Operator +"'"+ rule.RuleValue+"'"
   expression, err := govaluate.NewEvaluableExpression(formula);
   logger.Info("-------打印任务规则公式:",formula)
   //logger.Info("-------打印任务规则公式:",formula)
   if err != nil {
      logger.Error("表达式有误,请检查!", formula)
      return "false"