Статья содержит инструкцию, как сделать обязательным заполнение полей всех типов плательщиков:
- физических лиц;
- ИП;
- юридических лиц.
Описание
Требуется сделать поля обязательными для заполнения при создании или редактировании плательщика.
В BILLmanager нет встроенной возможности сделать обязательными некоторые поля, например, параметры адреса для физического лица (поле Фактический адрес). Отдельные поля можно сделать обязательными для заполнения, но эта настройка не покрывает все необходимые параметры. Решение добавить новое поле и сделать его обязательным для заполнения не подходит, потому что приведёт к дублированию поля у плательщика.
Решение
Проверьте встроенную возможность настройки обязательного заполнения:
- Перейдите в раздел Справочники → Страны.
- Выберите нужную страну.
- Нажмите кнопку Параметры.
- Выберите нужный параметр.
- Нажмите кнопку Изменить.
- Включите опцию Обязательный параметр.
- Нажмите Ok.
Если необходимые поля нельзя сделать обязательными через настройки страны, создайте плагин:
- Подключитесь к серверу с платформой по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
- Создайте в каталоге /usr/local/mgr5/etc/xml файл с именем вида billmgr_mod_<module_name>.xml (например, billmgr_mod_required.xml).
- Добавьте в файл следующее содержимое:
<mgrdata> <metadata name="profile.edit" type="form" mgr="billmgr"> <form> <page name="physical_address"> <field name="country_physical"> <select name="country_physical" required="yes"/> </field> <field name="state_physical"> <select depend="country_physical" sorted="asc" name="state_physical" required="yes"/> </field> <field name="postcode_physical"> <input type="text" name="postcode_physical" required="yes"/> </field> <field name="city_physical"> <input type="text" name="city_physical" required="yes"/> </field> <field name="address_physical"> <textarea rows="2" name="address_physical" required="yes"/> </field> </page> </form> </metadata> </mgrdata>
- Перезагрузите BILLmanager с очисткой кеша:
rm /usr/local/mgr5/var/.db.cache* -rf rm /usr/local/mgr5/var/.xmlcache/* -rf /usr/local/mgr5/sbin/mgrctl -m billmgr -R
Связанные статьи:
- Изменение поведения системы при определенных действиях пользователей, события — подробнее о создании плагинов
В планах развития продукта есть задача по доработке встроенной возможности обязательного заполнения всех полей. Вы можете следить за реализацией в Changelog BILLmanager.