Изменения

Перейти к навигации Перейти к поиску

Интеграция

17 байт добавлено, 18:41, 8 июня 2017
Импорт\синхронизация учетных записей
При импорте информации об '''Агентствах''' будут возвращаться следующие значения:
<table {| collspadding="10" border="1"> <tr bgcolorclass="#ccccccwikitable"> <th>! Поле во внешней системе </th><th> !! Путь к элементу xml </th><th> !! Тип данных </th><th> !! Сопоставляемое поле в {{NameSystem}} <!! Примечание|-| Идентификатор партнера| /changes/partners/item[@id]| Целое число| Идентификатор во внешней системе для менеджера / администратора| |-| Название юридического лица| /changes/partners/item/ofname| Строка| Полное официальное название юридического лица| Необходимо для выписки счетов юридическими лицами|-| Сокращенное название| /changes/partners/item/name| Строка| Имя агентства| |-| Код агентства| /changes/partners/item/code| Строка| Используется при создании логина администратора| |-| Номер группы в самотуре| /changes/partners/item/group| Целое число, либо пусто| На основании таблицы сопоставлений (см. ниже) определяется, к какой группе агентство принадлежит в {{NameSystem}}| |-| Форма налогообложения| /th><th> Примечание <changes/partners/item/th>tax| Целое число, равное идентификатору во внешней системе| | |}
</tr> <tr> <td>Идентификатор партнера</td><td>/changes/partners/item[@id]</td><td>Целое число </td><td>Идентификатор во внешней системе для менеджера / администратора </td><td></td> </tr> <tr> <td>Название юридического лица</td><td>/changes/partners/item/ofname</td><td>Строка</td><td>Полное официальное название юридического лица </td><td>Необходимо для выписки счетов юридическими лицами</td>  </tr> <tr> <td>Сокращенное название</td><td>/changes/partners/item/name</td><td>Строка</td><td>Имя агентства </td><td></td> </tr> <tr> <td>Код агентства</td><td>/changes/partners/item/code</td><td>Строка</td><td>Используется при создании логина администратора</td><td></td>  </tr> <tr> <td>Номер группы в самотуре</td><td>/changes/partners/item/group</td><td>Целое число, либо пусто</td><td>На основании таблицы сопоставлений (см. ниже) определяется, к какой группе агентство принадлежит в {{NameSystem}} </td><td></td> </tr> <tr class="row6"> <td>Форма налогообложения</td><td class="col1">/changes/partners/item/tax</td><td>Целое число, равное идентификатору во внешней системе</td><td class="col3"></td><td></td>  </tr></table> Для каждого возвращенного агентства {{NameSystem}} проверяет наличие его в своей базе. Если [[агентство]] не найдено, то создается новое. Для него создается менеджер (админ) с логином <syntaxhighlight lang="text" enclose="none" style="font-size: 1.2em; padding: 0 3px; background: #F0F0F0; border: 1px dashed #2F6FAB;">ABCD-1234</syntaxhighlight>, где <syntaxhighlight lang="text" enclose="none" style="font-size: 1.2em; padding: 0 3px; background: #F0F0F0; border: 1px dashed #2F6FAB;">ABCD </syntaxhighlight> – буквенный идентификатор партнера во внешней системе, <syntaxhighlight lang="text" enclose="none" style="font-size: 1.2em; padding: 0 3px; background: #F0F0F0; border: 1px dashed #2F6FAB;">1234 </syntaxhighlight> — id партнера во внешней системе. Пароль — генерируется случайный и криптостойкий.
Если агентство найдено, то в случае необходимости производится обновление всех полей на основании данных из внешней системы. Если изменился код агентства (буквенный), то {{NameSystem}} переименовывает менеджера в соответствии с новым кодом. При импорте информации о пользователях агентств в {{NameSystem}} будут посылаться следующие поля:
<table {| collspadding="10" border="1"> <tr bgcolorclass="#ccccccwikitable"> <th>! Поле во внешней системе</th><th>!! Путь к элементу xml</th><th>!! Тип данных</th><th>!! Сопоставляемое поле в {{NameSystem}}</th><th>!! Примечание</th>|- </tr> <tr>| Идентификатор партнера <td>Идентификатор пользователя</td><td>| /changes/accountspartners/item[@id]</td><td>| Целое число</td><td>| Идентификатор внешней системы</td><td>| Храним как дополнительное поле </td> </tr> <tr>|- <td>| Идентификатор партнера</td><td class="col1">| /changes/accounts/item[@partnerId]</td><td>| Целое число</td><td>| Идентификатор внешней системы менеджера агентства</td><td></td>  </tr>| <tr>|- <td>| Логин</td><td>| /changes/accounts/item/login</td><td>| Строка</td><td>| Логин пользователя</td><td class="col4"></td> </tr>| <tr>|- <td>| Администратор</td><td>| /changes/accounts/item[@admin]</td><td>| 0 — нет, 1 — да</td><td>| Эксперт по бронированию </td><td></td>| </tr></table>|}
Для каждого возвращенного пользователя {{NameSystem}} проверяет наличие его в своей базе. Если пользователь не найден, то создается новый. Пароль генерируется случайный и криптостойкий.
Если пользователь найден, то в случае необходимости производится обновление всех полей на основании данных из внешней системы. При запросе на удаление пользователя, в {{NameSystem}} указанный логин удаляться не будет в целях сохранения целостности старых данных, а просто помечается как удаленный, и логин переименовывается и становится вида <syntaxhighlight lang="text" enclose="none" style="font-size: 1.2em; padding: 0 3px; background: #F0F0F0; border: 1px dashed #2F6FAB;">[логин_пользователя]_X_[числовой идентификатор_пользователя в Само]</syntaxhighlight>.
<pre><item id=[идентификатор] action="delete" /></pre>

Навигация

'