vault backup: 2026-07-08 17:59:26
This commit is contained in:
@@ -0,0 +1,118 @@
|
||||
## Авторизация
|
||||
|
||||
Используется кастомный header `X-Erp-Integration`
|
||||
Значение хранится в конфигах у системы СУП.
|
||||
Для дев и прод разные значения.
|
||||
При получении значения необходимо его сравнить со значением хранящимся в конфиге.
|
||||
Если значения не соответствуют, то вернуть ошибку.
|
||||
|
||||
## Создание черновика ВНСП
|
||||
|
||||
Используется endpoint с методом POST
|
||||
|
||||
Предлагаемый вариант
|
||||
`api/1.0/openRequest/createAutoDraftVnSp`
|
||||
|
||||
### Описание процесса
|
||||
|
||||
1. Поле "Ответственный за выпуск ВнСп" заполняется ==УТОЧНИТЬ У ДУП==
|
||||
2. Поле "Продающее подразделение" заполняется автоматически, исходя из правил СУП
|
||||
3. Поле "Руководитель проекта" заполняется значением из поля "Ответственный за выпуск ВнСп"
|
||||
4. Поле "Условия оплаты" заполняется автоматически значением "100% предоплата"
|
||||
5. Поле "Условия поставки" не заполняется. Автоматически проставить `true` в логическое поле "Нет поставки"
|
||||
6. Поле "Вид договора" заполняется автоматически значением "Поставка товаров и оказание услуг"
|
||||
7. Поле "Ставка НДС" заполняется автоматически значением "Без НДС, 20% и 22%"
|
||||
8. Поле "Название договора / проекта" ==УТОЧНИТЬ У ДУП формат названия==
|
||||
9. Валюта договора заполняется автоматически, исходя из правил СУП и ДУП
|
||||
10. Подразделения-участники добавляются автоматически, необходимо смотреть на `divisions.mvzCode` и на основе этих данных создать нужные подразделения в ВНСП
|
||||
11. Услуги, которые привязаны к определенному подразделению хранятся в `divisions.products`
|
||||
12. Если при запросе приходит пустое поле `vnspCode`, тогда происходит создание черновика, иначе обновляем данные в уже существующей ВНСП
|
||||
13. В процессе работы со сделкой могут добавляться или удаляться продукты (услуги)
|
||||
1. При получении запроса на обновление нужно проверять список услуг ВНСП с тем, что пришел в запросе по полю `products.productId` если
|
||||
1. В ВНСП существует продукт, которого нет в запросе, то его нужно удалить из ВНСП, так как больше он не участвует в процессе
|
||||
2. В ВНСП отсутствует продукт, который есть в запросе, то его нужно добавить в ВНСП
|
||||
3. В ВНСП существует продукт, который есть в запросе, то его нужно обновить в ВНСП, так как могут поменяться суммы и прочее
|
||||
|
||||
### Запрос
|
||||
|
||||
```json
|
||||
{
|
||||
"legalEntityCode": "ARDS",
|
||||
"customerInn": "7802020639",
|
||||
"clientCode": "0000103001",
|
||||
"managerCode": "00123087",
|
||||
"directorProjectCode": "00122607",
|
||||
"projectName": "ADC / AI DS",
|
||||
"presaleCode": "AP02509",
|
||||
"divisions": [
|
||||
{
|
||||
"mvzCode": "U25",
|
||||
"products": [
|
||||
{
|
||||
"productLineCode": "00EDUU25000EDUA",
|
||||
"productCode": "EDUAADQMUCERT",
|
||||
"price": 1500000,
|
||||
"count": 2,
|
||||
"totalPrice": 2700000,
|
||||
"discount": 10,
|
||||
"tax": 22,
|
||||
"productId": "39ad0abc-edc2-4986-955d-65daa9b86512"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"applicationId": "672fc554-4be4-4ae7-934c-59968607078c",
|
||||
"vnspCode": "ST260051"
|
||||
}
|
||||
```
|
||||
|
||||
```
|
||||
"legalEntityCode" - Юридическое лицо (буквенный код юридического лица ARDS, ARDK и другие)
|
||||
"customerInn" - Заказчик (передается ИНН)
|
||||
"clientCode" - Клиент компании (передается код R3 - 10 цифр)
|
||||
"managerCode" - Менеджер по продажам (передается код R3 - 8 цифр)
|
||||
"directorProjectCode" - Директор проекта (передается код R3 - 8 цифр. Руководитель менеджера)
|
||||
"projectName" - Название договора / проекта
|
||||
"presaleCode" - Родительский проект (пресейл)
|
||||
"divisions" - Массив подразделений-исполнителей (передается массив)
|
||||
"mvzCode" - Код МВЗ списка продуктов для добавления подразделений-исполнителей
|
||||
"products" - Массив услуг, который относятся к одному подразделению (передается массив)
|
||||
"productLineCode" - код продуктовой линейки
|
||||
"productCode" - Код продукта SAP (18 символов)
|
||||
"price" - Цена продукта за единицу
|
||||
"count" - Количество единиц продукта
|
||||
"totalPrice" - Цена с учетом скидки (без НДС)
|
||||
"discount" - Процент скидки
|
||||
"tax" - НДС (0 - Без НДС, 20, 22)
|
||||
"productId" - Id записи в CRM (для создания, обновления и удаления данных в ВНСП. см. п. в Описание процесса)
|
||||
"applicationId" - Id заявки в CRM (нужно для обновления заявки в CRM и привязки ВНСП к заявке)
|
||||
"vnspCode" - Кодовый идентификатор ВНСП (пусто - создание черновика, заполнено - обновление данных)
|
||||
```
|
||||
|
||||
### Ответ
|
||||
|
||||
Успешный
|
||||
```json
|
||||
{
|
||||
"success": true,
|
||||
"errorMessage": ""
|
||||
}
|
||||
```
|
||||
|
||||
Неуспешный
|
||||
```json
|
||||
{
|
||||
"success": false,
|
||||
"errorMessage": "Текст ошибки"
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
## Вопросы для обсуждения
|
||||
|
||||
1. ==Принять решение по названию метода и его формату==
|
||||
2. ==Обсудить формат ответа и когда возвращается код ВНСП==
|
||||
3. ==Заполнения поля "Ответственный за выпуск ВнСп"==
|
||||
4. ==Даты актирования (дата сделки, дата завершения продукта или другая дата)==
|
||||
5. ==Формат заполнения поля "Название договора / проекта"==
|
||||
6. ==Заполнения обязательного поля в услуге (не помню точное название, что-то про актирование)==
|
||||
Reference in New Issue
Block a user