Файл: Решение по предоставленному описанию. В качестве второго для интеграции можно использовать Postman.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 16.10.2024
Просмотров: 6
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Задание для разработчика ELMA365
Что необходимо сделать:
-
Ознакомиться с описанием интеграции; -
Используя триальную версию ELMA365 реализовать решение по предоставленному описанию. В качестве второго для интеграции можно использовать Postman. -
Провести онлайн демонстрацию реализованного решения.
Описание:
В компании реализована интеграция ELMA365 с мобильным приложением (МП) для приема заявок на банковское обслуживание.
Обмен данными между ELMA365 и МП выполняется синхронно через PUT и POST запросы.
В мобильном приложении клиент вводит в МП ФИО, телефон, паспортные данные. Данные отправляются в ELMA, в ELMA выполняется валидация, проверка на дубли и сохранение карточки. Результат отправляется в Мобильное приложение.
Условный формат сообщения 1:
{
"method":"PUT",
"headers":
{
//какой-то набор заголовков
"Accept":"application/json",
"Heventid":"5131f996-a34b-4f21-8649-81d101caa2a6",
"Hreceiver":"ELMA",
"X-Scheme":"https",
"X-Token":"75951b4b-8d00-4fb9-bb20-623977ab309f"
},
"body":"{
\"fullname\":
{
\"first\":\"Алина\",
\"middle\":\"Феоктистовна\",
\"last\":\"Кузьмина\"
},
\"phone\":\"79864452948\",
\"email\":\"alina.kuzmina@outlook.com\",
\"snils\":\"64570775828\",
\"inn\":\"772239171588\",
\"identityDocument\":
{
\"type\":\"PASSPORT\",
\"issueDate\":\"2022-01-01\",
\"number\":\"966565\",
\"serial\":\"4526\",
\"issuer\":\"Отделением УФМС России по г. Шахты\",
\"issuerCode\":\"680732\"
},
\"gender\":false,
\"birthPlace\":\"Россия, г. Шахты, Социалистическая ул., д. 19 кв.30\",
\"birthDate\":\"1983-08-16\",
\"citizenshipCountryCodes\":[{\"name\":\"РОССИЯ\",\"code\":\"RUS\"}],
\"addresses\":
{
\"regAddress\":{
\"postalCode\":\"450081\",
\"region\":\"Башкортостан\",
\"regionType\":\"Респ\",
\"city\":\"Уфа\",
\"cityType\":\"г\",
\"street\":\"Российская\",
\"streetType\":\"ул\",
\"house\":\"1\",
\"houseType\":\"д\",
\"houseFias\":\"a919e9db-74f5-411a-ae79-6dac182a663b\",
\"flat\":\"321\",
\"flatType\":\"кв\",
\"noFlat\":false
},
}",
"query":{}
}
Должна быть реализована валидация входящего сообщения:
-
Проверка на заполнение всех атрибутов. -
Валидация по маскам:-
serial - только цифры и 4 значения -
number - только цифры, 6 знаков -
phone - 11 символов, все цифры и первая 7 -
- birthDate - не младше 18 лет и не старше 100 лет
-
Если валидация не пройдена должен быть отправлен ответ об ошибке и перечень атрибутов, содержащих ошибку.
Данные из принимаемого сообщения должны сохраниться в экземпляр приложения CRM Заявка
После сохранения, необходимо выполнить дедубликацию заявки:
Ключевые поля:
-
ФИО, -
Дата рождения, -
Номер телефона
Выполняется поиск по сущности Заявка в системе. Если заявка не найдена, то создается новая и отправляется сообщение с ID заявки. Если заявка найдена, то текущая заявка устанавливается в статус Дубль и в канал отправляется соответствующее сообщение.