Изменения в модуле MultiCurrency

Здравствуйте уважаемое сообщество. Хочу предложить внести незначительные, но на мой взгляд полезные, изменения в модуль мультивалютности.

 

  1. Добавить возможность "биндить" такие параметры как: primaryAmountEnabled, currencyEnabled, rateEnabled. На сколько я могу судить для этого достаточно:
    • (на примере rateEnabled) в MultiCurrencyEditViewGenerator#generateMultiCurrencyEdit упростить конструкции `(viewConfig.rateEnabled.bindTo || viewConfig.rateEnabled)` до`viewConfig.rateEnabled`. После чего, уже реализованный метод MultiCurrencyEdit#setRateEnabled будет отрабатывать.
    • (для полноценной работы currencyEnabled) в MultiCurrencyEditViewGenerator#generateCurrencyButton свойству enabled установить значение: `!Ext.isEmpty(config.currencyEnabled) config.currencyEnabled : true`
  2. Реализовать возможность добавлять мультивалютные поля с разными валютами на одну страницу. Для себя я решил эту проблему так: Для мультивалютных полей добавляю свойство CurrencyButtonMenuList в которое, при необходимости, передаю коллекцию валют. Заполнение коллекций реализовано непосредственно в карточке. Таким образом закрывается два кейса: Кастомный список валют и Множество независимых валютных полей. Естественно, что если свойство не определено - модуль отрабатывает по умолчанию. В MultiCurrencyEditViewGenerator#generateCurrencyButton свойству menu.items установить значение: `Ext.isEmpty(config.currencyButtonMenuList) ? "CurrencyButtonMenuList" : config.currencyButtonMenuList`
  3. Ну и круто было-бы уже поправить жёсткую привязку на поле Currency, что при использовании префикса заставляет добавлять некрасивые конструкции.

 

Вопросы решаются в несколько строчек, а возможностей открывают много.

 

P.S. Конечно всегда можно реализовать свой модуль, и там всё это сделать. Но ведь платформа от того и крутая, что имеет много гибкого функционала из коробки.

1 комментарий

Здравствуйте, Вячеслав!

 

Передали данные идеи команде разработки для анализа возможности внедрения такой возможности в будущих версиях продукта. Спасибо Вам за приведенные свои подходы к решению.

Показать все комментарии