Files
obsidian/Работа/Интеграция СУП/Некоммерческий проект.md
Cosmo 0569bd5a0f 🗂️ Реструктуризация vault: логичная организация папок
Изменения:
- Интеграция СУП/ → Работа/Интеграция СУП/ (рабочие заметки вместе)
- Релизы/ → Работа/Релизы/ (рабочие заметки вместе)
- Другое/Собеседование .Net → Работа/ (рабочая тема)
- Другое/Своя игра → Личное/ (хобби)
- Smart home/ → Квартира/ (всё про квартиру в одном месте)
- Flutter/, Go/ → Dev/Flutter/, Dev/Go/ (учебные роадмапы)
- Dev/Pulse/competitors-analysis → Projects/Pulse/ (проект Pulse в одной папке)
- Twilio.md → Dev/ (техническая заметка)
- Tokens.md → Личное/Tokens (API keys).md
- Игры.md → Личное/Игры.md
- Удалены пустые папки: Другое/, Smart home/, Интеграция СУП/, Релизы/

Структура:
  Авто/        — автомобили
  Dev/         — разработка, изучение (Go, Flutter, репозитории)
  Квартира/    — квартира + умный дом
  Личное/      — личное, токены, игры, команды
  Мама/        — проекты для мамы
  Projects/    — Pulse App
  Работа/      — BPMSoft, интеграции, релизы
  Япония/      — путешествие
  saved-articles/ — сохранённые статьи
  voice-notes/ — голосовые заметки
2026-03-26 08:52:13 +00:00

3.0 KiB
Raw Blame History

Авторизация

Используется кастомный header X-Erp-Integration Значение хранится в конфигах у системы СУП. Для дев и прод разные значения. Данные передаются в формате base64, при получении значения необходимо его раскодировать и сравнить со значением хранящимся в конфиге. Если значения не соответствуют, то вернуть ошибку и код HTTP 403 - Unauthorized.

Создание некоммерческого проекта

Используется endpoint с методом POST

Предлагаемый вариант api/1.0/openRequest/createPresaleProject Обсудить данный момент после реализации и предоставить команде CRM

Запрос

{
	"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 (Пустое - создание проекта. Заполненное - редактирование проекта)
}

Ответ

Успешный

{
	"success": true,
	"errorMessage": ""
}

Неуспешный

{
	"success": false,
	"errorMessage": "Текст ошибки"
}

Проверка готовности создания проекта

Используется endpoint с методом GET

Предлагаемый вариант api/1.0/openRequest/view?applicationId={applicationId} Обсудить данный момент после реализации и предоставить команде CRM

Главная суть метода, что мы по значению applicationId из пункта Создание некоммерческого проекта получаем готовность создания проекта. Проект считается созданным, если у него заполнено поле ProjectId (уточнить как называется в базе данных поле AP ID)

Ответ

Проект еще создается

{
	"status": "Waiting",
	"projectId": "",
	"errorMessage": ""
}

Создание проекта завершено

{
	"status": "Success",
	"projectId": "123-123-124",
	"errorMessage": ""
}

Ошибка при создании проекта

{
	"status": "Error",
	"projectId": "",
	"errorMessage": "Описание ошибки"
}