@hubex/mcp 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/schema/build-index.js +16 -1
- package/dist/schema/describe.js +1 -0
- package/dist/tools/discovery.js +2 -1
- package/generated/index.dev.json +914 -1055
- package/package.json +1 -1
- package/swagger/dev/AUTH.json +70 -22
- package/swagger/dev/AUTHN.json +5 -5
- package/swagger/dev/AUTHZ.json +13 -13
- package/swagger/dev/CM.json +22 -4
- package/swagger/dev/COMMON.json +41 -187
- package/swagger/dev/ES.json +7583 -2342
- package/swagger/dev/EXPORT.json +735 -2116
- package/swagger/dev/LIC.json +4 -4
- package/swagger/dev/MSG.json +518 -67
- package/swagger/dev/PA.json +627 -122
- package/swagger/dev/PMP.json +932 -46
- package/swagger/dev/PROXY.json +9 -6
- package/swagger/dev/REPORT.json +2 -2
- package/swagger/dev/SC.json +1936 -1149
- package/swagger/dev/SLA.json +2 -78
- package/swagger/dev/TSTG.json +272 -14
- package/swagger/dev/UI.json +62 -425
- package/swagger/dev/WORK.json +17949 -18386
- package/swagger/dev/WSP.json +190 -559
- package/swagger/prod/WORK.json +114 -84
package/swagger/dev/SLA.json
CHANGED
|
@@ -400,7 +400,7 @@
|
|
|
400
400
|
"Criticalities"
|
|
401
401
|
],
|
|
402
402
|
"summary": "Получение списка критичностей",
|
|
403
|
-
"description": "## Пример запроса:\r\n`GET /Criticalities?contractID=10&workTypeID=5`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"1\": {\r\n \"name\": \"Высокая\",\r\n \"color\": \"#FF0000\",\r\n \"isDefault\": false,\r\n \"sortOrder\": 1,\r\n \"erpID\": \"ERP-CRIT-001\"\r\n }\r\n}\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: критичности не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `CriticalitiesList
|
|
403
|
+
"description": "## Пример запроса:\r\n`GET /Criticalities?contractID=10&workTypeID=5`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"1\": {\r\n \"name\": \"Высокая\",\r\n \"color\": \"#FF0000\",\r\n \"isDefault\": false,\r\n \"sortOrder\": 1,\r\n \"erpID\": \"ERP-CRIT-001\"\r\n }\r\n}\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: критичности не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `CriticalitiesList`.",
|
|
404
404
|
"parameters": [
|
|
405
405
|
{
|
|
406
406
|
"name": "contractID",
|
|
@@ -426,24 +426,6 @@
|
|
|
426
426
|
}
|
|
427
427
|
}
|
|
428
428
|
},
|
|
429
|
-
{
|
|
430
|
-
"name": "contractID",
|
|
431
|
-
"in": "query",
|
|
432
|
-
"description": "Идентификаторы договоров для фильтрации",
|
|
433
|
-
"schema": {
|
|
434
|
-
"type": "integer",
|
|
435
|
-
"format": "int32"
|
|
436
|
-
}
|
|
437
|
-
},
|
|
438
|
-
{
|
|
439
|
-
"name": "workTypeID",
|
|
440
|
-
"in": "query",
|
|
441
|
-
"description": "Идентификаторы видов работ для фильтрации",
|
|
442
|
-
"schema": {
|
|
443
|
-
"type": "integer",
|
|
444
|
-
"format": "int32"
|
|
445
|
-
}
|
|
446
|
-
},
|
|
447
429
|
{
|
|
448
430
|
"name": "X-Application-ID",
|
|
449
431
|
"in": "header",
|
|
@@ -509,35 +491,6 @@
|
|
|
509
491
|
},
|
|
510
492
|
"403": {
|
|
511
493
|
"description": "Недостаточно прав для просмотра списка критичностей."
|
|
512
|
-
},
|
|
513
|
-
"500": {
|
|
514
|
-
"description": "Внутренняя ошибка сервера.",
|
|
515
|
-
"content": {
|
|
516
|
-
"text/plain": {
|
|
517
|
-
"schema": {
|
|
518
|
-
"type": "array",
|
|
519
|
-
"items": {
|
|
520
|
-
"$ref": "#/components/schemas/ExceptionHandlingModelsErrorModel"
|
|
521
|
-
}
|
|
522
|
-
}
|
|
523
|
-
},
|
|
524
|
-
"application/json": {
|
|
525
|
-
"schema": {
|
|
526
|
-
"type": "array",
|
|
527
|
-
"items": {
|
|
528
|
-
"$ref": "#/components/schemas/ExceptionHandlingModelsErrorModel"
|
|
529
|
-
}
|
|
530
|
-
}
|
|
531
|
-
},
|
|
532
|
-
"text/json": {
|
|
533
|
-
"schema": {
|
|
534
|
-
"type": "array",
|
|
535
|
-
"items": {
|
|
536
|
-
"$ref": "#/components/schemas/ExceptionHandlingModelsErrorModel"
|
|
537
|
-
}
|
|
538
|
-
}
|
|
539
|
-
}
|
|
540
|
-
}
|
|
541
494
|
}
|
|
542
495
|
},
|
|
543
496
|
"security": [
|
|
@@ -1574,7 +1527,7 @@
|
|
|
1574
1527
|
"DeadlineRules"
|
|
1575
1528
|
],
|
|
1576
1529
|
"summary": "Получение списка правил планового закрытия заявки",
|
|
1577
|
-
"description": "## Пример запроса:\r\n`GET /DeadlineRules`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"101\": {\r\n \"id\": 101,\r\n \"name\": \"Стандартное правило закрытия\",\r\n \"scheduleRuleID\": 5,\r\n \"isActive\": true,\r\n \"runtime\": 24.0\r\n }\r\n}\r\n```\r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит частичный диапазон.\r\n## Негативные сценарии:\r\n- 204 NoContent: правила не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `DeadlineRuleList
|
|
1530
|
+
"description": "## Пример запроса:\r\n`GET /DeadlineRules`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"101\": {\r\n \"id\": 101,\r\n \"name\": \"Стандартное правило закрытия\",\r\n \"scheduleRuleID\": 5,\r\n \"isActive\": true,\r\n \"runtime\": 24.0\r\n }\r\n}\r\n```\r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит частичный диапазон.\r\n## Негативные сценарии:\r\n- 204 NoContent: правила не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `DeadlineRuleList`.",
|
|
1578
1531
|
"parameters": [
|
|
1579
1532
|
{
|
|
1580
1533
|
"name": "Range",
|
|
@@ -1694,35 +1647,6 @@
|
|
|
1694
1647
|
},
|
|
1695
1648
|
"403": {
|
|
1696
1649
|
"description": "Недостаточно прав для просмотра списка правил."
|
|
1697
|
-
},
|
|
1698
|
-
"500": {
|
|
1699
|
-
"description": "Внутренняя ошибка сервера.",
|
|
1700
|
-
"content": {
|
|
1701
|
-
"text/plain": {
|
|
1702
|
-
"schema": {
|
|
1703
|
-
"type": "array",
|
|
1704
|
-
"items": {
|
|
1705
|
-
"$ref": "#/components/schemas/ExceptionHandlingModelsErrorModel"
|
|
1706
|
-
}
|
|
1707
|
-
}
|
|
1708
|
-
},
|
|
1709
|
-
"application/json": {
|
|
1710
|
-
"schema": {
|
|
1711
|
-
"type": "array",
|
|
1712
|
-
"items": {
|
|
1713
|
-
"$ref": "#/components/schemas/ExceptionHandlingModelsErrorModel"
|
|
1714
|
-
}
|
|
1715
|
-
}
|
|
1716
|
-
},
|
|
1717
|
-
"text/json": {
|
|
1718
|
-
"schema": {
|
|
1719
|
-
"type": "array",
|
|
1720
|
-
"items": {
|
|
1721
|
-
"$ref": "#/components/schemas/ExceptionHandlingModelsErrorModel"
|
|
1722
|
-
}
|
|
1723
|
-
}
|
|
1724
|
-
}
|
|
1725
|
-
}
|
|
1726
1650
|
}
|
|
1727
1651
|
},
|
|
1728
1652
|
"security": [
|
package/swagger/dev/TSTG.json
CHANGED
|
@@ -21,8 +21,32 @@
|
|
|
21
21
|
"Action"
|
|
22
22
|
],
|
|
23
23
|
"summary": "Возвращает справочник действий по стадиям заявок.",
|
|
24
|
-
"description": "## Пример запроса:\r\n`GET /Action`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"1\": {\r\n \"name\": \"Принять\",\r\n \"code\": \"Accept\"\r\n },\r\n \"2\": {\r\n \"name\": \"Отклонить\",\r\n \"code\": \"Reject\"\r\n }\r\n}\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит только часть диапазона.\r\n \r\n## Негативные сценарии:\r\n- 204 NoContent: действия не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `ActionList`.",
|
|
24
|
+
"description": "Поддерживает ограничение результата через заголовок `Range`.\r\n \r\n## Пример запроса:\r\n`GET /Action`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"1\": {\r\n \"name\": \"Принять\",\r\n \"code\": \"Accept\"\r\n },\r\n \"2\": {\r\n \"name\": \"Отклонить\",\r\n \"code\": \"Reject\"\r\n }\r\n}\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит только часть диапазона.\r\n \r\n## Негативные сценарии:\r\n- 204 NoContent: действия не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `ActionList`.",
|
|
25
25
|
"parameters": [
|
|
26
|
+
{
|
|
27
|
+
"name": "Range",
|
|
28
|
+
"in": "header",
|
|
29
|
+
"description": "Формат: items=FROM-TILL , где FROM - начальный элемент (включая), TILL - конечный элемент (включая)",
|
|
30
|
+
"schema": {
|
|
31
|
+
"type": "string"
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "offset",
|
|
36
|
+
"in": "query",
|
|
37
|
+
"description": "количество элементов, которое нобходимо пропустить",
|
|
38
|
+
"schema": {
|
|
39
|
+
"type": "string"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"name": "fetch",
|
|
44
|
+
"in": "query",
|
|
45
|
+
"description": "количество элементов, которое необходимо вернуть",
|
|
46
|
+
"schema": {
|
|
47
|
+
"type": "string"
|
|
48
|
+
}
|
|
49
|
+
},
|
|
26
50
|
{
|
|
27
51
|
"name": "X-Application-ID",
|
|
28
52
|
"in": "header",
|
|
@@ -438,8 +462,32 @@
|
|
|
438
462
|
"AssigneeSelectionRules"
|
|
439
463
|
],
|
|
440
464
|
"summary": "Возвращает список правил выбора исполнителя.",
|
|
441
|
-
"description": "## Пример запроса:\r\n`GET /AssigneeSelectionRules`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"1\": {\r\n \"name\": \"Правило по навыкам\",\r\n \"requiredSkillRatio\": 0.5,\r\n \"optionalSkillRatio\": 0.2,\r\n \"workTypeRatio\": 0.1,\r\n \"preffereableRatio\": 0.05,\r\n \"managerRatio\": 0.05,\r\n \"assetResponsibilityRatio\": 0.05,\r\n \"customerRatio\": 0.02,\r\n \"districtRatio\": 0.01,\r\n \"oftenAssignedRatio\": 0.01,\r\n \"workScheduleRatio\": 0.01\r\n }\r\n}\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит только часть диапазона.\r\n \r\n## Негативные сценарии:\r\n- 204 NoContent: правила не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `AssigneeSelectionRuleList`.",
|
|
465
|
+
"description": "Поддерживает ограничение результата через заголовок `Range`.\r\n \r\n## Пример запроса:\r\n`GET /AssigneeSelectionRules`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"1\": {\r\n \"name\": \"Правило по навыкам\",\r\n \"requiredSkillRatio\": 0.5,\r\n \"optionalSkillRatio\": 0.2,\r\n \"workTypeRatio\": 0.1,\r\n \"preffereableRatio\": 0.05,\r\n \"managerRatio\": 0.05,\r\n \"assetResponsibilityRatio\": 0.05,\r\n \"customerRatio\": 0.02,\r\n \"districtRatio\": 0.01,\r\n \"oftenAssignedRatio\": 0.01,\r\n \"workScheduleRatio\": 0.01\r\n }\r\n}\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит только часть диапазона.\r\n \r\n## Негативные сценарии:\r\n- 204 NoContent: правила не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `AssigneeSelectionRuleList`.",
|
|
442
466
|
"parameters": [
|
|
467
|
+
{
|
|
468
|
+
"name": "Range",
|
|
469
|
+
"in": "header",
|
|
470
|
+
"description": "Формат: items=FROM-TILL , где FROM - начальный элемент (включая), TILL - конечный элемент (включая)",
|
|
471
|
+
"schema": {
|
|
472
|
+
"type": "string"
|
|
473
|
+
}
|
|
474
|
+
},
|
|
475
|
+
{
|
|
476
|
+
"name": "offset",
|
|
477
|
+
"in": "query",
|
|
478
|
+
"description": "количество элементов, которое нобходимо пропустить",
|
|
479
|
+
"schema": {
|
|
480
|
+
"type": "string"
|
|
481
|
+
}
|
|
482
|
+
},
|
|
483
|
+
{
|
|
484
|
+
"name": "fetch",
|
|
485
|
+
"in": "query",
|
|
486
|
+
"description": "количество элементов, которое необходимо вернуть",
|
|
487
|
+
"schema": {
|
|
488
|
+
"type": "string"
|
|
489
|
+
}
|
|
490
|
+
},
|
|
443
491
|
{
|
|
444
492
|
"name": "X-Application-ID",
|
|
445
493
|
"in": "header",
|
|
@@ -693,8 +741,32 @@
|
|
|
693
741
|
"Branches"
|
|
694
742
|
],
|
|
695
743
|
"summary": "Возвращает список веток жизненного цикла заявок.",
|
|
696
|
-
"description": "## Пример запроса:\r\n`GET /Branches`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"1\": {\r\n \"nameRu\": \"Основная ветка\",\r\n \"isExclusiveMode\": false,\r\n \"color\": \"#4CAF50\"\r\n },\r\n \"2\": {\r\n \"nameRu\": \"Альтернативная ветка\",\r\n \"isExclusiveMode\": true,\r\n \"color\": \"#FF9800\"\r\n }\r\n}\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит только часть диапазона.\r\n \r\n## Негативные сценарии:\r\n- 204 NoContent: ветки не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `BranchesList`.",
|
|
744
|
+
"description": "Поддерживает ограничение результата через заголовок `Range`.\r\n \r\n## Пример запроса:\r\n`GET /Branches`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"1\": {\r\n \"nameRu\": \"Основная ветка\",\r\n \"isExclusiveMode\": false,\r\n \"color\": \"#4CAF50\"\r\n },\r\n \"2\": {\r\n \"nameRu\": \"Альтернативная ветка\",\r\n \"isExclusiveMode\": true,\r\n \"color\": \"#FF9800\"\r\n }\r\n}\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит только часть диапазона.\r\n \r\n## Негативные сценарии:\r\n- 204 NoContent: ветки не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `BranchesList`.",
|
|
697
745
|
"parameters": [
|
|
746
|
+
{
|
|
747
|
+
"name": "Range",
|
|
748
|
+
"in": "header",
|
|
749
|
+
"description": "Формат: items=FROM-TILL , где FROM - начальный элемент (включая), TILL - конечный элемент (включая)",
|
|
750
|
+
"schema": {
|
|
751
|
+
"type": "string"
|
|
752
|
+
}
|
|
753
|
+
},
|
|
754
|
+
{
|
|
755
|
+
"name": "offset",
|
|
756
|
+
"in": "query",
|
|
757
|
+
"description": "количество элементов, которое нобходимо пропустить",
|
|
758
|
+
"schema": {
|
|
759
|
+
"type": "string"
|
|
760
|
+
}
|
|
761
|
+
},
|
|
762
|
+
{
|
|
763
|
+
"name": "fetch",
|
|
764
|
+
"in": "query",
|
|
765
|
+
"description": "количество элементов, которое необходимо вернуть",
|
|
766
|
+
"schema": {
|
|
767
|
+
"type": "string"
|
|
768
|
+
}
|
|
769
|
+
},
|
|
698
770
|
{
|
|
699
771
|
"name": "X-Application-ID",
|
|
700
772
|
"in": "header",
|
|
@@ -1181,8 +1253,77 @@
|
|
|
1181
1253
|
"TaskStageLinks"
|
|
1182
1254
|
],
|
|
1183
1255
|
"summary": "Получение списка переходов между стадиями заявок",
|
|
1184
|
-
"description": "## Пример запроса:\r\n`GET /TaskStageLinks?taskTypeID=1&taskStageFromID=2&userID=500&roleID=101`\r\n \r\n## Пример успешного ответа (206):\r\n```json\r\n[\r\n {\r\n \"taskTypeID\": 1,\r\n \"fromTaskStage\": { \"id\": 2, \"name\": \"Назначена\" },\r\n \"toTaskStage\": { \"id\": 3, \"name\": \"В работе\" },\r\n \"taskStatus\": { \"id\": 5, \"name\": \"Принята\" },\r\n \"branch\": { \"id\": 1, \"name\": \"Основная ветка\" },\r\n \"name\": \"Принять\",\r\n \"description\": \"Принять заявку\",\r\n \"isPositiveResult\": true,\r\n \"permissionUiID\": 10,\r\n \"sortOrder\": 1,\r\n \"timeoutSeconds\": null,\r\n \"timeoutToDeadlineSeconds\": null,\r\n \"roles\": [\r\n { \"id\": 101, \"name\": \"Инженер\", \"description\": \"Роль инженера\" }\r\n ]\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: переходы по заданным фильтрам не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `TaskStageLinkList`.",
|
|
1256
|
+
"description": "Поддерживает фильтрацию по query-параметрам и ограничение результата через заголовок `Range`.\r\n \r\n## Пример запроса:\r\n`GET /TaskStageLinks?taskTypeID=1&taskStageFromID=2&userID=500&roleID=101`\r\n \r\n## Пример успешного ответа (206):\r\n```json\r\n[\r\n {\r\n \"taskTypeID\": 1,\r\n \"fromTaskStage\": { \"id\": 2, \"name\": \"Назначена\" },\r\n \"toTaskStage\": { \"id\": 3, \"name\": \"В работе\" },\r\n \"taskStatus\": { \"id\": 5, \"name\": \"Принята\" },\r\n \"branch\": { \"id\": 1, \"name\": \"Основная ветка\" },\r\n \"name\": \"Принять\",\r\n \"description\": \"Принять заявку\",\r\n \"isPositiveResult\": true,\r\n \"permissionUiID\": 10,\r\n \"sortOrder\": 1,\r\n \"timeoutSeconds\": null,\r\n \"timeoutToDeadlineSeconds\": null,\r\n \"roles\": [\r\n { \"id\": 101, \"name\": \"Инженер\", \"description\": \"Роль инженера\" }\r\n ]\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: переходы по заданным фильтрам не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `TaskStageLinkList`.",
|
|
1185
1257
|
"parameters": [
|
|
1258
|
+
{
|
|
1259
|
+
"name": "Range",
|
|
1260
|
+
"in": "header",
|
|
1261
|
+
"description": "Формат: items=FROM-TILL , где FROM - начальный элемент (включая), TILL - конечный элемент (включая)",
|
|
1262
|
+
"schema": {
|
|
1263
|
+
"type": "string"
|
|
1264
|
+
}
|
|
1265
|
+
},
|
|
1266
|
+
{
|
|
1267
|
+
"name": "offset",
|
|
1268
|
+
"in": "query",
|
|
1269
|
+
"description": "количество элементов, которое нобходимо пропустить",
|
|
1270
|
+
"schema": {
|
|
1271
|
+
"type": "string"
|
|
1272
|
+
}
|
|
1273
|
+
},
|
|
1274
|
+
{
|
|
1275
|
+
"name": "fetch",
|
|
1276
|
+
"in": "query",
|
|
1277
|
+
"description": "количество элементов, которое необходимо вернуть",
|
|
1278
|
+
"schema": {
|
|
1279
|
+
"type": "string"
|
|
1280
|
+
}
|
|
1281
|
+
},
|
|
1282
|
+
{
|
|
1283
|
+
"name": "taskTypeID",
|
|
1284
|
+
"in": "query",
|
|
1285
|
+
"description": "Идентификаторы типов заявок, по которым будет отфильтрован результат",
|
|
1286
|
+
"schema": {
|
|
1287
|
+
"type": "integer",
|
|
1288
|
+
"format": "int32"
|
|
1289
|
+
}
|
|
1290
|
+
},
|
|
1291
|
+
{
|
|
1292
|
+
"name": "taskStageFromID",
|
|
1293
|
+
"in": "query",
|
|
1294
|
+
"description": "Идентификаторы стадий заявок, с которых перейдут заявки, по которым будет отфильтрован результат",
|
|
1295
|
+
"schema": {
|
|
1296
|
+
"type": "integer",
|
|
1297
|
+
"format": "int32"
|
|
1298
|
+
}
|
|
1299
|
+
},
|
|
1300
|
+
{
|
|
1301
|
+
"name": "taskStageToID",
|
|
1302
|
+
"in": "query",
|
|
1303
|
+
"description": "Идентификаторы стадий заявок, на которые перейдут заявки, по которым будет отфильтрован результат",
|
|
1304
|
+
"schema": {
|
|
1305
|
+
"type": "integer",
|
|
1306
|
+
"format": "int32"
|
|
1307
|
+
}
|
|
1308
|
+
},
|
|
1309
|
+
{
|
|
1310
|
+
"name": "userID",
|
|
1311
|
+
"in": "query",
|
|
1312
|
+
"description": "Идентификаторы пользователей, роли которых используются для фильтрации доступных переходов",
|
|
1313
|
+
"schema": {
|
|
1314
|
+
"type": "integer",
|
|
1315
|
+
"format": "int32"
|
|
1316
|
+
}
|
|
1317
|
+
},
|
|
1318
|
+
{
|
|
1319
|
+
"name": "roleID",
|
|
1320
|
+
"in": "query",
|
|
1321
|
+
"description": "Идентификаторы ролей, по которым будут отфильтрованы доступные переходы",
|
|
1322
|
+
"schema": {
|
|
1323
|
+
"type": "integer",
|
|
1324
|
+
"format": "int32"
|
|
1325
|
+
}
|
|
1326
|
+
},
|
|
1186
1327
|
{
|
|
1187
1328
|
"name": "X-Application-ID",
|
|
1188
1329
|
"in": "header",
|
|
@@ -1722,8 +1863,68 @@
|
|
|
1722
1863
|
"TaskStageLinks"
|
|
1723
1864
|
],
|
|
1724
1865
|
"summary": "Получение списка переопределений переходов между стадиями заявок",
|
|
1725
|
-
"description": "## Пример запроса:\r\n`GET /TaskStageLinks/overridings?taskTypeID=1&taskStageFromID=2&roleID=101`\r\n \r\n## Пример успешного ответа (206):\r\n```json\r\n[\r\n {\r\n \"taskTypeID\": 1,\r\n \"fromTaskStage\": { \"id\": 2, \"name\": \"Назначена\" },\r\n \"toTaskStage\": { \"id\": 3, \"name\": \"В работе\" },\r\n \"name\": \"Принять\",\r\n \"description\": \"Переопределение для роли\",\r\n \"isPositiveResult\": true,\r\n \"role\": { \"id\": 101, \"name\": \"Инженер\" }\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: переопределения по заданным фильтрам не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `TaskStageLinkOverrideList`.",
|
|
1866
|
+
"description": "Поддерживает фильтрацию по query-параметрам и ограничение результата через заголовок `Range`.\r\n \r\n## Пример запроса:\r\n`GET /TaskStageLinks/overridings?taskTypeID=1&taskStageFromID=2&roleID=101`\r\n \r\n## Пример успешного ответа (206):\r\n```json\r\n[\r\n {\r\n \"taskTypeID\": 1,\r\n \"fromTaskStage\": { \"id\": 2, \"name\": \"Назначена\" },\r\n \"toTaskStage\": { \"id\": 3, \"name\": \"В работе\" },\r\n \"name\": \"Принять\",\r\n \"description\": \"Переопределение для роли\",\r\n \"isPositiveResult\": true,\r\n \"role\": { \"id\": 101, \"name\": \"Инженер\" }\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: переопределения по заданным фильтрам не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `TaskStageLinkOverrideList`.",
|
|
1726
1867
|
"parameters": [
|
|
1868
|
+
{
|
|
1869
|
+
"name": "Range",
|
|
1870
|
+
"in": "header",
|
|
1871
|
+
"description": "Формат: items=FROM-TILL , где FROM - начальный элемент (включая), TILL - конечный элемент (включая)",
|
|
1872
|
+
"schema": {
|
|
1873
|
+
"type": "string"
|
|
1874
|
+
}
|
|
1875
|
+
},
|
|
1876
|
+
{
|
|
1877
|
+
"name": "offset",
|
|
1878
|
+
"in": "query",
|
|
1879
|
+
"description": "количество элементов, которое нобходимо пропустить",
|
|
1880
|
+
"schema": {
|
|
1881
|
+
"type": "string"
|
|
1882
|
+
}
|
|
1883
|
+
},
|
|
1884
|
+
{
|
|
1885
|
+
"name": "fetch",
|
|
1886
|
+
"in": "query",
|
|
1887
|
+
"description": "количество элементов, которое необходимо вернуть",
|
|
1888
|
+
"schema": {
|
|
1889
|
+
"type": "string"
|
|
1890
|
+
}
|
|
1891
|
+
},
|
|
1892
|
+
{
|
|
1893
|
+
"name": "taskTypeID",
|
|
1894
|
+
"in": "query",
|
|
1895
|
+
"description": "Идентификаторы типов заявок, по которым будет отфильтрован результат",
|
|
1896
|
+
"schema": {
|
|
1897
|
+
"type": "integer",
|
|
1898
|
+
"format": "int32"
|
|
1899
|
+
}
|
|
1900
|
+
},
|
|
1901
|
+
{
|
|
1902
|
+
"name": "taskStageFromID",
|
|
1903
|
+
"in": "query",
|
|
1904
|
+
"description": "Идентификаторы стадий заявок, с которых перейдут заявки, по которым будет отфильтрован результат",
|
|
1905
|
+
"schema": {
|
|
1906
|
+
"type": "integer",
|
|
1907
|
+
"format": "int32"
|
|
1908
|
+
}
|
|
1909
|
+
},
|
|
1910
|
+
{
|
|
1911
|
+
"name": "taskStageToID",
|
|
1912
|
+
"in": "query",
|
|
1913
|
+
"description": "Идентификаторы стадий заявок, на которые перейдут заявки, по которым будет отфильтрован результат",
|
|
1914
|
+
"schema": {
|
|
1915
|
+
"type": "integer",
|
|
1916
|
+
"format": "int32"
|
|
1917
|
+
}
|
|
1918
|
+
},
|
|
1919
|
+
{
|
|
1920
|
+
"name": "roleID",
|
|
1921
|
+
"in": "query",
|
|
1922
|
+
"description": "Идентификаторы ролей, по которым будут отфильтрованы переопределения переходов",
|
|
1923
|
+
"schema": {
|
|
1924
|
+
"type": "integer",
|
|
1925
|
+
"format": "int32"
|
|
1926
|
+
}
|
|
1927
|
+
},
|
|
1727
1928
|
{
|
|
1728
1929
|
"name": "X-Application-ID",
|
|
1729
1930
|
"in": "header",
|
|
@@ -2263,8 +2464,41 @@
|
|
|
2263
2464
|
"TaskStages"
|
|
2264
2465
|
],
|
|
2265
2466
|
"summary": "Возвращает справочник стадий заявок тенанта.",
|
|
2266
|
-
"description": "## Пример запроса:\r\n`GET /TaskStages?triggerID=1`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"2\": {\r\n \"id\": 2,\r\n \"name\": \"Назначена\",\r\n \"description\": \"Заявка назначена исполнителю\",\r\n \"color\": \"FF5722\",\r\n \"messageTriggerCount\": 3,\r\n \"taskViewTemplate\": { \"id\": 1, \"name\": \"Стандартная форма\" },\r\n \"action\": { \"id\": 1, \"name\": \"Назначить\" },\r\n \"assigneeSelectionRule\": { \"id\": 2, \"name\": \"По навыкам\" },\r\n \"assignToUser\": { \"id\": 500, \"name\": \"Иванов И.И.\" },\r\n \"assignToRole\": { \"id\": 101, \"name\": \"Инженер\" },\r\n \"isShowTechnicianOnMap\": true,\r\n \"deleted\": null\r\n }\r\n}\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит только часть диапазона.\r\n \r\n## Негативные сценарии:\r\n- 204 NoContent: стадии по заданным фильтрам не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `TaskStagesList`.",
|
|
2467
|
+
"description": "Поддерживает фильтрацию по query-параметрам и ограничение результата через заголовок `Range`.\r\n \r\n## Пример запроса:\r\n`GET /TaskStages?triggerID=1`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"2\": {\r\n \"id\": 2,\r\n \"name\": \"Назначена\",\r\n \"description\": \"Заявка назначена исполнителю\",\r\n \"color\": \"FF5722\",\r\n \"messageTriggerCount\": 3,\r\n \"taskViewTemplate\": { \"id\": 1, \"name\": \"Стандартная форма\" },\r\n \"action\": { \"id\": 1, \"name\": \"Назначить\" },\r\n \"assigneeSelectionRule\": { \"id\": 2, \"name\": \"По навыкам\" },\r\n \"assignToUser\": { \"id\": 500, \"name\": \"Иванов И.И.\" },\r\n \"assignToRole\": { \"id\": 101, \"name\": \"Инженер\" },\r\n \"isShowTechnicianOnMap\": true,\r\n \"deleted\": null\r\n }\r\n}\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит только часть диапазона.\r\n \r\n## Негативные сценарии:\r\n- 204 NoContent: стадии по заданным фильтрам не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `TaskStagesList`.",
|
|
2267
2468
|
"parameters": [
|
|
2469
|
+
{
|
|
2470
|
+
"name": "Range",
|
|
2471
|
+
"in": "header",
|
|
2472
|
+
"description": "Формат: items=FROM-TILL , где FROM - начальный элемент (включая), TILL - конечный элемент (включая)",
|
|
2473
|
+
"schema": {
|
|
2474
|
+
"type": "string"
|
|
2475
|
+
}
|
|
2476
|
+
},
|
|
2477
|
+
{
|
|
2478
|
+
"name": "offset",
|
|
2479
|
+
"in": "query",
|
|
2480
|
+
"description": "количество элементов, которое нобходимо пропустить",
|
|
2481
|
+
"schema": {
|
|
2482
|
+
"type": "string"
|
|
2483
|
+
}
|
|
2484
|
+
},
|
|
2485
|
+
{
|
|
2486
|
+
"name": "fetch",
|
|
2487
|
+
"in": "query",
|
|
2488
|
+
"description": "количество элементов, которое необходимо вернуть",
|
|
2489
|
+
"schema": {
|
|
2490
|
+
"type": "string"
|
|
2491
|
+
}
|
|
2492
|
+
},
|
|
2493
|
+
{
|
|
2494
|
+
"name": "triggerID",
|
|
2495
|
+
"in": "query",
|
|
2496
|
+
"description": "Идентификаторы триггеров уведомлений, по которым будет отфильтрован результат",
|
|
2497
|
+
"schema": {
|
|
2498
|
+
"type": "integer",
|
|
2499
|
+
"format": "int32"
|
|
2500
|
+
}
|
|
2501
|
+
},
|
|
2268
2502
|
{
|
|
2269
2503
|
"name": "X-Application-ID",
|
|
2270
2504
|
"in": "header",
|
|
@@ -3246,7 +3480,7 @@
|
|
|
3246
3480
|
"TaskStages"
|
|
3247
3481
|
],
|
|
3248
3482
|
"summary": "Возвращает требования для стадии заявки.",
|
|
3249
|
-
"description": "## Пример запроса:\r\n`GET /TaskStages/2/requirements`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n[\r\n {\r\n \"taskStageID\": 2,\r\n \"requirementID\": 1,\r\n \"requirementName\": \"Фото до работ\"\r\n },\r\n {\r\n \"taskStageID\": 2,\r\n \"requirementID\": 2,\r\n \"requirementName\": \"Подпись заказчика\"\r\n }\r\n]\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит только часть диапазона.\r\n \r\n## Негативные сценарии:\r\n- 204 NoContent: требования для указанной стадии не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `TaskStageRequirementGet`.",
|
|
3483
|
+
"description": "Поддерживает ограничение результата через заголовок `Range`.\r\n \r\n## Пример запроса:\r\n`GET /TaskStages/2/requirements`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n[\r\n {\r\n \"taskStageID\": 2,\r\n \"requirementID\": 1,\r\n \"requirementName\": \"Фото до работ\"\r\n },\r\n {\r\n \"taskStageID\": 2,\r\n \"requirementID\": 2,\r\n \"requirementName\": \"Подпись заказчика\"\r\n }\r\n]\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит только часть диапазона.\r\n \r\n## Негативные сценарии:\r\n- 204 NoContent: требования для указанной стадии не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `TaskStageRequirementGet`.",
|
|
3250
3484
|
"parameters": [
|
|
3251
3485
|
{
|
|
3252
3486
|
"name": "id",
|
|
@@ -3258,6 +3492,30 @@
|
|
|
3258
3492
|
"format": "int32"
|
|
3259
3493
|
}
|
|
3260
3494
|
},
|
|
3495
|
+
{
|
|
3496
|
+
"name": "Range",
|
|
3497
|
+
"in": "header",
|
|
3498
|
+
"description": "Формат: items=FROM-TILL , где FROM - начальный элемент (включая), TILL - конечный элемент (включая)",
|
|
3499
|
+
"schema": {
|
|
3500
|
+
"type": "string"
|
|
3501
|
+
}
|
|
3502
|
+
},
|
|
3503
|
+
{
|
|
3504
|
+
"name": "offset",
|
|
3505
|
+
"in": "query",
|
|
3506
|
+
"description": "количество элементов, которое нобходимо пропустить",
|
|
3507
|
+
"schema": {
|
|
3508
|
+
"type": "string"
|
|
3509
|
+
}
|
|
3510
|
+
},
|
|
3511
|
+
{
|
|
3512
|
+
"name": "fetch",
|
|
3513
|
+
"in": "query",
|
|
3514
|
+
"description": "количество элементов, которое необходимо вернуть",
|
|
3515
|
+
"schema": {
|
|
3516
|
+
"type": "string"
|
|
3517
|
+
}
|
|
3518
|
+
},
|
|
3261
3519
|
{
|
|
3262
3520
|
"name": "X-Application-ID",
|
|
3263
3521
|
"in": "header",
|
|
@@ -3375,7 +3633,7 @@
|
|
|
3375
3633
|
},
|
|
3376
3634
|
"code": {
|
|
3377
3635
|
"type": "string",
|
|
3378
|
-
"description": "Код
|
|
3636
|
+
"description": "Код в системе",
|
|
3379
3637
|
"nullable": true,
|
|
3380
3638
|
"example": "AssignExecutor"
|
|
3381
3639
|
}
|
|
@@ -3514,7 +3772,7 @@
|
|
|
3514
3772
|
"properties": {
|
|
3515
3773
|
"nameRu": {
|
|
3516
3774
|
"type": "string",
|
|
3517
|
-
"description": "
|
|
3775
|
+
"description": "Название",
|
|
3518
3776
|
"nullable": true,
|
|
3519
3777
|
"example": "В работе"
|
|
3520
3778
|
},
|
|
@@ -3744,7 +4002,7 @@
|
|
|
3744
4002
|
},
|
|
3745
4003
|
"managerRatio": {
|
|
3746
4004
|
"type": "number",
|
|
3747
|
-
"description": "Коэффициент
|
|
4005
|
+
"description": "Коэффициент учета руководителя",
|
|
3748
4006
|
"format": "double",
|
|
3749
4007
|
"nullable": true,
|
|
3750
4008
|
"example": 0.1
|
|
@@ -3839,7 +4097,7 @@
|
|
|
3839
4097
|
},
|
|
3840
4098
|
"managerRatio": {
|
|
3841
4099
|
"type": "number",
|
|
3842
|
-
"description": "Коэффициент
|
|
4100
|
+
"description": "Коэффициент учета руководителя",
|
|
3843
4101
|
"format": "double",
|
|
3844
4102
|
"nullable": true,
|
|
3845
4103
|
"example": 0.1
|
|
@@ -3893,7 +4151,7 @@
|
|
|
3893
4151
|
},
|
|
3894
4152
|
"name": {
|
|
3895
4153
|
"type": "string",
|
|
3896
|
-
"description": "Название
|
|
4154
|
+
"description": "Название требования",
|
|
3897
4155
|
"nullable": true,
|
|
3898
4156
|
"example": "Фото обязательно"
|
|
3899
4157
|
},
|
|
@@ -4041,7 +4299,7 @@
|
|
|
4041
4299
|
},
|
|
4042
4300
|
"timeoutToDeadlineSeconds": {
|
|
4043
4301
|
"type": "integer",
|
|
4044
|
-
"description": "Количество секунд до
|
|
4302
|
+
"description": "Количество секунд до дедлайна при автоматическом переходе в зависимости от него",
|
|
4045
4303
|
"format": "int32",
|
|
4046
4304
|
"nullable": true,
|
|
4047
4305
|
"example": 86400
|
|
@@ -4851,7 +5109,7 @@
|
|
|
4851
5109
|
"properties": {
|
|
4852
5110
|
"taskStageID": {
|
|
4853
5111
|
"type": "integer",
|
|
4854
|
-
"description": "
|
|
5112
|
+
"description": "Идентификатор стадии заявки",
|
|
4855
5113
|
"format": "int32",
|
|
4856
5114
|
"example": 10
|
|
4857
5115
|
},
|