Модуль позволяет собирать, размечать и стандартизировать ФИО существующих пользователей главного модуля(main) и модуля Интернет-магазина(sale) локально, без запросов по API к сторонним сервисам.
Доступно улучшение определения ФИО с помощью собственных правил определения ФИО.
Есть возможность загрузить собственные наборы данных для более точного определения и стандартизации.
Разработчик модуля предоставляет услугу установки набора данных. Ознакомиться со стоимостью и приобрести код доступа к услуге можно по ссылке.
Опционально:
- Расстановка ФИО в полях пользователя главного модуля(main) при добавлении и изменении.
- Установка пола пользователя главного модуля(main)
- Восстановление третьей части ФИО, которая теряется при использовании штатного компонента оформления заказа.
- Исправление ошибок ввода ФИО пользователей.
- Результат определения ФИО модулем можно представить в виде результатов от API DaData.
- API DaData можно использовать как правило определения ФИО модулем.
- Результат определения ФИО модулем можно представить в виде результатов от API Ahunter.
- API Ahunter можно использовать как правило определения ФИО модулем.
Установка решения имеет два шага. Первый обязательный, второй необязательный. На втором шаге устанавливается набор данных. Для установки набора данных потребуется код доступа к услуге.
Установка набора данных - не обязательное условие работы модуля. В ознакомительных целях предоставляется код доступа DEMO с ограниченным набором данных.
После установки идет переход к странице импорта собственных наборов данных в формате .jsonl. Со страницы импорта можно вернуться ко второму шагу установки.
Настройка
По умолчанию вся опциональная функциональность модуля отключена.
Перейдите в настройки модуля через боковое меню в административной панели: Сервисы > Стандартизация ФИО > Настройки.
На первой вкладке включите опции функционала, которые вам нужны.
На второй вкладке отображаются правила определения ФИО. Показывается информация о порядке применения правил, какую часть ФИО определяет правило. Часть из них опциональные. Например, правило "Фамилия определена через API DaData".
Третья вкладка доступа стандартная. Фактически сейчас уровни доступа: есть/нет
Сценарии использования модуля
- Нет наборов данных, нет программиста, есть много времени. Переходим Сервисы > Стандартизация ФИО > Неизвестные имена. В дополнительных действиях к кнопке "Обработать" выбираем "Найти неизвестные имена". Найденные имена размечаем с помощью действий для списка. Например, фильтруем "%ова", выбираем все найденные, отмечаем, что это женские фамилии. После разметки ставим отметку о добавлении в локальную базу имён через групповые действия и нажимаем "Обработать". Размеченные данные попадают в таблицы локальной базы имён и используются правилами определения ФИО.
- Есть наборы данных, нет программиста. Переходим Сервисы > Стандартизация ФИО > Импорт. Загружаем набор данных в локальную базу имён, в соответствующую таблицу.
- Нет наборов данных, есть программист. Добавляем с помощью события формирования списка правил собственные правила определения ФИО.
Сценарии использования для программиста:
1. Использование события для добавления своего правила.
$eventManager = \Bitrix\Main\EventManager::getInstance(); $eventManager->addEventHandler( 'alekseev.fio', 'OnDetectorRulesListBuild', 'buildMyRuleList' ); function buildMyRuleList($event) { return new \Bitrix\Main\EventResult( \Bitrix\Main\EventResult::SUCCESS, [ (new \Alekseev\Fio\Detector\Rules\BuildRule( '\My\Module\MyCustomRule' )) ->setSort(500) ->setFile('/local/modules/my.module/lib/custom.php'), ] ); } |
namespace My\Module { use Alekseev\Fio\Detector; // Создаем опциональное правило class MyCustomRule extends Detector\Rules\OptionalRule { // Должно возвращать одну из трех констант Detector\Score::F\I\O public function getScoreFlag(): int { // Определяет отчества. return Detector\Score::O; } public function getCode(): string { return 'MY_CUSTOM_RULE'; } public function getTitle(): string { return 'Мое правило определения ФИО'; } /** * Примеры реализации метода в готовых правилах * \bitrix\modules\alekseev.fio\lib\detector\rules */ public function resolve(): Detector\Rules\Result { // Ничего не делаем. Пустой результат. return new Detector\Rules\Result(); } } } |
use Alekseev\Fio\Detector\Resolver; use Alekseev\Fio\Detector\DaDataResult; \Bitrix\Main\Loader::includeModule('alekseev.fio'); $detector = new Resolver('Иванович Иван Иванов'); // Массив с полями как тут dadata.ru/api/clean/name/ $array = (new DaDataResult($detector))->asArray(); $lastName = $detector->getLastName(); // И т.д. примеры смотри в исходниках. // Например, в файле /bitrix/modules/alekseev.fio/eventhandlers/mainuser.php |
Свои реализации правил можете присылать на почту alekseev.aleksey.in@gmail.com. После проверки добавлю в поставку модуля.
Для покупки товара в нашем интернет-магазине выберите понравившийся товар и добавьте его в корзину. Далее перейдите в Корзину и нажмите на «Оформить заказ» или «Быстрый заказ».
Если оформляете быстрый заказ: напишите ФИО, телефон и e-mail. Вам перезвонит менеджер и уточнит условия заказа. По результатам разговора вам придет подтверждение оформления товара на почту или через СМС. Теперь останется только ждать доставки и радоваться новой покупке.
Оформление заказа в стандартном режиме выглядит следующим образом. Заполняете полностью форму по последовательным этапам: адрес, способ доставки, оплаты, данные о себе. Советуем в комментарии к заказу написать информацию, которая поможет курьеру вас найти. Нажмите кнопку «Оформить заказ».
Оплачивайте покупки удобным способом. В интернет-магазине доступно 3 варианта оплаты:
- Наличные при самовывозе или доставке курьером. Специалист свяжется с вами в день доставки, чтобы уточнить время и заранее подготовить сдачу с любой купюры. Вы подписываете товаросопроводительные документы, вносите денежные средства, получаете товар и чек.
- Безналичный расчет при самовывозе или оформлении в интернет-магазине: карты МИР. Чтобы оплатить покупку на сайте, система перенаправит вас на сервер платежной системы. Здесь нужно ввести номер карты, срок действия и имя держателя.
- Электронные системы при онлайн-заказе: ЮMoney. Для совершения покупки система перенаправит вас на страницу платежного сервиса. Здесь необходимо заполнить форму по инструкции.
- Безналичная оплата на наш расчетный счет по выставленному счету.
Экономьте время на получении заказа. В интернет-магазине доступно 4 варианта доставки:
- Электронная поставка - все необходимые сведения о лицензии, праве пользования, кодах, ключах и др. высылаются покупателю на его e-mail.
- Курьерская доставка. Когда товар будет отправлен с нашего склада, Вам придет уведомление. В день доставки с Вами заблаговременно свяжется курьер для уточнения времени и деталей доставки. Доставка производится "до двери". Осмотрите упаковку на целостность и соответствие указанной комплектации.
- Постамат. Когда заказ поступит на точку, на Ваш телефон или e-mail придет уникальный код. Заказ нужно оплатить в терминале постамата. Срок хранения — 3 дня.
- Доставка Почтой России. Когда заказ придет в отделение, на Ваш адрес придет извещение о посылке. Перед оплатой Вы можете оценить состояние коробки: вес, целостность. Вскрывать коробку самостоятельно Вы можете только после оплаты заказа. Один заказ может содержать не больше 10 позиций и его стоимость не должна превышать 100 000 р.
Дополнительная информация.