ТЗ по WIX для Nastart24
Цель: Сделать возможным создавать посадочные страницы опираясь на api сайта nastart24.ru
Ссылки API:
https://nastart24.ru/api/ — основная ссылка api, все методы ниже будут относительно этой ссылки
request/getCalcParams — Позволяет получить несколько массивов объектов для калькуляции на основном сайте. В этом методе интересует sportKinds, ageRatioRanges, eventPeriods
class sportKind { int id; // Id вида спорта string title; // Название спорта int? masterId; // Id категории (другой вид спорта может быть главной категорией) int sportKindType; // Тип спорта double ratio; // Коэффициент для расчета страховой суммы (КВС) } class ageRatioRange { int id; // id возрастной группы int ageFrom; // с какого возраста int ageTo; // по какой double ratio; // коэффициент (КВ) } class eventPeriod { int id; // id периода int days; // количество дней double ratio; // коэффициент (КД) }
Массив видов спорта нужно отображать на фронте викса для выбора вида спорта из которой потом будет расчет страховки.
Что то типа этого, но можно не париться с категориями, а просто раскидать все виды спорта по алфавиту одним списком и добавить пункт "все виды спорта". Выбрать можно только один вид спорта на WIX.
Формула расчета страховки: Округлить(МЦ + (КВС * КД * СУМ * КВ))
МЦ - модификтор цены
СУМ - сумма покрытия страховки
КВС - коэффициент вида спорта
КД - коэффициент периода
КВ - коэффициент возрастной
МЦ, СУМ — берем локально из настроек скрипта и с калькулятора
остальное с бека
pay/thirdPartyOrder - метод который принимает модель для оплаты с викса.
Пока не работает, можно сделать заглушку.
class ThirdPartyOrderRequest { int SportKindId; // Id вида спорта который юзер выбрал int PeriodId; // id КД int PriceModificator; // модификатор цены int AgeId; // id возрастного коэффициента Date DateFrom; // дата начала страхования Date DateTo; // дата окончания страхования string PayerFIO; // ФИО плательщика string PayerEmail; // Почта плательщика string InsuredFIO; // ФИО застрахованного Date InsuredBirthDay; // Дата рождения застрахованного string SuccessPayUrl; // Страница успешной оплаты string FailPayUrl; // Страница неуспешной оплаты }
После отправки на бэк этой модели бек вернет url с на плетжный сервис, нужно перенаправить юзера на платежный сервис, сервис вернет юзера на страницу success или fail.
Скрипт должен быть универсальным.
На входе у него будут параметры:
- Возможен ли выбор спорта или только из предложенных или всех (int[]?)
- Только для детей (bool)
- Даты начала и окончания (Date)
- Модификатор цены
При попытке задать другие параметры на фронте после настройки скрипта, скрипт должен возвращать пользователю сообщение об ошибке.