Эх сурвалжийг харах

推送消息类型判断是否多标签类型

zhangdongming 2 жил өмнө
parent
commit
c2a72b5f0d

+ 2 - 1
Controller/DetectControllerV2.py

@@ -422,7 +422,8 @@ class DetectControllerViewV2(View):
                 # 如果是ai消息类型,则分解eventType, 如:123 -> [1,2,3]
                 if p['borderCoords'] and p['eventType'] in ai_all_event_type:
                     p['ai_event_type_list'] = list(map(int, str(p['eventType'])))
-                p['ai_event_type_list'] += EquipmentInfoService.get_combo_types(p['eventType'], p['eventTag'])
+                if EquipmentInfoService.is_combo_tag(p['eventType'], p['eventTag']):
+                    p['ai_event_type_list'] += EquipmentInfoService.get_combo_types(p['eventType'], p['eventTag'])
                 res.append(p)
             return response.json(0, {'datas': res, 'count': count})
         except Exception as e:

+ 13 - 0
Service/EquipmentInfoService.py

@@ -351,6 +351,19 @@ class EquipmentInfoService:
             print('推送错误异常,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
             return event_type
 
+    @staticmethod
+    def is_combo_tag(event_type, event_tag):
+        """
+        是否为多标签
+        """
+        if not event_tag:
+            return False
+        res = event_tag.split(',')
+        types = [int(var) for var in res if var]
+        if event_type in types and len(types) == 1:
+            return False
+        return True
+
     @classmethod
     def is_type_exist(cls, event_type):
         """