@hubex/mcp 0.10.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -20,8 +20,33 @@
20
20
  "tags": [
21
21
  "ScheduleRules"
22
22
  ],
23
- "summary": "Возвращает список доступных графиков рабочего времени",
23
+ "summary": "Возвращает список доступных графиков рабочего времени.",
24
+ "description": "## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"10\": {\r\n \"name\": \"Стандартный график\",\r\n \"description\": \"График работы с 9:00 до 18:00\",\r\n \"scheduleTypeID\": 1,\r\n \"dataFrom\": \"2024-01-01T00:00:00Z\"\r\n }\r\n}\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит частичный диапазон.\r\n \r\n## Негативные сценарии:\r\n- 204 No Content — графики не найдены.\r\n- 401 Unauthorized — отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden — недостаточно прав `ScheduleRulesList`.",
24
25
  "parameters": [
26
+ {
27
+ "name": "Range",
28
+ "in": "header",
29
+ "description": "Формат: items=FROM-TILL , где FROM - начальный элемент (включая), TILL - конечный элемент (включая)",
30
+ "schema": {
31
+ "type": "string"
32
+ }
33
+ },
34
+ {
35
+ "name": "offset",
36
+ "in": "query",
37
+ "description": "количество элементов, которое нобходимо пропустить",
38
+ "schema": {
39
+ "type": "string"
40
+ }
41
+ },
42
+ {
43
+ "name": "fetch",
44
+ "in": "query",
45
+ "description": "количество элементов, которое необходимо вернуть",
46
+ "schema": {
47
+ "type": "string"
48
+ }
49
+ },
25
50
  {
26
51
  "name": "X-Application-ID",
27
52
  "in": "header",
@@ -51,7 +76,36 @@
51
76
  ],
52
77
  "responses": {
53
78
  "200": {
54
- "description": "OK",
79
+ "description": "Список графиков успешно получен.",
80
+ "content": {
81
+ "text/plain": {
82
+ "schema": {
83
+ "type": "object",
84
+ "additionalProperties": {
85
+ "$ref": "#/components/schemas/ListResult"
86
+ }
87
+ }
88
+ },
89
+ "application/json": {
90
+ "schema": {
91
+ "type": "object",
92
+ "additionalProperties": {
93
+ "$ref": "#/components/schemas/ListResult"
94
+ }
95
+ }
96
+ },
97
+ "text/json": {
98
+ "schema": {
99
+ "type": "object",
100
+ "additionalProperties": {
101
+ "$ref": "#/components/schemas/ListResult"
102
+ }
103
+ }
104
+ }
105
+ }
106
+ },
107
+ "206": {
108
+ "description": "Возвращена часть списка в пределах диапазона.",
55
109
  "content": {
56
110
  "text/plain": {
57
111
  "schema": {
@@ -79,11 +133,14 @@
79
133
  }
80
134
  }
81
135
  },
136
+ "204": {
137
+ "description": "Графики не найдены."
138
+ },
82
139
  "401": {
83
- "description": "Unauthorized"
140
+ "description": "Токен отсутствует или некорректен."
84
141
  },
85
142
  "403": {
86
- "description": "Forbidden"
143
+ "description": "Недостаточно прав `ScheduleRulesList`."
87
144
  }
88
145
  }
89
146
  },
@@ -91,7 +148,8 @@
91
148
  "tags": [
92
149
  "ScheduleRules"
93
150
  ],
94
- "summary": "Создаёт ГРВ",
151
+ "summary": "Создаёт график рабочего времени.",
152
+ "description": "## Пример запроса:\r\n```json\r\n{\r\n \"name\": \"Стандартный график\",\r\n \"description\": \"График работы с 9:00 до 18:00\",\r\n \"isDefault\": false,\r\n \"scheduleTypeID\": 1,\r\n \"from\": \"2024-06-01T00:00:00Z\",\r\n \"till\": \"2024-12-31T23:59:59Z\",\r\n \"considerPublicHolidays\": true,\r\n \"shortageHoursBeforeHoliday\": 1,\r\n \"rules\": [\r\n {\r\n \"cron\": \"0 9 * * 1-5\",\r\n \"occurrenceDuration\": \"08:00:00\"\r\n }\r\n ],\r\n \"overridings\": []\r\n}\r\n```\r\n \r\n## Пример успешного ответа (201):\r\n```json\r\n10\r\n```\r\n \r\n## Негативные сценарии:\r\n- 409 Conflict — некорректные данные модели.\r\n- 401 Unauthorized — отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden — недостаточно прав `ScheduleRulesList`.",
95
153
  "parameters": [
96
154
  {
97
155
  "name": "X-Application-ID",
@@ -121,7 +179,7 @@
121
179
  }
122
180
  ],
123
181
  "requestBody": {
124
- "description": "данные для генерации ГРВ",
182
+ "description": "Данные для создания графика.",
125
183
  "content": {
126
184
  "application/json-patch+json": {
127
185
  "schema": {
@@ -147,7 +205,7 @@
147
205
  },
148
206
  "responses": {
149
207
  "201": {
150
- "description": "Created",
208
+ "description": "График успешно создан.",
151
209
  "content": {
152
210
  "text/plain": {
153
211
  "schema": {
@@ -169,11 +227,14 @@
169
227
  }
170
228
  }
171
229
  },
230
+ "409": {
231
+ "description": "Некорректные данные."
232
+ },
172
233
  "401": {
173
- "description": "Unauthorized"
234
+ "description": "Токен отсутствует или некорректен."
174
235
  },
175
236
  "403": {
176
- "description": "Forbidden"
237
+ "description": "Недостаточно прав `ScheduleRulesList`."
177
238
  }
178
239
  }
179
240
  }
@@ -183,7 +244,8 @@
183
244
  "tags": [
184
245
  "ScheduleRules"
185
246
  ],
186
- "summary": "Возвращает ГРВ для предпросмотра",
247
+ "summary": "Возвращает предпросмотр графика рабочего времени.",
248
+ "description": "## Пример запроса:\r\n```json\r\n{\r\n \"from\": \"2024-06-01T00:00:00Z\",\r\n \"till\": \"2024-06-30T23:59:59Z\",\r\n \"considerPublicHolidays\": true,\r\n \"shortageHoursBeforeHoliday\": 1,\r\n \"rules\": [\r\n {\r\n \"cron\": \"0 9 * * 1-5\",\r\n \"occurrenceDuration\": \"08:00:00\"\r\n }\r\n ],\r\n \"overridings\": []\r\n}\r\n```\r\n \r\n## Пример успешного ответа (201):\r\n```json\r\n[\r\n {\r\n \"scheduleRuleID\": 0,\r\n \"timeFrom\": \"2024-06-03T09:00:00Z\",\r\n \"timeTill\": \"2024-06-03T17:00:00Z\",\r\n \"isPublicHoliday\": false,\r\n \"isNightShift\": false,\r\n \"dateWork\": \"2024-06-03T00:00:00Z\"\r\n }\r\n]\r\n```\r\n \r\n## Негативные сценарии:\r\n- 401 Unauthorized — отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden — недостаточно прав `ScheduleRulesList`.",
187
249
  "parameters": [
188
250
  {
189
251
  "name": "X-Application-ID",
@@ -213,7 +275,7 @@
213
275
  }
214
276
  ],
215
277
  "requestBody": {
216
- "description": "данные для генерации предпросмотра ГРВ",
278
+ "description": "Данные для генерации предпросмотра.",
217
279
  "content": {
218
280
  "application/json-patch+json": {
219
281
  "schema": {
@@ -239,13 +301,13 @@
239
301
  },
240
302
  "responses": {
241
303
  "201": {
242
- "description": "Created",
304
+ "description": "Предпросмотр успешно сгенерирован.",
243
305
  "content": {
244
306
  "text/plain": {
245
307
  "schema": {
246
308
  "type": "array",
247
309
  "items": {
248
- "$ref": "#/components/schemas/ScheduleOccurrenceDto"
310
+ "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
249
311
  }
250
312
  }
251
313
  },
@@ -253,7 +315,7 @@
253
315
  "schema": {
254
316
  "type": "array",
255
317
  "items": {
256
- "$ref": "#/components/schemas/ScheduleOccurrenceDto"
318
+ "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
257
319
  }
258
320
  }
259
321
  },
@@ -261,17 +323,17 @@
261
323
  "schema": {
262
324
  "type": "array",
263
325
  "items": {
264
- "$ref": "#/components/schemas/ScheduleOccurrenceDto"
326
+ "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
265
327
  }
266
328
  }
267
329
  }
268
330
  }
269
331
  },
270
332
  "401": {
271
- "description": "Unauthorized"
333
+ "description": "Токен отсутствует или некорректен."
272
334
  },
273
335
  "403": {
274
- "description": "Forbidden"
336
+ "description": "Недостаточно прав `ScheduleRulesList`."
275
337
  }
276
338
  }
277
339
  }
@@ -281,12 +343,13 @@
281
343
  "tags": [
282
344
  "ScheduleRules"
283
345
  ],
284
- "summary": "Возвращает ГРВ",
346
+ "summary": "Возвращает график рабочего времени по идентификатору.",
347
+ "description": "## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"name\": \"Стандартный график\",\r\n \"description\": \"График работы с 9:00 до 18:00\",\r\n \"scheduleTypeID\": 1,\r\n \"periods\": [\r\n {\r\n \"from\": \"2024-01-01T00:00:00Z\",\r\n \"till\": \"2024-12-31T23:59:59Z\",\r\n \"holidayCalendarID\": 1,\r\n \"shortageHoursBeforeHoliday\": 1,\r\n \"model\": {\r\n \"rules\": [\r\n {\r\n \"cron\": \"0 9 * * 1-5\",\r\n \"occurrenceDuration\": \"08:00:00\"\r\n }\r\n ],\r\n \"overridings\": []\r\n }\r\n }\r\n ]\r\n}\r\n```\r\n \r\n## Негативные сценарии:\r\n- 401 Unauthorized — отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden — недостаточно прав `ScheduleRulesList`.",
285
348
  "parameters": [
286
349
  {
287
350
  "name": "id",
288
351
  "in": "path",
289
- "description": "ГРВ id",
352
+ "description": "Идентификатор правила графика.",
290
353
  "required": true,
291
354
  "schema": {
292
355
  "type": "integer",
@@ -322,7 +385,7 @@
322
385
  ],
323
386
  "responses": {
324
387
  "200": {
325
- "description": "OK",
388
+ "description": "График успешно получен.",
326
389
  "content": {
327
390
  "text/plain": {
328
391
  "schema": {
@@ -342,10 +405,10 @@
342
405
  }
343
406
  },
344
407
  "401": {
345
- "description": "Unauthorized"
408
+ "description": "Токен отсутствует или некорректен."
346
409
  },
347
410
  "403": {
348
- "description": "Forbidden"
411
+ "description": "Недостаточно прав `ScheduleRulesList`."
349
412
  }
350
413
  }
351
414
  },
@@ -353,12 +416,13 @@
353
416
  "tags": [
354
417
  "ScheduleRules"
355
418
  ],
356
- "summary": "Меняет ГРВ",
419
+ "summary": "Обновляет график рабочего времени.",
420
+ "description": "Если `rules` не указаны, используются правила последнего периода существующего графика.\r\n \r\n## Пример запроса:\r\n```json\r\n{\r\n \"name\": \"Обновлённый график\",\r\n \"description\": \"Новое описание\",\r\n \"scheduleTypeID\": 1,\r\n \"from\": \"2024-01-01T00:00:00Z\",\r\n \"till\": \"2024-12-31T23:59:59Z\",\r\n \"considerPublicHolidays\": true,\r\n \"shortageHoursBeforeHoliday\": 1,\r\n \"rules\": [],\r\n \"overridings\": []\r\n}\r\n```\r\n \r\n## Пример успешного ответа (202):\r\nТело ответа пустое.\r\n \r\n## Негативные сценарии:\r\n- 409 Conflict — некорректные данные модели.\r\n- 401 Unauthorized — отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden — недостаточно прав `ScheduleRulesList`.",
357
421
  "parameters": [
358
422
  {
359
423
  "name": "id",
360
424
  "in": "path",
361
- "description": "ГРВ id",
425
+ "description": "Идентификатор правила графика.",
362
426
  "required": true,
363
427
  "schema": {
364
428
  "type": "integer",
@@ -393,7 +457,7 @@
393
457
  }
394
458
  ],
395
459
  "requestBody": {
396
- "description": "данные для генерации ГРВ",
460
+ "description": "Данные для обновления графика.",
397
461
  "content": {
398
462
  "application/json-patch+json": {
399
463
  "schema": {
@@ -419,13 +483,16 @@
419
483
  },
420
484
  "responses": {
421
485
  "202": {
422
- "description": "Accepted"
486
+ "description": "График успешно обновлён."
487
+ },
488
+ "409": {
489
+ "description": "Некорректные данные."
423
490
  },
424
491
  "401": {
425
- "description": "Unauthorized"
492
+ "description": "Токен отсутствует или некорректен."
426
493
  },
427
494
  "403": {
428
- "description": "Forbidden"
495
+ "description": "Недостаточно прав `ScheduleRulesList`."
429
496
  }
430
497
  }
431
498
  },
@@ -433,12 +500,13 @@
433
500
  "tags": [
434
501
  "ScheduleRules"
435
502
  ],
436
- "summary": "Удаляет ГРВ",
503
+ "summary": "Удаляет график рабочего времени.",
504
+ "description": "## Пример успешного ответа (202):\r\nТело ответа пустое.\r\n \r\n## Негативные сценарии:\r\n- 401 Unauthorized — отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden — недостаточно прав `ScheduleRulesList`.",
437
505
  "parameters": [
438
506
  {
439
507
  "name": "id",
440
508
  "in": "path",
441
- "description": "ГРВ id",
509
+ "description": "Идентификатор правила графика.",
442
510
  "required": true,
443
511
  "schema": {
444
512
  "type": "integer",
@@ -474,13 +542,13 @@
474
542
  ],
475
543
  "responses": {
476
544
  "202": {
477
- "description": "Accepted"
545
+ "description": "График успешно удалён."
478
546
  },
479
547
  "401": {
480
- "description": "Unauthorized"
548
+ "description": "Токен отсутствует или некорректен."
481
549
  },
482
550
  "403": {
483
- "description": "Forbidden"
551
+ "description": "Недостаточно прав `ScheduleRulesList`."
484
552
  }
485
553
  }
486
554
  }
@@ -490,12 +558,13 @@
490
558
  "tags": [
491
559
  "ScheduleRules"
492
560
  ],
493
- "summary": "Расширяет ГРВ",
561
+ "summary": "Расширяет график рабочего времени.",
562
+ "description": "Если `rules` не указаны, используются правила последнего периода существующего графика.\r\n \r\n## Пример запроса:\r\n```json\r\n{\r\n \"from\": \"2025-01-01T00:00:00Z\",\r\n \"till\": \"2025-12-31T23:59:59Z\",\r\n \"considerPublicHolidays\": true,\r\n \"shortageHoursBeforeHoliday\": 1,\r\n \"rules\": [],\r\n \"overridings\": []\r\n}\r\n```\r\n \r\n## Пример успешного ответа (202):\r\nТело ответа пустое.\r\n \r\n## Негативные сценарии:\r\n- 409 Conflict — некорректные данные модели.\r\n- 401 Unauthorized — отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden — недостаточно прав `ScheduleRulesList`.",
494
563
  "parameters": [
495
564
  {
496
565
  "name": "id",
497
566
  "in": "path",
498
- "description": "ГРВ id",
567
+ "description": "Идентификатор правила графика.",
499
568
  "required": true,
500
569
  "schema": {
501
570
  "type": "integer",
@@ -530,7 +599,7 @@
530
599
  }
531
600
  ],
532
601
  "requestBody": {
533
- "description": "данные для генерации ГРВ",
602
+ "description": "Данные для расширения графика.",
534
603
  "content": {
535
604
  "application/json-patch+json": {
536
605
  "schema": {
@@ -556,13 +625,16 @@
556
625
  },
557
626
  "responses": {
558
627
  "202": {
559
- "description": "Accepted"
628
+ "description": "График успешно расширен."
629
+ },
630
+ "409": {
631
+ "description": "Некорректные данные."
560
632
  },
561
633
  "401": {
562
- "description": "Unauthorized"
634
+ "description": "Токен отсутствует или некорректен."
563
635
  },
564
636
  "403": {
565
- "description": "Forbidden"
637
+ "description": "Недостаточно прав `ScheduleRulesList`."
566
638
  }
567
639
  }
568
640
  }
@@ -572,12 +644,13 @@
572
644
  "tags": [
573
645
  "ScheduleRules"
574
646
  ],
575
- "summary": "Возвращает График праздничных дней",
647
+ "summary": "Возвращает график праздничных дней за указанный год.",
648
+ "description": "## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"RU\": [\r\n \"2024-01-01T00:00:00Z\",\r\n \"2024-01-07T00:00:00Z\"\r\n ]\r\n}\r\n```\r\n \r\n## Негативные сценарии:\r\n- 401 Unauthorized — отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden — недостаточно прав `ScheduleRulesList`.",
576
649
  "parameters": [
577
650
  {
578
651
  "name": "year",
579
652
  "in": "query",
580
- "description": "Год, за который требуется получить график праздничных дней",
653
+ "description": "Год, за который требуется получить график праздничных дней.",
581
654
  "schema": {
582
655
  "type": "string"
583
656
  }
@@ -611,7 +684,7 @@
611
684
  ],
612
685
  "responses": {
613
686
  "200": {
614
- "description": "OK",
687
+ "description": "График праздников успешно получен.",
615
688
  "content": {
616
689
  "text/plain": {
617
690
  "schema": {
@@ -651,40 +724,11 @@
651
724
  }
652
725
  }
653
726
  },
654
- "400": {
655
- "description": "Bad Request",
656
- "content": {
657
- "text/plain": {
658
- "schema": {
659
- "type": "array",
660
- "items": {
661
- "$ref": "#/components/schemas/ErrorModel"
662
- }
663
- }
664
- },
665
- "application/json": {
666
- "schema": {
667
- "type": "array",
668
- "items": {
669
- "$ref": "#/components/schemas/ErrorModel"
670
- }
671
- }
672
- },
673
- "text/json": {
674
- "schema": {
675
- "type": "array",
676
- "items": {
677
- "$ref": "#/components/schemas/ErrorModel"
678
- }
679
- }
680
- }
681
- }
682
- },
683
727
  "401": {
684
- "description": "Unauthorized"
728
+ "description": "Токен отсутствует или некорректен."
685
729
  },
686
730
  "403": {
687
- "description": "Forbidden"
731
+ "description": "Недостаточно прав `ScheduleRulesList`."
688
732
  }
689
733
  }
690
734
  }
@@ -694,8 +738,33 @@
694
738
  "tags": [
695
739
  "WorkSchedules"
696
740
  ],
697
- "summary": "Возвращает график рабочего времени на заданный период",
741
+ "summary": "Возвращает график рабочего времени на заданный период.",
742
+ "description": "## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"10\": [\r\n {\r\n \"scheduleRuleID\": 10,\r\n \"timeFrom\": \"2024-06-15T09:00:00Z\",\r\n \"timeTill\": \"2024-06-15T18:00:00Z\",\r\n \"isPublicHoliday\": false,\r\n \"isNightShift\": false,\r\n \"dateWork\": \"2024-06-15T00:00:00Z\"\r\n }\r\n ]\r\n}\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит частичный диапазон.\r\n \r\n## Пример негативного ответа (400):\r\n```json\r\n{\r\n \"traceIdentifier\": \"0HN1234567890\",\r\n \"code\": \"ScheduleRuleNull\",\r\n \"message\": \"Schedule rule is required\"\r\n}\r\n```\r\n \r\n## Негативные сценарии:\r\n- 204 No Content — график не найден.\r\n- 400 Bad Request — некорректные query-параметры.\r\n- 401 Unauthorized — отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden — недостаточно прав `ScheduleRulesList`.",
698
743
  "parameters": [
744
+ {
745
+ "name": "Range",
746
+ "in": "header",
747
+ "description": "Формат: items=FROM-TILL , где FROM - начальный элемент (включая), TILL - конечный элемент (включая)",
748
+ "schema": {
749
+ "type": "string"
750
+ }
751
+ },
752
+ {
753
+ "name": "offset",
754
+ "in": "query",
755
+ "description": "количество элементов, которое нобходимо пропустить",
756
+ "schema": {
757
+ "type": "string"
758
+ }
759
+ },
760
+ {
761
+ "name": "fetch",
762
+ "in": "query",
763
+ "description": "количество элементов, которое необходимо вернуть",
764
+ "schema": {
765
+ "type": "string"
766
+ }
767
+ },
699
768
  {
700
769
  "name": "X-Application-ID",
701
770
  "in": "header",
@@ -725,13 +794,16 @@
725
794
  ],
726
795
  "responses": {
727
796
  "200": {
728
- "description": "OK",
797
+ "description": "График успешно получен.",
729
798
  "content": {
730
799
  "text/plain": {
731
800
  "schema": {
732
801
  "type": "object",
733
802
  "additionalProperties": {
734
- "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
803
+ "type": "array",
804
+ "items": {
805
+ "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
806
+ }
735
807
  }
736
808
  }
737
809
  },
@@ -739,7 +811,10 @@
739
811
  "schema": {
740
812
  "type": "object",
741
813
  "additionalProperties": {
742
- "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
814
+ "type": "array",
815
+ "items": {
816
+ "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
817
+ }
743
818
  }
744
819
  }
745
820
  },
@@ -747,17 +822,115 @@
747
822
  "schema": {
748
823
  "type": "object",
749
824
  "additionalProperties": {
750
- "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
825
+ "type": "array",
826
+ "items": {
827
+ "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
828
+ }
751
829
  }
752
830
  }
753
831
  }
754
832
  }
755
833
  },
834
+ "206": {
835
+ "description": "Возвращена часть записей в пределах диапазона.",
836
+ "content": {
837
+ "text/plain": {
838
+ "schema": {
839
+ "type": "object",
840
+ "additionalProperties": {
841
+ "type": "array",
842
+ "items": {
843
+ "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
844
+ }
845
+ }
846
+ }
847
+ },
848
+ "application/json": {
849
+ "schema": {
850
+ "type": "object",
851
+ "additionalProperties": {
852
+ "type": "array",
853
+ "items": {
854
+ "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
855
+ }
856
+ }
857
+ }
858
+ },
859
+ "text/json": {
860
+ "schema": {
861
+ "type": "object",
862
+ "additionalProperties": {
863
+ "type": "array",
864
+ "items": {
865
+ "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
866
+ }
867
+ }
868
+ }
869
+ }
870
+ }
871
+ },
872
+ "204": {
873
+ "description": "Записи не найдены."
874
+ },
875
+ "400": {
876
+ "description": "Некорректные параметры запроса.",
877
+ "content": {
878
+ "text/plain": {
879
+ "schema": {
880
+ "$ref": "#/components/schemas/ProblemDetails"
881
+ }
882
+ },
883
+ "application/json": {
884
+ "schema": {
885
+ "$ref": "#/components/schemas/ProblemDetails"
886
+ }
887
+ },
888
+ "text/json": {
889
+ "schema": {
890
+ "$ref": "#/components/schemas/ProblemDetails"
891
+ }
892
+ }
893
+ }
894
+ },
756
895
  "401": {
757
- "description": "Unauthorized"
896
+ "description": "Токен отсутствует или некорректен.",
897
+ "content": {
898
+ "text/plain": {
899
+ "schema": {
900
+ "$ref": "#/components/schemas/ProblemDetails"
901
+ }
902
+ },
903
+ "application/json": {
904
+ "schema": {
905
+ "$ref": "#/components/schemas/ProblemDetails"
906
+ }
907
+ },
908
+ "text/json": {
909
+ "schema": {
910
+ "$ref": "#/components/schemas/ProblemDetails"
911
+ }
912
+ }
913
+ }
758
914
  },
759
915
  "403": {
760
- "description": "Forbidden"
916
+ "description": "Недостаточно прав `ScheduleRulesList`.",
917
+ "content": {
918
+ "text/plain": {
919
+ "schema": {
920
+ "$ref": "#/components/schemas/ProblemDetails"
921
+ }
922
+ },
923
+ "application/json": {
924
+ "schema": {
925
+ "$ref": "#/components/schemas/ProblemDetails"
926
+ }
927
+ },
928
+ "text/json": {
929
+ "schema": {
930
+ "$ref": "#/components/schemas/ProblemDetails"
931
+ }
932
+ }
933
+ }
761
934
  }
762
935
  }
763
936
  }
@@ -767,8 +940,33 @@
767
940
  "tags": [
768
941
  "WorkSchedules"
769
942
  ],
770
- "summary": "Возвращает график рабочего времени на заданный период по суткам",
943
+ "summary": "Возвращает график рабочего времени на заданный период, разбитый по суткам.",
944
+ "description": "## Пример успешного ответа (200):\r\n```json\r\n{\r\n \"10\": [\r\n {\r\n \"date\": \"2024-06-15T00:00:00Z\",\r\n \"isNightShift\": false,\r\n \"isPublicHoliday\": false,\r\n \"timeFrom\": \"2024-06-15T09:00:00Z\",\r\n \"timeTill\": \"2024-06-15T18:00:00Z\"\r\n }\r\n ]\r\n}\r\n```\r\n \r\n## Пример успешного ответа (206):\r\nТело ответа имеет тот же формат, что и для `200`, но содержит частичный диапазон.\r\n \r\n## Пример негативного ответа (400):\r\n```json\r\n{\r\n \"traceIdentifier\": \"0HN1234567890\",\r\n \"code\": \"ValidityPeriodNull\",\r\n \"message\": \"Validity period is required\"\r\n}\r\n```\r\n \r\n## Негативные сценарии:\r\n- 204 No Content — график не найден.\r\n- 400 Bad Request — некорректные query-параметры (обязательны validFrom и validTill).\r\n- 401 Unauthorized — отсутствует или некорректен Bearer-токен.\r\n- 403 Forbidden — недостаточно прав `ScheduleRulesList`.",
771
945
  "parameters": [
946
+ {
947
+ "name": "Range",
948
+ "in": "header",
949
+ "description": "Формат: items=FROM-TILL , где FROM - начальный элемент (включая), TILL - конечный элемент (включая)",
950
+ "schema": {
951
+ "type": "string"
952
+ }
953
+ },
954
+ {
955
+ "name": "offset",
956
+ "in": "query",
957
+ "description": "количество элементов, которое нобходимо пропустить",
958
+ "schema": {
959
+ "type": "string"
960
+ }
961
+ },
962
+ {
963
+ "name": "fetch",
964
+ "in": "query",
965
+ "description": "количество элементов, которое необходимо вернуть",
966
+ "schema": {
967
+ "type": "string"
968
+ }
969
+ },
772
970
  {
773
971
  "name": "X-Application-ID",
774
972
  "in": "header",
@@ -798,7 +996,7 @@
798
996
  ],
799
997
  "responses": {
800
998
  "200": {
801
- "description": "OK",
999
+ "description": "График по суткам успешно получен.",
802
1000
  "content": {
803
1001
  "text/plain": {
804
1002
  "schema": {
@@ -806,7 +1004,7 @@
806
1004
  "additionalProperties": {
807
1005
  "type": "array",
808
1006
  "items": {
809
- "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
1007
+ "$ref": "#/components/schemas/WorkScheduleDailyByDayResult"
810
1008
  }
811
1009
  }
812
1010
  }
@@ -817,7 +1015,7 @@
817
1015
  "additionalProperties": {
818
1016
  "type": "array",
819
1017
  "items": {
820
- "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
1018
+ "$ref": "#/components/schemas/WorkScheduleDailyByDayResult"
821
1019
  }
822
1020
  }
823
1021
  }
@@ -828,18 +1026,113 @@
828
1026
  "additionalProperties": {
829
1027
  "type": "array",
830
1028
  "items": {
831
- "$ref": "#/components/schemas/WorkScheduleDailyItemResult"
1029
+ "$ref": "#/components/schemas/WorkScheduleDailyByDayResult"
832
1030
  }
833
1031
  }
834
1032
  }
835
1033
  }
836
1034
  }
837
1035
  },
1036
+ "206": {
1037
+ "description": "Возвращена часть записей в пределах диапазона.",
1038
+ "content": {
1039
+ "text/plain": {
1040
+ "schema": {
1041
+ "type": "object",
1042
+ "additionalProperties": {
1043
+ "type": "array",
1044
+ "items": {
1045
+ "$ref": "#/components/schemas/WorkScheduleDailyByDayResult"
1046
+ }
1047
+ }
1048
+ }
1049
+ },
1050
+ "application/json": {
1051
+ "schema": {
1052
+ "type": "object",
1053
+ "additionalProperties": {
1054
+ "type": "array",
1055
+ "items": {
1056
+ "$ref": "#/components/schemas/WorkScheduleDailyByDayResult"
1057
+ }
1058
+ }
1059
+ }
1060
+ },
1061
+ "text/json": {
1062
+ "schema": {
1063
+ "type": "object",
1064
+ "additionalProperties": {
1065
+ "type": "array",
1066
+ "items": {
1067
+ "$ref": "#/components/schemas/WorkScheduleDailyByDayResult"
1068
+ }
1069
+ }
1070
+ }
1071
+ }
1072
+ }
1073
+ },
1074
+ "204": {
1075
+ "description": "Записи не найдены."
1076
+ },
1077
+ "400": {
1078
+ "description": "Некорректные параметры запроса.",
1079
+ "content": {
1080
+ "text/plain": {
1081
+ "schema": {
1082
+ "$ref": "#/components/schemas/ProblemDetails"
1083
+ }
1084
+ },
1085
+ "application/json": {
1086
+ "schema": {
1087
+ "$ref": "#/components/schemas/ProblemDetails"
1088
+ }
1089
+ },
1090
+ "text/json": {
1091
+ "schema": {
1092
+ "$ref": "#/components/schemas/ProblemDetails"
1093
+ }
1094
+ }
1095
+ }
1096
+ },
838
1097
  "401": {
839
- "description": "Unauthorized"
1098
+ "description": "Токен отсутствует или некорректен.",
1099
+ "content": {
1100
+ "text/plain": {
1101
+ "schema": {
1102
+ "$ref": "#/components/schemas/ProblemDetails"
1103
+ }
1104
+ },
1105
+ "application/json": {
1106
+ "schema": {
1107
+ "$ref": "#/components/schemas/ProblemDetails"
1108
+ }
1109
+ },
1110
+ "text/json": {
1111
+ "schema": {
1112
+ "$ref": "#/components/schemas/ProblemDetails"
1113
+ }
1114
+ }
1115
+ }
840
1116
  },
841
1117
  "403": {
842
- "description": "Forbidden"
1118
+ "description": "Недостаточно прав `ScheduleRulesList`.",
1119
+ "content": {
1120
+ "text/plain": {
1121
+ "schema": {
1122
+ "$ref": "#/components/schemas/ProblemDetails"
1123
+ }
1124
+ },
1125
+ "application/json": {
1126
+ "schema": {
1127
+ "$ref": "#/components/schemas/ProblemDetails"
1128
+ }
1129
+ },
1130
+ "text/json": {
1131
+ "schema": {
1132
+ "$ref": "#/components/schemas/ProblemDetails"
1133
+ }
1134
+ }
1135
+ }
843
1136
  }
844
1137
  }
845
1138
  }
@@ -847,83 +1140,97 @@
847
1140
  },
848
1141
  "components": {
849
1142
  "schemas": {
850
- "ErrorModel": {
1143
+ "ListResult": {
851
1144
  "type": "object",
852
1145
  "properties": {
853
- "traceIdentifier": {
1146
+ "name": {
854
1147
  "type": "string",
855
- "nullable": true
1148
+ "description": "Название правила",
1149
+ "nullable": true,
1150
+ "example": "Стандартный график"
856
1151
  },
857
- "code": {
1152
+ "description": {
858
1153
  "type": "string",
859
- "nullable": true
1154
+ "description": "Описание правила",
1155
+ "nullable": true,
1156
+ "example": "График работы с 9:00 до 18:00"
860
1157
  },
861
- "message": {
862
- "type": "string",
863
- "nullable": true
1158
+ "scheduleTypeID": {
1159
+ "type": "integer",
1160
+ "description": "Тип графика",
1161
+ "format": "int32",
1162
+ "nullable": true,
1163
+ "example": 1
864
1164
  },
865
- "arguments": {
866
- "type": "object",
867
- "additionalProperties": {
868
- "type": "string",
869
- "nullable": true
870
- },
871
- "nullable": true
1165
+ "dataFrom": {
1166
+ "type": "string",
1167
+ "description": "Дата старта графика",
1168
+ "format": "date-time",
1169
+ "example": "2024-01-01T00:00:00Z"
872
1170
  }
873
1171
  },
874
- "additionalProperties": false
1172
+ "additionalProperties": false,
1173
+ "description": "Правило графика рабочего времени для списка"
875
1174
  },
876
- "ListResult": {
1175
+ "ProblemDetails": {
877
1176
  "type": "object",
878
1177
  "properties": {
879
- "name": {
1178
+ "type": {
880
1179
  "type": "string",
881
- "description": "Название правила",
882
1180
  "nullable": true
883
1181
  },
884
- "description": {
1182
+ "title": {
885
1183
  "type": "string",
886
- "description": "Описание правила",
887
1184
  "nullable": true
888
1185
  },
889
- "scheduleTypeID": {
1186
+ "status": {
890
1187
  "type": "integer",
891
- "description": "Тип графика",
892
1188
  "format": "int32",
893
1189
  "nullable": true
894
1190
  },
895
- "dataFrom": {
1191
+ "detail": {
896
1192
  "type": "string",
897
- "description": "Дата старта графика",
898
- "format": "date-time"
1193
+ "nullable": true
1194
+ },
1195
+ "instance": {
1196
+ "type": "string",
1197
+ "nullable": true
899
1198
  }
900
1199
  },
901
- "additionalProperties": false,
902
- "description": "Правило графика рабочего времени для списка"
1200
+ "additionalProperties": { }
903
1201
  },
904
1202
  "ScheduleCreateDto": {
905
1203
  "type": "object",
906
1204
  "properties": {
907
1205
  "from": {
908
1206
  "type": "string",
909
- "format": "date-time"
1207
+ "description": "Дата начала периода",
1208
+ "format": "date-time",
1209
+ "example": "2024-01-01T00:00:00Z"
910
1210
  },
911
1211
  "till": {
912
1212
  "type": "string",
913
- "format": "date-time"
1213
+ "description": "Дата окончания периода",
1214
+ "format": "date-time",
1215
+ "example": "2024-12-31T23:59:59Z"
914
1216
  },
915
1217
  "considerPublicHolidays": {
916
- "type": "boolean"
1218
+ "type": "boolean",
1219
+ "description": "Учитывать праздничные дни",
1220
+ "example": true
917
1221
  },
918
1222
  "shortageHoursBeforeHoliday": {
919
1223
  "type": "integer",
920
- "format": "int32"
1224
+ "description": "Сокращение часов перед праздником",
1225
+ "format": "int32",
1226
+ "example": 1
921
1227
  },
922
1228
  "rules": {
923
1229
  "type": "array",
924
1230
  "items": {
925
1231
  "$ref": "#/components/schemas/ScheduleDtoRule"
926
1232
  },
1233
+ "description": "Правила расписания",
927
1234
  "nullable": true
928
1235
  },
929
1236
  "overridings": {
@@ -931,26 +1238,36 @@
931
1238
  "items": {
932
1239
  "$ref": "#/components/schemas/ScheduleDto"
933
1240
  },
1241
+ "description": "Переопределения расписания",
934
1242
  "nullable": true
935
1243
  },
936
1244
  "name": {
937
1245
  "type": "string",
938
- "nullable": true
1246
+ "description": "Название",
1247
+ "nullable": true,
1248
+ "example": "Стандартный график"
939
1249
  },
940
1250
  "description": {
941
1251
  "type": "string",
942
- "nullable": true
1252
+ "description": "Описание",
1253
+ "nullable": true,
1254
+ "example": "График работы с 9:00 до 18:00"
943
1255
  },
944
1256
  "isDefault": {
945
- "type": "boolean"
1257
+ "type": "boolean",
1258
+ "description": "Признак графика по умолчанию",
1259
+ "example": false
946
1260
  },
947
1261
  "scheduleTypeID": {
948
1262
  "type": "integer",
1263
+ "description": "Тип графика",
949
1264
  "format": "int32",
950
- "nullable": true
1265
+ "nullable": true,
1266
+ "example": 1
951
1267
  }
952
1268
  },
953
- "additionalProperties": false
1269
+ "additionalProperties": false,
1270
+ "description": "Данные для создания графика рабочего времени"
954
1271
  },
955
1272
  "ScheduleDto": {
956
1273
  "type": "object",
@@ -1007,24 +1324,33 @@
1007
1324
  "properties": {
1008
1325
  "from": {
1009
1326
  "type": "string",
1010
- "format": "date-time"
1327
+ "description": "Дата начала периода",
1328
+ "format": "date-time",
1329
+ "example": "2024-01-01T00:00:00Z"
1011
1330
  },
1012
1331
  "till": {
1013
1332
  "type": "string",
1014
- "format": "date-time"
1333
+ "description": "Дата окончания периода",
1334
+ "format": "date-time",
1335
+ "example": "2024-12-31T23:59:59Z"
1015
1336
  },
1016
1337
  "considerPublicHolidays": {
1017
- "type": "boolean"
1338
+ "type": "boolean",
1339
+ "description": "Учитывать праздничные дни",
1340
+ "example": true
1018
1341
  },
1019
1342
  "shortageHoursBeforeHoliday": {
1020
1343
  "type": "integer",
1021
- "format": "int32"
1344
+ "description": "Сокращение часов перед праздником",
1345
+ "format": "int32",
1346
+ "example": 1
1022
1347
  },
1023
1348
  "rules": {
1024
1349
  "type": "array",
1025
1350
  "items": {
1026
1351
  "$ref": "#/components/schemas/ScheduleDtoRule"
1027
1352
  },
1353
+ "description": "Правила расписания",
1028
1354
  "nullable": true
1029
1355
  },
1030
1356
  "overridings": {
@@ -1032,35 +1358,12 @@
1032
1358
  "items": {
1033
1359
  "$ref": "#/components/schemas/ScheduleDto"
1034
1360
  },
1361
+ "description": "Переопределения расписания",
1035
1362
  "nullable": true
1036
1363
  }
1037
1364
  },
1038
- "additionalProperties": false
1039
- },
1040
- "ScheduleOccurrenceDto": {
1041
- "type": "object",
1042
- "properties": {
1043
- "start": {
1044
- "type": "string",
1045
- "format": "date-time"
1046
- },
1047
- "duration": {
1048
- "type": "string",
1049
- "format": "date-span"
1050
- },
1051
- "isWorking": {
1052
- "type": "boolean"
1053
- },
1054
- "isNightShift": {
1055
- "type": "boolean",
1056
- "readOnly": true
1057
- },
1058
- "isPublicHoliday": {
1059
- "type": "boolean",
1060
- "readOnly": true
1061
- }
1062
- },
1063
- "additionalProperties": false
1365
+ "additionalProperties": false,
1366
+ "description": "Данные для расширения или предпросмотра графика рабочего времени"
1064
1367
  },
1065
1368
  "SchedulePersistDto": {
1066
1369
  "type": "object",
@@ -1070,6 +1373,7 @@
1070
1373
  "items": {
1071
1374
  "$ref": "#/components/schemas/ScheduleDtoRule"
1072
1375
  },
1376
+ "description": "Правила расписания",
1073
1377
  "nullable": true
1074
1378
  },
1075
1379
  "overridings": {
@@ -1077,86 +1381,113 @@
1077
1381
  "items": {
1078
1382
  "$ref": "#/components/schemas/ScheduleDto"
1079
1383
  },
1384
+ "description": "Переопределения расписания",
1080
1385
  "nullable": true
1081
1386
  }
1082
1387
  },
1083
- "additionalProperties": false
1388
+ "additionalProperties": false,
1389
+ "description": "Сохранённая модель правил графика"
1084
1390
  },
1085
1391
  "ScheduleRuleDto": {
1086
1392
  "type": "object",
1087
1393
  "properties": {
1088
1394
  "name": {
1089
1395
  "type": "string",
1090
- "nullable": true
1396
+ "description": "Название",
1397
+ "nullable": true,
1398
+ "example": "Стандартный график"
1091
1399
  },
1092
1400
  "description": {
1093
1401
  "type": "string",
1094
- "nullable": true
1402
+ "description": "Описание",
1403
+ "nullable": true,
1404
+ "example": "График работы с 9:00 до 18:00"
1095
1405
  },
1096
1406
  "scheduleTypeID": {
1097
1407
  "type": "integer",
1408
+ "description": "Тип графика",
1098
1409
  "format": "int32",
1099
- "nullable": true
1410
+ "nullable": true,
1411
+ "example": 1
1100
1412
  },
1101
1413
  "periods": {
1102
1414
  "type": "array",
1103
1415
  "items": {
1104
1416
  "$ref": "#/components/schemas/ScheduleRuleDtoPeriod"
1105
1417
  },
1418
+ "description": "Периоды действия правил",
1106
1419
  "nullable": true
1107
1420
  }
1108
1421
  },
1109
1422
  "additionalProperties": false,
1110
- "description": "ГРВ"
1423
+ "description": "График рабочего времени (ГРВ)"
1111
1424
  },
1112
1425
  "ScheduleRuleDtoPeriod": {
1113
1426
  "type": "object",
1114
1427
  "properties": {
1115
1428
  "from": {
1116
1429
  "type": "string",
1117
- "format": "date-time"
1430
+ "description": "Дата начала периода",
1431
+ "format": "date-time",
1432
+ "example": "2024-01-01T00:00:00Z"
1118
1433
  },
1119
1434
  "till": {
1120
1435
  "type": "string",
1121
- "format": "date-time"
1436
+ "description": "Дата окончания периода",
1437
+ "format": "date-time",
1438
+ "example": "2024-12-31T23:59:59Z"
1122
1439
  },
1123
1440
  "holidayCalendarID": {
1124
1441
  "type": "integer",
1125
- "format": "int32"
1442
+ "description": "Идентификатор календаря праздников",
1443
+ "format": "int32",
1444
+ "example": 1
1126
1445
  },
1127
1446
  "shortageHoursBeforeHoliday": {
1128
1447
  "type": "integer",
1129
- "format": "int32"
1448
+ "description": "Сокращение часов перед праздником",
1449
+ "format": "int32",
1450
+ "example": 1
1130
1451
  },
1131
1452
  "model": {
1132
1453
  "$ref": "#/components/schemas/SchedulePersistDto"
1133
1454
  }
1134
1455
  },
1135
- "additionalProperties": false
1456
+ "additionalProperties": false,
1457
+ "description": "Период действия правила графика"
1136
1458
  },
1137
1459
  "ScheduleUpdateDto": {
1138
1460
  "type": "object",
1139
1461
  "properties": {
1140
1462
  "from": {
1141
1463
  "type": "string",
1142
- "format": "date-time"
1464
+ "description": "Дата начала периода",
1465
+ "format": "date-time",
1466
+ "example": "2024-01-01T00:00:00Z"
1143
1467
  },
1144
1468
  "till": {
1145
1469
  "type": "string",
1146
- "format": "date-time"
1470
+ "description": "Дата окончания периода",
1471
+ "format": "date-time",
1472
+ "example": "2024-12-31T23:59:59Z"
1147
1473
  },
1148
1474
  "considerPublicHolidays": {
1149
- "type": "boolean"
1475
+ "type": "boolean",
1476
+ "description": "Учитывать праздничные дни",
1477
+ "example": true
1150
1478
  },
1151
1479
  "shortageHoursBeforeHoliday": {
1152
1480
  "type": "integer",
1153
- "format": "int32"
1481
+ "description": "Сокращение часов перед праздником",
1482
+ "format": "int32",
1483
+ "example": 1
1154
1484
  },
1155
1485
  "rules": {
1156
1486
  "type": "array",
1157
1487
  "items": {
1158
1488
  "$ref": "#/components/schemas/ScheduleDtoRule"
1159
1489
  },
1490
+ "description": "Правила расписания",
1160
1491
  "nullable": true
1161
1492
  },
1162
1493
  "overridings": {
@@ -1164,23 +1495,69 @@
1164
1495
  "items": {
1165
1496
  "$ref": "#/components/schemas/ScheduleDto"
1166
1497
  },
1498
+ "description": "Переопределения расписания",
1167
1499
  "nullable": true
1168
1500
  },
1169
1501
  "name": {
1170
1502
  "type": "string",
1171
- "nullable": true
1503
+ "description": "Название",
1504
+ "nullable": true,
1505
+ "example": "Стандартный график"
1172
1506
  },
1173
1507
  "description": {
1174
1508
  "type": "string",
1175
- "nullable": true
1509
+ "description": "Описание",
1510
+ "nullable": true,
1511
+ "example": "График работы с 9:00 до 18:00"
1176
1512
  },
1177
1513
  "scheduleTypeID": {
1178
1514
  "type": "integer",
1515
+ "description": "Тип графика",
1179
1516
  "format": "int32",
1180
- "nullable": true
1517
+ "nullable": true,
1518
+ "example": 1
1181
1519
  }
1182
1520
  },
1183
- "additionalProperties": false
1521
+ "additionalProperties": false,
1522
+ "description": "Данные для обновления графика рабочего времени"
1523
+ },
1524
+ "WorkScheduleDailyByDayResult": {
1525
+ "type": "object",
1526
+ "properties": {
1527
+ "date": {
1528
+ "type": "string",
1529
+ "description": "Дата",
1530
+ "format": "date-time",
1531
+ "example": "2024-06-15T00:00:00Z"
1532
+ },
1533
+ "isNightShift": {
1534
+ "type": "boolean",
1535
+ "description": "Признак ночной смены",
1536
+ "example": false
1537
+ },
1538
+ "isPublicHoliday": {
1539
+ "type": "boolean",
1540
+ "description": "Признак праздничного дня",
1541
+ "nullable": true,
1542
+ "example": false
1543
+ },
1544
+ "timeFrom": {
1545
+ "type": "string",
1546
+ "description": "Начало работы",
1547
+ "format": "date-time",
1548
+ "nullable": true,
1549
+ "example": "2024-06-15T09:00:00Z"
1550
+ },
1551
+ "timeTill": {
1552
+ "type": "string",
1553
+ "description": "Окончание работы",
1554
+ "format": "date-time",
1555
+ "nullable": true,
1556
+ "example": "2024-06-15T18:00:00Z"
1557
+ }
1558
+ },
1559
+ "additionalProperties": false,
1560
+ "description": "Запись графика по суткам"
1184
1561
  },
1185
1562
  "WorkScheduleDailyItemResult": {
1186
1563
  "type": "object",
@@ -1188,33 +1565,39 @@
1188
1565
  "scheduleRuleID": {
1189
1566
  "type": "integer",
1190
1567
  "description": "Идентификатор правила графика рабочего времени",
1191
- "format": "int32"
1568
+ "format": "int32",
1569
+ "example": 10
1192
1570
  },
1193
1571
  "timeFrom": {
1194
1572
  "type": "string",
1195
1573
  "description": "Начало работы",
1196
1574
  "format": "date-time",
1197
- "nullable": true
1575
+ "nullable": true,
1576
+ "example": "2024-06-15T09:00:00Z"
1198
1577
  },
1199
1578
  "timeTill": {
1200
1579
  "type": "string",
1201
1580
  "description": "Окончание работы",
1202
1581
  "format": "date-time",
1203
- "nullable": true
1582
+ "nullable": true,
1583
+ "example": "2024-06-15T18:00:00Z"
1204
1584
  },
1205
1585
  "isPublicHoliday": {
1206
1586
  "type": "boolean",
1207
1587
  "description": "Признак праздничного дня",
1208
- "nullable": true
1588
+ "nullable": true,
1589
+ "example": false
1209
1590
  },
1210
1591
  "isNightShift": {
1211
1592
  "type": "boolean",
1212
- "description": "Признак ночной смены"
1593
+ "description": "Признак ночной смены",
1594
+ "example": false
1213
1595
  },
1214
1596
  "dateWork": {
1215
1597
  "type": "string",
1216
1598
  "description": "Дата работы",
1217
- "format": "date-time"
1599
+ "format": "date-time",
1600
+ "example": "2024-06-15T00:00:00Z"
1218
1601
  }
1219
1602
  },
1220
1603
  "additionalProperties": false,
@@ -1225,7 +1608,7 @@
1225
1608
  "tags": [
1226
1609
  {
1227
1610
  "name": "ScheduleRules",
1228
- "description": "Контроллер управления грфиками рабочего времени"
1611
+ "description": "Контроллер управления графиками рабочего времени"
1229
1612
  },
1230
1613
  {
1231
1614
  "name": "WorkSchedules",
@@ -1233,7 +1616,7 @@
1233
1616
  },
1234
1617
  {
1235
1618
  "name": "ScheduleRules",
1236
- "description": "Контроллер управления грфиками рабочего времени"
1619
+ "description": "Контроллер управления графиками рабочего времени"
1237
1620
  },
1238
1621
  {
1239
1622
  "name": "WorkSchedules",