Open msenyk opened 2 years ago
@thxnk Схоже ми спробували це зробити через перевірку в самому компоненті. В більшості випадків таке допоможе. Але все ще існує ймовірність паралельної реєстрації, бо сервер відповідає клієнту із затримкою. Раджу переробити через серверну перевірку. Почитайте про ключове слово FOR UPDATE https://developer.salesforce.com/docs/atlas.en-us.212.0.soql_sosl.meta/soql_sosl/sforce_api_calls_soql_select_for_update.htm
Зараз існує можливість зареєструватись на тур з багатьох місць. Через СФ інтерфейс та з сайту. Форма показує кількість місць що залишилась. Потенційно це може призвести до того, що 2 людини одночасно спробують отримати останній квиток. Система має дозволити це зробити лише першому користувачеві. Користувач що не встиг, має побачити повідомлення "We are sorry but there is no available tickets for this tour.". Після цього система має показати форму з оновленою інформацію про доступні тури та кількість місць.
Як перевірити:
Додатково, варто перевіряти чи відкрити реєстрація на тур. Ми приймаємо бронювання лише якщо статус туру New або Booked.