panlei
2019-07-23 9d9192b600e183e87cb9df09aeeb189a35157d75
ruleserver/ruleToformula.go
@@ -518,7 +518,6 @@
      // 处理的都是yolo数据
      if rule.PolygonId == am.areaId { // 首先这条规则得是这个算法的规则,其次规则所对应的区域id要跟区域数据的id对的上
         if rule.SdkArgAlias == "score" || rule.SdkArgAlias == "proportion" || rule.SdkArgAlias == "size" { // 判断的是相似值,占比,尺寸等过滤条件,如果再有,还可以再加
            logger.Info("当前小规则是:---------", rule)
            var args []*Arg
            if rule.RuleWithPre == "&&" {
               args = am.filterData
@@ -591,8 +590,8 @@
// 给数据库的规则表达式代参 args: 一条子规则,区域数据
func transferParameters(rule *protomsg.Rule, am *AreaMap) LittleRuleResult {
   if rule.PolygonId == am.areaId { // 首先规则所对应的区域id要跟区域数据的id对的上
      logger.Info("当前小规则是:---------", rule)
      if rule.SdkArgAlias == "objCount" { // 如果参数是要区域内目标数量 即yolo 人脸不会有数量
         logger.Info("当前小规则是:---------", rule)
         //logger.Info("得出结果阶段", "比较的规则是:", rule)
         if rule.Operator == "" {
            return LittleRuleResult{am.sdkName, strconv.Itoa(am.targetNum) + "" + rule.RuleWithPre, rule.Sort} // 如果后面不跟操作符就直接返回数量  比如要跟下一个区域比较数量的就直接返回本区域的数量
@@ -627,8 +626,7 @@
}
func timeRuleResult(rule *protomsg.Rule, am *AreaMap) LittleRuleResult {
   if rule.PolygonId == am.areaId { // 首先规则所对应的区域id要跟区域数据的id对的上
      logger.Info("当前小规则是:---------", rule)
      if rule.SdkArgAlias == "time_rule" { // 判断是否符合时间规则
      if rule.SdkArgAlias == "time_rule" { // 判断是否符合时间规
         logger.Info("----------当前时间规则:---------", rule)
         // 根据放值字段里存的时间规则的id去另一个表里查需要比对的时间段(比如当前时间是周三,应根据区域id查出其周三的几个布防时间段,数组)
         //logger.Info("时间规则的测试")