vault backup: 2026-07-08 17:59:26

This commit is contained in:
2026-07-08 17:59:26 +03:00
parent 0ffb8aec5d
commit f3ea11ad81
2 changed files with 118 additions and 69 deletions

View File

@@ -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. ==Заполнения обязательного поля в услуге (не помню точное название, что-то про актирование)==

View File

@@ -1,69 +0,0 @@
## Авторизация
Используется кастомный header `X-Erp-Integration`
Значение хранится в конфигах у системы СУП.
Для дев и прод разные значения.
При получении значения необходимо его сравнить со значением хранящимся в конфиге.
Если значения не соответствуют, то вернуть ошибку.
## Создание черновика ВНСП
Используется endpoint с методом POST
Предлагаемый вариант
`api/1.0/openRequest/createClient`
### Описание процесса
1. Поле "Ответственный за выпуск ВнСп" заполняется
2. Поле "Продающее подразделение" заполняется автоматически, исходя из правил СУП
3. Поле "Руководитель проекта" заполняется значением из поля "Ответственный за выпуск ВнСп"
4. Поле "Условия оплаты" заполняется автоматически значением "100% предоплата"
5. Поле "Условия поставки" не заполняется. Автоматически проставить `true` в логическое поле "Нет поставки"
6. Поле "Вид договора" заполняется автоматически значением "Поставка товаров и оказание услуг"
7. Поле "Ставка НДС" заполняется автоматически значением "Без НДС, 20% и 22%"
8. Валюта договора заполняется автоматически, исходя из правил СУП и ДУП
### Запрос
```json
{
"legalEntityCode": "ARDS",
"customerInn": "7802020639",
"clientCode": "0000103001",
"managerCode": "00123087",
"directorProjectCode": "00122607",
"projectName": "",
"presaleCode": "AP02509"
}
```
```
"legalEntityCode" - Юридическое лицо (буквенный код юридического лица ARDS, ARDK и другие)
"customerInn" - Заказчик (передается ИНН)
"clientCode" - Клиент компании (передается код R3 - 10 цифр)
"managerCode" - Менеджер по продажам (передается код R3 - 8 цифр)
"directorProjectCode" - Директор проекта (передается код R3 - 8 цифр)
"projectName" - Название договора / проекта
"presaleCode" - Родительский проект (пресейл)
```
### Ответ
Успешный
```json
{
"success": true,
"errorMessage": ""
}
```
Неуспешный
```json
{
"success": false,
"errorMessage": "Текст ошибки"
}
```