Вступить в клуб →
средняявопросTypeScript на бэкенде: данные из базы, конфиг и события

В базе появился статус refunded, а сервис молча показывает заказы как «новые»

type OrderStatus = 'new' | 'paid' | 'shipped';

function label(status: OrderStatus) {
  if (status === 'paid') return 'Оплачен';
  if (status === 'shipped') return 'Отправлен';
  return 'Новый';
}

Соседний сервис начал писать в общую таблицу статус refunded. Ошибок нет, а возвращённые заказы показываются как новые. Что сделать?

  • Проверять статус при чтении и падать на неизвестном
  • Добавить refunded в тип и перекомпилировать
  • Хранить статус числом вместо строки
  • Заменить if на switch без изменения логики

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела