Мастер-Web:Настройки отображения валют в корзинах
Версия статьи от 13-04-2016.
Настройки, задаваемые в файле web.config
Метод public KeyValuePair<String, String> Get(DataContainer dataContainer, String reservationCurrencyCode, Int32 reservationTourId, Int32 cityDepartureId)
отвечает за то, в какой валюте будет отображаться стоимость тура в корзинах. Он возвращает пару [основная валюта; вспомогательная валюта]. Вспомогательная валюта может отсутствовать. Метод обрабатывает настройки по приоритетам:
- noNationalCurrencyInDifferentCountries - скрывает стоимость заявки (тура) в национальной валюте (т.е. возвращает пустую строку в качестве второго параметра, в качестве первого - валюту тура), если страна покупателя не совпадает со страной главного офиса компании. По умолчанию false.
Страна покупателя определяется так: Если авторизован и имеет роль Agency, DelegatedAgency, DelegatedTourist, то берётся партнёр
этого покупателя (DUP_USER) -> его город -> его страна.
Страна главного офиса определяется так: находится партнёр с флагом PR_FILIAL=1, берётся его город -> его страна.
- showBasketCostInBothRates - показывает стоимость в корзине в национальной валюте и в валюте тура. По умолчанию true. Если национальная валюта не совпадает с валютой путёвки, то возвращает национальную валюту и валюту путёвки, иначе возвращает только национальную валюту.
- showBasketCostInNationalRate - показывает стоимость в корзине только в национальной валюте. По умолчанию false. Метод возвращает только национальную валюту.
- useSearchDefinedCurrency - валюту, выбранную при поиске тура, нужно использовать на протяжении всего процесса бронирования. По умолчанию false.
- Если выключить все настройки - вернётся только валюта тура в качестве первого параметра и пустая строка в качестве вспомогательной валюты.
- В классе ещё используется настройка enableDecimalSeparator - отключает разделение чисел на группы разрядов. По умолчанию false.
В расширенной и стандартной корзине используется только основная валюта из возвращённой пары.
Примеры использования настроек
Только и всегда отображается национальная валюта в экране SimpleBasket и BasketTUI
<add key="showBasketCostInBothRates" value="false"/> <add key="showBasketCostInNationalRate" value="true"/>
Только и всегда отображается валюта тура в экране SimpleBasket и BasketTUI
<add key="showBasketCostInBothRates" value="false"/> <add key="noNationalCurrencyInDifferentCountries" value="true"/>
Отображается валюта, выбранная в поиске, в экране SimpleBasket и BasketTUI
<add key="showBasketCostInBothRates" value="false"/> <add key="UseSearchDefinedCurrency" value="true"/>
Отображаются две валюты в экране SimpleBasket и BasketTUI
<add key="showBasketCostInBothRates" value="true"/>
Всегда отображается национальная валюта в расширенной корзине
<add key="showBasketCostInBothRates" value="false"/> <add key="showBasketCostInNationalRate" value="true"/>
Всегда отображается валюта тура в расширенной корзине
<add key="showBasketCostInBothRates" value="false"/> <add key="noNationalCurrencyInDifferentCountries" value="true"/>