@hubex/mcp 0.9.20260922 → 0.9.20260925

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.
@@ -2,39 +2,34 @@
2
2
  "openapi": "3.0.1",
3
3
  "info": {
4
4
  "title": "API for REPORT in HubEx",
5
- "description": "Service offers application programming interface for ....",
5
+ "description": "Service offers application programming interface for operational reports on tasks, assets, preventive maintenance, response times and Power BI analytics.",
6
6
  "contact": {
7
7
  "name": "SmartService Backend Team",
8
8
  "email": "fmbackend@melston.ru"
9
9
  },
10
10
  "version": "v1.0.0.0"
11
11
  },
12
+ "servers": [
13
+ {
14
+ "url": "/REPORT"
15
+ }
16
+ ],
12
17
  "paths": {
13
18
  "/AssetMaintenance/planned": {
14
19
  "get": {
15
20
  "tags": [
16
21
  "AssetMaintenance"
17
22
  ],
18
- "summary": "Возвращае запланированные заявки на обслуживание объектов, доступных пользователю",
19
- "description": "<br />* Для выполнения данного метода требуется любое из перечисленных полномочий: **PreventiveAssetMaintenanceList**",
23
+ "summary": "Получение запланированных заявок на обслуживание объектов",
24
+ "description": "## Пример запроса:\r\n`GET /AssetMaintenance/planned?validFrom=2026-01-01&validTill=2026-12-31`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n[\r\n {\r\n \"taskTemplateID\": 10,\r\n \"appointment\": \"2026-03-15T09:00:00Z\",\r\n \"normalWorkingHours\": 2,\r\n \"normalWorkingMinutes\": 120,\r\n \"workType\": { \"id\": 5, \"name\": \"ТО оборудования\" },\r\n \"asset\": { \"id\": 100, \"name\": \"Насосная станция №1\" }\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: данные не найдены.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `PreventiveAssetMaintenanceList`.",
20
25
  "parameters": [
21
- {
22
- "name": "Authorization",
23
- "in": "header",
24
- "description": "Bearer",
25
- "required": true,
26
- "schema": {
27
- "type": "string"
28
- }
29
- },
30
26
  {
31
27
  "name": "validFrom",
32
28
  "in": "query",
33
29
  "description": "Начало периода выбора данных (если не указано, то начало текущего года)",
34
30
  "schema": {
35
- "type": "datetime",
36
- "format": "UTC ISO-8601",
37
- "default": null
31
+ "type": "string",
32
+ "format": "date-time"
38
33
  }
39
34
  },
40
35
  {
@@ -42,21 +37,46 @@
42
37
  "in": "query",
43
38
  "description": "Окончание периода выбора данных (если не указано, то конец текущего года)",
44
39
  "schema": {
45
- "type": "datetime",
46
- "format": "UTC ISO-8601",
47
- "default": null
40
+ "type": "string",
41
+ "format": "date-time"
42
+ }
43
+ },
44
+ {
45
+ "name": "X-Application-ID",
46
+ "in": "header",
47
+ "description": "Идентификатор приложения. EngineerMobile - 1, CustomerMobile - 2, MainWeb - 3, AdminWeb - 4, Api - 5, PlateWeb - 6",
48
+ "schema": {
49
+ "enum": [
50
+ 1,
51
+ 2,
52
+ 3,
53
+ 4,
54
+ 5,
55
+ 6
56
+ ],
57
+ "type": "integer",
58
+ "format": "int32",
59
+ "default": 3,
60
+ "x-enumNames": [
61
+ "EngineerMobile",
62
+ "CustomerMobile",
63
+ "MainWeb",
64
+ "AdminWeb",
65
+ "Api",
66
+ "PlateWeb"
67
+ ]
48
68
  }
49
69
  }
50
70
  ],
51
71
  "responses": {
52
72
  "200": {
53
- "description": "OK",
73
+ "description": "Список запланированного обслуживания.",
54
74
  "content": {
55
75
  "text/plain": {
56
76
  "schema": {
57
77
  "type": "array",
58
78
  "items": {
59
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.AssetMaintenance.PlannedMaintenanceResult"
79
+ "$ref": "#/components/schemas/ResultsAssetMaintenancePlannedMaintenanceResult"
60
80
  }
61
81
  }
62
82
  },
@@ -64,7 +84,7 @@
64
84
  "schema": {
65
85
  "type": "array",
66
86
  "items": {
67
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.AssetMaintenance.PlannedMaintenanceResult"
87
+ "$ref": "#/components/schemas/ResultsAssetMaintenancePlannedMaintenanceResult"
68
88
  }
69
89
  }
70
90
  },
@@ -72,19 +92,27 @@
72
92
  "schema": {
73
93
  "type": "array",
74
94
  "items": {
75
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.AssetMaintenance.PlannedMaintenanceResult"
95
+ "$ref": "#/components/schemas/ResultsAssetMaintenancePlannedMaintenanceResult"
76
96
  }
77
97
  }
78
98
  }
79
99
  }
80
100
  },
101
+ "204": {
102
+ "description": "Данные не найдены."
103
+ },
81
104
  "401": {
82
- "description": "Unauthorized"
105
+ "description": "Отсутствует или некорректен Bearer-токен."
83
106
  },
84
107
  "403": {
85
- "description": "Forbidden"
108
+ "description": "Недостаточно прав для просмотра отчета."
109
+ }
110
+ },
111
+ "security": [
112
+ {
113
+ "Bearer": [ ]
86
114
  }
87
- }
115
+ ]
88
116
  }
89
117
  },
90
118
  "/CompletionTime": {
@@ -92,24 +120,15 @@
92
120
  "tags": [
93
121
  "CompletionTime"
94
122
  ],
95
- "summary": "Возвращает список суммарного и среднего времени выполнения заявок, сгруппированных по периоду",
96
- "description": "<br />* Для выполнения данного метода требуется любое из перечисленных полномочий: **TaskListCompletionTime**<br />* Метод поддерживает диапазонный запрос через строку или заголовок запроса.",
123
+ "summary": "Получение отчета по времени выполнения заявок",
124
+ "description": "## Пример запроса:\r\n`GET /CompletionTime?groupByPeriod=Month&creationFrom=2026-01-01&creationTill=2026-12-31`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n[\r\n {\r\n \"period\": { \"from\": \"2026-01-01T00:00:00Z\", \"till\": \"2026-01-31T23:59:59Z\" },\r\n \"completionTime\": { \"totalMinutes\": 4800, \"averageMinutes\": 120 }\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: данные по заданным фильтрам не найдены.\r\n- 206 PartialContent: частичный ответ при использовании Range-заголовка.\r\n- 400 BadRequest: не указан или некорректен параметр groupByPeriod.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав TaskListCompletionTime.",
97
125
  "parameters": [
98
126
  {
99
127
  "name": "groupByPeriod",
100
128
  "in": "query",
101
- "description": "",
102
- "schema": {
103
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Enums.DatePart"
104
- }
105
- },
106
- {
107
- "name": "Authorization",
108
- "in": "header",
109
- "description": "Bearer",
110
- "required": true,
129
+ "description": "Период группировки: Day, Week или Month.",
111
130
  "schema": {
112
- "type": "string"
131
+ "$ref": "#/components/schemas/ApiEnumsDatePart"
113
132
  }
114
133
  },
115
134
  {
@@ -131,8 +150,27 @@
131
150
  {
132
151
  "name": "fetch",
133
152
  "in": "query",
134
- "description": "количество эементов, которое необходимо вернуть",
153
+ "description": "количество элементов, которое необходимо вернуть",
154
+ "schema": {
155
+ "type": "string"
156
+ }
157
+ },
158
+ {
159
+ "name": "groupByPeriod",
160
+ "in": "query",
161
+ "description": "Период группировки (Day, Week, Month)",
162
+ "required": true,
135
163
  "schema": {
164
+ "enum": [
165
+ "Year",
166
+ "Quarter",
167
+ "Month",
168
+ "Day",
169
+ "Week",
170
+ "Second",
171
+ "Minute",
172
+ "Hour"
173
+ ],
136
174
  "type": "string"
137
175
  }
138
176
  },
@@ -141,8 +179,8 @@
141
179
  "in": "query",
142
180
  "description": "Идентификаторы пользователей, которые подали заявку, по которым будет отфильтрован результат",
143
181
  "schema": {
144
- "type": "int32",
145
- "default": null
182
+ "type": "integer",
183
+ "format": "int32"
146
184
  }
147
185
  },
148
186
  {
@@ -150,8 +188,8 @@
150
188
  "in": "query",
151
189
  "description": "Идентификаторы пользователей, на которых в текущий момент назначена заявка, по которым будет отфильтрован результат",
152
190
  "schema": {
153
- "type": "int32",
154
- "default": null
191
+ "type": "integer",
192
+ "format": "int32"
155
193
  }
156
194
  },
157
195
  {
@@ -159,8 +197,8 @@
159
197
  "in": "query",
160
198
  "description": "Идентификаторы пользователей, от которых ожидается утверждение заявки, по которым будет отфильтрован результат",
161
199
  "schema": {
162
- "type": "int32",
163
- "default": null
200
+ "type": "integer",
201
+ "format": "int32"
164
202
  }
165
203
  },
166
204
  {
@@ -168,8 +206,8 @@
168
206
  "in": "query",
169
207
  "description": "Идентификаторы пользователей, на которых была эскалирована заявка, по которым будет отфильтрован результат",
170
208
  "schema": {
171
- "type": "int32",
172
- "default": null
209
+ "type": "integer",
210
+ "format": "int32"
173
211
  }
174
212
  },
175
213
  {
@@ -177,8 +215,8 @@
177
215
  "in": "query",
178
216
  "description": "Идентификаторы объектов, по которым будет отфильтрован результат",
179
217
  "schema": {
180
- "type": "int32",
181
- "default": null
218
+ "type": "integer",
219
+ "format": "int32"
182
220
  }
183
221
  },
184
222
  {
@@ -186,8 +224,8 @@
186
224
  "in": "query",
187
225
  "description": "Идентификаторы объектов, по которым и по дочерним объектам которых будет отфильтрован результат",
188
226
  "schema": {
189
- "type": "int32",
190
- "default": null
227
+ "type": "integer",
228
+ "format": "int32"
191
229
  }
192
230
  },
193
231
  {
@@ -195,8 +233,8 @@
195
233
  "in": "query",
196
234
  "description": "Идентификаторы заявок, по которым будет отфильтрован результат",
197
235
  "schema": {
198
- "type": "int32",
199
- "default": null
236
+ "type": "integer",
237
+ "format": "int32"
200
238
  }
201
239
  },
202
240
  {
@@ -204,8 +242,7 @@
204
242
  "in": "query",
205
243
  "description": "Номера заявок, по которым будет отфильтрован результат",
206
244
  "schema": {
207
- "type": "string",
208
- "default": null
245
+ "type": "string"
209
246
  }
210
247
  },
211
248
  {
@@ -213,8 +250,8 @@
213
250
  "in": "query",
214
251
  "description": "Идентификаторы типов заявок, по которым будет отфильтрован результат",
215
252
  "schema": {
216
- "type": "int16",
217
- "default": null
253
+ "type": "integer",
254
+ "format": "int32"
218
255
  }
219
256
  },
220
257
  {
@@ -222,8 +259,8 @@
222
259
  "in": "query",
223
260
  "description": "Идентификаторы видов работ, по которым будет отфильтрован результат",
224
261
  "schema": {
225
- "type": "int16",
226
- "default": null
262
+ "type": "integer",
263
+ "format": "int32"
227
264
  }
228
265
  },
229
266
  {
@@ -231,8 +268,8 @@
231
268
  "in": "query",
232
269
  "description": "Идентификаторы стадий заявок, на которых в текущий находятся заявки, по которым будет отфильтрован результат",
233
270
  "schema": {
234
- "type": "int16",
235
- "default": null
271
+ "type": "integer",
272
+ "format": "int32"
236
273
  }
237
274
  },
238
275
  {
@@ -240,8 +277,8 @@
240
277
  "in": "query",
241
278
  "description": "Идентификаторы статусов заявок, по которым будет отфильтрован результат",
242
279
  "schema": {
243
- "type": "int16",
244
- "default": null
280
+ "type": "integer",
281
+ "format": "int32"
245
282
  }
246
283
  },
247
284
  {
@@ -249,9 +286,8 @@
249
286
  "in": "query",
250
287
  "description": "Начальный период фильтрации по дате создания заявки",
251
288
  "schema": {
252
- "type": "datetime",
253
- "format": "UTC ISO-8601",
254
- "default": null
289
+ "type": "string",
290
+ "format": "date-time"
255
291
  }
256
292
  },
257
293
  {
@@ -259,9 +295,8 @@
259
295
  "in": "query",
260
296
  "description": "Конечный период фильтрации по дате создания заявки",
261
297
  "schema": {
262
- "type": "datetime",
263
- "format": "UTC ISO-8601",
264
- "default": null
298
+ "type": "string",
299
+ "format": "date-time"
265
300
  }
266
301
  },
267
302
  {
@@ -269,9 +304,8 @@
269
304
  "in": "query",
270
305
  "description": "Начальный период фильтрации по дате назначения заявки",
271
306
  "schema": {
272
- "type": "datetime",
273
- "format": "UTC ISO-8601",
274
- "default": null
307
+ "type": "string",
308
+ "format": "date-time"
275
309
  }
276
310
  },
277
311
  {
@@ -279,9 +313,8 @@
279
313
  "in": "query",
280
314
  "description": "Конечный период фильтрации по дате назначения заявки",
281
315
  "schema": {
282
- "type": "datetime",
283
- "format": "UTC ISO-8601",
284
- "default": null
316
+ "type": "string",
317
+ "format": "date-time"
285
318
  }
286
319
  },
287
320
  {
@@ -289,9 +322,8 @@
289
322
  "in": "query",
290
323
  "description": "Начальный период фильтрации по дате выполнения заявки",
291
324
  "schema": {
292
- "type": "datetime",
293
- "format": "UTC ISO-8601",
294
- "default": null
325
+ "type": "string",
326
+ "format": "date-time"
295
327
  }
296
328
  },
297
329
  {
@@ -299,9 +331,8 @@
299
331
  "in": "query",
300
332
  "description": "Конечный период фильтрации по дате выполнения заявки",
301
333
  "schema": {
302
- "type": "datetime",
303
- "format": "UTC ISO-8601",
304
- "default": null
334
+ "type": "string",
335
+ "format": "date-time"
305
336
  }
306
337
  },
307
338
  {
@@ -309,9 +340,8 @@
309
340
  "in": "query",
310
341
  "description": "Начальный период фильтрации по дате закрытия заявки",
311
342
  "schema": {
312
- "type": "datetime",
313
- "format": "UTC ISO-8601",
314
- "default": null
343
+ "type": "string",
344
+ "format": "date-time"
315
345
  }
316
346
  },
317
347
  {
@@ -319,9 +349,8 @@
319
349
  "in": "query",
320
350
  "description": "Конечный период фильтрации по дате закрытия заявки",
321
351
  "schema": {
322
- "type": "datetime",
323
- "format": "UTC ISO-8601",
324
- "default": null
352
+ "type": "string",
353
+ "format": "date-time"
325
354
  }
326
355
  },
327
356
  {
@@ -329,9 +358,8 @@
329
358
  "in": "query",
330
359
  "description": "Начальный период фильтрации по сроку выполнения заявки",
331
360
  "schema": {
332
- "type": "datetime",
333
- "format": "UTC ISO-8601",
334
- "default": null
361
+ "type": "string",
362
+ "format": "date-time"
335
363
  }
336
364
  },
337
365
  {
@@ -339,9 +367,8 @@
339
367
  "in": "query",
340
368
  "description": "Конечный период фильтрации по сроку выполнения заявки",
341
369
  "schema": {
342
- "type": "datetime",
343
- "format": "UTC ISO-8601",
344
- "default": null
370
+ "type": "string",
371
+ "format": "date-time"
345
372
  }
346
373
  },
347
374
  {
@@ -349,12 +376,7 @@
349
376
  "in": "query",
350
377
  "description": "Если true, результат будет содержать только закрытые заявки, если false - только открытые",
351
378
  "schema": {
352
- "enum": [
353
- "true",
354
- "false"
355
- ],
356
- "type": "boolean",
357
- "default": null
379
+ "type": "boolean"
358
380
  }
359
381
  },
360
382
  {
@@ -362,12 +384,7 @@
362
384
  "in": "query",
363
385
  "description": "Если true, результат будет содержать только заявки из списка избранных для текущего пользователя, если false - только те, которые не вошли в список избранных текущего пользователя",
364
386
  "schema": {
365
- "enum": [
366
- "true",
367
- "false"
368
- ],
369
- "type": "boolean",
370
- "default": null
387
+ "type": "boolean"
371
388
  }
372
389
  },
373
390
  {
@@ -375,12 +392,7 @@
375
392
  "in": "query",
376
393
  "description": "Если true, результат будет содержать только выполненые заявки, если false - только не выполненные",
377
394
  "schema": {
378
- "enum": [
379
- "true",
380
- "false"
381
- ],
382
- "type": "boolean",
383
- "default": null
395
+ "type": "boolean"
384
396
  }
385
397
  },
386
398
  {
@@ -388,12 +400,7 @@
388
400
  "in": "query",
389
401
  "description": "Если true, результат будет содержать только назначенные на кого-либо заявки, если false - только не назначенные",
390
402
  "schema": {
391
- "enum": [
392
- "true",
393
- "false"
394
- ],
395
- "type": "boolean",
396
- "default": null
403
+ "type": "boolean"
397
404
  }
398
405
  },
399
406
  {
@@ -401,12 +408,7 @@
401
408
  "in": "query",
402
409
  "description": "Если true, результат будет содержать только удаленные заявки, если false - только неудаленные",
403
410
  "schema": {
404
- "enum": [
405
- "true",
406
- "false"
407
- ],
408
- "type": "boolean",
409
- "default": null
411
+ "type": "boolean"
410
412
  }
411
413
  },
412
414
  {
@@ -414,8 +416,8 @@
414
416
  "in": "query",
415
417
  "description": "Идентификаторы компаний владельца оборудования, по заявкам которых будет отфильтрован результат",
416
418
  "schema": {
417
- "type": "int16",
418
- "default": null
419
+ "type": "integer",
420
+ "format": "int32"
419
421
  }
420
422
  },
421
423
  {
@@ -423,8 +425,8 @@
423
425
  "in": "query",
424
426
  "description": "Идентификаторы контракта, в рамках которого выполняется заявка",
425
427
  "schema": {
426
- "type": "int16",
427
- "default": null
428
+ "type": "integer",
429
+ "format": "int32"
428
430
  }
429
431
  },
430
432
  {
@@ -432,20 +434,46 @@
432
434
  "in": "query",
433
435
  "description": "Идентификаторы критичности заявок, по которым будет отфильтрован результат",
434
436
  "schema": {
435
- "type": "byte",
436
- "default": null
437
+ "type": "integer",
438
+ "format": "int32"
439
+ }
440
+ },
441
+ {
442
+ "name": "X-Application-ID",
443
+ "in": "header",
444
+ "description": "Идентификатор приложения. EngineerMobile - 1, CustomerMobile - 2, MainWeb - 3, AdminWeb - 4, Api - 5, PlateWeb - 6",
445
+ "schema": {
446
+ "enum": [
447
+ 1,
448
+ 2,
449
+ 3,
450
+ 4,
451
+ 5,
452
+ 6
453
+ ],
454
+ "type": "integer",
455
+ "format": "int32",
456
+ "default": 3,
457
+ "x-enumNames": [
458
+ "EngineerMobile",
459
+ "CustomerMobile",
460
+ "MainWeb",
461
+ "AdminWeb",
462
+ "Api",
463
+ "PlateWeb"
464
+ ]
437
465
  }
438
466
  }
439
467
  ],
440
468
  "responses": {
441
469
  "200": {
442
- "description": "OK",
470
+ "description": "Отчет по времени выполнения.",
443
471
  "content": {
444
472
  "text/plain": {
445
473
  "schema": {
446
474
  "type": "array",
447
475
  "items": {
448
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
476
+ "$ref": "#/components/schemas/ResultsCompletionTimeCompletionTimeResult"
449
477
  }
450
478
  }
451
479
  },
@@ -453,7 +481,7 @@
453
481
  "schema": {
454
482
  "type": "array",
455
483
  "items": {
456
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
484
+ "$ref": "#/components/schemas/ResultsCompletionTimeCompletionTimeResult"
457
485
  }
458
486
  }
459
487
  },
@@ -461,30 +489,33 @@
461
489
  "schema": {
462
490
  "type": "array",
463
491
  "items": {
464
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
492
+ "$ref": "#/components/schemas/ResultsCompletionTimeCompletionTimeResult"
465
493
  }
466
494
  }
467
495
  }
468
496
  }
469
497
  },
498
+ "204": {
499
+ "description": "Данные не найдены."
500
+ },
501
+ "206": {
502
+ "description": "Частичный ответ при использовании Range-заголовка."
503
+ },
470
504
  "401": {
471
- "description": "Unauthorized"
505
+ "description": "Отсутствует или некорректен Bearer-токен."
472
506
  },
473
- "403": {
474
- "description": "Forbidden"
507
+ "400": {
508
+ "description": "Некорректный параметр groupByPeriod."
475
509
  },
476
- "206": {
477
- "description": "PartialContent",
478
- "headers": {
479
- "Content-Range": {
480
- "description": "items=FROM-TILL/OF , где FROM - начальный элемент (включая), TILL - конечный элемент (включая) OF - общее количество элементов",
481
- "schema": {
482
- "type": "string"
483
- }
484
- }
485
- }
510
+ "403": {
511
+ "description": "Недостаточно прав для просмотра отчета."
512
+ }
513
+ },
514
+ "security": [
515
+ {
516
+ "Bearer": [ ]
486
517
  }
487
- }
518
+ ]
488
519
  }
489
520
  },
490
521
  "/PowerBICustomReports": {
@@ -492,18 +523,9 @@
492
523
  "tags": [
493
524
  "PowerBICustomReports"
494
525
  ],
495
- "summary": "Возвращает список кастомных отчетов тенанта",
496
- "description": "<br />* Для выполнения данного метода требуется любое из перечисленных полномочий: **PowerBICustomReportList**<br />* Метод поддерживает диапазонный запрос через строку или заголовок запроса.",
526
+ "summary": "Получение списка кастомных отчетов PowerBI",
527
+ "description": "## Пример запроса:\r\n`GET /PowerBICustomReports`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"1\": {\r\n \"name\": \"Отчет по заявкам\",\r\n \"reportID\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\",\r\n \"reportType\": \"PowerBI\"\r\n }\r\n}\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: отчеты не найдены.\r\n- 206 PartialContent: частичный ответ при использовании Range-заголовка.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав `PowerBICustomReportList`.",
497
528
  "parameters": [
498
- {
499
- "name": "Authorization",
500
- "in": "header",
501
- "description": "Bearer",
502
- "required": true,
503
- "schema": {
504
- "type": "string"
505
- }
506
- },
507
529
  {
508
530
  "name": "Range",
509
531
  "in": "header",
@@ -523,21 +545,47 @@
523
545
  {
524
546
  "name": "fetch",
525
547
  "in": "query",
526
- "description": "количество эементов, которое необходимо вернуть",
548
+ "description": "количество элементов, которое необходимо вернуть",
527
549
  "schema": {
528
550
  "type": "string"
529
551
  }
552
+ },
553
+ {
554
+ "name": "X-Application-ID",
555
+ "in": "header",
556
+ "description": "Идентификатор приложения. EngineerMobile - 1, CustomerMobile - 2, MainWeb - 3, AdminWeb - 4, Api - 5, PlateWeb - 6",
557
+ "schema": {
558
+ "enum": [
559
+ 1,
560
+ 2,
561
+ 3,
562
+ 4,
563
+ 5,
564
+ 6
565
+ ],
566
+ "type": "integer",
567
+ "format": "int32",
568
+ "default": 3,
569
+ "x-enumNames": [
570
+ "EngineerMobile",
571
+ "CustomerMobile",
572
+ "MainWeb",
573
+ "AdminWeb",
574
+ "Api",
575
+ "PlateWeb"
576
+ ]
577
+ }
530
578
  }
531
579
  ],
532
580
  "responses": {
533
581
  "200": {
534
- "description": "OK",
582
+ "description": "Полный список отчетов.",
535
583
  "content": {
536
584
  "text/plain": {
537
585
  "schema": {
538
586
  "type": "object",
539
587
  "additionalProperties": {
540
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.PowerBICustomReports.CustomReportList"
588
+ "$ref": "#/components/schemas/ResultsPowerBICustomReportsCustomReportList"
541
589
  }
542
590
  }
543
591
  },
@@ -545,7 +593,7 @@
545
593
  "schema": {
546
594
  "type": "object",
547
595
  "additionalProperties": {
548
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.PowerBICustomReports.CustomReportList"
596
+ "$ref": "#/components/schemas/ResultsPowerBICustomReportsCustomReportList"
549
597
  }
550
598
  }
551
599
  },
@@ -553,30 +601,30 @@
553
601
  "schema": {
554
602
  "type": "object",
555
603
  "additionalProperties": {
556
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.PowerBICustomReports.CustomReportList"
604
+ "$ref": "#/components/schemas/ResultsPowerBICustomReportsCustomReportList"
557
605
  }
558
606
  }
559
607
  }
560
608
  }
561
609
  },
610
+ "206": {
611
+ "description": "Частичный список отчетов при использовании Range-заголовка."
612
+ },
613
+ "204": {
614
+ "description": "Отчеты не найдены."
615
+ },
562
616
  "401": {
563
- "description": "Unauthorized"
617
+ "description": "Отсутствует или некорректен Bearer-токен."
564
618
  },
565
619
  "403": {
566
- "description": "Forbidden"
567
- },
568
- "206": {
569
- "description": "PartialContent",
570
- "headers": {
571
- "Content-Range": {
572
- "description": "items=FROM-TILL/OF , где FROM - начальный элемент (включая), TILL - конечный элемент (включая) OF - общее количество элементов",
573
- "schema": {
574
- "type": "string"
575
- }
576
- }
577
- }
620
+ "description": "Недостаточно прав для просмотра отчетов."
621
+ }
622
+ },
623
+ "security": [
624
+ {
625
+ "Bearer": [ ]
578
626
  }
579
- }
627
+ ]
580
628
  }
581
629
  },
582
630
  "/ReactionTime": {
@@ -584,24 +632,15 @@
584
632
  "tags": [
585
633
  "ReactionTime"
586
634
  ],
587
- "summary": "Возвращает список суммарного и среднего времени реакции по заявкам, сгруппированным по периоду",
588
- "description": "<br />* Для выполнения данного метода требуется любое из перечисленных полномочий: **TaskListReactionTime**<br />* Метод поддерживает диапазонный запрос через строку или заголовок запроса.",
635
+ "summary": "Получение отчета по времени реакции на заявки",
636
+ "description": "## Пример запроса:\r\n`GET /ReactionTime?groupByPeriod=Week&creationFrom=2026-01-01&creationTill=2026-03-31`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n[\r\n {\r\n \"period\": { \"from\": \"2026-01-01T00:00:00Z\", \"till\": \"2026-01-07T23:59:59Z\" },\r\n \"reactionTime\": { \"totalMinutes\": 360, \"averageMinutes\": 45 }\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: данные по заданным фильтрам не найдены.\r\n- 206 PartialContent: частичный ответ при использовании Range-заголовка.\r\n- 400 BadRequest: не указан или некорректен параметр groupByPeriod.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав TaskListReactionTime.",
589
637
  "parameters": [
590
638
  {
591
639
  "name": "groupByPeriod",
592
640
  "in": "query",
593
- "description": "",
594
- "schema": {
595
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Enums.DatePart"
596
- }
597
- },
598
- {
599
- "name": "Authorization",
600
- "in": "header",
601
- "description": "Bearer",
602
- "required": true,
641
+ "description": "Период группировки: Day, Week или Month.",
603
642
  "schema": {
604
- "type": "string"
643
+ "$ref": "#/components/schemas/ApiEnumsDatePart"
605
644
  }
606
645
  },
607
646
  {
@@ -623,8 +662,27 @@
623
662
  {
624
663
  "name": "fetch",
625
664
  "in": "query",
626
- "description": "количество эементов, которое необходимо вернуть",
665
+ "description": "количество элементов, которое необходимо вернуть",
666
+ "schema": {
667
+ "type": "string"
668
+ }
669
+ },
670
+ {
671
+ "name": "groupByPeriod",
672
+ "in": "query",
673
+ "description": "Период группировки (Day, Week, Month)",
674
+ "required": true,
627
675
  "schema": {
676
+ "enum": [
677
+ "Year",
678
+ "Quarter",
679
+ "Month",
680
+ "Day",
681
+ "Week",
682
+ "Second",
683
+ "Minute",
684
+ "Hour"
685
+ ],
628
686
  "type": "string"
629
687
  }
630
688
  },
@@ -633,8 +691,8 @@
633
691
  "in": "query",
634
692
  "description": "Идентификаторы пользователей, которые подали заявку, по которым будет отфильтрован результат",
635
693
  "schema": {
636
- "type": "int32",
637
- "default": null
694
+ "type": "integer",
695
+ "format": "int32"
638
696
  }
639
697
  },
640
698
  {
@@ -642,8 +700,8 @@
642
700
  "in": "query",
643
701
  "description": "Идентификаторы пользователей, на которых в текущий момент назначена заявка, по которым будет отфильтрован результат",
644
702
  "schema": {
645
- "type": "int32",
646
- "default": null
703
+ "type": "integer",
704
+ "format": "int32"
647
705
  }
648
706
  },
649
707
  {
@@ -651,8 +709,8 @@
651
709
  "in": "query",
652
710
  "description": "Идентификаторы пользователей, от которых ожидается утверждение заявки, по которым будет отфильтрован результат",
653
711
  "schema": {
654
- "type": "int32",
655
- "default": null
712
+ "type": "integer",
713
+ "format": "int32"
656
714
  }
657
715
  },
658
716
  {
@@ -660,8 +718,8 @@
660
718
  "in": "query",
661
719
  "description": "Идентификаторы пользователей, на которых была эскалирована заявка, по которым будет отфильтрован результат",
662
720
  "schema": {
663
- "type": "int32",
664
- "default": null
721
+ "type": "integer",
722
+ "format": "int32"
665
723
  }
666
724
  },
667
725
  {
@@ -669,8 +727,8 @@
669
727
  "in": "query",
670
728
  "description": "Идентификаторы объектов, по которым будет отфильтрован результат",
671
729
  "schema": {
672
- "type": "int32",
673
- "default": null
730
+ "type": "integer",
731
+ "format": "int32"
674
732
  }
675
733
  },
676
734
  {
@@ -678,8 +736,8 @@
678
736
  "in": "query",
679
737
  "description": "Идентификаторы объектов, по которым и по дочерним объектам которых будет отфильтрован результат",
680
738
  "schema": {
681
- "type": "int32",
682
- "default": null
739
+ "type": "integer",
740
+ "format": "int32"
683
741
  }
684
742
  },
685
743
  {
@@ -687,8 +745,8 @@
687
745
  "in": "query",
688
746
  "description": "Идентификаторы заявок, по которым будет отфильтрован результат",
689
747
  "schema": {
690
- "type": "int32",
691
- "default": null
748
+ "type": "integer",
749
+ "format": "int32"
692
750
  }
693
751
  },
694
752
  {
@@ -696,8 +754,7 @@
696
754
  "in": "query",
697
755
  "description": "Номера заявок, по которым будет отфильтрован результат",
698
756
  "schema": {
699
- "type": "string",
700
- "default": null
757
+ "type": "string"
701
758
  }
702
759
  },
703
760
  {
@@ -705,8 +762,8 @@
705
762
  "in": "query",
706
763
  "description": "Идентификаторы типов заявок, по которым будет отфильтрован результат",
707
764
  "schema": {
708
- "type": "int16",
709
- "default": null
765
+ "type": "integer",
766
+ "format": "int32"
710
767
  }
711
768
  },
712
769
  {
@@ -714,8 +771,8 @@
714
771
  "in": "query",
715
772
  "description": "Идентификаторы видов работ, по которым будет отфильтрован результат",
716
773
  "schema": {
717
- "type": "int16",
718
- "default": null
774
+ "type": "integer",
775
+ "format": "int32"
719
776
  }
720
777
  },
721
778
  {
@@ -723,8 +780,8 @@
723
780
  "in": "query",
724
781
  "description": "Идентификаторы стадий заявок, на которых в текущий находятся заявки, по которым будет отфильтрован результат",
725
782
  "schema": {
726
- "type": "int16",
727
- "default": null
783
+ "type": "integer",
784
+ "format": "int32"
728
785
  }
729
786
  },
730
787
  {
@@ -732,8 +789,8 @@
732
789
  "in": "query",
733
790
  "description": "Идентификаторы статусов заявок, по которым будет отфильтрован результат",
734
791
  "schema": {
735
- "type": "int16",
736
- "default": null
792
+ "type": "integer",
793
+ "format": "int32"
737
794
  }
738
795
  },
739
796
  {
@@ -741,9 +798,8 @@
741
798
  "in": "query",
742
799
  "description": "Начальный период фильтрации по дате создания заявки",
743
800
  "schema": {
744
- "type": "datetime",
745
- "format": "UTC ISO-8601",
746
- "default": null
801
+ "type": "string",
802
+ "format": "date-time"
747
803
  }
748
804
  },
749
805
  {
@@ -751,9 +807,8 @@
751
807
  "in": "query",
752
808
  "description": "Конечный период фильтрации по дате создания заявки",
753
809
  "schema": {
754
- "type": "datetime",
755
- "format": "UTC ISO-8601",
756
- "default": null
810
+ "type": "string",
811
+ "format": "date-time"
757
812
  }
758
813
  },
759
814
  {
@@ -761,9 +816,8 @@
761
816
  "in": "query",
762
817
  "description": "Начальный период фильтрации по дате назначения заявки",
763
818
  "schema": {
764
- "type": "datetime",
765
- "format": "UTC ISO-8601",
766
- "default": null
819
+ "type": "string",
820
+ "format": "date-time"
767
821
  }
768
822
  },
769
823
  {
@@ -771,9 +825,8 @@
771
825
  "in": "query",
772
826
  "description": "Конечный период фильтрации по дате назначения заявки",
773
827
  "schema": {
774
- "type": "datetime",
775
- "format": "UTC ISO-8601",
776
- "default": null
828
+ "type": "string",
829
+ "format": "date-time"
777
830
  }
778
831
  },
779
832
  {
@@ -781,9 +834,8 @@
781
834
  "in": "query",
782
835
  "description": "Начальный период фильтрации по дате выполнения заявки",
783
836
  "schema": {
784
- "type": "datetime",
785
- "format": "UTC ISO-8601",
786
- "default": null
837
+ "type": "string",
838
+ "format": "date-time"
787
839
  }
788
840
  },
789
841
  {
@@ -791,9 +843,8 @@
791
843
  "in": "query",
792
844
  "description": "Конечный период фильтрации по дате выполнения заявки",
793
845
  "schema": {
794
- "type": "datetime",
795
- "format": "UTC ISO-8601",
796
- "default": null
846
+ "type": "string",
847
+ "format": "date-time"
797
848
  }
798
849
  },
799
850
  {
@@ -801,9 +852,8 @@
801
852
  "in": "query",
802
853
  "description": "Начальный период фильтрации по дате закрытия заявки",
803
854
  "schema": {
804
- "type": "datetime",
805
- "format": "UTC ISO-8601",
806
- "default": null
855
+ "type": "string",
856
+ "format": "date-time"
807
857
  }
808
858
  },
809
859
  {
@@ -811,9 +861,8 @@
811
861
  "in": "query",
812
862
  "description": "Конечный период фильтрации по дате закрытия заявки",
813
863
  "schema": {
814
- "type": "datetime",
815
- "format": "UTC ISO-8601",
816
- "default": null
864
+ "type": "string",
865
+ "format": "date-time"
817
866
  }
818
867
  },
819
868
  {
@@ -821,9 +870,8 @@
821
870
  "in": "query",
822
871
  "description": "Начальный период фильтрации по сроку выполнения заявки",
823
872
  "schema": {
824
- "type": "datetime",
825
- "format": "UTC ISO-8601",
826
- "default": null
873
+ "type": "string",
874
+ "format": "date-time"
827
875
  }
828
876
  },
829
877
  {
@@ -831,9 +879,8 @@
831
879
  "in": "query",
832
880
  "description": "Конечный период фильтрации по сроку выполнения заявки",
833
881
  "schema": {
834
- "type": "datetime",
835
- "format": "UTC ISO-8601",
836
- "default": null
882
+ "type": "string",
883
+ "format": "date-time"
837
884
  }
838
885
  },
839
886
  {
@@ -841,12 +888,7 @@
841
888
  "in": "query",
842
889
  "description": "Если true, результат будет содержать только закрытые заявки, если false - только открытые",
843
890
  "schema": {
844
- "enum": [
845
- "true",
846
- "false"
847
- ],
848
- "type": "boolean",
849
- "default": null
891
+ "type": "boolean"
850
892
  }
851
893
  },
852
894
  {
@@ -854,12 +896,7 @@
854
896
  "in": "query",
855
897
  "description": "Если true, результат будет содержать только заявки из списка избранных для текущего пользователя, если false - только те, которые не вошли в список избранных текущего пользователя",
856
898
  "schema": {
857
- "enum": [
858
- "true",
859
- "false"
860
- ],
861
- "type": "boolean",
862
- "default": null
899
+ "type": "boolean"
863
900
  }
864
901
  },
865
902
  {
@@ -867,12 +904,7 @@
867
904
  "in": "query",
868
905
  "description": "Если true, результат будет содержать только выполненые заявки, если false - только не выполненные",
869
906
  "schema": {
870
- "enum": [
871
- "true",
872
- "false"
873
- ],
874
- "type": "boolean",
875
- "default": null
907
+ "type": "boolean"
876
908
  }
877
909
  },
878
910
  {
@@ -880,12 +912,7 @@
880
912
  "in": "query",
881
913
  "description": "Если true, результат будет содержать только назначенные на кого-либо заявки, если false - только не назначенные",
882
914
  "schema": {
883
- "enum": [
884
- "true",
885
- "false"
886
- ],
887
- "type": "boolean",
888
- "default": null
915
+ "type": "boolean"
889
916
  }
890
917
  },
891
918
  {
@@ -893,12 +920,7 @@
893
920
  "in": "query",
894
921
  "description": "Если true, результат будет содержать только удаленные заявки, если false - только неудаленные",
895
922
  "schema": {
896
- "enum": [
897
- "true",
898
- "false"
899
- ],
900
- "type": "boolean",
901
- "default": null
923
+ "type": "boolean"
902
924
  }
903
925
  },
904
926
  {
@@ -906,8 +928,8 @@
906
928
  "in": "query",
907
929
  "description": "Идентификаторы компаний владельца оборудования, по заявкам которых будет отфильтрован результат",
908
930
  "schema": {
909
- "type": "int16",
910
- "default": null
931
+ "type": "integer",
932
+ "format": "int32"
911
933
  }
912
934
  },
913
935
  {
@@ -915,8 +937,8 @@
915
937
  "in": "query",
916
938
  "description": "Идентификаторы контракта, в рамках которого выполняется заявка",
917
939
  "schema": {
918
- "type": "int16",
919
- "default": null
940
+ "type": "integer",
941
+ "format": "int32"
920
942
  }
921
943
  },
922
944
  {
@@ -924,20 +946,46 @@
924
946
  "in": "query",
925
947
  "description": "Идентификаторы критичности заявок, по которым будет отфильтрован результат",
926
948
  "schema": {
927
- "type": "byte",
928
- "default": null
949
+ "type": "integer",
950
+ "format": "int32"
951
+ }
952
+ },
953
+ {
954
+ "name": "X-Application-ID",
955
+ "in": "header",
956
+ "description": "Идентификатор приложения. EngineerMobile - 1, CustomerMobile - 2, MainWeb - 3, AdminWeb - 4, Api - 5, PlateWeb - 6",
957
+ "schema": {
958
+ "enum": [
959
+ 1,
960
+ 2,
961
+ 3,
962
+ 4,
963
+ 5,
964
+ 6
965
+ ],
966
+ "type": "integer",
967
+ "format": "int32",
968
+ "default": 3,
969
+ "x-enumNames": [
970
+ "EngineerMobile",
971
+ "CustomerMobile",
972
+ "MainWeb",
973
+ "AdminWeb",
974
+ "Api",
975
+ "PlateWeb"
976
+ ]
929
977
  }
930
978
  }
931
979
  ],
932
980
  "responses": {
933
981
  "200": {
934
- "description": "OK",
982
+ "description": "Отчет по времени реакции.",
935
983
  "content": {
936
984
  "text/plain": {
937
985
  "schema": {
938
986
  "type": "array",
939
987
  "items": {
940
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
988
+ "$ref": "#/components/schemas/ResultsReactionTimeReactionTimeResult"
941
989
  }
942
990
  }
943
991
  },
@@ -945,7 +993,7 @@
945
993
  "schema": {
946
994
  "type": "array",
947
995
  "items": {
948
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
996
+ "$ref": "#/components/schemas/ResultsReactionTimeReactionTimeResult"
949
997
  }
950
998
  }
951
999
  },
@@ -953,30 +1001,33 @@
953
1001
  "schema": {
954
1002
  "type": "array",
955
1003
  "items": {
956
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
1004
+ "$ref": "#/components/schemas/ResultsReactionTimeReactionTimeResult"
957
1005
  }
958
1006
  }
959
1007
  }
960
1008
  }
961
1009
  },
1010
+ "204": {
1011
+ "description": "Данные не найдены."
1012
+ },
1013
+ "206": {
1014
+ "description": "Частичный ответ при использовании Range-заголовка."
1015
+ },
962
1016
  "401": {
963
- "description": "Unauthorized"
1017
+ "description": "Отсутствует или некорректен Bearer-токен."
964
1018
  },
965
- "403": {
966
- "description": "Forbidden"
1019
+ "400": {
1020
+ "description": "Некорректный параметр groupByPeriod."
967
1021
  },
968
- "206": {
969
- "description": "PartialContent",
970
- "headers": {
971
- "Content-Range": {
972
- "description": "items=FROM-TILL/OF , где FROM - начальный элемент (включая), TILL - конечный элемент (включая) OF - общее количество элементов",
973
- "schema": {
974
- "type": "string"
975
- }
976
- }
977
- }
1022
+ "403": {
1023
+ "description": "Недостаточно прав для просмотра отчета."
1024
+ }
1025
+ },
1026
+ "security": [
1027
+ {
1028
+ "Bearer": [ ]
978
1029
  }
979
- }
1030
+ ]
980
1031
  }
981
1032
  },
982
1033
  "/TasksByAssets": {
@@ -984,22 +1035,13 @@
984
1035
  "tags": [
985
1036
  "TasksByAssets"
986
1037
  ],
987
- "summary": "Возвращает список заявок, сгруппированных по оборудованию",
988
- "description": "<br />* Для выполнения данного метода требуется любое из перечисленных полномочий: **TaskListGroupByAssets**<br />* Метод поддерживает диапазонный запрос через строку или заголовок запроса.",
1038
+ "summary": "Получение отчета по заявкам, сгруппированным по оборудованию",
1039
+ "description": "## Пример запроса:\r\n`GET /TasksByAssets?searchText=ремонт&assetID=10&isClosed=false`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n[\r\n {\r\n \"asset\": { \"id\": 10, \"name\": \"Насосная станция\" },\r\n \"activeTasksCount\": 5,\r\n \"outdatedTasksCount\": 1,\r\n \"undefinedTasksCount\": 0,\r\n \"total\": 6\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: данные по заданным фильтрам не найдены.\r\n- 206 PartialContent: частичный ответ при использовании Range-заголовка.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав TaskListGroupByAssets.",
989
1040
  "parameters": [
990
1041
  {
991
1042
  "name": "searchText",
992
1043
  "in": "query",
993
- "description": "Текстовый поиск по вхождению строки от одного символа. Поиск осуществляется в описании и номере заявки, названии и описании объекта, названии вида работ. Доступен sql like-синтексис.",
994
- "schema": {
995
- "type": "string"
996
- }
997
- },
998
- {
999
- "name": "Authorization",
1000
- "in": "header",
1001
- "description": "Bearer",
1002
- "required": true,
1044
+ "description": "Текстовый поиск по вхождению строки от одного символа. Поиск осуществляется в описании и номере заявки, названии и описании объекта, названии вида работ. Доступен sql like-синтаксис.",
1003
1045
  "schema": {
1004
1046
  "type": "string"
1005
1047
  }
@@ -1023,7 +1065,15 @@
1023
1065
  {
1024
1066
  "name": "fetch",
1025
1067
  "in": "query",
1026
- "description": "количество эементов, которое необходимо вернуть",
1068
+ "description": "количество элементов, которое необходимо вернуть",
1069
+ "schema": {
1070
+ "type": "string"
1071
+ }
1072
+ },
1073
+ {
1074
+ "name": "searchText",
1075
+ "in": "query",
1076
+ "description": "Текстовый поиск по вхождению строки от одного символа",
1027
1077
  "schema": {
1028
1078
  "type": "string"
1029
1079
  }
@@ -1033,8 +1083,8 @@
1033
1083
  "in": "query",
1034
1084
  "description": "Идентификаторы пользователей, которые подали заявку, по которым будет отфильтрован результат",
1035
1085
  "schema": {
1036
- "type": "int32",
1037
- "default": null
1086
+ "type": "integer",
1087
+ "format": "int32"
1038
1088
  }
1039
1089
  },
1040
1090
  {
@@ -1042,8 +1092,8 @@
1042
1092
  "in": "query",
1043
1093
  "description": "Идентификаторы пользователей, на которых в текущий момент назначена заявка, по которым будет отфильтрован результат",
1044
1094
  "schema": {
1045
- "type": "int32",
1046
- "default": null
1095
+ "type": "integer",
1096
+ "format": "int32"
1047
1097
  }
1048
1098
  },
1049
1099
  {
@@ -1051,8 +1101,8 @@
1051
1101
  "in": "query",
1052
1102
  "description": "Идентификаторы пользователей, от которых ожидается утверждение заявки, по которым будет отфильтрован результат",
1053
1103
  "schema": {
1054
- "type": "int32",
1055
- "default": null
1104
+ "type": "integer",
1105
+ "format": "int32"
1056
1106
  }
1057
1107
  },
1058
1108
  {
@@ -1060,8 +1110,8 @@
1060
1110
  "in": "query",
1061
1111
  "description": "Идентификаторы пользователей, на которых была эскалирована заявка, по которым будет отфильтрован результат",
1062
1112
  "schema": {
1063
- "type": "int32",
1064
- "default": null
1113
+ "type": "integer",
1114
+ "format": "int32"
1065
1115
  }
1066
1116
  },
1067
1117
  {
@@ -1069,8 +1119,8 @@
1069
1119
  "in": "query",
1070
1120
  "description": "Идентификаторы объектов, по которым будет отфильтрован результат",
1071
1121
  "schema": {
1072
- "type": "int32",
1073
- "default": null
1122
+ "type": "integer",
1123
+ "format": "int32"
1074
1124
  }
1075
1125
  },
1076
1126
  {
@@ -1078,8 +1128,8 @@
1078
1128
  "in": "query",
1079
1129
  "description": "Идентификаторы объектов, по которым и по дочерним объектам которых будет отфильтрован результат",
1080
1130
  "schema": {
1081
- "type": "int32",
1082
- "default": null
1131
+ "type": "integer",
1132
+ "format": "int32"
1083
1133
  }
1084
1134
  },
1085
1135
  {
@@ -1087,8 +1137,8 @@
1087
1137
  "in": "query",
1088
1138
  "description": "Идентификаторы заявок, по которым будет отфильтрован результат",
1089
1139
  "schema": {
1090
- "type": "int32",
1091
- "default": null
1140
+ "type": "integer",
1141
+ "format": "int32"
1092
1142
  }
1093
1143
  },
1094
1144
  {
@@ -1096,8 +1146,7 @@
1096
1146
  "in": "query",
1097
1147
  "description": "Номера заявок, по которым будет отфильтрован результат",
1098
1148
  "schema": {
1099
- "type": "string",
1100
- "default": null
1149
+ "type": "string"
1101
1150
  }
1102
1151
  },
1103
1152
  {
@@ -1105,8 +1154,8 @@
1105
1154
  "in": "query",
1106
1155
  "description": "Идентификаторы типов заявок, по которым будет отфильтрован результат",
1107
1156
  "schema": {
1108
- "type": "int16",
1109
- "default": null
1157
+ "type": "integer",
1158
+ "format": "int32"
1110
1159
  }
1111
1160
  },
1112
1161
  {
@@ -1114,8 +1163,8 @@
1114
1163
  "in": "query",
1115
1164
  "description": "Идентификаторы видов работ, по которым будет отфильтрован результат",
1116
1165
  "schema": {
1117
- "type": "int16",
1118
- "default": null
1166
+ "type": "integer",
1167
+ "format": "int32"
1119
1168
  }
1120
1169
  },
1121
1170
  {
@@ -1123,8 +1172,8 @@
1123
1172
  "in": "query",
1124
1173
  "description": "Идентификаторы стадий заявок, на которых в текущий находятся заявки, по которым будет отфильтрован результат",
1125
1174
  "schema": {
1126
- "type": "int16",
1127
- "default": null
1175
+ "type": "integer",
1176
+ "format": "int32"
1128
1177
  }
1129
1178
  },
1130
1179
  {
@@ -1132,8 +1181,8 @@
1132
1181
  "in": "query",
1133
1182
  "description": "Идентификаторы статусов заявок, по которым будет отфильтрован результат",
1134
1183
  "schema": {
1135
- "type": "int16",
1136
- "default": null
1184
+ "type": "integer",
1185
+ "format": "int32"
1137
1186
  }
1138
1187
  },
1139
1188
  {
@@ -1141,9 +1190,8 @@
1141
1190
  "in": "query",
1142
1191
  "description": "Начальный период фильтрации по дате создания заявки",
1143
1192
  "schema": {
1144
- "type": "datetime",
1145
- "format": "UTC ISO-8601",
1146
- "default": null
1193
+ "type": "string",
1194
+ "format": "date-time"
1147
1195
  }
1148
1196
  },
1149
1197
  {
@@ -1151,9 +1199,8 @@
1151
1199
  "in": "query",
1152
1200
  "description": "Конечный период фильтрации по дате создания заявки",
1153
1201
  "schema": {
1154
- "type": "datetime",
1155
- "format": "UTC ISO-8601",
1156
- "default": null
1202
+ "type": "string",
1203
+ "format": "date-time"
1157
1204
  }
1158
1205
  },
1159
1206
  {
@@ -1161,9 +1208,8 @@
1161
1208
  "in": "query",
1162
1209
  "description": "Начальный период фильтрации по дате назначения заявки",
1163
1210
  "schema": {
1164
- "type": "datetime",
1165
- "format": "UTC ISO-8601",
1166
- "default": null
1211
+ "type": "string",
1212
+ "format": "date-time"
1167
1213
  }
1168
1214
  },
1169
1215
  {
@@ -1171,9 +1217,8 @@
1171
1217
  "in": "query",
1172
1218
  "description": "Конечный период фильтрации по дате назначения заявки",
1173
1219
  "schema": {
1174
- "type": "datetime",
1175
- "format": "UTC ISO-8601",
1176
- "default": null
1220
+ "type": "string",
1221
+ "format": "date-time"
1177
1222
  }
1178
1223
  },
1179
1224
  {
@@ -1181,9 +1226,8 @@
1181
1226
  "in": "query",
1182
1227
  "description": "Начальный период фильтрации по дате выполнения заявки",
1183
1228
  "schema": {
1184
- "type": "datetime",
1185
- "format": "UTC ISO-8601",
1186
- "default": null
1229
+ "type": "string",
1230
+ "format": "date-time"
1187
1231
  }
1188
1232
  },
1189
1233
  {
@@ -1191,9 +1235,8 @@
1191
1235
  "in": "query",
1192
1236
  "description": "Конечный период фильтрации по дате выполнения заявки",
1193
1237
  "schema": {
1194
- "type": "datetime",
1195
- "format": "UTC ISO-8601",
1196
- "default": null
1238
+ "type": "string",
1239
+ "format": "date-time"
1197
1240
  }
1198
1241
  },
1199
1242
  {
@@ -1201,9 +1244,8 @@
1201
1244
  "in": "query",
1202
1245
  "description": "Начальный период фильтрации по дате закрытия заявки",
1203
1246
  "schema": {
1204
- "type": "datetime",
1205
- "format": "UTC ISO-8601",
1206
- "default": null
1247
+ "type": "string",
1248
+ "format": "date-time"
1207
1249
  }
1208
1250
  },
1209
1251
  {
@@ -1211,9 +1253,8 @@
1211
1253
  "in": "query",
1212
1254
  "description": "Конечный период фильтрации по дате закрытия заявки",
1213
1255
  "schema": {
1214
- "type": "datetime",
1215
- "format": "UTC ISO-8601",
1216
- "default": null
1256
+ "type": "string",
1257
+ "format": "date-time"
1217
1258
  }
1218
1259
  },
1219
1260
  {
@@ -1221,9 +1262,8 @@
1221
1262
  "in": "query",
1222
1263
  "description": "Начальный период фильтрации по сроку выполнения заявки",
1223
1264
  "schema": {
1224
- "type": "datetime",
1225
- "format": "UTC ISO-8601",
1226
- "default": null
1265
+ "type": "string",
1266
+ "format": "date-time"
1227
1267
  }
1228
1268
  },
1229
1269
  {
@@ -1231,9 +1271,8 @@
1231
1271
  "in": "query",
1232
1272
  "description": "Конечный период фильтрации по сроку выполнения заявки",
1233
1273
  "schema": {
1234
- "type": "datetime",
1235
- "format": "UTC ISO-8601",
1236
- "default": null
1274
+ "type": "string",
1275
+ "format": "date-time"
1237
1276
  }
1238
1277
  },
1239
1278
  {
@@ -1241,12 +1280,7 @@
1241
1280
  "in": "query",
1242
1281
  "description": "Если true, результат будет содержать только закрытые заявки, если false - только открытые",
1243
1282
  "schema": {
1244
- "enum": [
1245
- "true",
1246
- "false"
1247
- ],
1248
- "type": "boolean",
1249
- "default": null
1283
+ "type": "boolean"
1250
1284
  }
1251
1285
  },
1252
1286
  {
@@ -1254,12 +1288,7 @@
1254
1288
  "in": "query",
1255
1289
  "description": "Если true, результат будет содержать только заявки из списка избранных для текущего пользователя, если false - только те, которые не вошли в список избранных текущего пользователя",
1256
1290
  "schema": {
1257
- "enum": [
1258
- "true",
1259
- "false"
1260
- ],
1261
- "type": "boolean",
1262
- "default": null
1291
+ "type": "boolean"
1263
1292
  }
1264
1293
  },
1265
1294
  {
@@ -1267,12 +1296,7 @@
1267
1296
  "in": "query",
1268
1297
  "description": "Если true, результат будет содержать только выполненые заявки, если false - только не выполненные",
1269
1298
  "schema": {
1270
- "enum": [
1271
- "true",
1272
- "false"
1273
- ],
1274
- "type": "boolean",
1275
- "default": null
1299
+ "type": "boolean"
1276
1300
  }
1277
1301
  },
1278
1302
  {
@@ -1280,12 +1304,7 @@
1280
1304
  "in": "query",
1281
1305
  "description": "Если true, результат будет содержать только назначенные на кого-либо заявки, если false - только не назначенные",
1282
1306
  "schema": {
1283
- "enum": [
1284
- "true",
1285
- "false"
1286
- ],
1287
- "type": "boolean",
1288
- "default": null
1307
+ "type": "boolean"
1289
1308
  }
1290
1309
  },
1291
1310
  {
@@ -1293,12 +1312,7 @@
1293
1312
  "in": "query",
1294
1313
  "description": "Если true, результат будет содержать только удаленные заявки, если false - только неудаленные",
1295
1314
  "schema": {
1296
- "enum": [
1297
- "true",
1298
- "false"
1299
- ],
1300
- "type": "boolean",
1301
- "default": null
1315
+ "type": "boolean"
1302
1316
  }
1303
1317
  },
1304
1318
  {
@@ -1306,8 +1320,8 @@
1306
1320
  "in": "query",
1307
1321
  "description": "Идентификаторы компаний владельца оборудования, по заявкам которых будет отфильтрован результат",
1308
1322
  "schema": {
1309
- "type": "int16",
1310
- "default": null
1323
+ "type": "integer",
1324
+ "format": "int32"
1311
1325
  }
1312
1326
  },
1313
1327
  {
@@ -1315,8 +1329,8 @@
1315
1329
  "in": "query",
1316
1330
  "description": "Идентификаторы контракта, в рамках которого выполняется заявка",
1317
1331
  "schema": {
1318
- "type": "int16",
1319
- "default": null
1332
+ "type": "integer",
1333
+ "format": "int32"
1320
1334
  }
1321
1335
  },
1322
1336
  {
@@ -1324,20 +1338,46 @@
1324
1338
  "in": "query",
1325
1339
  "description": "Идентификаторы критичности заявок, по которым будет отфильтрован результат",
1326
1340
  "schema": {
1327
- "type": "byte",
1328
- "default": null
1341
+ "type": "integer",
1342
+ "format": "int32"
1343
+ }
1344
+ },
1345
+ {
1346
+ "name": "X-Application-ID",
1347
+ "in": "header",
1348
+ "description": "Идентификатор приложения. EngineerMobile - 1, CustomerMobile - 2, MainWeb - 3, AdminWeb - 4, Api - 5, PlateWeb - 6",
1349
+ "schema": {
1350
+ "enum": [
1351
+ 1,
1352
+ 2,
1353
+ 3,
1354
+ 4,
1355
+ 5,
1356
+ 6
1357
+ ],
1358
+ "type": "integer",
1359
+ "format": "int32",
1360
+ "default": 3,
1361
+ "x-enumNames": [
1362
+ "EngineerMobile",
1363
+ "CustomerMobile",
1364
+ "MainWeb",
1365
+ "AdminWeb",
1366
+ "Api",
1367
+ "PlateWeb"
1368
+ ]
1329
1369
  }
1330
1370
  }
1331
1371
  ],
1332
1372
  "responses": {
1333
1373
  "200": {
1334
- "description": "OK",
1374
+ "description": "Отчет по заявкам.",
1335
1375
  "content": {
1336
1376
  "text/plain": {
1337
1377
  "schema": {
1338
1378
  "type": "array",
1339
1379
  "items": {
1340
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
1380
+ "$ref": "#/components/schemas/ResultsTaskListGroupByAssetsTasksListGroupByAssetsResult"
1341
1381
  }
1342
1382
  }
1343
1383
  },
@@ -1345,7 +1385,7 @@
1345
1385
  "schema": {
1346
1386
  "type": "array",
1347
1387
  "items": {
1348
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
1388
+ "$ref": "#/components/schemas/ResultsTaskListGroupByAssetsTasksListGroupByAssetsResult"
1349
1389
  }
1350
1390
  }
1351
1391
  },
@@ -1353,30 +1393,30 @@
1353
1393
  "schema": {
1354
1394
  "type": "array",
1355
1395
  "items": {
1356
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
1396
+ "$ref": "#/components/schemas/ResultsTaskListGroupByAssetsTasksListGroupByAssetsResult"
1357
1397
  }
1358
1398
  }
1359
1399
  }
1360
1400
  }
1361
1401
  },
1402
+ "204": {
1403
+ "description": "Данные не найдены."
1404
+ },
1405
+ "206": {
1406
+ "description": "Частичный ответ при использовании Range-заголовка."
1407
+ },
1362
1408
  "401": {
1363
- "description": "Unauthorized"
1409
+ "description": "Отсутствует или некорректен Bearer-токен."
1364
1410
  },
1365
1411
  "403": {
1366
- "description": "Forbidden"
1367
- },
1368
- "206": {
1369
- "description": "PartialContent",
1370
- "headers": {
1371
- "Content-Range": {
1372
- "description": "items=FROM-TILL/OF , где FROM - начальный элемент (включая), TILL - конечный элемент (включая) OF - общее количество элементов",
1373
- "schema": {
1374
- "type": "string"
1375
- }
1376
- }
1377
- }
1412
+ "description": "Недостаточно прав для просмотра отчета."
1413
+ }
1414
+ },
1415
+ "security": [
1416
+ {
1417
+ "Bearer": [ ]
1378
1418
  }
1379
- }
1419
+ ]
1380
1420
  }
1381
1421
  },
1382
1422
  "/TasksByAssignees": {
@@ -1384,22 +1424,13 @@
1384
1424
  "tags": [
1385
1425
  "TasksByAssignees"
1386
1426
  ],
1387
- "summary": "Возвращает список заявок, сгруппированных по исполнителям",
1388
- "description": "<br />* Для выполнения данного метода требуется любое из перечисленных полномочий: **TaskListGroupByAssignees**<br />* Метод поддерживает диапазонный запрос через строку или заголовок запроса.",
1427
+ "summary": "Получение отчета по заявкам, сгруппированным по исполнителям",
1428
+ "description": "## Пример запроса:\r\n`GET /TasksByAssignees?searchText=12345&assignedTo=15`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n[\r\n {\r\n \"assignee\": { \"id\": 15, \"lastName\": \"Иванов\", \"firstName\": \"Иван\" },\r\n \"activeTasksCount\": 3,\r\n \"outdatedTasksCount\": 0,\r\n \"undefinedTasksCount\": 0,\r\n \"total\": 3\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: данные по заданным фильтрам не найдены.\r\n- 206 PartialContent: частичный ответ при использовании Range-заголовка.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав TaskListGroupByAssignees.",
1389
1429
  "parameters": [
1390
1430
  {
1391
1431
  "name": "searchText",
1392
1432
  "in": "query",
1393
- "description": "Текстовый поиск по вхождению строки от одного символа. Поиск осуществляется в описании и номере заявки, названии и описании объекта, названии вида работ. Доступен sql like-синтексис.",
1394
- "schema": {
1395
- "type": "string"
1396
- }
1397
- },
1398
- {
1399
- "name": "Authorization",
1400
- "in": "header",
1401
- "description": "Bearer",
1402
- "required": true,
1433
+ "description": "Текстовый поиск по вхождению строки от одного символа. Поиск осуществляется в описании и номере заявки, названии и описании объекта, названии вида работ. Доступен sql like-синтаксис.",
1403
1434
  "schema": {
1404
1435
  "type": "string"
1405
1436
  }
@@ -1423,7 +1454,15 @@
1423
1454
  {
1424
1455
  "name": "fetch",
1425
1456
  "in": "query",
1426
- "description": "количество эементов, которое необходимо вернуть",
1457
+ "description": "количество элементов, которое необходимо вернуть",
1458
+ "schema": {
1459
+ "type": "string"
1460
+ }
1461
+ },
1462
+ {
1463
+ "name": "searchText",
1464
+ "in": "query",
1465
+ "description": "Текстовый поиск по вхождению строки от одного символа",
1427
1466
  "schema": {
1428
1467
  "type": "string"
1429
1468
  }
@@ -1433,8 +1472,8 @@
1433
1472
  "in": "query",
1434
1473
  "description": "Идентификаторы пользователей, которые подали заявку, по которым будет отфильтрован результат",
1435
1474
  "schema": {
1436
- "type": "int32",
1437
- "default": null
1475
+ "type": "integer",
1476
+ "format": "int32"
1438
1477
  }
1439
1478
  },
1440
1479
  {
@@ -1442,8 +1481,8 @@
1442
1481
  "in": "query",
1443
1482
  "description": "Идентификаторы пользователей, на которых в текущий момент назначена заявка, по которым будет отфильтрован результат",
1444
1483
  "schema": {
1445
- "type": "int32",
1446
- "default": null
1484
+ "type": "integer",
1485
+ "format": "int32"
1447
1486
  }
1448
1487
  },
1449
1488
  {
@@ -1451,8 +1490,8 @@
1451
1490
  "in": "query",
1452
1491
  "description": "Идентификаторы пользователей, от которых ожидается утверждение заявки, по которым будет отфильтрован результат",
1453
1492
  "schema": {
1454
- "type": "int32",
1455
- "default": null
1493
+ "type": "integer",
1494
+ "format": "int32"
1456
1495
  }
1457
1496
  },
1458
1497
  {
@@ -1460,8 +1499,8 @@
1460
1499
  "in": "query",
1461
1500
  "description": "Идентификаторы пользователей, на которых была эскалирована заявка, по которым будет отфильтрован результат",
1462
1501
  "schema": {
1463
- "type": "int32",
1464
- "default": null
1502
+ "type": "integer",
1503
+ "format": "int32"
1465
1504
  }
1466
1505
  },
1467
1506
  {
@@ -1469,8 +1508,8 @@
1469
1508
  "in": "query",
1470
1509
  "description": "Идентификаторы объектов, по которым будет отфильтрован результат",
1471
1510
  "schema": {
1472
- "type": "int32",
1473
- "default": null
1511
+ "type": "integer",
1512
+ "format": "int32"
1474
1513
  }
1475
1514
  },
1476
1515
  {
@@ -1478,8 +1517,8 @@
1478
1517
  "in": "query",
1479
1518
  "description": "Идентификаторы объектов, по которым и по дочерним объектам которых будет отфильтрован результат",
1480
1519
  "schema": {
1481
- "type": "int32",
1482
- "default": null
1520
+ "type": "integer",
1521
+ "format": "int32"
1483
1522
  }
1484
1523
  },
1485
1524
  {
@@ -1487,8 +1526,8 @@
1487
1526
  "in": "query",
1488
1527
  "description": "Идентификаторы заявок, по которым будет отфильтрован результат",
1489
1528
  "schema": {
1490
- "type": "int32",
1491
- "default": null
1529
+ "type": "integer",
1530
+ "format": "int32"
1492
1531
  }
1493
1532
  },
1494
1533
  {
@@ -1496,8 +1535,7 @@
1496
1535
  "in": "query",
1497
1536
  "description": "Номера заявок, по которым будет отфильтрован результат",
1498
1537
  "schema": {
1499
- "type": "string",
1500
- "default": null
1538
+ "type": "string"
1501
1539
  }
1502
1540
  },
1503
1541
  {
@@ -1505,8 +1543,8 @@
1505
1543
  "in": "query",
1506
1544
  "description": "Идентификаторы типов заявок, по которым будет отфильтрован результат",
1507
1545
  "schema": {
1508
- "type": "int16",
1509
- "default": null
1546
+ "type": "integer",
1547
+ "format": "int32"
1510
1548
  }
1511
1549
  },
1512
1550
  {
@@ -1514,8 +1552,8 @@
1514
1552
  "in": "query",
1515
1553
  "description": "Идентификаторы видов работ, по которым будет отфильтрован результат",
1516
1554
  "schema": {
1517
- "type": "int16",
1518
- "default": null
1555
+ "type": "integer",
1556
+ "format": "int32"
1519
1557
  }
1520
1558
  },
1521
1559
  {
@@ -1523,8 +1561,8 @@
1523
1561
  "in": "query",
1524
1562
  "description": "Идентификаторы стадий заявок, на которых в текущий находятся заявки, по которым будет отфильтрован результат",
1525
1563
  "schema": {
1526
- "type": "int16",
1527
- "default": null
1564
+ "type": "integer",
1565
+ "format": "int32"
1528
1566
  }
1529
1567
  },
1530
1568
  {
@@ -1532,8 +1570,8 @@
1532
1570
  "in": "query",
1533
1571
  "description": "Идентификаторы статусов заявок, по которым будет отфильтрован результат",
1534
1572
  "schema": {
1535
- "type": "int16",
1536
- "default": null
1573
+ "type": "integer",
1574
+ "format": "int32"
1537
1575
  }
1538
1576
  },
1539
1577
  {
@@ -1541,9 +1579,8 @@
1541
1579
  "in": "query",
1542
1580
  "description": "Начальный период фильтрации по дате создания заявки",
1543
1581
  "schema": {
1544
- "type": "datetime",
1545
- "format": "UTC ISO-8601",
1546
- "default": null
1582
+ "type": "string",
1583
+ "format": "date-time"
1547
1584
  }
1548
1585
  },
1549
1586
  {
@@ -1551,9 +1588,8 @@
1551
1588
  "in": "query",
1552
1589
  "description": "Конечный период фильтрации по дате создания заявки",
1553
1590
  "schema": {
1554
- "type": "datetime",
1555
- "format": "UTC ISO-8601",
1556
- "default": null
1591
+ "type": "string",
1592
+ "format": "date-time"
1557
1593
  }
1558
1594
  },
1559
1595
  {
@@ -1561,9 +1597,8 @@
1561
1597
  "in": "query",
1562
1598
  "description": "Начальный период фильтрации по дате назначения заявки",
1563
1599
  "schema": {
1564
- "type": "datetime",
1565
- "format": "UTC ISO-8601",
1566
- "default": null
1600
+ "type": "string",
1601
+ "format": "date-time"
1567
1602
  }
1568
1603
  },
1569
1604
  {
@@ -1571,9 +1606,8 @@
1571
1606
  "in": "query",
1572
1607
  "description": "Конечный период фильтрации по дате назначения заявки",
1573
1608
  "schema": {
1574
- "type": "datetime",
1575
- "format": "UTC ISO-8601",
1576
- "default": null
1609
+ "type": "string",
1610
+ "format": "date-time"
1577
1611
  }
1578
1612
  },
1579
1613
  {
@@ -1581,9 +1615,8 @@
1581
1615
  "in": "query",
1582
1616
  "description": "Начальный период фильтрации по дате выполнения заявки",
1583
1617
  "schema": {
1584
- "type": "datetime",
1585
- "format": "UTC ISO-8601",
1586
- "default": null
1618
+ "type": "string",
1619
+ "format": "date-time"
1587
1620
  }
1588
1621
  },
1589
1622
  {
@@ -1591,9 +1624,8 @@
1591
1624
  "in": "query",
1592
1625
  "description": "Конечный период фильтрации по дате выполнения заявки",
1593
1626
  "schema": {
1594
- "type": "datetime",
1595
- "format": "UTC ISO-8601",
1596
- "default": null
1627
+ "type": "string",
1628
+ "format": "date-time"
1597
1629
  }
1598
1630
  },
1599
1631
  {
@@ -1601,9 +1633,8 @@
1601
1633
  "in": "query",
1602
1634
  "description": "Начальный период фильтрации по дате закрытия заявки",
1603
1635
  "schema": {
1604
- "type": "datetime",
1605
- "format": "UTC ISO-8601",
1606
- "default": null
1636
+ "type": "string",
1637
+ "format": "date-time"
1607
1638
  }
1608
1639
  },
1609
1640
  {
@@ -1611,9 +1642,8 @@
1611
1642
  "in": "query",
1612
1643
  "description": "Конечный период фильтрации по дате закрытия заявки",
1613
1644
  "schema": {
1614
- "type": "datetime",
1615
- "format": "UTC ISO-8601",
1616
- "default": null
1645
+ "type": "string",
1646
+ "format": "date-time"
1617
1647
  }
1618
1648
  },
1619
1649
  {
@@ -1621,9 +1651,8 @@
1621
1651
  "in": "query",
1622
1652
  "description": "Начальный период фильтрации по сроку выполнения заявки",
1623
1653
  "schema": {
1624
- "type": "datetime",
1625
- "format": "UTC ISO-8601",
1626
- "default": null
1654
+ "type": "string",
1655
+ "format": "date-time"
1627
1656
  }
1628
1657
  },
1629
1658
  {
@@ -1631,9 +1660,8 @@
1631
1660
  "in": "query",
1632
1661
  "description": "Конечный период фильтрации по сроку выполнения заявки",
1633
1662
  "schema": {
1634
- "type": "datetime",
1635
- "format": "UTC ISO-8601",
1636
- "default": null
1663
+ "type": "string",
1664
+ "format": "date-time"
1637
1665
  }
1638
1666
  },
1639
1667
  {
@@ -1641,12 +1669,7 @@
1641
1669
  "in": "query",
1642
1670
  "description": "Если true, результат будет содержать только закрытые заявки, если false - только открытые",
1643
1671
  "schema": {
1644
- "enum": [
1645
- "true",
1646
- "false"
1647
- ],
1648
- "type": "boolean",
1649
- "default": null
1672
+ "type": "boolean"
1650
1673
  }
1651
1674
  },
1652
1675
  {
@@ -1654,12 +1677,7 @@
1654
1677
  "in": "query",
1655
1678
  "description": "Если true, результат будет содержать только заявки из списка избранных для текущего пользователя, если false - только те, которые не вошли в список избранных текущего пользователя",
1656
1679
  "schema": {
1657
- "enum": [
1658
- "true",
1659
- "false"
1660
- ],
1661
- "type": "boolean",
1662
- "default": null
1680
+ "type": "boolean"
1663
1681
  }
1664
1682
  },
1665
1683
  {
@@ -1667,12 +1685,7 @@
1667
1685
  "in": "query",
1668
1686
  "description": "Если true, результат будет содержать только выполненые заявки, если false - только не выполненные",
1669
1687
  "schema": {
1670
- "enum": [
1671
- "true",
1672
- "false"
1673
- ],
1674
- "type": "boolean",
1675
- "default": null
1688
+ "type": "boolean"
1676
1689
  }
1677
1690
  },
1678
1691
  {
@@ -1680,12 +1693,7 @@
1680
1693
  "in": "query",
1681
1694
  "description": "Если true, результат будет содержать только назначенные на кого-либо заявки, если false - только не назначенные",
1682
1695
  "schema": {
1683
- "enum": [
1684
- "true",
1685
- "false"
1686
- ],
1687
- "type": "boolean",
1688
- "default": null
1696
+ "type": "boolean"
1689
1697
  }
1690
1698
  },
1691
1699
  {
@@ -1693,12 +1701,7 @@
1693
1701
  "in": "query",
1694
1702
  "description": "Если true, результат будет содержать только удаленные заявки, если false - только неудаленные",
1695
1703
  "schema": {
1696
- "enum": [
1697
- "true",
1698
- "false"
1699
- ],
1700
- "type": "boolean",
1701
- "default": null
1704
+ "type": "boolean"
1702
1705
  }
1703
1706
  },
1704
1707
  {
@@ -1706,8 +1709,8 @@
1706
1709
  "in": "query",
1707
1710
  "description": "Идентификаторы компаний владельца оборудования, по заявкам которых будет отфильтрован результат",
1708
1711
  "schema": {
1709
- "type": "int16",
1710
- "default": null
1712
+ "type": "integer",
1713
+ "format": "int32"
1711
1714
  }
1712
1715
  },
1713
1716
  {
@@ -1715,8 +1718,8 @@
1715
1718
  "in": "query",
1716
1719
  "description": "Идентификаторы контракта, в рамках которого выполняется заявка",
1717
1720
  "schema": {
1718
- "type": "int16",
1719
- "default": null
1721
+ "type": "integer",
1722
+ "format": "int32"
1720
1723
  }
1721
1724
  },
1722
1725
  {
@@ -1724,20 +1727,46 @@
1724
1727
  "in": "query",
1725
1728
  "description": "Идентификаторы критичности заявок, по которым будет отфильтрован результат",
1726
1729
  "schema": {
1727
- "type": "byte",
1728
- "default": null
1730
+ "type": "integer",
1731
+ "format": "int32"
1732
+ }
1733
+ },
1734
+ {
1735
+ "name": "X-Application-ID",
1736
+ "in": "header",
1737
+ "description": "Идентификатор приложения. EngineerMobile - 1, CustomerMobile - 2, MainWeb - 3, AdminWeb - 4, Api - 5, PlateWeb - 6",
1738
+ "schema": {
1739
+ "enum": [
1740
+ 1,
1741
+ 2,
1742
+ 3,
1743
+ 4,
1744
+ 5,
1745
+ 6
1746
+ ],
1747
+ "type": "integer",
1748
+ "format": "int32",
1749
+ "default": 3,
1750
+ "x-enumNames": [
1751
+ "EngineerMobile",
1752
+ "CustomerMobile",
1753
+ "MainWeb",
1754
+ "AdminWeb",
1755
+ "Api",
1756
+ "PlateWeb"
1757
+ ]
1729
1758
  }
1730
1759
  }
1731
1760
  ],
1732
1761
  "responses": {
1733
1762
  "200": {
1734
- "description": "OK",
1763
+ "description": "Отчет по заявкам.",
1735
1764
  "content": {
1736
1765
  "text/plain": {
1737
1766
  "schema": {
1738
1767
  "type": "array",
1739
1768
  "items": {
1740
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
1769
+ "$ref": "#/components/schemas/ResultsTaskListGroupByAssigneesTaskListGroupByAssigneesResult"
1741
1770
  }
1742
1771
  }
1743
1772
  },
@@ -1745,7 +1774,7 @@
1745
1774
  "schema": {
1746
1775
  "type": "array",
1747
1776
  "items": {
1748
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
1777
+ "$ref": "#/components/schemas/ResultsTaskListGroupByAssigneesTaskListGroupByAssigneesResult"
1749
1778
  }
1750
1779
  }
1751
1780
  },
@@ -1753,30 +1782,30 @@
1753
1782
  "schema": {
1754
1783
  "type": "array",
1755
1784
  "items": {
1756
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
1785
+ "$ref": "#/components/schemas/ResultsTaskListGroupByAssigneesTaskListGroupByAssigneesResult"
1757
1786
  }
1758
1787
  }
1759
1788
  }
1760
1789
  }
1761
1790
  },
1791
+ "204": {
1792
+ "description": "Данные не найдены."
1793
+ },
1794
+ "206": {
1795
+ "description": "Частичный ответ при использовании Range-заголовка."
1796
+ },
1762
1797
  "401": {
1763
- "description": "Unauthorized"
1798
+ "description": "Отсутствует или некорректен Bearer-токен."
1764
1799
  },
1765
1800
  "403": {
1766
- "description": "Forbidden"
1767
- },
1768
- "206": {
1769
- "description": "PartialContent",
1770
- "headers": {
1771
- "Content-Range": {
1772
- "description": "items=FROM-TILL/OF , где FROM - начальный элемент (включая), TILL - конечный элемент (включая) OF - общее количество элементов",
1773
- "schema": {
1774
- "type": "string"
1775
- }
1776
- }
1777
- }
1801
+ "description": "Недостаточно прав для просмотра отчета."
1802
+ }
1803
+ },
1804
+ "security": [
1805
+ {
1806
+ "Bearer": [ ]
1778
1807
  }
1779
- }
1808
+ ]
1780
1809
  }
1781
1810
  },
1782
1811
  "/TasksByCompanies": {
@@ -1784,22 +1813,13 @@
1784
1813
  "tags": [
1785
1814
  "TasksByCompanies"
1786
1815
  ],
1787
- "summary": "Возвращает список заявок, сгруппированный по компаниям.",
1788
- "description": "<br />* Для выполнения данного метода требуется любое из перечисленных полномочий: **TaskListGroupByCompanies**<br />* Метод поддерживает диапазонный запрос через строку или заголовок запроса.",
1816
+ "summary": "Получение отчета по заявкам, сгруппированным по компаниям",
1817
+ "description": "## Пример запроса:\r\n`GET /TasksByCompanies?searchText=обслуживание&companyID=3`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n[\r\n {\r\n \"company\": { \"id\": 3, \"name\": \"ООО Ремонт\" },\r\n \"activeTasksCount\": 8,\r\n \"outdatedTasksCount\": 2,\r\n \"undefinedTasksCount\": 0,\r\n \"total\": 10\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: данные по заданным фильтрам не найдены.\r\n- 206 PartialContent: частичный ответ при использовании Range-заголовка.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав TaskListGroupByCompanies.",
1789
1818
  "parameters": [
1790
1819
  {
1791
1820
  "name": "searchText",
1792
1821
  "in": "query",
1793
- "description": "Текстовый поиск по вхождению строки от одного символа. Поиск осуществляется в описании и номере заявки, названии и описании объекта, названии вида работ. Доступен sql like-синтексис.",
1794
- "schema": {
1795
- "type": "string"
1796
- }
1797
- },
1798
- {
1799
- "name": "Authorization",
1800
- "in": "header",
1801
- "description": "Bearer",
1802
- "required": true,
1822
+ "description": "Текстовый поиск по вхождению строки от одного символа. Поиск осуществляется в описании и номере заявки, названии и описании объекта, названии вида работ. Доступен sql like-синтаксис.",
1803
1823
  "schema": {
1804
1824
  "type": "string"
1805
1825
  }
@@ -1823,7 +1843,15 @@
1823
1843
  {
1824
1844
  "name": "fetch",
1825
1845
  "in": "query",
1826
- "description": "количество эементов, которое необходимо вернуть",
1846
+ "description": "количество элементов, которое необходимо вернуть",
1847
+ "schema": {
1848
+ "type": "string"
1849
+ }
1850
+ },
1851
+ {
1852
+ "name": "searchText",
1853
+ "in": "query",
1854
+ "description": "Текстовый поиск по вхождению строки от одного символа",
1827
1855
  "schema": {
1828
1856
  "type": "string"
1829
1857
  }
@@ -1833,8 +1861,8 @@
1833
1861
  "in": "query",
1834
1862
  "description": "Идентификаторы пользователей, которые подали заявку, по которым будет отфильтрован результат",
1835
1863
  "schema": {
1836
- "type": "int32",
1837
- "default": null
1864
+ "type": "integer",
1865
+ "format": "int32"
1838
1866
  }
1839
1867
  },
1840
1868
  {
@@ -1842,8 +1870,8 @@
1842
1870
  "in": "query",
1843
1871
  "description": "Идентификаторы пользователей, на которых в текущий момент назначена заявка, по которым будет отфильтрован результат",
1844
1872
  "schema": {
1845
- "type": "int32",
1846
- "default": null
1873
+ "type": "integer",
1874
+ "format": "int32"
1847
1875
  }
1848
1876
  },
1849
1877
  {
@@ -1851,8 +1879,8 @@
1851
1879
  "in": "query",
1852
1880
  "description": "Идентификаторы пользователей, от которых ожидается утверждение заявки, по которым будет отфильтрован результат",
1853
1881
  "schema": {
1854
- "type": "int32",
1855
- "default": null
1882
+ "type": "integer",
1883
+ "format": "int32"
1856
1884
  }
1857
1885
  },
1858
1886
  {
@@ -1860,8 +1888,8 @@
1860
1888
  "in": "query",
1861
1889
  "description": "Идентификаторы пользователей, на которых была эскалирована заявка, по которым будет отфильтрован результат",
1862
1890
  "schema": {
1863
- "type": "int32",
1864
- "default": null
1891
+ "type": "integer",
1892
+ "format": "int32"
1865
1893
  }
1866
1894
  },
1867
1895
  {
@@ -1869,8 +1897,8 @@
1869
1897
  "in": "query",
1870
1898
  "description": "Идентификаторы объектов, по которым будет отфильтрован результат",
1871
1899
  "schema": {
1872
- "type": "int32",
1873
- "default": null
1900
+ "type": "integer",
1901
+ "format": "int32"
1874
1902
  }
1875
1903
  },
1876
1904
  {
@@ -1878,8 +1906,8 @@
1878
1906
  "in": "query",
1879
1907
  "description": "Идентификаторы объектов, по которым и по дочерним объектам которых будет отфильтрован результат",
1880
1908
  "schema": {
1881
- "type": "int32",
1882
- "default": null
1909
+ "type": "integer",
1910
+ "format": "int32"
1883
1911
  }
1884
1912
  },
1885
1913
  {
@@ -1887,8 +1915,8 @@
1887
1915
  "in": "query",
1888
1916
  "description": "Идентификаторы заявок, по которым будет отфильтрован результат",
1889
1917
  "schema": {
1890
- "type": "int32",
1891
- "default": null
1918
+ "type": "integer",
1919
+ "format": "int32"
1892
1920
  }
1893
1921
  },
1894
1922
  {
@@ -1896,8 +1924,7 @@
1896
1924
  "in": "query",
1897
1925
  "description": "Номера заявок, по которым будет отфильтрован результат",
1898
1926
  "schema": {
1899
- "type": "string",
1900
- "default": null
1927
+ "type": "string"
1901
1928
  }
1902
1929
  },
1903
1930
  {
@@ -1905,8 +1932,8 @@
1905
1932
  "in": "query",
1906
1933
  "description": "Идентификаторы типов заявок, по которым будет отфильтрован результат",
1907
1934
  "schema": {
1908
- "type": "int16",
1909
- "default": null
1935
+ "type": "integer",
1936
+ "format": "int32"
1910
1937
  }
1911
1938
  },
1912
1939
  {
@@ -1914,8 +1941,8 @@
1914
1941
  "in": "query",
1915
1942
  "description": "Идентификаторы видов работ, по которым будет отфильтрован результат",
1916
1943
  "schema": {
1917
- "type": "int16",
1918
- "default": null
1944
+ "type": "integer",
1945
+ "format": "int32"
1919
1946
  }
1920
1947
  },
1921
1948
  {
@@ -1923,8 +1950,8 @@
1923
1950
  "in": "query",
1924
1951
  "description": "Идентификаторы стадий заявок, на которых в текущий находятся заявки, по которым будет отфильтрован результат",
1925
1952
  "schema": {
1926
- "type": "int16",
1927
- "default": null
1953
+ "type": "integer",
1954
+ "format": "int32"
1928
1955
  }
1929
1956
  },
1930
1957
  {
@@ -1932,8 +1959,8 @@
1932
1959
  "in": "query",
1933
1960
  "description": "Идентификаторы статусов заявок, по которым будет отфильтрован результат",
1934
1961
  "schema": {
1935
- "type": "int16",
1936
- "default": null
1962
+ "type": "integer",
1963
+ "format": "int32"
1937
1964
  }
1938
1965
  },
1939
1966
  {
@@ -1941,9 +1968,8 @@
1941
1968
  "in": "query",
1942
1969
  "description": "Начальный период фильтрации по дате создания заявки",
1943
1970
  "schema": {
1944
- "type": "datetime",
1945
- "format": "UTC ISO-8601",
1946
- "default": null
1971
+ "type": "string",
1972
+ "format": "date-time"
1947
1973
  }
1948
1974
  },
1949
1975
  {
@@ -1951,9 +1977,8 @@
1951
1977
  "in": "query",
1952
1978
  "description": "Конечный период фильтрации по дате создания заявки",
1953
1979
  "schema": {
1954
- "type": "datetime",
1955
- "format": "UTC ISO-8601",
1956
- "default": null
1980
+ "type": "string",
1981
+ "format": "date-time"
1957
1982
  }
1958
1983
  },
1959
1984
  {
@@ -1961,9 +1986,8 @@
1961
1986
  "in": "query",
1962
1987
  "description": "Начальный период фильтрации по дате назначения заявки",
1963
1988
  "schema": {
1964
- "type": "datetime",
1965
- "format": "UTC ISO-8601",
1966
- "default": null
1989
+ "type": "string",
1990
+ "format": "date-time"
1967
1991
  }
1968
1992
  },
1969
1993
  {
@@ -1971,9 +1995,8 @@
1971
1995
  "in": "query",
1972
1996
  "description": "Конечный период фильтрации по дате назначения заявки",
1973
1997
  "schema": {
1974
- "type": "datetime",
1975
- "format": "UTC ISO-8601",
1976
- "default": null
1998
+ "type": "string",
1999
+ "format": "date-time"
1977
2000
  }
1978
2001
  },
1979
2002
  {
@@ -1981,9 +2004,8 @@
1981
2004
  "in": "query",
1982
2005
  "description": "Начальный период фильтрации по дате выполнения заявки",
1983
2006
  "schema": {
1984
- "type": "datetime",
1985
- "format": "UTC ISO-8601",
1986
- "default": null
2007
+ "type": "string",
2008
+ "format": "date-time"
1987
2009
  }
1988
2010
  },
1989
2011
  {
@@ -1991,9 +2013,8 @@
1991
2013
  "in": "query",
1992
2014
  "description": "Конечный период фильтрации по дате выполнения заявки",
1993
2015
  "schema": {
1994
- "type": "datetime",
1995
- "format": "UTC ISO-8601",
1996
- "default": null
2016
+ "type": "string",
2017
+ "format": "date-time"
1997
2018
  }
1998
2019
  },
1999
2020
  {
@@ -2001,9 +2022,8 @@
2001
2022
  "in": "query",
2002
2023
  "description": "Начальный период фильтрации по дате закрытия заявки",
2003
2024
  "schema": {
2004
- "type": "datetime",
2005
- "format": "UTC ISO-8601",
2006
- "default": null
2025
+ "type": "string",
2026
+ "format": "date-time"
2007
2027
  }
2008
2028
  },
2009
2029
  {
@@ -2011,9 +2031,8 @@
2011
2031
  "in": "query",
2012
2032
  "description": "Конечный период фильтрации по дате закрытия заявки",
2013
2033
  "schema": {
2014
- "type": "datetime",
2015
- "format": "UTC ISO-8601",
2016
- "default": null
2034
+ "type": "string",
2035
+ "format": "date-time"
2017
2036
  }
2018
2037
  },
2019
2038
  {
@@ -2021,9 +2040,8 @@
2021
2040
  "in": "query",
2022
2041
  "description": "Начальный период фильтрации по сроку выполнения заявки",
2023
2042
  "schema": {
2024
- "type": "datetime",
2025
- "format": "UTC ISO-8601",
2026
- "default": null
2043
+ "type": "string",
2044
+ "format": "date-time"
2027
2045
  }
2028
2046
  },
2029
2047
  {
@@ -2031,9 +2049,8 @@
2031
2049
  "in": "query",
2032
2050
  "description": "Конечный период фильтрации по сроку выполнения заявки",
2033
2051
  "schema": {
2034
- "type": "datetime",
2035
- "format": "UTC ISO-8601",
2036
- "default": null
2052
+ "type": "string",
2053
+ "format": "date-time"
2037
2054
  }
2038
2055
  },
2039
2056
  {
@@ -2041,12 +2058,7 @@
2041
2058
  "in": "query",
2042
2059
  "description": "Если true, результат будет содержать только закрытые заявки, если false - только открытые",
2043
2060
  "schema": {
2044
- "enum": [
2045
- "true",
2046
- "false"
2047
- ],
2048
- "type": "boolean",
2049
- "default": null
2061
+ "type": "boolean"
2050
2062
  }
2051
2063
  },
2052
2064
  {
@@ -2054,12 +2066,7 @@
2054
2066
  "in": "query",
2055
2067
  "description": "Если true, результат будет содержать только заявки из списка избранных для текущего пользователя, если false - только те, которые не вошли в список избранных текущего пользователя",
2056
2068
  "schema": {
2057
- "enum": [
2058
- "true",
2059
- "false"
2060
- ],
2061
- "type": "boolean",
2062
- "default": null
2069
+ "type": "boolean"
2063
2070
  }
2064
2071
  },
2065
2072
  {
@@ -2067,12 +2074,7 @@
2067
2074
  "in": "query",
2068
2075
  "description": "Если true, результат будет содержать только выполненые заявки, если false - только не выполненные",
2069
2076
  "schema": {
2070
- "enum": [
2071
- "true",
2072
- "false"
2073
- ],
2074
- "type": "boolean",
2075
- "default": null
2077
+ "type": "boolean"
2076
2078
  }
2077
2079
  },
2078
2080
  {
@@ -2080,12 +2082,7 @@
2080
2082
  "in": "query",
2081
2083
  "description": "Если true, результат будет содержать только назначенные на кого-либо заявки, если false - только не назначенные",
2082
2084
  "schema": {
2083
- "enum": [
2084
- "true",
2085
- "false"
2086
- ],
2087
- "type": "boolean",
2088
- "default": null
2085
+ "type": "boolean"
2089
2086
  }
2090
2087
  },
2091
2088
  {
@@ -2093,12 +2090,7 @@
2093
2090
  "in": "query",
2094
2091
  "description": "Если true, результат будет содержать только удаленные заявки, если false - только неудаленные",
2095
2092
  "schema": {
2096
- "enum": [
2097
- "true",
2098
- "false"
2099
- ],
2100
- "type": "boolean",
2101
- "default": null
2093
+ "type": "boolean"
2102
2094
  }
2103
2095
  },
2104
2096
  {
@@ -2106,8 +2098,8 @@
2106
2098
  "in": "query",
2107
2099
  "description": "Идентификаторы компаний владельца оборудования, по заявкам которых будет отфильтрован результат",
2108
2100
  "schema": {
2109
- "type": "int16",
2110
- "default": null
2101
+ "type": "integer",
2102
+ "format": "int32"
2111
2103
  }
2112
2104
  },
2113
2105
  {
@@ -2115,8 +2107,8 @@
2115
2107
  "in": "query",
2116
2108
  "description": "Идентификаторы контракта, в рамках которого выполняется заявка",
2117
2109
  "schema": {
2118
- "type": "int16",
2119
- "default": null
2110
+ "type": "integer",
2111
+ "format": "int32"
2120
2112
  }
2121
2113
  },
2122
2114
  {
@@ -2124,20 +2116,46 @@
2124
2116
  "in": "query",
2125
2117
  "description": "Идентификаторы критичности заявок, по которым будет отфильтрован результат",
2126
2118
  "schema": {
2127
- "type": "byte",
2128
- "default": null
2119
+ "type": "integer",
2120
+ "format": "int32"
2121
+ }
2122
+ },
2123
+ {
2124
+ "name": "X-Application-ID",
2125
+ "in": "header",
2126
+ "description": "Идентификатор приложения. EngineerMobile - 1, CustomerMobile - 2, MainWeb - 3, AdminWeb - 4, Api - 5, PlateWeb - 6",
2127
+ "schema": {
2128
+ "enum": [
2129
+ 1,
2130
+ 2,
2131
+ 3,
2132
+ 4,
2133
+ 5,
2134
+ 6
2135
+ ],
2136
+ "type": "integer",
2137
+ "format": "int32",
2138
+ "default": 3,
2139
+ "x-enumNames": [
2140
+ "EngineerMobile",
2141
+ "CustomerMobile",
2142
+ "MainWeb",
2143
+ "AdminWeb",
2144
+ "Api",
2145
+ "PlateWeb"
2146
+ ]
2129
2147
  }
2130
2148
  }
2131
2149
  ],
2132
2150
  "responses": {
2133
2151
  "200": {
2134
- "description": "OK",
2152
+ "description": "Отчет по заявкам.",
2135
2153
  "content": {
2136
2154
  "text/plain": {
2137
2155
  "schema": {
2138
2156
  "type": "array",
2139
2157
  "items": {
2140
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByCompanies.TaskListGroupByCompaniesResult"
2158
+ "$ref": "#/components/schemas/ResultsTaskListGroupByCompaniesTaskListGroupByCompaniesResult"
2141
2159
  }
2142
2160
  }
2143
2161
  },
@@ -2145,7 +2163,7 @@
2145
2163
  "schema": {
2146
2164
  "type": "array",
2147
2165
  "items": {
2148
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByCompanies.TaskListGroupByCompaniesResult"
2166
+ "$ref": "#/components/schemas/ResultsTaskListGroupByCompaniesTaskListGroupByCompaniesResult"
2149
2167
  }
2150
2168
  }
2151
2169
  },
@@ -2153,30 +2171,30 @@
2153
2171
  "schema": {
2154
2172
  "type": "array",
2155
2173
  "items": {
2156
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByCompanies.TaskListGroupByCompaniesResult"
2174
+ "$ref": "#/components/schemas/ResultsTaskListGroupByCompaniesTaskListGroupByCompaniesResult"
2157
2175
  }
2158
2176
  }
2159
2177
  }
2160
2178
  }
2161
2179
  },
2180
+ "204": {
2181
+ "description": "Данные не найдены."
2182
+ },
2183
+ "206": {
2184
+ "description": "Частичный ответ при использовании Range-заголовка."
2185
+ },
2162
2186
  "401": {
2163
- "description": "Unauthorized"
2187
+ "description": "Отсутствует или некорректен Bearer-токен."
2164
2188
  },
2165
2189
  "403": {
2166
- "description": "Forbidden"
2167
- },
2168
- "206": {
2169
- "description": "PartialContent",
2170
- "headers": {
2171
- "Content-Range": {
2172
- "description": "items=FROM-TILL/OF , где FROM - начальный элемент (включая), TILL - конечный элемент (включая) OF - общее количество элементов",
2173
- "schema": {
2174
- "type": "string"
2175
- }
2176
- }
2177
- }
2190
+ "description": "Недостаточно прав для просмотра отчета."
2178
2191
  }
2179
- }
2192
+ },
2193
+ "security": [
2194
+ {
2195
+ "Bearer": [ ]
2196
+ }
2197
+ ]
2180
2198
  }
2181
2199
  },
2182
2200
  "/TasksByStages": {
@@ -2184,22 +2202,13 @@
2184
2202
  "tags": [
2185
2203
  "TasksByStages"
2186
2204
  ],
2187
- "summary": "Возвращает список заявок, сгруппированных по стадиям",
2188
- "description": "<br />* Для выполнения данного метода требуется любое из перечисленных полномочий: **TaskListGroupByStages**<br />* Метод поддерживает диапазонный запрос через строку или заголовок запроса.",
2205
+ "summary": "Получение отчета по заявкам, сгруппированным по стадиям",
2206
+ "description": "## Пример запроса:\r\n`GET /TasksByStages?taskStageID=2&isCompleted=false`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n[\r\n {\r\n \"taskStage\": { \"id\": 2, \"name\": \"В работе\", \"color\": \"#FFA500\" },\r\n \"activeTasksCount\": 12,\r\n \"outdatedTasksCount\": 1,\r\n \"undefinedTasksCount\": 0,\r\n \"total\": 13\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: данные по заданным фильтрам не найдены.\r\n- 206 PartialContent: частичный ответ при использовании Range-заголовка.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав TaskListGroupByStages.",
2189
2207
  "parameters": [
2190
2208
  {
2191
2209
  "name": "searchText",
2192
2210
  "in": "query",
2193
- "description": "Текстовый поиск по вхождению строки от одного символа. Поиск осуществляется в описании и номере заявки, названии и описании объекта, названии вида работ. Доступен sql like-синтексис.",
2194
- "schema": {
2195
- "type": "string"
2196
- }
2197
- },
2198
- {
2199
- "name": "Authorization",
2200
- "in": "header",
2201
- "description": "Bearer",
2202
- "required": true,
2211
+ "description": "Текстовый поиск по вхождению строки от одного символа. Поиск осуществляется в описании и номере заявки, названии и описании объекта, названии вида работ. Доступен sql like-синтаксис.",
2203
2212
  "schema": {
2204
2213
  "type": "string"
2205
2214
  }
@@ -2223,7 +2232,15 @@
2223
2232
  {
2224
2233
  "name": "fetch",
2225
2234
  "in": "query",
2226
- "description": "количество эементов, которое необходимо вернуть",
2235
+ "description": "количество элементов, которое необходимо вернуть",
2236
+ "schema": {
2237
+ "type": "string"
2238
+ }
2239
+ },
2240
+ {
2241
+ "name": "searchText",
2242
+ "in": "query",
2243
+ "description": "Текстовый поиск по вхождению строки от одного символа",
2227
2244
  "schema": {
2228
2245
  "type": "string"
2229
2246
  }
@@ -2233,8 +2250,8 @@
2233
2250
  "in": "query",
2234
2251
  "description": "Идентификаторы пользователей, которые подали заявку, по которым будет отфильтрован результат",
2235
2252
  "schema": {
2236
- "type": "int32",
2237
- "default": null
2253
+ "type": "integer",
2254
+ "format": "int32"
2238
2255
  }
2239
2256
  },
2240
2257
  {
@@ -2242,8 +2259,8 @@
2242
2259
  "in": "query",
2243
2260
  "description": "Идентификаторы пользователей, на которых в текущий момент назначена заявка, по которым будет отфильтрован результат",
2244
2261
  "schema": {
2245
- "type": "int32",
2246
- "default": null
2262
+ "type": "integer",
2263
+ "format": "int32"
2247
2264
  }
2248
2265
  },
2249
2266
  {
@@ -2251,8 +2268,8 @@
2251
2268
  "in": "query",
2252
2269
  "description": "Идентификаторы пользователей, от которых ожидается утверждение заявки, по которым будет отфильтрован результат",
2253
2270
  "schema": {
2254
- "type": "int32",
2255
- "default": null
2271
+ "type": "integer",
2272
+ "format": "int32"
2256
2273
  }
2257
2274
  },
2258
2275
  {
@@ -2260,8 +2277,8 @@
2260
2277
  "in": "query",
2261
2278
  "description": "Идентификаторы пользователей, на которых была эскалирована заявка, по которым будет отфильтрован результат",
2262
2279
  "schema": {
2263
- "type": "int32",
2264
- "default": null
2280
+ "type": "integer",
2281
+ "format": "int32"
2265
2282
  }
2266
2283
  },
2267
2284
  {
@@ -2269,8 +2286,8 @@
2269
2286
  "in": "query",
2270
2287
  "description": "Идентификаторы объектов, по которым будет отфильтрован результат",
2271
2288
  "schema": {
2272
- "type": "int32",
2273
- "default": null
2289
+ "type": "integer",
2290
+ "format": "int32"
2274
2291
  }
2275
2292
  },
2276
2293
  {
@@ -2278,8 +2295,8 @@
2278
2295
  "in": "query",
2279
2296
  "description": "Идентификаторы объектов, по которым и по дочерним объектам которых будет отфильтрован результат",
2280
2297
  "schema": {
2281
- "type": "int32",
2282
- "default": null
2298
+ "type": "integer",
2299
+ "format": "int32"
2283
2300
  }
2284
2301
  },
2285
2302
  {
@@ -2287,8 +2304,8 @@
2287
2304
  "in": "query",
2288
2305
  "description": "Идентификаторы заявок, по которым будет отфильтрован результат",
2289
2306
  "schema": {
2290
- "type": "int32",
2291
- "default": null
2307
+ "type": "integer",
2308
+ "format": "int32"
2292
2309
  }
2293
2310
  },
2294
2311
  {
@@ -2296,8 +2313,7 @@
2296
2313
  "in": "query",
2297
2314
  "description": "Номера заявок, по которым будет отфильтрован результат",
2298
2315
  "schema": {
2299
- "type": "string",
2300
- "default": null
2316
+ "type": "string"
2301
2317
  }
2302
2318
  },
2303
2319
  {
@@ -2305,8 +2321,8 @@
2305
2321
  "in": "query",
2306
2322
  "description": "Идентификаторы типов заявок, по которым будет отфильтрован результат",
2307
2323
  "schema": {
2308
- "type": "int16",
2309
- "default": null
2324
+ "type": "integer",
2325
+ "format": "int32"
2310
2326
  }
2311
2327
  },
2312
2328
  {
@@ -2314,8 +2330,8 @@
2314
2330
  "in": "query",
2315
2331
  "description": "Идентификаторы видов работ, по которым будет отфильтрован результат",
2316
2332
  "schema": {
2317
- "type": "int16",
2318
- "default": null
2333
+ "type": "integer",
2334
+ "format": "int32"
2319
2335
  }
2320
2336
  },
2321
2337
  {
@@ -2323,8 +2339,8 @@
2323
2339
  "in": "query",
2324
2340
  "description": "Идентификаторы стадий заявок, на которых в текущий находятся заявки, по которым будет отфильтрован результат",
2325
2341
  "schema": {
2326
- "type": "int16",
2327
- "default": null
2342
+ "type": "integer",
2343
+ "format": "int32"
2328
2344
  }
2329
2345
  },
2330
2346
  {
@@ -2332,8 +2348,8 @@
2332
2348
  "in": "query",
2333
2349
  "description": "Идентификаторы статусов заявок, по которым будет отфильтрован результат",
2334
2350
  "schema": {
2335
- "type": "int16",
2336
- "default": null
2351
+ "type": "integer",
2352
+ "format": "int32"
2337
2353
  }
2338
2354
  },
2339
2355
  {
@@ -2341,9 +2357,8 @@
2341
2357
  "in": "query",
2342
2358
  "description": "Начальный период фильтрации по дате создания заявки",
2343
2359
  "schema": {
2344
- "type": "datetime",
2345
- "format": "UTC ISO-8601",
2346
- "default": null
2360
+ "type": "string",
2361
+ "format": "date-time"
2347
2362
  }
2348
2363
  },
2349
2364
  {
@@ -2351,9 +2366,8 @@
2351
2366
  "in": "query",
2352
2367
  "description": "Конечный период фильтрации по дате создания заявки",
2353
2368
  "schema": {
2354
- "type": "datetime",
2355
- "format": "UTC ISO-8601",
2356
- "default": null
2369
+ "type": "string",
2370
+ "format": "date-time"
2357
2371
  }
2358
2372
  },
2359
2373
  {
@@ -2361,9 +2375,8 @@
2361
2375
  "in": "query",
2362
2376
  "description": "Начальный период фильтрации по дате назначения заявки",
2363
2377
  "schema": {
2364
- "type": "datetime",
2365
- "format": "UTC ISO-8601",
2366
- "default": null
2378
+ "type": "string",
2379
+ "format": "date-time"
2367
2380
  }
2368
2381
  },
2369
2382
  {
@@ -2371,9 +2384,8 @@
2371
2384
  "in": "query",
2372
2385
  "description": "Конечный период фильтрации по дате назначения заявки",
2373
2386
  "schema": {
2374
- "type": "datetime",
2375
- "format": "UTC ISO-8601",
2376
- "default": null
2387
+ "type": "string",
2388
+ "format": "date-time"
2377
2389
  }
2378
2390
  },
2379
2391
  {
@@ -2381,9 +2393,8 @@
2381
2393
  "in": "query",
2382
2394
  "description": "Начальный период фильтрации по дате выполнения заявки",
2383
2395
  "schema": {
2384
- "type": "datetime",
2385
- "format": "UTC ISO-8601",
2386
- "default": null
2396
+ "type": "string",
2397
+ "format": "date-time"
2387
2398
  }
2388
2399
  },
2389
2400
  {
@@ -2391,9 +2402,8 @@
2391
2402
  "in": "query",
2392
2403
  "description": "Конечный период фильтрации по дате выполнения заявки",
2393
2404
  "schema": {
2394
- "type": "datetime",
2395
- "format": "UTC ISO-8601",
2396
- "default": null
2405
+ "type": "string",
2406
+ "format": "date-time"
2397
2407
  }
2398
2408
  },
2399
2409
  {
@@ -2401,9 +2411,8 @@
2401
2411
  "in": "query",
2402
2412
  "description": "Начальный период фильтрации по дате закрытия заявки",
2403
2413
  "schema": {
2404
- "type": "datetime",
2405
- "format": "UTC ISO-8601",
2406
- "default": null
2414
+ "type": "string",
2415
+ "format": "date-time"
2407
2416
  }
2408
2417
  },
2409
2418
  {
@@ -2411,9 +2420,8 @@
2411
2420
  "in": "query",
2412
2421
  "description": "Конечный период фильтрации по дате закрытия заявки",
2413
2422
  "schema": {
2414
- "type": "datetime",
2415
- "format": "UTC ISO-8601",
2416
- "default": null
2423
+ "type": "string",
2424
+ "format": "date-time"
2417
2425
  }
2418
2426
  },
2419
2427
  {
@@ -2421,9 +2429,8 @@
2421
2429
  "in": "query",
2422
2430
  "description": "Начальный период фильтрации по сроку выполнения заявки",
2423
2431
  "schema": {
2424
- "type": "datetime",
2425
- "format": "UTC ISO-8601",
2426
- "default": null
2432
+ "type": "string",
2433
+ "format": "date-time"
2427
2434
  }
2428
2435
  },
2429
2436
  {
@@ -2431,9 +2438,8 @@
2431
2438
  "in": "query",
2432
2439
  "description": "Конечный период фильтрации по сроку выполнения заявки",
2433
2440
  "schema": {
2434
- "type": "datetime",
2435
- "format": "UTC ISO-8601",
2436
- "default": null
2441
+ "type": "string",
2442
+ "format": "date-time"
2437
2443
  }
2438
2444
  },
2439
2445
  {
@@ -2441,12 +2447,7 @@
2441
2447
  "in": "query",
2442
2448
  "description": "Если true, результат будет содержать только закрытые заявки, если false - только открытые",
2443
2449
  "schema": {
2444
- "enum": [
2445
- "true",
2446
- "false"
2447
- ],
2448
- "type": "boolean",
2449
- "default": null
2450
+ "type": "boolean"
2450
2451
  }
2451
2452
  },
2452
2453
  {
@@ -2454,12 +2455,7 @@
2454
2455
  "in": "query",
2455
2456
  "description": "Если true, результат будет содержать только заявки из списка избранных для текущего пользователя, если false - только те, которые не вошли в список избранных текущего пользователя",
2456
2457
  "schema": {
2457
- "enum": [
2458
- "true",
2459
- "false"
2460
- ],
2461
- "type": "boolean",
2462
- "default": null
2458
+ "type": "boolean"
2463
2459
  }
2464
2460
  },
2465
2461
  {
@@ -2467,12 +2463,7 @@
2467
2463
  "in": "query",
2468
2464
  "description": "Если true, результат будет содержать только выполненые заявки, если false - только не выполненные",
2469
2465
  "schema": {
2470
- "enum": [
2471
- "true",
2472
- "false"
2473
- ],
2474
- "type": "boolean",
2475
- "default": null
2466
+ "type": "boolean"
2476
2467
  }
2477
2468
  },
2478
2469
  {
@@ -2480,12 +2471,7 @@
2480
2471
  "in": "query",
2481
2472
  "description": "Если true, результат будет содержать только назначенные на кого-либо заявки, если false - только не назначенные",
2482
2473
  "schema": {
2483
- "enum": [
2484
- "true",
2485
- "false"
2486
- ],
2487
- "type": "boolean",
2488
- "default": null
2474
+ "type": "boolean"
2489
2475
  }
2490
2476
  },
2491
2477
  {
@@ -2493,12 +2479,7 @@
2493
2479
  "in": "query",
2494
2480
  "description": "Если true, результат будет содержать только удаленные заявки, если false - только неудаленные",
2495
2481
  "schema": {
2496
- "enum": [
2497
- "true",
2498
- "false"
2499
- ],
2500
- "type": "boolean",
2501
- "default": null
2482
+ "type": "boolean"
2502
2483
  }
2503
2484
  },
2504
2485
  {
@@ -2506,8 +2487,8 @@
2506
2487
  "in": "query",
2507
2488
  "description": "Идентификаторы компаний владельца оборудования, по заявкам которых будет отфильтрован результат",
2508
2489
  "schema": {
2509
- "type": "int16",
2510
- "default": null
2490
+ "type": "integer",
2491
+ "format": "int32"
2511
2492
  }
2512
2493
  },
2513
2494
  {
@@ -2515,8 +2496,8 @@
2515
2496
  "in": "query",
2516
2497
  "description": "Идентификаторы контракта, в рамках которого выполняется заявка",
2517
2498
  "schema": {
2518
- "type": "int16",
2519
- "default": null
2499
+ "type": "integer",
2500
+ "format": "int32"
2520
2501
  }
2521
2502
  },
2522
2503
  {
@@ -2524,20 +2505,46 @@
2524
2505
  "in": "query",
2525
2506
  "description": "Идентификаторы критичности заявок, по которым будет отфильтрован результат",
2526
2507
  "schema": {
2527
- "type": "byte",
2528
- "default": null
2508
+ "type": "integer",
2509
+ "format": "int32"
2510
+ }
2511
+ },
2512
+ {
2513
+ "name": "X-Application-ID",
2514
+ "in": "header",
2515
+ "description": "Идентификатор приложения. EngineerMobile - 1, CustomerMobile - 2, MainWeb - 3, AdminWeb - 4, Api - 5, PlateWeb - 6",
2516
+ "schema": {
2517
+ "enum": [
2518
+ 1,
2519
+ 2,
2520
+ 3,
2521
+ 4,
2522
+ 5,
2523
+ 6
2524
+ ],
2525
+ "type": "integer",
2526
+ "format": "int32",
2527
+ "default": 3,
2528
+ "x-enumNames": [
2529
+ "EngineerMobile",
2530
+ "CustomerMobile",
2531
+ "MainWeb",
2532
+ "AdminWeb",
2533
+ "Api",
2534
+ "PlateWeb"
2535
+ ]
2529
2536
  }
2530
2537
  }
2531
2538
  ],
2532
2539
  "responses": {
2533
2540
  "200": {
2534
- "description": "OK",
2541
+ "description": "Отчет по заявкам.",
2535
2542
  "content": {
2536
2543
  "text/plain": {
2537
2544
  "schema": {
2538
2545
  "type": "array",
2539
2546
  "items": {
2540
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByStages.TaskListGroupByStagesResult"
2547
+ "$ref": "#/components/schemas/ResultsTaskListGroupByStagesTaskListGroupByStagesResult"
2541
2548
  }
2542
2549
  }
2543
2550
  },
@@ -2545,7 +2552,7 @@
2545
2552
  "schema": {
2546
2553
  "type": "array",
2547
2554
  "items": {
2548
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByStages.TaskListGroupByStagesResult"
2555
+ "$ref": "#/components/schemas/ResultsTaskListGroupByStagesTaskListGroupByStagesResult"
2549
2556
  }
2550
2557
  }
2551
2558
  },
@@ -2553,30 +2560,30 @@
2553
2560
  "schema": {
2554
2561
  "type": "array",
2555
2562
  "items": {
2556
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByStages.TaskListGroupByStagesResult"
2563
+ "$ref": "#/components/schemas/ResultsTaskListGroupByStagesTaskListGroupByStagesResult"
2557
2564
  }
2558
2565
  }
2559
2566
  }
2560
2567
  }
2561
2568
  },
2569
+ "204": {
2570
+ "description": "Данные не найдены."
2571
+ },
2572
+ "206": {
2573
+ "description": "Частичный ответ при использовании Range-заголовка."
2574
+ },
2562
2575
  "401": {
2563
- "description": "Unauthorized"
2576
+ "description": "Отсутствует или некорректен Bearer-токен."
2564
2577
  },
2565
2578
  "403": {
2566
- "description": "Forbidden"
2567
- },
2568
- "206": {
2569
- "description": "PartialContent",
2570
- "headers": {
2571
- "Content-Range": {
2572
- "description": "items=FROM-TILL/OF , где FROM - начальный элемент (включая), TILL - конечный элемент (включая) OF - общее количество элементов",
2573
- "schema": {
2574
- "type": "string"
2575
- }
2576
- }
2577
- }
2579
+ "description": "Недостаточно прав для просмотра отчета."
2578
2580
  }
2579
- }
2581
+ },
2582
+ "security": [
2583
+ {
2584
+ "Bearer": [ ]
2585
+ }
2586
+ ]
2580
2587
  }
2581
2588
  },
2582
2589
  "/TasksByWorkTypes": {
@@ -2584,22 +2591,13 @@
2584
2591
  "tags": [
2585
2592
  "TasksByWorkTypes"
2586
2593
  ],
2587
- "summary": "Возвращает список заявок, сгруппированных по видам работ",
2588
- "description": "<br />* Для выполнения данного метода требуется любое из перечисленных полномочий: **TaskListGroupByWorkTypes**<br />* Метод поддерживает диапазонный запрос через строку или заголовок запроса.",
2594
+ "summary": "Получение отчета по заявкам, сгруппированным по видам работ",
2595
+ "description": "## Пример запроса:\r\n`GET /TasksByWorkTypes?searchText=ТО&workTypeID=5`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n[\r\n {\r\n \"workType\": { \"id\": 5, \"name\": \"Техническое обслуживание\" },\r\n \"activeTasksCount\": 7,\r\n \"outdatedTasksCount\": 0,\r\n \"undefinedTasksCount\": 0,\r\n \"total\": 7\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: данные по заданным фильтрам не найдены.\r\n- 206 PartialContent: частичный ответ при использовании Range-заголовка.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав TaskListGroupByWorkTypes.",
2589
2596
  "parameters": [
2590
2597
  {
2591
2598
  "name": "searchText",
2592
2599
  "in": "query",
2593
- "description": "Текстовый поиск по вхождению строки от одного символа. Поиск осуществляется в описании и номере заявки, названии и описании объекта, названии вида работ. Доступен sql like-синтексис.",
2594
- "schema": {
2595
- "type": "string"
2596
- }
2597
- },
2598
- {
2599
- "name": "Authorization",
2600
- "in": "header",
2601
- "description": "Bearer",
2602
- "required": true,
2600
+ "description": "Текстовый поиск по вхождению строки от одного символа. Поиск осуществляется в описании и номере заявки, названии и описании объекта, названии вида работ. Доступен sql like-синтаксис.",
2603
2601
  "schema": {
2604
2602
  "type": "string"
2605
2603
  }
@@ -2623,7 +2621,15 @@
2623
2621
  {
2624
2622
  "name": "fetch",
2625
2623
  "in": "query",
2626
- "description": "количество эементов, которое необходимо вернуть",
2624
+ "description": "количество элементов, которое необходимо вернуть",
2625
+ "schema": {
2626
+ "type": "string"
2627
+ }
2628
+ },
2629
+ {
2630
+ "name": "searchText",
2631
+ "in": "query",
2632
+ "description": "Текстовый поиск по вхождению строки от одного символа",
2627
2633
  "schema": {
2628
2634
  "type": "string"
2629
2635
  }
@@ -2633,8 +2639,8 @@
2633
2639
  "in": "query",
2634
2640
  "description": "Идентификаторы пользователей, которые подали заявку, по которым будет отфильтрован результат",
2635
2641
  "schema": {
2636
- "type": "int32",
2637
- "default": null
2642
+ "type": "integer",
2643
+ "format": "int32"
2638
2644
  }
2639
2645
  },
2640
2646
  {
@@ -2642,8 +2648,8 @@
2642
2648
  "in": "query",
2643
2649
  "description": "Идентификаторы пользователей, на которых в текущий момент назначена заявка, по которым будет отфильтрован результат",
2644
2650
  "schema": {
2645
- "type": "int32",
2646
- "default": null
2651
+ "type": "integer",
2652
+ "format": "int32"
2647
2653
  }
2648
2654
  },
2649
2655
  {
@@ -2651,8 +2657,8 @@
2651
2657
  "in": "query",
2652
2658
  "description": "Идентификаторы пользователей, от которых ожидается утверждение заявки, по которым будет отфильтрован результат",
2653
2659
  "schema": {
2654
- "type": "int32",
2655
- "default": null
2660
+ "type": "integer",
2661
+ "format": "int32"
2656
2662
  }
2657
2663
  },
2658
2664
  {
@@ -2660,8 +2666,8 @@
2660
2666
  "in": "query",
2661
2667
  "description": "Идентификаторы пользователей, на которых была эскалирована заявка, по которым будет отфильтрован результат",
2662
2668
  "schema": {
2663
- "type": "int32",
2664
- "default": null
2669
+ "type": "integer",
2670
+ "format": "int32"
2665
2671
  }
2666
2672
  },
2667
2673
  {
@@ -2669,8 +2675,8 @@
2669
2675
  "in": "query",
2670
2676
  "description": "Идентификаторы объектов, по которым будет отфильтрован результат",
2671
2677
  "schema": {
2672
- "type": "int32",
2673
- "default": null
2678
+ "type": "integer",
2679
+ "format": "int32"
2674
2680
  }
2675
2681
  },
2676
2682
  {
@@ -2678,8 +2684,8 @@
2678
2684
  "in": "query",
2679
2685
  "description": "Идентификаторы объектов, по которым и по дочерним объектам которых будет отфильтрован результат",
2680
2686
  "schema": {
2681
- "type": "int32",
2682
- "default": null
2687
+ "type": "integer",
2688
+ "format": "int32"
2683
2689
  }
2684
2690
  },
2685
2691
  {
@@ -2687,8 +2693,8 @@
2687
2693
  "in": "query",
2688
2694
  "description": "Идентификаторы заявок, по которым будет отфильтрован результат",
2689
2695
  "schema": {
2690
- "type": "int32",
2691
- "default": null
2696
+ "type": "integer",
2697
+ "format": "int32"
2692
2698
  }
2693
2699
  },
2694
2700
  {
@@ -2696,8 +2702,7 @@
2696
2702
  "in": "query",
2697
2703
  "description": "Номера заявок, по которым будет отфильтрован результат",
2698
2704
  "schema": {
2699
- "type": "string",
2700
- "default": null
2705
+ "type": "string"
2701
2706
  }
2702
2707
  },
2703
2708
  {
@@ -2705,8 +2710,8 @@
2705
2710
  "in": "query",
2706
2711
  "description": "Идентификаторы типов заявок, по которым будет отфильтрован результат",
2707
2712
  "schema": {
2708
- "type": "int16",
2709
- "default": null
2713
+ "type": "integer",
2714
+ "format": "int32"
2710
2715
  }
2711
2716
  },
2712
2717
  {
@@ -2714,8 +2719,8 @@
2714
2719
  "in": "query",
2715
2720
  "description": "Идентификаторы видов работ, по которым будет отфильтрован результат",
2716
2721
  "schema": {
2717
- "type": "int16",
2718
- "default": null
2722
+ "type": "integer",
2723
+ "format": "int32"
2719
2724
  }
2720
2725
  },
2721
2726
  {
@@ -2723,8 +2728,8 @@
2723
2728
  "in": "query",
2724
2729
  "description": "Идентификаторы стадий заявок, на которых в текущий находятся заявки, по которым будет отфильтрован результат",
2725
2730
  "schema": {
2726
- "type": "int16",
2727
- "default": null
2731
+ "type": "integer",
2732
+ "format": "int32"
2728
2733
  }
2729
2734
  },
2730
2735
  {
@@ -2732,8 +2737,8 @@
2732
2737
  "in": "query",
2733
2738
  "description": "Идентификаторы статусов заявок, по которым будет отфильтрован результат",
2734
2739
  "schema": {
2735
- "type": "int16",
2736
- "default": null
2740
+ "type": "integer",
2741
+ "format": "int32"
2737
2742
  }
2738
2743
  },
2739
2744
  {
@@ -2741,9 +2746,8 @@
2741
2746
  "in": "query",
2742
2747
  "description": "Начальный период фильтрации по дате создания заявки",
2743
2748
  "schema": {
2744
- "type": "datetime",
2745
- "format": "UTC ISO-8601",
2746
- "default": null
2749
+ "type": "string",
2750
+ "format": "date-time"
2747
2751
  }
2748
2752
  },
2749
2753
  {
@@ -2751,9 +2755,8 @@
2751
2755
  "in": "query",
2752
2756
  "description": "Конечный период фильтрации по дате создания заявки",
2753
2757
  "schema": {
2754
- "type": "datetime",
2755
- "format": "UTC ISO-8601",
2756
- "default": null
2758
+ "type": "string",
2759
+ "format": "date-time"
2757
2760
  }
2758
2761
  },
2759
2762
  {
@@ -2761,9 +2764,8 @@
2761
2764
  "in": "query",
2762
2765
  "description": "Начальный период фильтрации по дате назначения заявки",
2763
2766
  "schema": {
2764
- "type": "datetime",
2765
- "format": "UTC ISO-8601",
2766
- "default": null
2767
+ "type": "string",
2768
+ "format": "date-time"
2767
2769
  }
2768
2770
  },
2769
2771
  {
@@ -2771,9 +2773,8 @@
2771
2773
  "in": "query",
2772
2774
  "description": "Конечный период фильтрации по дате назначения заявки",
2773
2775
  "schema": {
2774
- "type": "datetime",
2775
- "format": "UTC ISO-8601",
2776
- "default": null
2776
+ "type": "string",
2777
+ "format": "date-time"
2777
2778
  }
2778
2779
  },
2779
2780
  {
@@ -2781,9 +2782,8 @@
2781
2782
  "in": "query",
2782
2783
  "description": "Начальный период фильтрации по дате выполнения заявки",
2783
2784
  "schema": {
2784
- "type": "datetime",
2785
- "format": "UTC ISO-8601",
2786
- "default": null
2785
+ "type": "string",
2786
+ "format": "date-time"
2787
2787
  }
2788
2788
  },
2789
2789
  {
@@ -2791,9 +2791,8 @@
2791
2791
  "in": "query",
2792
2792
  "description": "Конечный период фильтрации по дате выполнения заявки",
2793
2793
  "schema": {
2794
- "type": "datetime",
2795
- "format": "UTC ISO-8601",
2796
- "default": null
2794
+ "type": "string",
2795
+ "format": "date-time"
2797
2796
  }
2798
2797
  },
2799
2798
  {
@@ -2801,9 +2800,8 @@
2801
2800
  "in": "query",
2802
2801
  "description": "Начальный период фильтрации по дате закрытия заявки",
2803
2802
  "schema": {
2804
- "type": "datetime",
2805
- "format": "UTC ISO-8601",
2806
- "default": null
2803
+ "type": "string",
2804
+ "format": "date-time"
2807
2805
  }
2808
2806
  },
2809
2807
  {
@@ -2811,9 +2809,8 @@
2811
2809
  "in": "query",
2812
2810
  "description": "Конечный период фильтрации по дате закрытия заявки",
2813
2811
  "schema": {
2814
- "type": "datetime",
2815
- "format": "UTC ISO-8601",
2816
- "default": null
2812
+ "type": "string",
2813
+ "format": "date-time"
2817
2814
  }
2818
2815
  },
2819
2816
  {
@@ -2821,9 +2818,8 @@
2821
2818
  "in": "query",
2822
2819
  "description": "Начальный период фильтрации по сроку выполнения заявки",
2823
2820
  "schema": {
2824
- "type": "datetime",
2825
- "format": "UTC ISO-8601",
2826
- "default": null
2821
+ "type": "string",
2822
+ "format": "date-time"
2827
2823
  }
2828
2824
  },
2829
2825
  {
@@ -2831,9 +2827,8 @@
2831
2827
  "in": "query",
2832
2828
  "description": "Конечный период фильтрации по сроку выполнения заявки",
2833
2829
  "schema": {
2834
- "type": "datetime",
2835
- "format": "UTC ISO-8601",
2836
- "default": null
2830
+ "type": "string",
2831
+ "format": "date-time"
2837
2832
  }
2838
2833
  },
2839
2834
  {
@@ -2841,12 +2836,7 @@
2841
2836
  "in": "query",
2842
2837
  "description": "Если true, результат будет содержать только закрытые заявки, если false - только открытые",
2843
2838
  "schema": {
2844
- "enum": [
2845
- "true",
2846
- "false"
2847
- ],
2848
- "type": "boolean",
2849
- "default": null
2839
+ "type": "boolean"
2850
2840
  }
2851
2841
  },
2852
2842
  {
@@ -2854,12 +2844,7 @@
2854
2844
  "in": "query",
2855
2845
  "description": "Если true, результат будет содержать только заявки из списка избранных для текущего пользователя, если false - только те, которые не вошли в список избранных текущего пользователя",
2856
2846
  "schema": {
2857
- "enum": [
2858
- "true",
2859
- "false"
2860
- ],
2861
- "type": "boolean",
2862
- "default": null
2847
+ "type": "boolean"
2863
2848
  }
2864
2849
  },
2865
2850
  {
@@ -2867,12 +2852,7 @@
2867
2852
  "in": "query",
2868
2853
  "description": "Если true, результат будет содержать только выполненые заявки, если false - только не выполненные",
2869
2854
  "schema": {
2870
- "enum": [
2871
- "true",
2872
- "false"
2873
- ],
2874
- "type": "boolean",
2875
- "default": null
2855
+ "type": "boolean"
2876
2856
  }
2877
2857
  },
2878
2858
  {
@@ -2880,12 +2860,7 @@
2880
2860
  "in": "query",
2881
2861
  "description": "Если true, результат будет содержать только назначенные на кого-либо заявки, если false - только не назначенные",
2882
2862
  "schema": {
2883
- "enum": [
2884
- "true",
2885
- "false"
2886
- ],
2887
- "type": "boolean",
2888
- "default": null
2863
+ "type": "boolean"
2889
2864
  }
2890
2865
  },
2891
2866
  {
@@ -2893,12 +2868,7 @@
2893
2868
  "in": "query",
2894
2869
  "description": "Если true, результат будет содержать только удаленные заявки, если false - только неудаленные",
2895
2870
  "schema": {
2896
- "enum": [
2897
- "true",
2898
- "false"
2899
- ],
2900
- "type": "boolean",
2901
- "default": null
2871
+ "type": "boolean"
2902
2872
  }
2903
2873
  },
2904
2874
  {
@@ -2906,8 +2876,8 @@
2906
2876
  "in": "query",
2907
2877
  "description": "Идентификаторы компаний владельца оборудования, по заявкам которых будет отфильтрован результат",
2908
2878
  "schema": {
2909
- "type": "int16",
2910
- "default": null
2879
+ "type": "integer",
2880
+ "format": "int32"
2911
2881
  }
2912
2882
  },
2913
2883
  {
@@ -2915,8 +2885,8 @@
2915
2885
  "in": "query",
2916
2886
  "description": "Идентификаторы контракта, в рамках которого выполняется заявка",
2917
2887
  "schema": {
2918
- "type": "int16",
2919
- "default": null
2888
+ "type": "integer",
2889
+ "format": "int32"
2920
2890
  }
2921
2891
  },
2922
2892
  {
@@ -2924,20 +2894,46 @@
2924
2894
  "in": "query",
2925
2895
  "description": "Идентификаторы критичности заявок, по которым будет отфильтрован результат",
2926
2896
  "schema": {
2927
- "type": "byte",
2928
- "default": null
2897
+ "type": "integer",
2898
+ "format": "int32"
2899
+ }
2900
+ },
2901
+ {
2902
+ "name": "X-Application-ID",
2903
+ "in": "header",
2904
+ "description": "Идентификатор приложения. EngineerMobile - 1, CustomerMobile - 2, MainWeb - 3, AdminWeb - 4, Api - 5, PlateWeb - 6",
2905
+ "schema": {
2906
+ "enum": [
2907
+ 1,
2908
+ 2,
2909
+ 3,
2910
+ 4,
2911
+ 5,
2912
+ 6
2913
+ ],
2914
+ "type": "integer",
2915
+ "format": "int32",
2916
+ "default": 3,
2917
+ "x-enumNames": [
2918
+ "EngineerMobile",
2919
+ "CustomerMobile",
2920
+ "MainWeb",
2921
+ "AdminWeb",
2922
+ "Api",
2923
+ "PlateWeb"
2924
+ ]
2929
2925
  }
2930
2926
  }
2931
2927
  ],
2932
2928
  "responses": {
2933
2929
  "200": {
2934
- "description": "OK",
2930
+ "description": "Отчет по заявкам.",
2935
2931
  "content": {
2936
2932
  "text/plain": {
2937
2933
  "schema": {
2938
2934
  "type": "array",
2939
2935
  "items": {
2940
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByWorkTypes.TaskListGroupByWorkTypesResult"
2936
+ "$ref": "#/components/schemas/ResultsTaskListGroupByWorkTypesTaskListGroupByWorkTypesResult"
2941
2937
  }
2942
2938
  }
2943
2939
  },
@@ -2945,7 +2941,7 @@
2945
2941
  "schema": {
2946
2942
  "type": "array",
2947
2943
  "items": {
2948
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByWorkTypes.TaskListGroupByWorkTypesResult"
2944
+ "$ref": "#/components/schemas/ResultsTaskListGroupByWorkTypesTaskListGroupByWorkTypesResult"
2949
2945
  }
2950
2946
  }
2951
2947
  },
@@ -2953,30 +2949,30 @@
2953
2949
  "schema": {
2954
2950
  "type": "array",
2955
2951
  "items": {
2956
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByWorkTypes.TaskListGroupByWorkTypesResult"
2952
+ "$ref": "#/components/schemas/ResultsTaskListGroupByWorkTypesTaskListGroupByWorkTypesResult"
2957
2953
  }
2958
2954
  }
2959
2955
  }
2960
2956
  }
2961
2957
  },
2958
+ "204": {
2959
+ "description": "Данные не найдены."
2960
+ },
2961
+ "206": {
2962
+ "description": "Частичный ответ при использовании Range-заголовка."
2963
+ },
2962
2964
  "401": {
2963
- "description": "Unauthorized"
2965
+ "description": "Отсутствует или некорректен Bearer-токен."
2964
2966
  },
2965
2967
  "403": {
2966
- "description": "Forbidden"
2967
- },
2968
- "206": {
2969
- "description": "PartialContent",
2970
- "headers": {
2971
- "Content-Range": {
2972
- "description": "items=FROM-TILL/OF , где FROM - начальный элемент (включая), TILL - конечный элемент (включая) OF - общее количество элементов",
2973
- "schema": {
2974
- "type": "string"
2975
- }
2976
- }
2977
- }
2968
+ "description": "Недостаточно прав для просмотра отчета."
2978
2969
  }
2979
- }
2970
+ },
2971
+ "security": [
2972
+ {
2973
+ "Bearer": [ ]
2974
+ }
2975
+ ]
2980
2976
  }
2981
2977
  },
2982
2978
  "/WorkingTime": {
@@ -2984,24 +2980,15 @@
2984
2980
  "tags": [
2985
2981
  "WorkingTime"
2986
2982
  ],
2987
- "summary": "Возвращает список суммарного и среднего отработанного времени по заявокам, сгруппированным по периоду",
2988
- "description": "<br />* Для выполнения данного метода требуется любое из перечисленных полномочий: **TaskListWorkingTime**<br />* Метод поддерживает диапазонный запрос через строку или заголовок запроса.",
2983
+ "summary": "Получение отчета по отработанному времени по заявкам",
2984
+ "description": "## Пример запроса:\r\n`GET /WorkingTime?groupByPeriod=Day&assignedTo=15&creationFrom=2026-08-01`\r\n \r\n## Пример успешного ответа (200):\r\n```json\r\n[\r\n {\r\n \"period\": { \"from\": \"2026-08-01T00:00:00Z\", \"till\": \"2026-08-01T23:59:59Z\" },\r\n \"workingTime\": { \"totalMinutes\": 960, \"averageMinutes\": 80 }\r\n }\r\n]\r\n```\r\n## Негативные сценарии:\r\n- 204 NoContent: данные по заданным фильтрам не найдены.\r\n- 206 PartialContent: частичный ответ при использовании Range-заголовка.\r\n- 400 BadRequest: не указан или некорректен параметр groupByPeriod.\r\n- 401 Unauthorized: отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden: недостаточно прав TaskListWorkingTime.",
2989
2985
  "parameters": [
2990
2986
  {
2991
2987
  "name": "groupByPeriod",
2992
2988
  "in": "query",
2993
- "description": "",
2989
+ "description": "Период группировки: Day, Week или Month.",
2994
2990
  "schema": {
2995
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Enums.DatePart"
2996
- }
2997
- },
2998
- {
2999
- "name": "Authorization",
3000
- "in": "header",
3001
- "description": "Bearer",
3002
- "required": true,
3003
- "schema": {
3004
- "type": "string"
2991
+ "$ref": "#/components/schemas/ApiEnumsDatePart"
3005
2992
  }
3006
2993
  },
3007
2994
  {
@@ -3023,8 +3010,27 @@
3023
3010
  {
3024
3011
  "name": "fetch",
3025
3012
  "in": "query",
3026
- "description": "количество эементов, которое необходимо вернуть",
3013
+ "description": "количество элементов, которое необходимо вернуть",
3014
+ "schema": {
3015
+ "type": "string"
3016
+ }
3017
+ },
3018
+ {
3019
+ "name": "groupByPeriod",
3020
+ "in": "query",
3021
+ "description": "Период группировки (Day, Week, Month)",
3022
+ "required": true,
3027
3023
  "schema": {
3024
+ "enum": [
3025
+ "Year",
3026
+ "Quarter",
3027
+ "Month",
3028
+ "Day",
3029
+ "Week",
3030
+ "Second",
3031
+ "Minute",
3032
+ "Hour"
3033
+ ],
3028
3034
  "type": "string"
3029
3035
  }
3030
3036
  },
@@ -3033,8 +3039,8 @@
3033
3039
  "in": "query",
3034
3040
  "description": "Идентификаторы пользователей, которые подали заявку, по которым будет отфильтрован результат",
3035
3041
  "schema": {
3036
- "type": "int32",
3037
- "default": null
3042
+ "type": "integer",
3043
+ "format": "int32"
3038
3044
  }
3039
3045
  },
3040
3046
  {
@@ -3042,8 +3048,8 @@
3042
3048
  "in": "query",
3043
3049
  "description": "Идентификаторы пользователей, на которых в текущий момент назначена заявка, по которым будет отфильтрован результат",
3044
3050
  "schema": {
3045
- "type": "int32",
3046
- "default": null
3051
+ "type": "integer",
3052
+ "format": "int32"
3047
3053
  }
3048
3054
  },
3049
3055
  {
@@ -3051,8 +3057,8 @@
3051
3057
  "in": "query",
3052
3058
  "description": "Идентификаторы пользователей, от которых ожидается утверждение заявки, по которым будет отфильтрован результат",
3053
3059
  "schema": {
3054
- "type": "int32",
3055
- "default": null
3060
+ "type": "integer",
3061
+ "format": "int32"
3056
3062
  }
3057
3063
  },
3058
3064
  {
@@ -3060,8 +3066,8 @@
3060
3066
  "in": "query",
3061
3067
  "description": "Идентификаторы пользователей, на которых была эскалирована заявка, по которым будет отфильтрован результат",
3062
3068
  "schema": {
3063
- "type": "int32",
3064
- "default": null
3069
+ "type": "integer",
3070
+ "format": "int32"
3065
3071
  }
3066
3072
  },
3067
3073
  {
@@ -3069,8 +3075,8 @@
3069
3075
  "in": "query",
3070
3076
  "description": "Идентификаторы объектов, по которым будет отфильтрован результат",
3071
3077
  "schema": {
3072
- "type": "int32",
3073
- "default": null
3078
+ "type": "integer",
3079
+ "format": "int32"
3074
3080
  }
3075
3081
  },
3076
3082
  {
@@ -3078,8 +3084,8 @@
3078
3084
  "in": "query",
3079
3085
  "description": "Идентификаторы объектов, по которым и по дочерним объектам которых будет отфильтрован результат",
3080
3086
  "schema": {
3081
- "type": "int32",
3082
- "default": null
3087
+ "type": "integer",
3088
+ "format": "int32"
3083
3089
  }
3084
3090
  },
3085
3091
  {
@@ -3087,8 +3093,8 @@
3087
3093
  "in": "query",
3088
3094
  "description": "Идентификаторы заявок, по которым будет отфильтрован результат",
3089
3095
  "schema": {
3090
- "type": "int32",
3091
- "default": null
3096
+ "type": "integer",
3097
+ "format": "int32"
3092
3098
  }
3093
3099
  },
3094
3100
  {
@@ -3096,8 +3102,7 @@
3096
3102
  "in": "query",
3097
3103
  "description": "Номера заявок, по которым будет отфильтрован результат",
3098
3104
  "schema": {
3099
- "type": "string",
3100
- "default": null
3105
+ "type": "string"
3101
3106
  }
3102
3107
  },
3103
3108
  {
@@ -3105,8 +3110,8 @@
3105
3110
  "in": "query",
3106
3111
  "description": "Идентификаторы типов заявок, по которым будет отфильтрован результат",
3107
3112
  "schema": {
3108
- "type": "int16",
3109
- "default": null
3113
+ "type": "integer",
3114
+ "format": "int32"
3110
3115
  }
3111
3116
  },
3112
3117
  {
@@ -3114,8 +3119,8 @@
3114
3119
  "in": "query",
3115
3120
  "description": "Идентификаторы видов работ, по которым будет отфильтрован результат",
3116
3121
  "schema": {
3117
- "type": "int16",
3118
- "default": null
3122
+ "type": "integer",
3123
+ "format": "int32"
3119
3124
  }
3120
3125
  },
3121
3126
  {
@@ -3123,8 +3128,8 @@
3123
3128
  "in": "query",
3124
3129
  "description": "Идентификаторы стадий заявок, на которых в текущий находятся заявки, по которым будет отфильтрован результат",
3125
3130
  "schema": {
3126
- "type": "int16",
3127
- "default": null
3131
+ "type": "integer",
3132
+ "format": "int32"
3128
3133
  }
3129
3134
  },
3130
3135
  {
@@ -3132,8 +3137,8 @@
3132
3137
  "in": "query",
3133
3138
  "description": "Идентификаторы статусов заявок, по которым будет отфильтрован результат",
3134
3139
  "schema": {
3135
- "type": "int16",
3136
- "default": null
3140
+ "type": "integer",
3141
+ "format": "int32"
3137
3142
  }
3138
3143
  },
3139
3144
  {
@@ -3141,9 +3146,8 @@
3141
3146
  "in": "query",
3142
3147
  "description": "Начальный период фильтрации по дате создания заявки",
3143
3148
  "schema": {
3144
- "type": "datetime",
3145
- "format": "UTC ISO-8601",
3146
- "default": null
3149
+ "type": "string",
3150
+ "format": "date-time"
3147
3151
  }
3148
3152
  },
3149
3153
  {
@@ -3151,9 +3155,8 @@
3151
3155
  "in": "query",
3152
3156
  "description": "Конечный период фильтрации по дате создания заявки",
3153
3157
  "schema": {
3154
- "type": "datetime",
3155
- "format": "UTC ISO-8601",
3156
- "default": null
3158
+ "type": "string",
3159
+ "format": "date-time"
3157
3160
  }
3158
3161
  },
3159
3162
  {
@@ -3161,9 +3164,8 @@
3161
3164
  "in": "query",
3162
3165
  "description": "Начальный период фильтрации по дате назначения заявки",
3163
3166
  "schema": {
3164
- "type": "datetime",
3165
- "format": "UTC ISO-8601",
3166
- "default": null
3167
+ "type": "string",
3168
+ "format": "date-time"
3167
3169
  }
3168
3170
  },
3169
3171
  {
@@ -3171,9 +3173,8 @@
3171
3173
  "in": "query",
3172
3174
  "description": "Конечный период фильтрации по дате назначения заявки",
3173
3175
  "schema": {
3174
- "type": "datetime",
3175
- "format": "UTC ISO-8601",
3176
- "default": null
3176
+ "type": "string",
3177
+ "format": "date-time"
3177
3178
  }
3178
3179
  },
3179
3180
  {
@@ -3181,9 +3182,8 @@
3181
3182
  "in": "query",
3182
3183
  "description": "Начальный период фильтрации по дате выполнения заявки",
3183
3184
  "schema": {
3184
- "type": "datetime",
3185
- "format": "UTC ISO-8601",
3186
- "default": null
3185
+ "type": "string",
3186
+ "format": "date-time"
3187
3187
  }
3188
3188
  },
3189
3189
  {
@@ -3191,9 +3191,8 @@
3191
3191
  "in": "query",
3192
3192
  "description": "Конечный период фильтрации по дате выполнения заявки",
3193
3193
  "schema": {
3194
- "type": "datetime",
3195
- "format": "UTC ISO-8601",
3196
- "default": null
3194
+ "type": "string",
3195
+ "format": "date-time"
3197
3196
  }
3198
3197
  },
3199
3198
  {
@@ -3201,9 +3200,8 @@
3201
3200
  "in": "query",
3202
3201
  "description": "Начальный период фильтрации по дате закрытия заявки",
3203
3202
  "schema": {
3204
- "type": "datetime",
3205
- "format": "UTC ISO-8601",
3206
- "default": null
3203
+ "type": "string",
3204
+ "format": "date-time"
3207
3205
  }
3208
3206
  },
3209
3207
  {
@@ -3211,9 +3209,8 @@
3211
3209
  "in": "query",
3212
3210
  "description": "Конечный период фильтрации по дате закрытия заявки",
3213
3211
  "schema": {
3214
- "type": "datetime",
3215
- "format": "UTC ISO-8601",
3216
- "default": null
3212
+ "type": "string",
3213
+ "format": "date-time"
3217
3214
  }
3218
3215
  },
3219
3216
  {
@@ -3221,9 +3218,8 @@
3221
3218
  "in": "query",
3222
3219
  "description": "Начальный период фильтрации по сроку выполнения заявки",
3223
3220
  "schema": {
3224
- "type": "datetime",
3225
- "format": "UTC ISO-8601",
3226
- "default": null
3221
+ "type": "string",
3222
+ "format": "date-time"
3227
3223
  }
3228
3224
  },
3229
3225
  {
@@ -3231,9 +3227,8 @@
3231
3227
  "in": "query",
3232
3228
  "description": "Конечный период фильтрации по сроку выполнения заявки",
3233
3229
  "schema": {
3234
- "type": "datetime",
3235
- "format": "UTC ISO-8601",
3236
- "default": null
3230
+ "type": "string",
3231
+ "format": "date-time"
3237
3232
  }
3238
3233
  },
3239
3234
  {
@@ -3241,12 +3236,7 @@
3241
3236
  "in": "query",
3242
3237
  "description": "Если true, результат будет содержать только закрытые заявки, если false - только открытые",
3243
3238
  "schema": {
3244
- "enum": [
3245
- "true",
3246
- "false"
3247
- ],
3248
- "type": "boolean",
3249
- "default": null
3239
+ "type": "boolean"
3250
3240
  }
3251
3241
  },
3252
3242
  {
@@ -3254,12 +3244,7 @@
3254
3244
  "in": "query",
3255
3245
  "description": "Если true, результат будет содержать только заявки из списка избранных для текущего пользователя, если false - только те, которые не вошли в список избранных текущего пользователя",
3256
3246
  "schema": {
3257
- "enum": [
3258
- "true",
3259
- "false"
3260
- ],
3261
- "type": "boolean",
3262
- "default": null
3247
+ "type": "boolean"
3263
3248
  }
3264
3249
  },
3265
3250
  {
@@ -3267,12 +3252,7 @@
3267
3252
  "in": "query",
3268
3253
  "description": "Если true, результат будет содержать только выполненые заявки, если false - только не выполненные",
3269
3254
  "schema": {
3270
- "enum": [
3271
- "true",
3272
- "false"
3273
- ],
3274
- "type": "boolean",
3275
- "default": null
3255
+ "type": "boolean"
3276
3256
  }
3277
3257
  },
3278
3258
  {
@@ -3280,12 +3260,7 @@
3280
3260
  "in": "query",
3281
3261
  "description": "Если true, результат будет содержать только назначенные на кого-либо заявки, если false - только не назначенные",
3282
3262
  "schema": {
3283
- "enum": [
3284
- "true",
3285
- "false"
3286
- ],
3287
- "type": "boolean",
3288
- "default": null
3263
+ "type": "boolean"
3289
3264
  }
3290
3265
  },
3291
3266
  {
@@ -3293,12 +3268,7 @@
3293
3268
  "in": "query",
3294
3269
  "description": "Если true, результат будет содержать только удаленные заявки, если false - только неудаленные",
3295
3270
  "schema": {
3296
- "enum": [
3297
- "true",
3298
- "false"
3299
- ],
3300
- "type": "boolean",
3301
- "default": null
3271
+ "type": "boolean"
3302
3272
  }
3303
3273
  },
3304
3274
  {
@@ -3306,8 +3276,8 @@
3306
3276
  "in": "query",
3307
3277
  "description": "Идентификаторы компаний владельца оборудования, по заявкам которых будет отфильтрован результат",
3308
3278
  "schema": {
3309
- "type": "int16",
3310
- "default": null
3279
+ "type": "integer",
3280
+ "format": "int32"
3311
3281
  }
3312
3282
  },
3313
3283
  {
@@ -3315,8 +3285,8 @@
3315
3285
  "in": "query",
3316
3286
  "description": "Идентификаторы контракта, в рамках которого выполняется заявка",
3317
3287
  "schema": {
3318
- "type": "int16",
3319
- "default": null
3288
+ "type": "integer",
3289
+ "format": "int32"
3320
3290
  }
3321
3291
  },
3322
3292
  {
@@ -3324,20 +3294,46 @@
3324
3294
  "in": "query",
3325
3295
  "description": "Идентификаторы критичности заявок, по которым будет отфильтрован результат",
3326
3296
  "schema": {
3327
- "type": "byte",
3328
- "default": null
3297
+ "type": "integer",
3298
+ "format": "int32"
3299
+ }
3300
+ },
3301
+ {
3302
+ "name": "X-Application-ID",
3303
+ "in": "header",
3304
+ "description": "Идентификатор приложения. EngineerMobile - 1, CustomerMobile - 2, MainWeb - 3, AdminWeb - 4, Api - 5, PlateWeb - 6",
3305
+ "schema": {
3306
+ "enum": [
3307
+ 1,
3308
+ 2,
3309
+ 3,
3310
+ 4,
3311
+ 5,
3312
+ 6
3313
+ ],
3314
+ "type": "integer",
3315
+ "format": "int32",
3316
+ "default": 3,
3317
+ "x-enumNames": [
3318
+ "EngineerMobile",
3319
+ "CustomerMobile",
3320
+ "MainWeb",
3321
+ "AdminWeb",
3322
+ "Api",
3323
+ "PlateWeb"
3324
+ ]
3329
3325
  }
3330
3326
  }
3331
3327
  ],
3332
3328
  "responses": {
3333
3329
  "200": {
3334
- "description": "OK",
3330
+ "description": "Отчет по отработанному времени.",
3335
3331
  "content": {
3336
3332
  "text/plain": {
3337
3333
  "schema": {
3338
3334
  "type": "array",
3339
3335
  "items": {
3340
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
3336
+ "$ref": "#/components/schemas/ResultsWorkingTimeWorkingTimeResult"
3341
3337
  }
3342
3338
  }
3343
3339
  },
@@ -3345,7 +3341,7 @@
3345
3341
  "schema": {
3346
3342
  "type": "array",
3347
3343
  "items": {
3348
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
3344
+ "$ref": "#/components/schemas/ResultsWorkingTimeWorkingTimeResult"
3349
3345
  }
3350
3346
  }
3351
3347
  },
@@ -3353,36 +3349,52 @@
3353
3349
  "schema": {
3354
3350
  "type": "array",
3355
3351
  "items": {
3356
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult"
3352
+ "$ref": "#/components/schemas/ResultsWorkingTimeWorkingTimeResult"
3357
3353
  }
3358
3354
  }
3359
3355
  }
3360
3356
  }
3361
3357
  },
3358
+ "204": {
3359
+ "description": "Данные не найдены."
3360
+ },
3361
+ "206": {
3362
+ "description": "Частичный ответ при использовании Range-заголовка."
3363
+ },
3362
3364
  "401": {
3363
- "description": "Unauthorized"
3365
+ "description": "Отсутствует или некорректен Bearer-токен."
3364
3366
  },
3365
- "403": {
3366
- "description": "Forbidden"
3367
+ "400": {
3368
+ "description": "Некорректный параметр groupByPeriod."
3367
3369
  },
3368
- "206": {
3369
- "description": "PartialContent",
3370
- "headers": {
3371
- "Content-Range": {
3372
- "description": "items=FROM-TILL/OF , где FROM - начальный элемент (включая), TILL - конечный элемент (включая) OF - общее количество элементов",
3373
- "schema": {
3374
- "type": "string"
3375
- }
3376
- }
3377
- }
3370
+ "403": {
3371
+ "description": "Недостаточно прав для просмотра отчета."
3372
+ }
3373
+ },
3374
+ "security": [
3375
+ {
3376
+ "Bearer": [ ]
3378
3377
  }
3379
- }
3378
+ ]
3380
3379
  }
3381
3380
  }
3382
3381
  },
3383
3382
  "components": {
3384
3383
  "schemas": {
3385
- "HubEx.Service.Common.AspNetCore.Results.AssetResult": {
3384
+ "ApiEnumsDatePart": {
3385
+ "enum": [
3386
+ "Year",
3387
+ "Quarter",
3388
+ "Month",
3389
+ "Day",
3390
+ "Week",
3391
+ "Second",
3392
+ "Minute",
3393
+ "Hour"
3394
+ ],
3395
+ "type": "string"
3396
+ },
3397
+ "AspNetCoreResultsAssetResult": {
3386
3398
  "type": "object",
3387
3399
  "properties": {
3388
3400
  "id": {
@@ -3394,7 +3406,7 @@
3394
3406
  "nullable": true
3395
3407
  },
3396
3408
  "host": {
3397
- "$ref": "#/components/schemas/SmartService.Common.Results.IdNameDeletedResult`1[[System.Int32, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
3409
+ "$ref": "#/components/schemas/IdNameDeletedResultOfInt"
3398
3410
  },
3399
3411
  "deleted": {
3400
3412
  "type": "string",
@@ -3409,7 +3421,7 @@
3409
3421
  },
3410
3422
  "additionalProperties": false
3411
3423
  },
3412
- "HubEx.Service.Common.AspNetCore.Results.UserResult": {
3424
+ "AspNetCoreResultsUserResult": {
3413
3425
  "type": "object",
3414
3426
  "properties": {
3415
3427
  "id": {
@@ -3441,20 +3453,84 @@
3441
3453
  },
3442
3454
  "additionalProperties": false
3443
3455
  },
3444
- "HubEx.Service.REPORT.Api.Enums.DatePart": {
3445
- "enum": [
3446
- "Year",
3447
- "Quarter",
3448
- "Month",
3449
- "Day",
3450
- "Week",
3451
- "Second",
3452
- "Minute",
3453
- "Hour"
3454
- ],
3455
- "type": "string"
3456
+ "CommonResultsPeriodResult": {
3457
+ "type": "object",
3458
+ "properties": {
3459
+ "from": {
3460
+ "type": "string",
3461
+ "format": "date-time",
3462
+ "nullable": true
3463
+ },
3464
+ "till": {
3465
+ "type": "string",
3466
+ "format": "date-time",
3467
+ "nullable": true
3468
+ }
3469
+ },
3470
+ "additionalProperties": false
3456
3471
  },
3457
- "HubEx.Service.REPORT.Api.Results.AssetMaintenance.PlannedMaintenanceResult": {
3472
+ "IdNameDeletedResultOfInt": {
3473
+ "type": "object",
3474
+ "properties": {
3475
+ "id": {
3476
+ "type": "integer",
3477
+ "format": "int32"
3478
+ },
3479
+ "name": {
3480
+ "type": "string",
3481
+ "nullable": true
3482
+ },
3483
+ "deleted": {
3484
+ "type": "string",
3485
+ "format": "date-time",
3486
+ "nullable": true
3487
+ }
3488
+ },
3489
+ "additionalProperties": false
3490
+ },
3491
+ "IdNameResultOfByte": {
3492
+ "type": "object",
3493
+ "properties": {
3494
+ "id": {
3495
+ "type": "integer",
3496
+ "format": "int32"
3497
+ },
3498
+ "name": {
3499
+ "type": "string",
3500
+ "nullable": true
3501
+ }
3502
+ },
3503
+ "additionalProperties": false
3504
+ },
3505
+ "IdNameResultOfInt": {
3506
+ "type": "object",
3507
+ "properties": {
3508
+ "id": {
3509
+ "type": "integer",
3510
+ "format": "int32"
3511
+ },
3512
+ "name": {
3513
+ "type": "string",
3514
+ "nullable": true
3515
+ }
3516
+ },
3517
+ "additionalProperties": false
3518
+ },
3519
+ "IdNameResultOfShort": {
3520
+ "type": "object",
3521
+ "properties": {
3522
+ "id": {
3523
+ "type": "integer",
3524
+ "format": "int32"
3525
+ },
3526
+ "name": {
3527
+ "type": "string",
3528
+ "nullable": true
3529
+ }
3530
+ },
3531
+ "additionalProperties": false
3532
+ },
3533
+ "ResultsAssetMaintenancePlannedMaintenanceResult": {
3458
3534
  "type": "object",
3459
3535
  "properties": {
3460
3536
  "taskTemplateID": {
@@ -3478,28 +3554,58 @@
3478
3554
  "format": "int32"
3479
3555
  },
3480
3556
  "workType": {
3481
- "$ref": "#/components/schemas/SmartService.Common.Results.IdNameResult`1[[System.Int16, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
3557
+ "$ref": "#/components/schemas/IdNameResultOfShort"
3482
3558
  },
3483
3559
  "taskType": {
3484
- "$ref": "#/components/schemas/SmartService.Common.Results.IdNameResult`1[[System.Byte, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
3560
+ "$ref": "#/components/schemas/IdNameResultOfByte"
3485
3561
  },
3486
3562
  "frequencyType": {
3487
- "$ref": "#/components/schemas/SmartService.Common.Results.IdNameResult`1[[System.Byte, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
3563
+ "$ref": "#/components/schemas/IdNameResultOfByte"
3488
3564
  },
3489
3565
  "assetClass": {
3490
- "$ref": "#/components/schemas/SmartService.Common.Results.IdNameResult`1[[System.Byte, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
3566
+ "$ref": "#/components/schemas/IdNameResultOfByte"
3491
3567
  },
3492
3568
  "assetType": {
3493
- "$ref": "#/components/schemas/SmartService.Common.Results.IdNameResult`1[[System.Byte, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
3569
+ "$ref": "#/components/schemas/IdNameResultOfByte"
3494
3570
  },
3495
3571
  "asset": {
3496
- "$ref": "#/components/schemas/HubEx.Service.Common.AspNetCore.Results.AssetResult"
3572
+ "$ref": "#/components/schemas/AspNetCoreResultsAssetResult"
3497
3573
  }
3498
3574
  },
3499
3575
  "additionalProperties": false,
3500
3576
  "description": "Запланированное обслуживание"
3501
3577
  },
3502
- "HubEx.Service.REPORT.Api.Results.PowerBICustomReports.CustomReportList": {
3578
+ "ResultsBaseBaseListTimeResult": {
3579
+ "type": "object",
3580
+ "properties": {
3581
+ "totalMinutes": {
3582
+ "type": "integer",
3583
+ "description": "общее количество минут",
3584
+ "format": "int32"
3585
+ },
3586
+ "averageMinutes": {
3587
+ "type": "number",
3588
+ "description": "Среднее количество минут",
3589
+ "format": "double"
3590
+ }
3591
+ },
3592
+ "additionalProperties": false,
3593
+ "description": "Модель по кол-ву минут"
3594
+ },
3595
+ "ResultsCompletionTimeCompletionTimeResult": {
3596
+ "type": "object",
3597
+ "properties": {
3598
+ "period": {
3599
+ "$ref": "#/components/schemas/CommonResultsPeriodResult"
3600
+ },
3601
+ "completionTime": {
3602
+ "$ref": "#/components/schemas/ResultsBaseBaseListTimeResult"
3603
+ }
3604
+ },
3605
+ "additionalProperties": false,
3606
+ "description": "Модель для отчетов по времени закрытию заявки"
3607
+ },
3608
+ "ResultsPowerBICustomReportsCustomReportList": {
3503
3609
  "type": "object",
3504
3610
  "properties": {
3505
3611
  "name": {
@@ -3513,13 +3619,57 @@
3513
3619
  "nullable": true
3514
3620
  },
3515
3621
  "reportType": {
3516
- "$ref": "#/components/schemas/SmartService.Common.Results.IdNameResult`1[[System.Byte, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
3622
+ "$ref": "#/components/schemas/IdNameResultOfByte"
3517
3623
  }
3518
3624
  },
3519
3625
  "additionalProperties": false,
3520
3626
  "description": "Результат получения списка кастомных отчетов powerbi"
3521
3627
  },
3522
- "HubEx.Service.REPORT.Api.Results.TaskListGroupByAssignees.TaskListGroupByAssigneesResult": {
3628
+ "ResultsReactionTimeReactionTimeResult": {
3629
+ "type": "object",
3630
+ "properties": {
3631
+ "period": {
3632
+ "$ref": "#/components/schemas/CommonResultsPeriodResult"
3633
+ },
3634
+ "reactionTime": {
3635
+ "$ref": "#/components/schemas/ResultsBaseBaseListTimeResult"
3636
+ }
3637
+ },
3638
+ "additionalProperties": false,
3639
+ "description": "Модель для отчета по времени реакции на заявку"
3640
+ },
3641
+ "ResultsTaskListGroupByAssetsTasksListGroupByAssetsResult": {
3642
+ "type": "object",
3643
+ "properties": {
3644
+ "activeTasksCount": {
3645
+ "type": "integer",
3646
+ "description": "Количество активных заявок",
3647
+ "format": "int32"
3648
+ },
3649
+ "outdatedTasksCount": {
3650
+ "type": "integer",
3651
+ "description": "Количество просроченных заявок",
3652
+ "format": "int32"
3653
+ },
3654
+ "undefinedTasksCount": {
3655
+ "type": "integer",
3656
+ "description": "Количество неопределенных заявок",
3657
+ "format": "int32"
3658
+ },
3659
+ "total": {
3660
+ "type": "integer",
3661
+ "description": "Общее количество заявок",
3662
+ "format": "int32",
3663
+ "readOnly": true
3664
+ },
3665
+ "asset": {
3666
+ "$ref": "#/components/schemas/IdNameResultOfInt"
3667
+ }
3668
+ },
3669
+ "additionalProperties": false,
3670
+ "description": "Модель списка отчета по заявкам, сгруппированного по оборудованию"
3671
+ },
3672
+ "ResultsTaskListGroupByAssigneesTaskListGroupByAssigneesResult": {
3523
3673
  "type": "object",
3524
3674
  "properties": {
3525
3675
  "activeTasksCount": {
@@ -3544,13 +3694,13 @@
3544
3694
  "readOnly": true
3545
3695
  },
3546
3696
  "assignee": {
3547
- "$ref": "#/components/schemas/HubEx.Service.Common.AspNetCore.Results.UserResult"
3697
+ "$ref": "#/components/schemas/AspNetCoreResultsUserResult"
3548
3698
  }
3549
3699
  },
3550
3700
  "additionalProperties": false,
3551
3701
  "description": "Модель списка отчета по заявкам, сгруппированного по исполнителям"
3552
3702
  },
3553
- "HubEx.Service.REPORT.Api.Results.TaskListGroupByCompanies.TaskListGroupByCompaniesResult": {
3703
+ "ResultsTaskListGroupByCompaniesTaskListGroupByCompaniesResult": {
3554
3704
  "type": "object",
3555
3705
  "properties": {
3556
3706
  "activeTasksCount": {
@@ -3575,13 +3725,13 @@
3575
3725
  "readOnly": true
3576
3726
  },
3577
3727
  "company": {
3578
- "$ref": "#/components/schemas/SmartService.Common.Results.IdNameResult`1[[System.Int32, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
3728
+ "$ref": "#/components/schemas/IdNameResultOfInt"
3579
3729
  }
3580
3730
  },
3581
3731
  "additionalProperties": false,
3582
3732
  "description": "Модель списка отчета по заявкам, сгруппированным по компаниям"
3583
3733
  },
3584
- "HubEx.Service.REPORT.Api.Results.TaskListGroupByStages.TaskListGroupByStagesResult": {
3734
+ "ResultsTaskListGroupByStagesTaskListGroupByStagesResult": {
3585
3735
  "type": "object",
3586
3736
  "properties": {
3587
3737
  "activeTasksCount": {
@@ -3606,13 +3756,13 @@
3606
3756
  "readOnly": true
3607
3757
  },
3608
3758
  "taskStage": {
3609
- "$ref": "#/components/schemas/HubEx.Service.REPORT.Api.Results.TaskListGroupByStages.TaskStageResult"
3759
+ "$ref": "#/components/schemas/ResultsTaskListGroupByStagesTaskStageResult"
3610
3760
  }
3611
3761
  },
3612
3762
  "additionalProperties": false,
3613
3763
  "description": "Модель списка отчета по заявкам , сгруппированным по стадиям"
3614
3764
  },
3615
- "HubEx.Service.REPORT.Api.Results.TaskListGroupByStages.TaskStageResult": {
3765
+ "ResultsTaskListGroupByStagesTaskStageResult": {
3616
3766
  "type": "object",
3617
3767
  "properties": {
3618
3768
  "id": {
@@ -3632,7 +3782,7 @@
3632
3782
  "additionalProperties": false,
3633
3783
  "description": "Модель данных стадиям заявки"
3634
3784
  },
3635
- "HubEx.Service.REPORT.Api.Results.TaskListGroupByWorkTypes.TaskListGroupByWorkTypesResult": {
3785
+ "ResultsTaskListGroupByWorkTypesTaskListGroupByWorkTypesResult": {
3636
3786
  "type": "object",
3637
3787
  "properties": {
3638
3788
  "activeTasksCount": {
@@ -3657,73 +3807,115 @@
3657
3807
  "readOnly": true
3658
3808
  },
3659
3809
  "workType": {
3660
- "$ref": "#/components/schemas/SmartService.Common.Results.IdNameResult`1[[System.Int32, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
3810
+ "$ref": "#/components/schemas/IdNameResultOfInt"
3661
3811
  }
3662
3812
  },
3663
3813
  "additionalProperties": false,
3664
3814
  "description": "Модель списка отчета по заявкам, сгруппированного по видам работ"
3665
3815
  },
3666
- "SmartService.Common.Results.IdNameDeletedResult`1[[System.Int32, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]": {
3816
+ "ResultsWorkingTimeWorkingTimeResult": {
3667
3817
  "type": "object",
3668
3818
  "properties": {
3669
- "id": {
3670
- "type": "integer",
3671
- "format": "int32"
3819
+ "period": {
3820
+ "$ref": "#/components/schemas/CommonResultsPeriodResult"
3672
3821
  },
3673
- "name": {
3674
- "type": "string",
3675
- "nullable": true
3676
- },
3677
- "deleted": {
3678
- "type": "string",
3679
- "format": "date-time",
3680
- "nullable": true
3822
+ "workingTime": {
3823
+ "$ref": "#/components/schemas/ResultsBaseBaseListTimeResult"
3681
3824
  }
3682
3825
  },
3683
- "additionalProperties": false
3684
- },
3685
- "SmartService.Common.Results.IdNameResult`1[[System.Byte, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]": {
3686
- "type": "object",
3687
- "properties": {
3688
- "id": {
3689
- "type": "integer",
3690
- "format": "int32"
3691
- },
3692
- "name": {
3693
- "type": "string",
3694
- "nullable": true
3695
- }
3696
- },
3697
- "additionalProperties": false
3698
- },
3699
- "SmartService.Common.Results.IdNameResult`1[[System.Int16, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]": {
3700
- "type": "object",
3701
- "properties": {
3702
- "id": {
3703
- "type": "integer",
3704
- "format": "int32"
3705
- },
3706
- "name": {
3707
- "type": "string",
3708
- "nullable": true
3709
- }
3710
- },
3711
- "additionalProperties": false
3712
- },
3713
- "SmartService.Common.Results.IdNameResult`1[[System.Int32, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]": {
3714
- "type": "object",
3715
- "properties": {
3716
- "id": {
3717
- "type": "integer",
3718
- "format": "int32"
3719
- },
3720
- "name": {
3721
- "type": "string",
3722
- "nullable": true
3723
- }
3724
- },
3725
- "additionalProperties": false
3826
+ "additionalProperties": false,
3827
+ "description": "Модель для отчетов по суммарному и среднему рабочему времени по заявкам"
3828
+ }
3829
+ },
3830
+ "securitySchemes": {
3831
+ "Bearer": {
3832
+ "type": "http",
3833
+ "description": "Введите токен для авторизации",
3834
+ "scheme": "Bearer",
3835
+ "bearerFormat": "JWT"
3726
3836
  }
3727
3837
  }
3728
- }
3838
+ },
3839
+ "tags": [
3840
+ {
3841
+ "name": "AssetMaintenance",
3842
+ "description": "Выгрузка по обслуживанию объъектов"
3843
+ },
3844
+ {
3845
+ "name": "CompletionTime",
3846
+ "description": "Контроллер управления отчетом по суммарному и среднему времени отработки заявок, сгруппированным по периоду"
3847
+ },
3848
+ {
3849
+ "name": "PowerBICustomReports",
3850
+ "description": "Контроллер управления кастомными отчетами PowerBI"
3851
+ },
3852
+ {
3853
+ "name": "ReactionTime",
3854
+ "description": "Контроллер управления отчетом по суммарному и среднему времени реакции по заявкам, сгруппированным по периоду"
3855
+ },
3856
+ {
3857
+ "name": "TasksByAssets",
3858
+ "description": "Контроллер управления отчетом по заявкам, сгруппированным по оборудованию"
3859
+ },
3860
+ {
3861
+ "name": "TasksByAssignees",
3862
+ "description": "Контроллер управления отчетом по заявкам, сгруппированным по исполнителям"
3863
+ },
3864
+ {
3865
+ "name": "TasksByCompanies",
3866
+ "description": "Контроллер управления отчетом по заявкам, сгруппированным по компаниям"
3867
+ },
3868
+ {
3869
+ "name": "TasksByStages",
3870
+ "description": "Контроллер управления отчетом по заявкам сгруппированным по стадиям"
3871
+ },
3872
+ {
3873
+ "name": "TasksByWorkTypes",
3874
+ "description": "Заявки по видам работ"
3875
+ },
3876
+ {
3877
+ "name": "WorkingTime",
3878
+ "description": "Контроллер управления отчетом по суммарному и среднему отработанному времени по заявокам, сгруппированным по периоду"
3879
+ },
3880
+ {
3881
+ "name": "AssetMaintenance",
3882
+ "description": "Выгрузка по обслуживанию объъектов"
3883
+ },
3884
+ {
3885
+ "name": "CompletionTime",
3886
+ "description": "Контроллер управления отчетом по суммарному и среднему времени отработки заявок, сгруппированным по периоду"
3887
+ },
3888
+ {
3889
+ "name": "PowerBICustomReports",
3890
+ "description": "Контроллер управления кастомными отчетами PowerBI"
3891
+ },
3892
+ {
3893
+ "name": "ReactionTime",
3894
+ "description": "Контроллер управления отчетом по суммарному и среднему времени реакции по заявкам, сгруппированным по периоду"
3895
+ },
3896
+ {
3897
+ "name": "TasksByAssets",
3898
+ "description": "Контроллер управления отчетом по заявкам, сгруппированным по оборудованию"
3899
+ },
3900
+ {
3901
+ "name": "TasksByAssignees",
3902
+ "description": "Контроллер управления отчетом по заявкам, сгруппированным по исполнителям"
3903
+ },
3904
+ {
3905
+ "name": "TasksByCompanies",
3906
+ "description": "Контроллер управления отчетом по заявкам, сгруппированным по компаниям"
3907
+ },
3908
+ {
3909
+ "name": "TasksByStages",
3910
+ "description": "Контроллер управления отчетом по заявкам сгруппированным по стадиям"
3911
+ },
3912
+ {
3913
+ "name": "TasksByWorkTypes",
3914
+ "description": "Заявки по видам работ"
3915
+ },
3916
+ {
3917
+ "name": "WorkingTime",
3918
+ "description": "Контроллер управления отчетом по суммарному и среднему отработанному времени по заявокам, сгруппированным по периоду"
3919
+ }
3920
+ ]
3729
3921
  }