Обновить database.py

This commit is contained in:
2025-10-29 15:51:45 +03:00
parent 5c7f7921e7
commit 2f275eeb54

View File

@@ -27,11 +27,19 @@ def search_database(database_file, query):
any_mode = True any_mode = True
else: else:
any_mode = False any_mode = False
if 'MULTI' in tag_group:
tag_group.remove('MULTI')
multi_mode = True
else:
multi_mode = False
for tag in tag_group: for tag in tag_group:
if tag not in tag_mapping: if tag not in tag_mapping:
tag_mapping[tag] = { tag_mapping[tag] = {
'priority': priority_group_idx, 'priority': priority_group_idx,
'tag_number': tag_counter 'tag_number': tag_counter,
'multi': multi_mode
} }
if not any_mode: if not any_mode:
tag_counter += 1 tag_counter += 1
@@ -60,7 +68,7 @@ def search_database(database_file, query):
results.append(result_entry) results.append(result_entry)
# Сортируем по приоритету # Сортируем по приоритету
tag_priority = {v['tag_number']: v['priority'] for v in tag_mapping.values()} tag_priority = {v['tag_number']: (v['priority'],v['multi']) for v in tag_mapping.values()}
# Then verify no conflicts # Then verify no conflicts
if len(set((v['tag_number'], v['priority']) for v in tag_mapping.values())) != len(tag_priority): if len(set((v['tag_number'], v['priority']) for v in tag_mapping.values())) != len(tag_priority):
raise ValueError("Conflicting priorities for same tag_number") raise ValueError("Conflicting priorities for same tag_number")