Initial commit
This commit is contained in:
85
Интеграция СУП/Некоммерческий проект.md
Normal file
85
Интеграция СУП/Некоммерческий проект.md
Normal file
@@ -0,0 +1,85 @@
|
||||
## Авторизация
|
||||
|
||||
Используется кастомный header `X-Erp-Integration`
|
||||
Значение хранится в конфигах у системы СУП.
|
||||
Для дев и прод разные значения.
|
||||
Данные передаются в формате base64, при получении значения необходимо его раскодировать и сравнить со значением хранящимся в конфиге.
|
||||
Если значения не соответствуют, то вернуть ошибку и код HTTP 403 - Unauthorized.
|
||||
## Создание некоммерческого проекта
|
||||
|
||||
Используется endpoint с методом POST
|
||||
|
||||
Предлагаемый вариант
|
||||
`api/1.0/openRequest/createPresaleProject` **Обсудить данный момент после реализации и предоставить команде CRM**
|
||||
### Запрос
|
||||
|
||||
```json
|
||||
{
|
||||
"orderName": "Альфа-Пласт ADC",
|
||||
"orderDate": "2025-12-31",
|
||||
"clientId": "123-123-123", // Значение `Код клиента из R3`
|
||||
"managerProjectId": "00123456", // Значение ИНС
|
||||
"headProjectId": "00123457", // Значение ИНС
|
||||
"directorProjectId": "00123458", // Значение ИНС
|
||||
"orderAmount": 12345.67,
|
||||
"productAttribute": 1, // (1 - ПО/ПО+ТП/ТП. 2 - Консалтинг. 3 - ПО+ТП+Консалтинг/ТП+Консалтинг/ПО+Консалтинг)
|
||||
"applicationId": "57ef229c-d8e4-4da5-b87a-7205e7eb7c43",
|
||||
"projectId": "" // AP ID (Пустое - создание проекта. Заполненное - редактирование проекта)
|
||||
}
|
||||
```
|
||||
|
||||
### Ответ
|
||||
|
||||
Успешный
|
||||
```json
|
||||
{
|
||||
"success": true,
|
||||
"errorMessage": ""
|
||||
}
|
||||
```
|
||||
|
||||
Неуспешный
|
||||
```json
|
||||
{
|
||||
"success": false,
|
||||
"errorMessage": "Текст ошибки"
|
||||
}
|
||||
```
|
||||
|
||||
## Проверка готовности создания проекта
|
||||
|
||||
Используется endpoint с методом GET
|
||||
|
||||
Предлагаемый вариант
|
||||
`api/1.0/openRequest/view?applicationId={applicationId}` **Обсудить данный момент после реализации и предоставить команде CRM**
|
||||
|
||||
Главная суть метода, что мы по значению `applicationId` из пункта `Создание некоммерческого проекта` получаем готовность создания проекта.
|
||||
Проект считается созданным, если у него заполнено поле `ProjectId` (уточнить как называется в базе данных поле `AP ID`)
|
||||
### Ответ
|
||||
|
||||
Проект еще создается
|
||||
```json
|
||||
{
|
||||
"status": "Waiting",
|
||||
"projectId": "",
|
||||
"errorMessage": ""
|
||||
}
|
||||
```
|
||||
|
||||
Создание проекта завершено
|
||||
```json
|
||||
{
|
||||
"status": "Success",
|
||||
"projectId": "123-123-124",
|
||||
"errorMessage": ""
|
||||
}
|
||||
```
|
||||
|
||||
Ошибка при создании проекта
|
||||
```json
|
||||
{
|
||||
"status": "Error",
|
||||
"projectId": "",
|
||||
"errorMessage": "Описание ошибки"
|
||||
}
|
||||
```
|
||||
Reference in New Issue
Block a user