Студия разработки сайтов и приложений

Netspark.ru

Умный ежедневник турагента

Доктурист

Платформа для ботов в Telegram

Ботопотамы

Обновили формы платежей на Доктуристе

Форма введения платежа в Доктуристе

Астрологи объявили неделю usability: количество UX-обновлений на Доктуристе удваивается.

Выкатили сегодня очередное обновление на Доктурист, на этот раз прошлись по форме ввода платежей.

Проблема такая:
— туристы платят турагентам рубли;
— туроператорам агенты платят тоже рубли;
— а общая стоимость тура за границу указана в долларах или евро по курсу оператора. Чтобы никто не страдал от волатильности валюты.

Первая реализация в Доктуристе была несколько упрощенная. Можно было вести учет платежей в карточке брони только в валюте брони. То есть если мы хотим вести учет в евро, то мы должны платежи от туристов и к оператору (которые всегда в рублях) мысленно переводить в валюту и потом уже сохранять. Для этого мы добавили возможность использовать курс ЦБ, использовать курс оператора (если мы уже импортируем курс для этого оператора), или ввести курс вручную. Таким образом можно добиться соответствия введенной валюты полученным рублям, но:
а) это неудобно;
б) могут случаться маленькие копеечные ошибочки ввиду округления;
в) особенно в случае, когда рубли приходят из банка и надо автоматом их перевести в валюту брони;
г) а, строго говоря учитывать-то надо рубли, потому что прибыли и налоги с них получаются в рублях.

В результате режимом ведения брони в валюте почти не пользовались, просто потому что неудобно. В основном, все брони вели в рублях, а учет валюты на балансе туроператора — имели в виду где-то в уме. А мы всегда хотим, чтоб было удобно всё.

На помощь пришли user stories. Не те, в которых бизнес-аналитик описывает дизайн-макет словами для слабовидящих, а истории от самых настоящих пользователей. Пользователи рассказали нам, как пользуются формой, и как хотели бы. Мы обдумали этот опыт, и получилось более прогрессивное решение.

Теперь в окошке создания платежа пользователю предложено ввести не только сумму в валюте и курс, но и рубли. Причем эти три поля работают по принципу «2 из 3». То есть компонент Vue.js запоминает, какие 2 значения правились последними, и вычисляет на лету третье. То есть можно ввести:
— (как раньше) сумму в валюте и курс — и получить сумму в рублях;
— сумму в рублях и курс — и получить сумму в валюте;
— суммы в рублях и валюте — и курс тогда подстроится.

Заодно причинили улучшения и платежам, импортированным из банка: для таких платежей запретили менять сумму в рублях (как-никак, банковский факт), так что остается ввести только либо валюту, либо курс.

Работаем!

Обсуждение

Чтобы обсудить заметку, написать комментарий, или просто связаться, заходите в Телеграм-канал. У нас весело и всем рады!

Также меня можно найти в Хвиттере, Дзене, или Тенчате. А если вы на парковке, присоединяйтесь к каналу в Max!