Узнать матч

Карточка перенесённой встречи

Карточка перенесённой встречи должна хранить два назначения отдельно: первоначальное и новое. Локальный стабильный ID карточки не меняют при переносе, а статус и текст объявления записывают с указанием источника и момента фиксации. Новую дату нельзя дописывать, пока она не названа в зафиксированном объявлении.

Карточка перенесённой встречи

Что считать карточкой перенесённой встречи

Карточка — это локальная запись об одном матче. Для его идентификации указывают участников, турнир, стадию или номер встречи и ID первичного источника, если он опубликован. Эти признаки помогают не смешать перенос с другим матчем тех же команд.

В карточке полезно разделить: идентификатор самой карточки, исходное назначение, новое назначение, текущий статус, текст или краткое содержание объявления, адрес исходного документа и момент, когда запись была сохранена. Исходное назначение не заменяют новым: оба значения нужны для истории изменения.

Стабильный ID в таком досье является ID локальной записи, например «local-match-0147». Он остаётся тем же после переноса. Это не означает, что такой ID является официальным идентификатором организатора.

Разобранный учебный пример переноса

Вымышленный пример: в документе организатора матч «Север — Маяк», Кубок города, четвертьфинал, указан как назначенный на 14 мая 2026 года в 18:30 по местному времени. В том же документе есть первичный ID «CG-QF-18». Позднее опубликовано объявление: «Встреча Север — Маяк перенесена на 16 мая 2026 года, 17:00».

Для карточки создают локальный ID «local-match-0147» и сохраняют оба назначения. Статус после второго объявления можно записать как «перенесён, новая дата объявлена». Источником статуса служит именно зафиксированное объявление, а не предположение по отсутствию матча в прежнее время.

Момент фиксации нужно отличать от времени начала матча. Если объявление сохранено 13 мая 2026 года в 09:20 при смещении +03:00, его момент в UTC записывается как 2026-05-13T06:20:00Z: из местного времени вычитают смещение три часа.

Пример содержимого локальной карточки
ПолеЗначение
Локальный ID карточкиlocal-match-0147
Идентификация матчаСевер — Маяк; Кубок города; четвертьфинал; первичный ID CG-QF-18
Исходное назначение14 мая 2026 года, 18:30, местное время
Новое назначение16 мая 2026 года, 17:00, местное время
СтатусПеренесён, новая дата объявлена
Источник статусаЗафиксированное объявление организатора
Момент фиксации объявления2026-05-13T09:20:00+03:00; 2026-05-13T06:20:00Z

Когда новое назначение не заполняют

Существенная граница возникает, если объявление сообщает только о переносе: «Матч Север — Маяк не состоится 14 мая; новая дата будет объявлена позднее». В этой ситуации статус меняют на «перенесён, новая дата не объявлена», но поле нового назначения оставляют неизвестным. Неизвестное значение не заменяют ни нулём, ни прежней датой, ни расчётным предположением.

Если в объявлении указано только время без даты и смещения, оно не определяет момент однозначно. В карточке можно сохранить текст времени как он дан, но нельзя уверенно сопоставить его с UTC или расположить относительно другого события по точному моменту.

Досье сохраняется локально в браузере и ведёт историю сохранённых записей. Оно не получает новые объявления автоматически: последующая публикация требует отдельного сохранения новой версии с новым временем фиксации.

  1. Создайте одну карточку с локальным ID и признаками матча.
  2. Запишите исходное назначение без исправления исходного текста.
  3. Добавьте новое назначение только из объявления, где оно прямо названо.
  4. Сохраните статус, источник объявления и момент фиксации отдельно от времени начала матча.
  5. При следующем объявлении сохраните новую версию карточки, а не переписывайте старую без следа.
Источники и методика