disp

Настройка и авторизация
GET /catalogs/users/currentUser2
GET /catalogs/users/currentUser
НЕ АКТУАЛЬНО currentUser2
GET /catalogs/users/currentUser2

Responses

200 OK
Body
Object
id
string

ID текущего пользователя

Example:
fd366600-9e46-11ed-9e2b-00505692a275
name
string

Отображаемое имя текущего пользователя (передается логин вместо ФИО)

Example:
Иванов Иван Иванович
role
string

Наименование роли пользователя

Example:
Метролог
img
string

Ссылка на фотографию пользователя (должна генерироваться на бэке с учетом API Outlook и логина пользователя)

Example:
https://mail.company-name.com/api/v2.0/me/Photos/64x64/$value
Example 1
GET /catalogs/users/CurrentUser HTTP/1.1 

HTTP/1.1 200 OK 

Content-Type: application/json

{
    "id": "fd366600-9e46-11ed-9e2b-00505692a275",
    "name": "Иванов Иван Иванович",
    "role": "Метролог",
    "img": "https://mail.company-name.com/api/v2.0/me/Photos/64x64/$value"
}
currentUser
GET /catalogs/users/currentUser

Информация о текущем пользователе

Responses

200 OK
Body
Object
id
string

Описание: ID текущего пользователя.

1C: ID текущего пользователя. Из справочника “Пользователи”.

Angular: На экран не выводится.

Example:
fd366600-9e46-11ed-9e2b-00505692a275
login
string

Описание: Логин пользователя. Доменная аутентификация.

1C: Логин текущего пользователя. Из справочника “Пользователи”.

Angular: ФИО текущего пользователя. Отображается на всех экранах системы в правом верхнем углу.

Example:
\\gazprom-neft\Ivanov.II
role
string

ПОКА НЕ АКТУАЛЬНО

Описание: Наименование роли пользователя.

1C: Наименование роли текущего пользователя.

Angular: Отображается на всех экранах системы в правом верхнем углу под ФИО.

Example:
Метролог
img
string

ПОКА НЕ АКТУАЛЬНО

Описание: Ссылка на фотографию текущего пользователя.

1C: Ссылка на фотографию текущего пользователя. Должна генерироваться на бэке с учетом API Outlook и логина пользователя.

Angular: Отображается на всех экранах системы в правом верхнем углу слева от ФИО.

Example:
https://mail.company-name.com/api/v2.0/me/Photos/64x64/$value
Examples
{
    "id": "fd366600-9e46-11ed-9e2b-00505692a275",
    "login": "\\\\gazprom-neft\\Ivanov.II",
    "role": "Метролог",
    "img": "https://mail.company-name.com/api/v2.0/me/Photos/64x64/$value"
}
Управление сценариями
POST /scenario/list
POST /scenario/write
DELETE /scenario/delete
POST /scenario/file
POST /scenario/calculate
GET /scenario/calculationStatus
POST /scenario/cancelCalculation
scenarioList
POST /scenario/list

Запрос списка сценариев. Вызывается каждый раз при переходе на экран “Планирование”, при применении/сбросе фильтров, при смене папки со сценариями и при переходе по страницам сценариев.

Request body

Object
searchScenarioName
string

Описание: Поиск по наименованию сценария.

1C: Отбор по наименованию сценария в таблице “ГПН_Сценарий” из поля “НаименованиеСценария”.

Angular: Передавать значение, введенное в фильтре “Наименование” на экране “Планирование”.

Example:
Сценарий №1
selectStatus
Array

Описание: Фильтрация по статасу сценариев с мультиселектом. Соответствие:

  • “Новый” - “NEW”
  • “Готов к расчету” - “READY”
  • “В процессе” - “IN_PROGRESS”
  • “Отменен” - “CANCELLED”
  • “Ошибка” - “ERROR”
  • “Рассчитано” - “CALCULATED”
  • “Ожидание” - “WAIT”

1C: Отбор по списку статусов сценария в таблице “ГПН_Сценарий” из поля “Статус”. Соответствие:

  • “NEW” - “Новый”
  • “READY” - “ГотовКРасчету”
  • “IN_PROGRESS” - “ВПроцессе”
  • “CANCELLED” - “Отменен”
  • “ERROR” - “Ошибка”
  • “CALCULATED” - “Рассчитано”
  • “WAIT” - “Ожидание”

Angular: Передавать список заданных статусов в фильтре “Статус” на экране “Планирование”. Соответствие:

  • “Новый” - “NEW”
  • “Готов к расчету” - “READY”
  • “В процессе” - “IN_PROGRESS”
  • “Отменен” - “CANCELLED”
  • “Ошибка” - “ERROR”
  • “Рассчитано” - “CALCULATED”
  • “Ожидание” - “WAIT”
string
Example:
NEW
selectPlanningDateStart
string

Описание: Начало интервала планирования.

1C: Отбор по началу интервала планирования в таблице “ГПН_Сценарий” из поля “НачалоИнтервалаПланирования”.

Angular: Передавать дату начала интервала, заданного в фильтре “Интервал планирования” на экране “Планирование”.

Example:
2025-09-01T16:26:07+03:00
selectPlanningDateEnd
string

Описание: Конец интервала планирования.

1C: Отбор по концу интервала планирования в таблице “ГПН_Сценарий” из поля “КонецИнтервалаПланирования”.

Angular: Передавать дату конца интервала, заданного в фильтре “Интервал планирования” на экране “Планирование”.

Example:
2025-09-30T16:26:07+03:00
favorites
boolean

Описание: Признак, который определяет какие сценарии будут отображаться на экране: только избранные сценарии или все сценарии, то есть в какой папке находится пользователь: “true” - “Избранные”; “false” - “Все сценарии”.

1C: “true” - применить дополнительный отбор по пользователю, сделавшему запрос - поле “Пользователь” в таблице “ГПН_Избранное” ; “false” - нет дополнительного отбора.

Angular: Передавать “true”, если пользователь находится в папке “Избранные” на экране “Планирование”. Передавать “false”, если пользователь находится в папке “Все сценарии” на экране “Планирование”.

Example:
true
sorting
Object

Объект для передачи параметров сортировки для пагинации

field
string

Описание: Поле для сортировки.

1C: Полученный список сценариев после применения всех фильтров отсортировать по полученному параметру. Соответствие:

  • “createDate” - поле “ДатаСоздания” из таблицы “ГПН_Сценарий”;
  • “scenarioName” - поле “НаименованиеСценария” из таблицы “ГПН_Сценарий”;
  • “planningDateStart” - поле “НачалоИнтервалаПланирования” из таблицы “ГПН_Сценарий”;
  • “changeDate” - поле “ДатаИзменения” из таблицы “ГПН_Сценарий”.

Angular: Значение по умолчанию: “createDate”. Передавать значение по умолчанию, если не задана сортировка. Соответствие:

  • “Дата создания” - “createDate”;
  • “Наименование” - “scenarioName”;
  • “Интервал планирования” - “planningDateStart”;
  • “Дата изменения” - “changeDate”.

На текущем этапе у пользователя нет возможности задания сортировки.

Example:
createDate
direction
string

Описание: Направление сортировки.

1C: Полученный список сценариев после применения всех фильтров отсортировать по полученному параметру в нужном направлении. “DESC” - сортировка данных в порядке убывания; “ASC” - сортировка данных в порядке возрастания.

Angular: Значение по умолчанию: “DESC”. Передавать значение по умолчанию, если не задана сортировка. “DESC” - сортировка данных в порядке убывания; “ASC” - сортировка данных в порядке возрастания.

На текущем этапе у пользователя нет возможности задания сортировки.

Example:
DESC
pagination
Object

Объект для передачи параметров страниц для пагинации

pageSize
integer

Описание: Количество элементов на странице (25, 50, 75, 100).

1C: Полученное количество сценариев с учетом сортировки и применения всех фильтров нужно будет разделить на “pageSize” для получения количества страниц и передачи этого значения в ответе в поле “totalPages”.

+Валидация: проверяем соответствует ли переданное значение одному из допустимых значений (25, 50, 75, 100). Если соответствует, то используем без изменения; если не соответствует, то устанавливаем значение по умолчанию: 50.

Angular: Значение по умолчанию - “50”. Передавать выбранное пользователем значение из раскрывающегося списка. При смене значения в “pageSize” необходимо сбросить “pageNumber” на значение по умолчанию: “1”.

Example:
50
pageNumber
integer

Описание: Номер текущей страницы (начинается с 1).

1C: Номер текущей страницы. Например, “pageSize” = “50”, “pageNumber” = “2” и полученное количество сценариев с учетом сортировки и применения всех фильтров равняется “500”. Значит в ответ в массив “scenarios” должны попасть вторые (“pageNumber” = “2”) 50 сценариев (“pageSize” = “50”).

+Валидация: Если номер страницы меньше “1”, то меняем на “1”. Если номер страницы больше максимального, то меняем на максимальный. Если нет данных - всё равно первая страница.

Angular: Значение по умолчанию - “1”. Передавать выбранное пользователем значение. При смене значения в “pageNumber”, значение в “pageSize” сохраняется.

Example:
1
Examples
{
    "searchScenarioName": "Сценарий №1",
    "selectStatus": [
        "NEW"
    ],
    "selectPlanningDateStart": "2025-09-01T16:26:07+03:00",
    "selectPlanningDateEnd": "2025-09-30T16:26:07+03:00",
    "favorites": true,
    "sorting": {
        "field": "createDate",
        "direction": "DESC"
    },
    "pagination": {
        "pageSize": 50,
        "pageNumber": 1
    }
}

Responses

200 OK
Body
Object
scenarios
Array

Описание: Массив для передачи списка сценариев, которые будут отображаться на фронте.

Object
scenarioId
string

Описание: ID сценария.

1C: ID сценария из таблицы “ГПН_Сценарий”.

Angular: На экран не выводится.

Example:
09de65a8-a0ac-49ca-b2dl-d2c99c04c109
scenarioName
string

Описание: Наименование сценария.

1C: Наименование сценария из таблицы “ГПН_Сценарий” из поля “НаименованиеСценария”.

Angular: Наименование сценария отображается в центральной области на экране “Планирование” в колонке “Наименование” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в заголовке.

Example:
Сценарий №1
favorite
boolean

Описание: Находится ли этот сценарий в папке “Избранное” для текущего пользователя: “true” - Да, находится"; “false” - Нет, не находится". Проверить есть ли этот сценарий в таблице “ГПН_Избранное” с отбором по пользователю, сделавшему запрос.

Фронт: “true” - элемент «☆» с золотой заливкой; “false” - элемент «☆» без заливки.

Example:
true
scenarioStatus
string

Описание: Статус сценария.

1C: Статус сценария из таблицы “ГПН_Сценарий” из поля “Статус”.

Angular: Статус сценария отображается в центральной области на экране “Планирование” в колонке “Наименование” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в рамке соответствующего цвета под заголовком с наименованием сценария.

Example:
NEW
planningDateStart
string

Описание: Начало интервала планирования.

1C: Начало интервала планирования из таблицы “ГПН_Сценарий” из поля “НачалоИнтервалаПланирования”.

Angular: Первое из двух значений, отображаемых в центральной области на экране “Планирование” в колонке “Интервал планирования” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в поле “Интервал планирования”.

Example:
2025-09-01T16:26:07+03:00
planningDateEnd
string

Описание: Конец интервала планирования.

1C: Конец интервала планирования из таблицы “ГПН_Сценарий” из поля “КонецИнтервалаПланирования”.

Angular: Второе из двух значений, отображаемых в центральной области на экране “Планирование” в колонке “Интервал планирования” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в поле “Интервал планирования”.

Example:
2025-09-30T16:26:07+03:00
createDate
string

Описание: Дата создания сценария.

1C: Дата создания сценария из таблицы “ГПН_Сценарий” из поля “ДатаСоздания”.

Angular: Дата создания сценария отображается в центральной области на экране “Планирование” в колонке “Дата создания” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в поле “Дата Создания”.

Example:
2025-08-25T16:26:07+03:00
createAuthorLogin
string

Описание: Логин пользователя. ФИО пользователя.

1C: Логин пользователя из таблицы “ГПН_Сценарий” из поля “АвторСоздания”.

Angular: ФИО пользователя отображается в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, на экране “Планирование” в поле “Автор создания”.

Example:
\\gazprom-neft\Ivanov.II
changeDate
string

Описание: Дата изменения сценария.

1C: Дата изменения сценария из таблицы “ГПН_Сценарий” из поля “ДатаИзменения”. Если нет значения, то передавать “null”.

Angular: Дата изменения сценария отображается в центральной области на экране “Планирование” в колонке “Дата изменения” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в поле “Дата Изменения”. Если “null”, то ничего не отображается.

Example:
2025-09-25T16:26:07+03:00
changeAuthorLogin
string

Описание: Логин пользователя. ФИО пользователя.

1C: Логин пользователя из таблицы “ГПН_Сценарий” из поля “АвторИзменения”. Если нет значения, то передавать “null”.

Angular: ФИО пользователя отображается в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, на экране “Планирование” в поле “Автор изменения”. Если “null”, то ничего не отображается.

Example:
\\gazprom-neft\Ivanov.II
description
string

Описание: Описание сценария.

1C: Описание сценария из таблицы “ГПН_Сценарий” из поля “Описание”. Если нет значения, то передавать “null”.

Angular: Описание сценария отображается в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, на экране “Планирование” в поле “Описание”. Если “null”, то ничего не отображается.

Example:
Описание для сценария №1
pagination
Object
currentPage
integer

Описание: Текущая страница.

1C: “pageNumber” из запроса, если значение валидное ИЛИ значение, замененно на валидное.

Валидация: Если номер страницы меньше “1”, то меняем на “1”. Если номер страницы больше максимального, то меняем на максимальный. Если нет данных - всё равно первая страница.

Angular: Подсветка номера текущей страницы.

Example:
1
pageSize
integer

Описание: Размер страницы.

1C: “pageSize” из запроса, если значение валидное ИЛИ значение, замененно на валидное.

Валидация: проверяем соответствует ли переданное значение одному из допустимых значений (25, 50, 75, 100). Если соответствует, то используем без изменения; если не соответствует, то устанавливаем значение по умолчанию: 50.

Angular: Значение в рамке “Сценариев на странице”.

Example:
50
totalCount
integer

Описание: Общее количество записей.

1C: Полученное количество сценариев с учетом сортировки и применения всех фильтров.

Angular: Значение в подписи “Показано 1-100 сценариев из 500

Example:
500
totalPages
integer

Описание: Общее количество страниц.

1C: “totalCount”/“pageSize”.

Angular: Номер последней страницы. Если страниц больше 7, то добавляется многоточие после 3 страницы, а после многоточия номер последней страницы.

Example:
10
hasPrevious
boolean

Описание: Есть ли предыдущая страница?

1C: “false” - если “currentPage” = “1”, иначе “true”.

Angular: “false” - скрыть/заблокировать кнопки “Предыдущая страница” и “Первая страница”. “true” - показать/активировать кнопки “Предыдущая страница” и “Первая страница”.

Example:
false
hasNext
boolean

Описание: Есть ли следующая страница?

1C: “false” - если “currentPage” = “totalPages”, иначе “true”.

Angular: “false” - скрыть/заблокировать кнопки “Следующая страница” и “Последняя страница”. “true” - показать/активировать кнопки “Следующая страница” и “Последняя страница”.

Example:
true
filterStatuses
Array

Массив значений для выпадающего списка статусов в фильтре “Статус”

Object
statusCode
string

Описание: Статус сценария.

1C: Передавать все коды статуса сценария из таблицы “ГПН_СтатусыСценариев” из поля “Комментарий”. Соответствие:

  • “Новый” - “NEW”
  • “ГотовКРасчету” - “READY”
  • “ВПроцессе” - “IN_PROGRESS”
  • “Отменен” - “CANCELLED”
  • “Ошибка” - “ERROR”
  • “Рассчитано” - “CALCULATED”
  • “Ожидание” - “WAIT”

Angular: Список значений отображается в выпадающем списке в фильтре “Статус”. Соответствие:

  • “NEW” - “Новый”
  • “READY” - “Готов к расчету”
  • “IN_PROGRESS” - “В процессе”
  • “CANCELLED” - “Отменен”
  • “ERROR” - “Ошибка”
  • “CALCULATED” - “Рассчитано”
  • “WAIT” - “Ожидание”
Example:
NEW
count
integer

Описание: Количество сценариев в этом статусе.

1C: Количество сценариев в этом статусе. То есть количество записей с отбором по этому статусу из таблицы “ГПН_Сценарий”.

Angular: Список значений отображается в выпадающем списке в фильтре “Статус” следующим образом: “statusCode” + " (" + “count” + “)”. Например: “Новый (15)”.

Example:
15
Examples
{
    "scenarios": [
        {
            "scenarioId": "09de65a8-a0ac-49ca-b2dl-d2c99c04c109",
            "scenarioName": "Сценарий №1",
            "favorite": "true",
            "scenarioStatus": "NEW",
            "planningDateStart": "2025-09-01T16:26:07+03:00",
            "planningDateEnd": "2025-09-30T16:26:07+03:00",
            "createDate": "2025-08-25T16:26:07+03:00",
            "createAuthorLogin": "\\\\gazprom-neft\\Ivanov.II",
            "changeDate": "2025-09-25T16:26:07+03:00",
            "changeAuthorLogin": "\\\\gazprom-neft\\Ivanov.II",
            "description": "Описание для сценария №1"
        }
    ],
    "pagination": {
        "currentPage": 1,
        "pageSize": 50,
        "totalCount": 500,
        "totalPages": 10,
        "hasPrevious": "false",
        "hasNext": true
    },
    "filterStatuses": [
        {
            "statusCode": "NEW",
            "count": 15
        }
    ]
}
НЕ АКТУАЛЬНО ScenarioList2 ПАГАНАЦИЯ
POST /scenario/list

Запрос списка сценариев

Request body

Object
searchScenarioName
string

Описание: Поиск по наименованию сценария.

1C: Отбор по наименованию сценария в таблице “ГПН_Сценарии” из поля “НаименованиеСценария”.

Angular: Передавать значение, введенное в фильтре “Наименование” на экране “Планирование”.

Example:
Сценарий №1
selectStatus
Array

Описание: Фильтрация по статасу сценариев с мультиселектом.

Может принимать следующие значения: “NEW” - “Новый”, “READY” - “Готов к расчету”, “IN_PROGRESS” - “В процессе”, “CANCELLED” - “Отменен”, “ERROR” - “Ошибка”, “CALCULATED” - “Рассчитано”, “WAIT” - “Ожидание”.

1C: Отбор по списку статусов сценария в таблице “ГПН_Сценарии” из поля “Статус”.

Angular: Передавать список заданных статусов в фильтре “Статус” на экране “Планирование”.

string
Example:
NEW
selectPlanningDateStart
string

Описание: Начало интервала планирования.

1C: Отбор по началу интервала планирования в таблице “ГПН_Сценарии” из поля “НачалоИнтервалаПланирования”.

Angular: Передавать дату начала интервала, заданного в фильтре “Интервал планирования” на экране “Планирование”.

Example:
2025-09-01T16:26:07+03:00
selectPlanningDateEnd
string

Описание: Конец интервала планирования.

1C: Отбор по концу интервала планирования в таблице “ГПН_Сценарии” из поля “КонецИнтервалаПланирования”.

Angular: Передавать дату конца интервала, заданного в фильтре “Интервал планирования” на экране “Планирование”.

Example:
2025-09-30T16:26:07+03:00
currentQuantity????????????????????????????
number

Описание: Для пагинации - текущее количество отображаемых на фронте записей (сценариев).

1C:

Angular:

Example:
2
defaultQuantity??????????????????????????????
number

Описание: Для пагинации - количество записей которое нужно вернуть с бэка.

1C:

Angular:

Example:
50
favorites
boolean

Описание: Признак, который определяет какие сценарии будут отображаться на экране: только избранные сценарии или все сценарии, то есть в какой папке находится пользователь: “true” - “Избранные”; “false” - “Все сценарии”.

1C: “true” - применить дополнительный отбор по пользователю, сделавшему запрос - поле “Пользователь” в таблице “ГПН_Избранное” ; “false” - нет дополнительного отбора.

Angular: Передавать “true”, если пользователь находится в папке “Избранные” на экране “Планирование”. Передавать “false”, если пользователь находится в папке “Все сценарии” на экране “Планирование”.

Example:
true
sorting
Object

Объект для передачи параметров сортировки для пагинации

field
string

Описание: Поле для сортировки.

1C: Полученный список сценариев после применения всех фильтров отсортировать по полученному параметру. “createDate” - поле “ДатаСоздания” из таблицы “ГПН_Сценарии”.

Angular: Всегда передавать “createDate”.

Example:
createDate
direction
string

Описание: Направление сортировки.

1C: Полученный список сценариев после применения всех фильтров отсортировать по полученному параметру в нужном направлении. “DESC” - сортировка данных в порядке убывания; “ASC” - сортировка данных в порядке возрастания.

Angular: Всегда передавать “DESC”.

Example:
DESC
pagination
Object

Объект для передачи параметров страниц для пагинации

pageSize
integer

Описание: Количество элементов на странице (25, 50, 75, 100).

1C: Полученное количество сценариев с учетом сортировки и применения всех фильтров нужно будет разделить на “pageSize” для получения количества страниц и передачи этого значения в ответе в поле “totalPages”.

+Валидация: проверяем соответствует ли переданное значение одному из допустимых значений (25, 50, 75, 100). Если соответствует, то используем без изменения; если не соответствует, то устанавливаем значение по умолчанию: 50.

Angular: Передавать выбранное пользователем значение из раскрывающегося списка. При смене значения “pageNumber” сбрасывается на “1”.

Example:
50
pageNumber
integer

Описание: Номер текущей страницы (начинается с 1).

1C: Номер текущей страницы. Например, “pageSize” = “50”, “pageNumber” = “2” и полученное количество сценариев с учетом сортировки и применения всех фильтров равняется “500”. Значит в ответ в массив “scenarios” должны попасть вторые (“pageNumber” = “2”) 50 сценариев (“pageSize” = “50”).

+Валидация: Если номер страницы меньше “1”, то меняем на “1”. Если номер страницы больше максимального, то меняем на максимальный. Если нет данных - всё равно первая страница.

Angular: Передавать выбранное пользователем значение. При смене значения “pageSize” сохраняется.

Example:
1
Examples
{
    "searchScenarioName": "Сценарий №1",
    "selectStatus": [
        "NEW"
    ],
    "selectPlanningDateStart": "2025-09-01T16:26:07+03:00",
    "selectPlanningDateEnd": "2025-09-30T16:26:07+03:00",
    "currentQuantity????????????????????????????": 2,
    "defaultQuantity??????????????????????????????": 50,
    "favorites": true,
    "pagination": {
        "pageNumber": 1,
        "pageSize": 50
    },
    "sorting": {
        "field": "createDate",
        "direction": "DESC"
    }
}

Responses

200 OK
Body
Object
scenarios
Array

Описание: Массив для передачи списка сценариев, которые будут отображаться на фронте.

Object
scenarioId
string

Описание: ID сценария.

1C: ID сценария из таблицы “ГПН_Сценарии”.

Angular: На экран не выводится.

Example:
09de65a8-a0ac-49ca-b2dl-d2c99c04c109
scenarioName
string

Описание: Наименование сценария.

1C: Наименование сценария из таблицы “ГПН_Сценарии” из поля “НаименованиеСценария”.

Angular: Наименование сценария отображается в центральной области на экране “Планирование” в колонке “Наименование” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в заголовке.

Example:
Сценарий №1
favorite
boolean

Описание: Находится ли этот сценарий в папке “Избранное” для текущего пользователя: “true” - Да, находится"; “false” - Нет, не находится". Проверить есть ли этот сценарий в таблице “ГПН_Избранное” с отбором по пользователю, сделавшему запрос.

Фронт: “true” - символ «☆» с золотой заливкой; “false” - символ «☆» без заливки.

Example:
true
scenarioStatus
string

Описание: Статус сценария.

1C: Статус сценария из таблицы “ГПН_Сценарии” из поля “Статус”.

Angular: Статус сценария отображается в центральной области на экране “Планирование” в колонке “Наименование” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в рамке соответствующего цвета под заголовком с наименованием сценария.

Example:
NEW
planningDateStart
string

Описание: Начало интервала планирования.

1C: Начало интервала планирования из таблицы “ГПН_Сценарии” из поля “НачалоИнтервалаПланирования”.

Angular: Первое из двух значений, отображаемых в центральной области на экране “Планирование” в колонке “Интервал планирования” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в поле “Интервал планирования”.

Example:
2025-09-01T16:26:07+03:00
planningDateEnd
string

Описание: Конец интервала планирования.

1C: Конец интервала планирования из таблицы “ГПН_Сценарии” из поля “КонецИнтервалаПланирования”.

Angular: Второе из двух значений, отображаемых в центральной области на экране “Планирование” в колонке “Интервал планирования” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в поле “Интервал планирования”.

Example:
2025-09-30T16:26:07+03:00
createDate
string

Описание: Дата создания сценария.

1C: Дата создания сценария из таблицы “ГПН_Сценарии” из поля “ДатаСоздания”.

Angular: Дата создания сценария отображается в центральной области на экране “Планирование” в колонке “Дата создания” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в поле “Дата Создания”.

Example:
2025-08-25T16:26:07+03:00
createAuthorLogin
string

Описание: Логин пользователя.

1C: Логин пользователя из справочника “Пользователи”.

Angular: На экран не выводится.

Example:
\\gazprom-neft\Ivanov.II
createAuthorFIO
string

Описание: ФИО пользователя.

1C: ФИО пользователя из таблицы “ГПН_Сценарии” из поля “АвторСоздания”.

Angular: ФИО пользователя отображается в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, на экране “Планирование” в поле “Автор Создания”.

Example:
Иванов И.И.
changeDate
string

Описание: Дата изменения сценария.

1C: Дата изменения сценария из таблицы “ГПН_Сценарии” из поля “ДатаИзменения”. Если нет значения, то передавать “null”.

Angular: Дата изменения сценария отображается в центральной области на экране “Планирование” в колонке “Дата изменения” и в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, в поле “Дата Изменения”. Если “null”, то ничего не отображается.

Example:
2025-09-25T16:26:07+03:00
changeAuthorLogin
string

Описание: Логин пользователя.

1C: Логин пользователя из справочника “Пользователи”.

Angular: На экран не выводится.

Example:
\\gazprom-neft\Ivanov.II
changeAuthorFIO
string

Описание: ФИО пользователя.

1C: ФИО пользователя из таблицы “ГПН_Сценарии” из поля “АвторИзменения”. Если нет значения, то передавать “null”.

Angular: ФИО пользователя отображается в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, на экране “Планирование” в поле “Автор Изменения”. Если “null”, то ничего не отображается.

Example:
Иванов И.И.
description
string

Описание: Описание сценария.

1C: Описание сценария из таблицы “ГПН_Сценарии” из поля “Описание”. Если нет значения, то передавать “null”.

Angular: Описание сценария отображается в окне с дополнительной информацией по выбранному сценарию, расположенному в правой части экрана, на экране “Планирование” в поле “Описание”. Если “null”, то ничего не отображается.

Example:
Описание для сценария №1
pagination
Object
currentPage
integer

Описание: Текущая страница.

1C: “pageNumber” из запроса, если значение валидное ИЛИ значение, замененно на валидное (описание в запросе).

Angular: Подсветка номера текущей страницы.

Example:
1
pageSize
integer

Описание: Размер страницы.

1C: “pageSize” из запроса, если значение валидное ИЛИ значение, замененно на валидное (описание в запросе).

Angular: Значение в рамке “Сценариев на странице”.

Example:
50
totalCount
integer

Описание: Общее количество записей.

1C: Полученное количество сценариев с учетом сортировки и применения всех фильтров.

Angular: Значение в подписи “Показано 1-100 сценариев из 500

Example:
500
totalPages
integer

Описание: Общее количество страниц.

1C: “totalCount”/“pageSize”.

Angular: Номер последней страницы. Если страниц больше 10, то добавляется многоточие после 3 страницы, а после многоточия номер последней страницы.

Example:
10
hasPrevious
boolean

Описание: Есть ли предыдущая страница?

1C: “false” - если “currentPage” = “1”, иначе “true”.

Angular: “false” - скрыть/заблокировать кнопки “Предыдущая страница” и “Первая страница”. “true” - показать/активировать кнопки “Предыдущая страница” и “Первая страница”.

Example:
false
hasNext
boolean

Описание: Есть ли следующая страница?

1C: “false” - если “currentPage” = “totalPages”, иначе “true”.

Angular: “false” - скрыть/заблокировать кнопки “Следующая страница” и “Последняя страница”. “true” - показать/активировать кнопки “Следующая страница” и “Последняя страница”.

Example:
true
Examples
{
    "scenarios": [
        {
            "scenarioId": "09de65a8-a0ac-49ca-b2dl-d2c99c04c109",
            "scenarioName": "Сценарий №1",
            "favorite": "true",
            "scenarioStatus": "NEW",
            "planningDateStart": "2025-09-01T16:26:07+03:00",
            "planningDateEnd": "2025-09-30T16:26:07+03:00",
            "createDate": "2025-08-25T16:26:07+03:00",
            "createAuthorLogin": "\\\\gazprom-neft\\Ivanov.II",
            "createAuthorFIO": "Иванов И.И.",
            "changeDate": "2025-09-25T16:26:07+03:00",
            "changeAuthorLogin": "\\\\gazprom-neft\\Ivanov.II",
            "changeAuthorFIO": "Иванов И.И.",
            "description": "Описание для сценария №1"
        }
    ],
    "pagination": {
        "currentPage": 1,
        "pageSize": 50,
        "totalCount": 500,
        "totalPages": 10,
        "hasPrevious": "false",
        "hasNext": true
    }
}
scenarioWrite
POST /scenario/write

Создание/редактирование сценария. Вызывается при нажатии на кнопку “Сохранить” в окне создания/редактирования сценария.

Request body

Object
scenarioId
string

Описание: ID сценария.

1C: ID сценария из таблицы “ГПН_Сценарий”. Если “null”, то это создаие сценария и ID нужно сгенерировать; если значение есть, то это редактирование сценария.

  • Поле “Статус” в таблице “ГПН_Сценарий”: Если “scenarioId” = “null”, то записать значение “Новый”, иначе оставить текущее значение без изменений.

Angular: При создании сценария передавать “null”. При редактировании сценария передавать известный ID сценария.

Example:
09de65a8-a0ac-49ca-b2dl-d2c99c04c109
scenarioName
string

Описание: Наименование сценария.

1C: Записать наименование сценария в таблицу “ГПН_Сценарий” в поле “НаименованиеСценария”.

Angular: Наименование сценария задается в окне создания или в окне редактирования сценария, расположенными в правой части экрана. Обязательное поле.

Example:
Сценарий №1
planningDateStart
string

Описание: Начало интервала планирования сценария.

1C: Записать начало интервала планирования в таблицу “ГПН_Сценарий” в поле “НачалоИнтервалаПланирования”.

Angular: Начало интервала планирования сценария задается в окне создания или в окне редактирования сценария, расположенными в правой части экрана. Обязательное поле. Приводить к началу дня.

Example:
2025-09-01T00:00:00+03:00
planningDateEnd
string

Описание: Конец интервала планирования сценария.

1C: Записать конец интервала планирования в таблицу “ГПН_Сценарий” в поле “КонецИнтервалаПланирования”.

Angular: Конец интервала планирования сценария задается в окне создания или в окне редактирования сценария, расположенными в правой части экрана. Обязательное поле. Приводить к концу дня.

Example:
2025-09-30T23:59:59+03:00
description
string

Описание: Описание сценария.

1C: Записать описание сценария в таблицу “ГПН_Сценарий” в поле “Описание”.

Angular: Описание сценария задается в окне создания или в окне редактирования сценария, расположенными в правой части экрана. Необязательное поле: если значение не задается, то передавать “null”.

Example:
Описание для сценария №1
Examples
{
    "scenarioId": "09de65a8-a0ac-49ca-b2dl-d2c99c04c109",
    "scenarioName": "Сценарий №1",
    "planningDateStart": "2025-09-01T00:00:00+03:00",
    "planningDateEnd": "2025-09-30T23:59:59+03:00",
    "description": "Описание для сценария №1"
}

Responses

200 OK

Структура ответа при успешной записи (“actionMade” = “true”)

Body
Object
actionMade
boolean

Описание: Выполнено ли действие (запись/редактирование)? “true” - выполнено; “false” - не выполнено, то есть ошибка.

1C: Передавать “true” при успешной записи; “false” - при ошибке записи.

Angular: На фронте не отображается. Быстрая индикация успешности операции.

Example:
true
scenarioId
string

Описание: ID сценария.

1C: ID сценария из таблицы “ГПН_Сценарий”.

Angular: На фронте не отображается. Сохранить в состоянии компонента для будущих операций.

Example:
09de65a8-a0ac-49ca-b2dl-d2c99c04c109
operationType
string

ПОКА ПОД ВОПРОСОМ

Описание: Тип операции: создание или редактирование.

1C: Тип операции: создание или редактирование. Если создание, то “CREATE”: если редактирование, то “UPDATE”

Angular: Логика вида правого окна может быть завязана на действие (“Создание” или “Редактирование”) и статус (“Новый” или “Готов к расчету”)

Example:
CREATE
scenarioStatus
string

ПОКА ПОД ВОПРОСОМ

Описание:

1C:

Angular: Логика вида правого окна может быть завязана на действие (“Создание” или “Редактирование”) и статус (“Новый” или “Готов к расчету”)

Example:
NEW
Examples
{
    "actionMade": true,
    "scenarioId": "09de65a8-a0ac-49ca-b2dl-d2c99c04c109",
    "operationType": "CREATE",
    "scenarioStatus": "NEW"
}
200 OK

Структура ответа при ошибке (“actionMade” = “false”)

Body
Object
actionMade
boolean

Описание: Выполнено ли действие (запись/редактирование)? “true” - выполнено; “false” - не выполнено, то есть ошибка.

1C: Передавать “true” при успешной записи; “false” - при ошибке записи.

Angular: На фронте не отображается. Быстрая индикация успешности операции.

Example:
false
errors
Array

Массив ошибок

Object
errorCode
string

Описание: Код ошибки.

1C: Код ошибки из таблицы “ГПН_Ошибки” из поля “КодОшибки”. Какой код передавать:

  • "VALIDATION_ERROR", если в запросе приходит “null” в одном из полей (“scenarioName” или “planningDateStart” или “planningDateEnd”), то передавать код “VALIDATION_ERROR”.
  • "NO_PERMISSION", если у пользователя, сделавшего запрос нет прав на совершение этого действия (запись или редактирование), то передавать код “NO_PERMISSION”.
  • "SCENARIO_NAME_TOO_LONG", если в поле “scenarioName” пришло больше 150 символов, то передавать код “SCENARIO_NAME_TOO_LONG”.
  • "PLANNING_INTERVAL_INVALID", если в полях “planningDateStart” и “planningDateEnd” приходят различные месяцы, то передавать код “PLANNING_INTERVAL_INVALID”.
  • "DESCRIPTION_TOO_LONG", если в поле “description” пришло больше 999 символов, то передавать код “DESCRIPTION_TOO_LONG”.

Angular: Действия на фронте в соответствии с кодом:

  • "VALIDATION_ERROR": подсветить красным поля “Наименование сценария” и “Интервал планирования”.
  • "SCENARIO_NAME_TOO_LONG": подсветить красным поле “Наименование сценария”.
  • "PLANNING_INTERVAL_INVALID": подсветить красным поле “Интервал планирования”.
  • "DESCRIPTION_TOO_LONG": подсветить красным поле “Описание”.
Example:
NO_PERMISSION
errorMessage
string

Описание: Текст ошибки.

1C: Текст ошибки из таблицы “ГПН_Ошибки” из поля “ТекстОшибки”.

Angular: Текст ошибки отображается снизу красным шрифтом в окне создания/редактирования сценария, расположенными в правой части экрана.

Example:
Нет прав на выполнение данного действия
Examples
{
    "actionMade": false,
    "errors": [
        {
            "errorCode": "NO_PERMISSION",
            "errorMessage": "Нет прав на выполнение данного действия"
        }
    ]
}
scenarioDelete
DELETE /scenario/delete

Удаление сценария. Вызывается при нажатии на кнопку “Удалить” в pop-up для подтверждения удаления.

Request parameters

scenarioId
string required

Описание: ID сценария.

1C: Удалить сценарий с полученным ID сценария из таблицы “ГПН_Сценарий”, записи из всех таблиц, в которых есть ссылка на таблицу “ГПН_Сценарии”, а также файл с исходными данными.

Angular: Передавать известный ID сценария.

Example:
09de65a8-a0ac-49ca-b2dl-d2c99c04c109

Responses

200 OK

Структура ответа при успешном совершении действия (“actionMade” = “true”)

Body
Object
actionMade
boolean

Описание: Выполнено ли удаление? “true” - выполнено; “false” - не выполнено, то есть ошибка.

1C: Передавать “true” при успешном удалении; “false” - при ошибке удаления.

Angular: На фронте не отображается. Быстрая индикация успешности операции.

Example:
true
Examples
{
    "actionMade": true
}
scenarioFile
POST /scenario/file

Добавление файла исходных данных к сценарию. Вызывается при нажатии на кнопку “Сохранить” в окне создания/редактирования сценария при наличие файла.

Request body

Object
scenarioId
string

Описание: ID сценария.

1C: ID сценария из таблицы “ГПН_Сценарий”. Для какого сценария необходимо запустить процедуру парсинга Excel-файла.

Angular: Передавать известный ID сценария.

Example:
09de65a8-a0ac-49ca-b2dl-d2c99c04c109
fileName
string

Описание: Оригинальное наименование загружаемого файла.

1C: Оригинальное наименование загружаемого файла. Файл необходимо сохранить на сервере в директории: “???” с сохранением его оригинального наименования.

Angular: Передавать оригинальное наименование загружаемого файла вместе с его разрешением. Например: “Исходные данные.xlsx”.

Example:
Исходные данные.xlsx
file
string

Описание: Содержимое файла, бинарные данные.

1C: Содержимое файла, бинарные данные. Файл необходимо сохранить на сервере в директории: “???” с сохранением его оригинального наименования. Файл, идущий на вход процедуры парсинга Excel-файла.

Angular: Передавать содержимое файла, бинарные данные.

Example:
0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/
Examples
{
    "scenarioId": "09de65a8-a0ac-49ca-b2dl-d2c99c04c109",
    "fileName": "Исходные данные.xlsx",
    "file": "0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/"
}

Responses

200 OK

Структура ответа при успешной обработке файла (“actionMade” = “true”)

Body
Object
actionMade
boolean

Описание: Успешно ли завершился парсинг Excel-файла? “true” - да, успешно; “false” - нет, есть ошибка.

1C: Передавать “true” при успешном завершении процедуры парсинга Excel-файла; “false” - при ошибке выполнения процедуры парсинга Excel-файла.

Angular: При “actionMade” = “true” использовать макет “9. ‘‘Готов к расчету’’ - успешная загрузка ИД”.

Example:
true
fileId
string

Описание: ID загруженного файла.

1C: Передавать ID загруженного файла.

Angular: На фронте не отображается. Сохранить в состоянии компонента для будущих операций.

Example:
file-12345-67890
fileName
string

Описание: Оригинальное наименование файла.

1C: Передавать оригинальное наименование загруженного файла.

Angular: На фронте отображается уведомление из макета “9. ‘‘Готов к расчету’’ - успешная загрузка ИД”:

“Файл “fileName” успешно загружен”.

Example:
Исходные данные.xlsx
Examples
{
    "actionMade": true,
    "fileId": "file-12345-67890",
    "fileName": "Исходные данные.xlsx"
}
200 OK

Структура ответа при ошибке при обработке файла (“actionMade” = “false”)

Body
Object
actionMade
boolean

Описание: Успешно ли завершился парсинг Excel-файла? “true” - да, успешно; “false” - нет, есть ошибка.

1C: Передавать “true” при успешном завершении процедуры парсинга Excel-файла; “false” - при ошибке выполнения процедуры парсинга Excel-файла. Если произошла ошибка при обработке файла, то в этом сценарии не должно быть записей в таблице исходных данных.

Angular: При “actionMade” = “false” использовать макет “8. Ошибка при добавление ИД” + вывод “errorMessage”.

Example:
false
errors
Array
Object
errorCode
string

Описание: Код ошибки.

1C: Код ошибки из таблицы “ГПН_Ошибки” из поля “КодОшибки”.

  • "INVALID_FILE_TYPE", если в запросе приходит файл не соответствующий одному из следующих форматов: “.xlsx“ и “.xlsm“, то передавать код “INVALID_FILE_TYPE”.
  • "TOO_MANY_FILES", если в запросе приходит несколько файлов, то передавать код “TOO_MANY_FILES”.
  • "FILE_TOO_LARGE", если в запросе приходит файл, размер которого превышает 5МБ, то передавать код “FILE_TOO_LARGE”.
  • "REMON_UNITS_INTERVAL_ERROR", если при обработке файла в поле “ДеньРемонта” из таблицы “ГПН_РемонтУстановок” происходит попытка записи даты, не входящей в интервал от “НачалоИнтервалаПланирования” до “КонецИнтервалаПланирования” из таблицы “ГПН_Сценарий”, то передавать код “REMON_UNITS_INTERVAL_ERROR”.
  • "REMON_DEVICES_INTERVAL_ERROR", если при обработке файла в поле “ДеньРемонта” из таблицы “ГПН_РемонтАппаратов” происходит попытка записи даты, не входящей в интервал от “НачалоИнтервалаПланирования” до “КонецИнтервалаПланирования” из таблицы “ГПН_Сценарий”, то передавать код “REMON_DEVICES_INTERVAL_ERROR”.
  • "POSTAVKA_SYRYA_SUTKI_INTERVAL_ERROR", если при обработке файла в поле “ДеньИнтервала” из таблицы “ГПН_ПоставкаСырьяДень” происходит попытка записи даты, не входящей в интервал от “НачалоИнтервалаПланирования” до “КонецИнтервалаПланирования” из таблицы “ГПН_Сценарий”, то передавать код “POSTAVKA_SYRYA_SUTKI_INTERVAL_ERROR”.
  • "JELAEMIY_GRAPHIK_GOTOVNOSTI_INTERVAL_ERROR", если при обработке файла в поле “ДеньИнтервала” из таблицы “ГПН_ЖелаемыйГрафикГотовности” происходит попытка записи даты, не входящей в интервал от “НачалоИнтервалаПланирования” до “КонецИнтервалаПланирования” из таблицы “ГПН_Сценарий”, то передавать код “JELAEMIY_GRAPHIK_GOTOVNOSTI_INTERVAL_ERROR”.

Angular: На фронте не отображается.

Example:
INVALID_FILE_TYPE
errorMessage
string

Описание: Текст ошибки.

1C: Текст ошибки из таблицы “ГПН_Ошибки” из поля “ТекстОшибки”.

Angular: На фронте отображается уведомление из макета “8. Ошибка при добавление ИД”:

“Что-то пошло не так. + на следующей строке “errorMessage”

Example:
Ошибка. Формат загружаемого файла не соответствует допустимым форматам: ".xlsx" или ".xlsm".
Examples
{
    "actionMade": false,
    "errors": [
        {
            "errorCode": "INVALID_FILE_TYPE",
            "errorMessage": "Ошибка. Формат загружаемого файла не соответствует допустимым форматам: \".xlsx\" или \".xlsm\"."
        }
    ]
}
scenarioCalculate
POST /scenario/calculate

Метод для начала расчета сценария. Вызывается по кнопке “Рассчитать” в окне создания/редактирования сценария.

Request body

Object
scenarioId
string

Описание: ID сценария.

1C: ID сценария из таблицы “ГПН_Сценарий”.

Angular: Передавать известный ID сценария.

Example:
09de65a8-a0ac-49ca-b2dl-d2c99c04c109
Examples
{
    "scenarioId": "09de65a8-a0ac-49ca-b2dl-d2c99c04c109"
}

Responses

200 OK

Структура ответа при успешном совершении действия (“actionMade” = “true”)

Body
Object
actionMade
boolean

Описание: Начался ли расчет сценария? “true” - да, начался; “false” - нет, ошибка, невозможно начать расчёт.

1C: Передавать “true” при успешном начале расчёта (инфа с мат. модели); “false” - при ошибке запуска расчёта (инфа с мат. модели).

Angular: На фронте не отображается. Быстрая индикация успешности операции.

Example:
true
initialStatus
string

Описание: Статус сценария. В этом случае может быть только “IN_PROGRESS” или “WAIT”.

1C: Статус сценария из таблицы “ГПН_Сценарий” из поля “Статус”. В этом случае может быть только “IN_PROGRESS” или “WAIT” (инфа с мат. модели).

Angular: На фронте отображается уведомление из макета “12. ‘‘В процессе’’”, в хэдере статус может быть:

  • "Ожидание", если “initialStatus” = “WAIT”;
  • "В процессе", если “initialStatus” = “IN_PROGRESS”.
Example:
IN_PROGRESS
calculationId
string

ПОКА НЕ АКТУАЛЬНО

Example:
calc-12345-67890
queuePosition
integer

ПОКА НЕ АКТУАЛЬНО

Описание: Текущая позиция в очереди. “0”, если расчет начался сразу.

1C: Передавать текущую позицию в очереди (инфа с мат. модели). “0”, если расчет начался сразу.

Angular: Текущая позиция в очереди для оповещения пользователя.

Example:
1
estimatedWaitTime
string

ПОКА НЕ АКТУАЛЬНО

Примерное время ожидания для оповещения пользователя.

Example:
00:02:30
Examples
{
    "actionMade": true,
    "initialStatus": "IN_PROGRESS",
    "calculationId": "calc-12345-67890",
    "queuePosition": 1,
    "estimatedWaitTime": "00:02:30"
}
scenarioCalculationStatus
GET /scenario/calculationStatus

Метод для отслеживания статуса сценария. При входе на экран “Моделирование” начинать автоматический опрос каждые 5 секунд до того момента, пока:

  1. Не придёт один из следующих статусов: “Ошибка”, “Рассчитано”.
  2. Не вызывался метод “scenarioCalculationStatus” для этого же “scenarioId”.

Request parameters

scenarioId
string optional

Описание: ID сценария.

1C: ID сценария из таблицы “ГПН_Сценарий”.

Angular: Передавать известный ID сценария.

Example:
09de65a8-a0ac-49ca-b2dl-d2c99c04c109

Responses

200 OK
Body
Object
scenarioId
string

Описание: ID сценария.

1C: ID сценария из таблицы “ГПН_Сценарий”.

Angular: На фронте не отображается.

Example:
09de65a8-a0ac-49ca-b2dl-d2c99c04c109
calculationStatus
string

Описание: Текущий статус расчета сценария.

1C: Текущий статус расчета сценария из таблицы “ГПН_Сценарий” из поля “Статус”.

Angular: Текущий статус расчета сценария. Может принимать следующие значения:

На экране “Моделирование”:

  • "Ожидание", если “initialStatus” = “WAIT” - макет 12. ‘‘В процессе’’, в хэдере статус “Ожидание”;
  • "В процессе", если “initialStatus” = “IN_PROGRESS” - макет 12. ‘‘В процессе’’, в хэдере статус “В процессе”;
  • "Ошибка", если “initialStatus” = “ERROR” - макет 14. ‘‘Ошибка’’, в хэдере статус “Ошибка”;
  • "Рассчитано", если “initialStatus” = “CALCULATED” - макет 15. ‘‘Рассчитано’’, в хэдере статус “Рассчитано”.

На экране “Планирование”: обновлять статус в поле “Статус” в таблице сценариев.

Example:
IN_PROGRESS
progress
integer

ПОКА НЕ АКТУАЛЬНО, ДЛЯ ПРОГРЕСС БАРА НА БУДУЩЕЕ

Example:
65
Examples
{
    "scenarioId": "09de65a8-a0ac-49ca-b2dl-d2c99c04c109",
    "calculationStatus": "IN_PROGRESS",
    "progress": 65
}
scenarioCancelCalculation
POST /scenario/cancelCalculation

Метод для отмены расчета сценария. Вызывается при нажатии на кнопку “Отменить” на экране “Моделирование”. Прерывает запрос “scenarioCalculationStatus” для этого же сценария.

Request body

Object
scenarioId
string

Описание: ID сценария.

1C: ID сценария из таблицы “ГПН_Сценарий”. Установить статус “Отменен” у текущего сценария в таблице “ГПН_Сценарий” в поле “Статус”

Angular: Передавать известный ID сценария.

Example:
09de65a8-a0ac-49ca-b2dl-d2c99c04c109
Examples
{
    "scenarioId": "09de65a8-a0ac-49ca-b2dl-d2c99c04c109"
}

Responses

200 OK

Структура ответа при успешной отмене расчета сценария (“actionMade” = “true”)

Body
Object
actionMade
boolean

Описание: Отменился ли расчет сценария? “true” - да, отменился; “false” - не отменился, ошибка при отмене.

1C: Передавать “true” при успешной отмене расчета сценария; “false” - при ошибке при отмене расчета сценария.

Angular: Если “actionMade” = “true”, то макет 13. ‘‘Отменен’’

Example:
true
scenarioId
string

Описание: ID сценария.

1C: ID сценария из таблицы “ГПН_Сценарий”.

Angular: На фронте не отображается.

Example:
09de65a8-a0ac-49ca-b2dl-d2c99c04c109
scenarioStatus
string

Описание: Текущий статус сцеанария.

1C: Текущий статус сцеанария из таблицы “ГПН_Сценарий” из поля “Статус”.

Angular: Если “CANCELLED”, то в хэдере статус “Отменен”.

Example:
CANCELLED
Examples
{
    "actionMade": true,
    "scenarioId": "09de65a8-a0ac-49ca-b2dl-d2c99c04c109",
    "scenarioStatus": "CANCELLED"
}
200 OK

Структура ответа при ошибке в процессе отмена расчета сценария (“actionMade” = “false”)

Body
Object
actionMade
boolean

Описание: Отменился ли расчет сценария? “true” - да, отменился; “false” - не отменился, ошибка при отмене.

1C: Передавать “true” при успешной отмене расчета сценария; “false” - при ошибке при отмене расчета сценария.

Angular: На фронте не отображается.

Example:
false
errors
Array

Массив ошибок

Object
errorCode
string

Описание: Код ошибки.

1C: Код ошибки из таблицы “ГПН_Ошибки” из поля “КодОшибки”.

  • Поле “КодОшибки” = “CALCULATION_ALREADY_COMPLETED”: Если расчёт уже завершен (“Статус” = “Ошибка” или “Рассчитано”), то передавать код “CALCULATION_ALREADY_COMPLETED”.

Angular: Сам код на фронте не отображается, на нем завязана логика вывода информационных сообщений.

Example:
CALCULATION_ALREADY_COMPLETED
errorMessage
string

Описание: Текст ошибки.

1C: Текст ошибки из таблицы “ГПН_Ошибки” из поля “ТекстОшибки”.

Angular: Если “КодОшибки” = “CALCULATION_ALREADY_COMPLETED” И

  • "scenarioStatus" = “CALCULATED”, то вывести “errorMessage” + переход на макет 15. ‘‘Рассчитано’’
  • "scenarioStatus" = “ERROR”, то вывести “errorMessage” + переход на макет 14. ‘‘Ошибка’’
Example:
Невозможно отменить завершенный расчет
scenarioStatus
string

Описание: Текущий статус сцеанария.

1C: Текущий статус сцеанария из таблицы “ГПН_Сценарий” из поля “Статус”.

Angular: Отображается в хэдере на экране “Моделирование”.

Example:
CALCULATED
Examples
{
    "actionMade": "false",
    "errors": [
        {
            "errorCode": "CALCULATION_ALREADY_COMPLETED",
            "errorMessage": "Невозможно отменить завершенный расчет"
        }
    ],
    "scenarioStatus": "CALCULATED"
}
Управление избранным
POST /favorites/write
favoritesWrite
POST /favorites/write

Добавление сценария в избранное ИЛИ удаление сценария из избранного. Вызывается при нажатии на звездочку.

Request body

Object
scenarioId
string

Описание: ID сценария.

1C: ID сценария из таблицы “ГПН_Сценарий”.

Angular: Передавать известный ID сценария.

Example:
5b234866-56c8-11ee-85e7-00505692a275
favorite
boolean

Описание: Добавление сценария в избранное ИЛИ удаление сценария из избранного.

1C: Если “true”, то записать сценарий в таблицу “ГПН_Избранное”; “false” - удалить запись из таблицы “ГПН_Избранное”

Angular: Передавать “true” при добавлении в избранное; “false” - при удалении из избранного.

Example:
true
Examples
{
    "scenarioId": "5b234866-56c8-11ee-85e7-00505692a275",
    "favorite": true
}

Responses

200 OK

Структура ответа при успешном совершении действия (“actionMade” = “true”)

Body
Object
actionMade
boolean

Описание: Выполнено ли действие (запись/удаление)? “true” - выполнено; “false” - не выполнено, то есть ошибка.

1C: Передавать “true” при успешной записи/удалении; “false” - при ошибке записи/удаления.

Angular: Меняется заливка элемента «☆» на противоположную.

Example:
true
Examples
{
    "actionMade": true
}