Группы: ТОП-имена и порядок как в таблице
В таблице появились группы с «ТОП» в имени (ИВТ-ТОП-11БО, ИТ-ТОП-12БО): шаблон требовал цифру сразу после первого дефиса, поэтому такие столбцы пропускались целиком. Теперь имя группы — буквенные части через дефис, номер потока и необязательный суффикс, т.е. распознаются и «ИВТ-11БО», и «ПИЭ-13МО», и «ИВТ-ТОП-11БО» (похожие заголовки с пробелами — нет). GET /groups больше не сортирует по алфавиту с приоритетом БО/МО, а отдаёт группы в порядке столбцов таблицы — как просили, «как в расписании». Состав групп (появление/переименование/скрытие) подхватывается сам при следующем обновлении, потому что источник истины — заголовок листа. Тесты: ТОП-имена + порядок столбцов, отсев похожих не-групповых заголовков.
This commit is contained in:
@@ -165,11 +165,9 @@ def create_app(
|
||||
|
||||
@app.get("/groups")
|
||||
def groups() -> list[str]:
|
||||
"""Группы в том порядке, в каком идут столбцы в таблице."""
|
||||
data, _ = _data()
|
||||
return sorted(
|
||||
data.keys(),
|
||||
key=lambda g: (0 if g.endswith("БО") else (1 if g.endswith("МО") else 2), g),
|
||||
)
|
||||
return list(data.keys())
|
||||
|
||||
@app.get("/teachers")
|
||||
def teachers() -> list[str]:
|
||||
|
||||
Reference in New Issue
Block a user