|
@@ -237,7 +237,7 @@ class EquipmentInfoService:
|
|
|
if len(ai_event_type_list) < 1:
|
|
|
return event_type_list
|
|
|
ai_event_type_list.sort()
|
|
|
- type = [1, 2, 3, 4] # AI目前所有的标签,1人,2车,3宠物,4包裹,后续有新类型需要这里加
|
|
|
+ type = [1, 2, 3, 4] # AI目前所有的标签,1人,2车,3宠物,4包裹,后续有新类型需要这里加, 后续会优化,存在表里,包裹存对应的aws标签
|
|
|
comb_ai_event_type = []
|
|
|
seen = set()
|
|
|
for i in range(1, len(type) + 1): # 计算所有组合,如[1, 2, 3, 4], 4取1,4取2,4取3,4取4
|
|
@@ -256,3 +256,22 @@ class EquipmentInfoService:
|
|
|
regroup_list.append(int(val))
|
|
|
event_type_list = regroup_list + event_type_list # 加上普通移动消息类型
|
|
|
return event_type_list
|
|
|
+
|
|
|
+ @classmethod
|
|
|
+ def get_all_comb_event_type(cls):
|
|
|
+ """
|
|
|
+ 计算ai消息类型全组合
|
|
|
+ @return: event_type_list ai所有消息类型数组
|
|
|
+ """
|
|
|
+ type = [1, 2, 3, 4] # AI目前所有的标签,1人,2车,3宠物,4包裹,后续有新类型需要这里加, 后续会优化,存在表里,包裹存对应的aws标签
|
|
|
+ comb_ai_event_type = []
|
|
|
+ for i in range(1, len(type) + 1): # 计算所有组合,如[1, 2, 3, 4], 4取1,4取2,4取3,4取4
|
|
|
+ for s in itertools.combinations(type, i):
|
|
|
+ s_list = list(s)
|
|
|
+ s_list = [str(v) for v in s_list]
|
|
|
+ comb_ai_event_type.append(s_list)
|
|
|
+ regroup_list = []
|
|
|
+ for val in comb_ai_event_type: # 组合ai类型组合,如[[2,3],[1,3]] -> [23, 13]
|
|
|
+ val = ''.join(val)
|
|
|
+ regroup_list.append(int(val))
|
|
|
+ return comb_ai_event_type
|