|
@@ -11,7 +11,7 @@ import itertools
|
|
import logging
|
|
import logging
|
|
import time
|
|
import time
|
|
|
|
|
|
-from django.db.models import Value, CharField
|
|
|
|
|
|
+from django.db.models import Value, CharField, Q
|
|
|
|
|
|
from Model.models import EquipmentInfoMonday, EquipmentInfoTuesday, EquipmentInfoWednesday, EquipmentInfoThursday, \
|
|
from Model.models import EquipmentInfoMonday, EquipmentInfoTuesday, EquipmentInfoWednesday, EquipmentInfoThursday, \
|
|
EquipmentInfoFriday, EquipmentInfoSaturday, EquipmentInfoSunday
|
|
EquipmentInfoFriday, EquipmentInfoSaturday, EquipmentInfoSunday
|
|
@@ -169,9 +169,10 @@ class EquipmentInfoService:
|
|
if event_type:
|
|
if event_type:
|
|
# 多类型查询
|
|
# 多类型查询
|
|
eventTypeList = cls.get_comb_event_type(event_type)
|
|
eventTypeList = cls.get_comb_event_type(event_type)
|
|
- eventTypeList += cls.get_combo_type_bins(event_type)
|
|
|
|
|
|
+ # eventTypeList += cls.get_combo_type_bins(event_type)
|
|
eventTypeList = list(set(eventTypeList))
|
|
eventTypeList = list(set(eventTypeList))
|
|
- qs = qs.filter(event_type__in=eventTypeList)
|
|
|
|
|
|
+ tags = cls.get_event_tag(event_type)
|
|
|
|
+ qs = qs.filter(Q(event_type__in=eventTypeList) | Q(event_tag__regex=tags))
|
|
if start_time and end_time:
|
|
if start_time and end_time:
|
|
qs = qs.filter(event_time__range=(start_time, end_time))
|
|
qs = qs.filter(event_time__range=(start_time, end_time))
|
|
else:
|
|
else:
|
|
@@ -424,3 +425,21 @@ class EquipmentInfoService:
|
|
except Exception as e:
|
|
except Exception as e:
|
|
print('推送错误异常,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
print('推送错误异常,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
return res_list
|
|
return res_list
|
|
|
|
+
|
|
|
|
+ @staticmethod
|
|
|
|
+ def get_event_tag(event_type):
|
|
|
|
+ """
|
|
|
|
+ 获取标签用于筛选推送消息
|
|
|
|
+ """
|
|
|
|
+ if ',' in event_type:
|
|
|
|
+ tags = ''
|
|
|
|
+ res_list = event_type.split(',')
|
|
|
|
+ tag_size = len(res_list)
|
|
|
|
+ for i, item in enumerate(res_list):
|
|
|
|
+ tags += ',' + str(item) + ','
|
|
|
|
+ if i < (tag_size - 1):
|
|
|
|
+ tags += '|'
|
|
|
|
+ return tags
|
|
|
|
+
|
|
|
|
+ else:
|
|
|
|
+ return ',' + str(event_type) + ','
|