shared-ritm 1.3.71 → 1.3.72

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.
Files changed (71) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/shared-ritm.es.js +13 -10
  3. package/dist/shared-ritm.umd.js +3 -3
  4. package/dist/types/api/services/MetricsService.d.ts +2 -1
  5. package/dist/types/api/services/PhotoService.d.ts +40 -0
  6. package/dist/types/api/services/UserIssueService.d.ts +15 -0
  7. package/dist/types/api/types/Api_Metrics.d.ts +7 -0
  8. package/dist/types/api/types/Api_User_Issue.d.ts +37 -0
  9. package/dist/types/stories/Button.stories.d.ts +13 -0
  10. package/dist/types/stories/Checkbox.stories.d.ts +7 -0
  11. package/dist/types/stories/Confirm.stories.d.ts +8 -0
  12. package/dist/types/stories/DatePicker.stories.d.ts +8 -0
  13. package/dist/types/stories/Dropdown.stories.d.ts +8 -0
  14. package/dist/types/stories/File.stories.d.ts +8 -0
  15. package/dist/types/stories/Icon.stories.d.ts +7 -0
  16. package/dist/types/stories/Input.stories.d.ts +11 -0
  17. package/dist/types/stories/InputNew.stories.d.ts +12 -0
  18. package/dist/types/stories/InputSearch.stories.d.ts +10 -0
  19. package/dist/types/stories/Loader.stories.d.ts +8 -0
  20. package/dist/types/stories/Select.stories.d.ts +7 -0
  21. package/dist/types/stories/Toggle.stories.d.ts +8 -0
  22. package/package.json +70 -70
  23. package/src/App.vue +2461 -2461
  24. package/src/api/services/AuthService.ts +67 -67
  25. package/src/api/services/ControlsService.ts +96 -96
  26. package/src/api/services/EquipmentService.ts +29 -29
  27. package/src/api/services/GanttService.ts +23 -23
  28. package/src/api/services/MetricsService.ts +138 -127
  29. package/src/api/services/RepairsService.ts +111 -111
  30. package/src/api/services/UserService.ts +129 -129
  31. package/src/api/services/VideoService.ts +118 -118
  32. package/src/api/settings/ApiService.ts +184 -184
  33. package/src/api/types/Api_Auth.ts +121 -121
  34. package/src/api/types/Api_Metrics.ts +35 -26
  35. package/src/api/types/Api_Repairs.ts +186 -186
  36. package/src/api/types/Api_Tasks.ts +376 -376
  37. package/src/api/types/Api_User.ts +156 -156
  38. package/src/api/types/Api_Video.ts +244 -244
  39. package/src/common/app-button/Button.stories.ts +369 -369
  40. package/src/common/app-checkbox/AppCheckbox.vue +31 -31
  41. package/src/common/app-checkbox/Checkbox.stories.ts +252 -252
  42. package/src/common/app-date-picker/DatePicker.stories.ts +66 -66
  43. package/src/common/app-datepicker/Datepicker.stories.ts +145 -145
  44. package/src/common/app-dialogs/AppConfirmDialog.vue +109 -109
  45. package/src/common/app-dialogs/Confirm.stories.ts +93 -93
  46. package/src/common/app-dropdown/Dropdown.stories.ts +94 -94
  47. package/src/common/app-file/File.stories.ts +104 -104
  48. package/src/common/app-icon/AppIcon.vue +108 -108
  49. package/src/common/app-icon/Icon.stories.ts +91 -91
  50. package/src/common/app-input/Input.stories.ts +160 -160
  51. package/src/common/app-input-new/InputNew.stories.ts +240 -240
  52. package/src/common/app-input-search/InputSearch.stories.ts +149 -149
  53. package/src/common/app-layout/components/AppLayoutHeader.vue +289 -289
  54. package/src/common/app-loader/Loader.stories.ts +114 -114
  55. package/src/common/app-select/AppSelect.vue +159 -159
  56. package/src/common/app-select/Select.stories.ts +155 -155
  57. package/src/common/app-sidebar/AppSidebar.vue +174 -174
  58. package/src/common/app-table/AppTable.vue +313 -313
  59. package/src/common/app-table/components/ModalSelect.stories.ts +323 -323
  60. package/src/common/app-table/components/ModalSelect.vue +302 -302
  61. package/src/common/app-table/components/TableModal.vue +367 -367
  62. package/src/common/app-table/controllers/useColumnSelector.ts +45 -45
  63. package/src/common/app-table/controllers/useTableModel.ts +97 -97
  64. package/src/common/app-toggle/AppToggle.vue +12 -12
  65. package/src/common/app-toggle/Toggle.stories.ts +245 -245
  66. package/src/common/app-wrapper/AppWrapper.vue +31 -31
  67. package/src/configs/storybook.ts +14 -14
  68. package/src/index.ts +131 -131
  69. package/src/shared/styles/general.css +140 -140
  70. package/src/styles/variables.sass +12 -12
  71. package/src/utils/helpers.ts +59 -59
@@ -1,127 +1,138 @@
1
- import ApiService from '../settings/ApiService'
2
- import { ResponseApi } from '../types/Api_Service'
3
- import { Api_Metrics_Personnel_Plan, Api_Metrics_Unused_Personnel } from '@/api/types/Api_Metrics'
4
-
5
- class MetricsService extends ApiService {
6
- public async fetchPieProjects(queryString: string): Promise<ResponseApi<any>> {
7
- return await this.get('repairs/pie/projects' + '?' + queryString)
8
- }
9
-
10
- public async fetchPieTasks(queryString: string): Promise<ResponseApi<any>> {
11
- return await this.get('repairs/pie/tasks' + '?' + queryString)
12
- }
13
-
14
- public async fetchPiePersonnel(queryString: string): Promise<ResponseApi<any>> {
15
- return await this.get('repairs/metrics/get_list_position' + '?' + queryString)
16
- }
17
-
18
- public async fetchPersonnelData(queryString: string): Promise<ResponseApi<any>> {
19
- return await this.get('repairs/metrics/list_position_intersection_group_by_status' + '?' + queryString)
20
- }
21
-
22
- public async fetchPersonnelInfo(params: string): Promise<any> {
23
- return await this.get(`repairs/metrics/list_position_intersection_details?${params}`)
24
- }
25
-
26
- public async fetchPersonnelDataNew(queryString: string): Promise<ResponseApi<any>> {
27
- return await this.get('repairs/metrics/v2/list_position_intersection_group_by_status' + '?' + queryString)
28
- }
29
-
30
- public async fetchPersonnelInfoNew(params: string): Promise<any> {
31
- return await this.get(`repairs/metrics/v2/list_position_intersection_details?${params}`)
32
- }
33
-
34
- public async fetchPersonnelUnused(params?: any): Promise<Api_Metrics_Unused_Personnel[]> {
35
- return await this.get('repairs/metrics/v2/unused_brigade_personnel', { params })
36
- }
37
-
38
- public async fetchPiePersonnelInfo(params: string): Promise<any> {
39
- return await this.get(`repairs/metrics/get_list_user_by_position?${params}`)
40
- }
41
-
42
- public async fetchPieCriticalPath(queryString: string): Promise<any[]> {
43
- return await this.get('repairs/metrics/get_critical_path_group_by_status' + '?' + queryString)
44
- }
45
-
46
- public async fetchPieCriticalPathInfo(params: string): Promise<any> {
47
- return await this.get(`repairs/metrics/get_list_task_critical_path_by_status?${params}`)
48
- }
49
-
50
- public async fetchPieTmc(queryString: string): Promise<ResponseApi<any>> {
51
- return await this.get('repairs/metrics/get_list_instrument_type' + '?' + queryString)
52
- }
53
-
54
- public async fetchPieTmcInfo(params: string): Promise<any> {
55
- return await this.get(`repairs/metrics/get_list_warehouse_by_instrument_type?${params}`)
56
- }
57
-
58
- public async fetchPieUntimelyClosedTask(queryString: string): Promise<any[]> {
59
- return await this.get('repairs/metrics/get_list_comment_type' + '?' + queryString)
60
- }
61
-
62
- public async fetchPieUntimelyClosedTaskInfo(params: string): Promise<any> {
63
- return await this.get(`repairs/metrics/get_list_task_by_comment_type?${params}`)
64
- }
65
-
66
- public async fetchPieAdditionalTasks(queryString: string): Promise<any[]> {
67
- return await this.get('repairs/metrics/get_list_task_after_plan_fixate_group_by_status' + '?' + queryString)
68
- }
69
-
70
- public async fetchPieAdditionalTasksInfo(params: string): Promise<any> {
71
- return await this.get(`repairs/metrics/get_list_task_after_plan_fixate_by_status?${params}`)
72
- }
73
-
74
- public async fetchPersonnel(queryString: string): Promise<any[]> {
75
- return await this.get('repairs/statistic/personnel' + '?' + queryString)
76
- }
77
-
78
- public async fetchPieExpired(queryString: string): Promise<any[]> {
79
- return await this.get('repairs/metrics/get_list_task_expired_group_by_status' + '?' + queryString)
80
- }
81
-
82
- public async fetchPieExpiredInfo(params: string): Promise<any> {
83
- return await this.get(`repairs/metrics/get_list_task_expired?${params}`)
84
- }
85
-
86
- public async fetchEconomicsPerformance(params: string): Promise<any> {
87
- return await this.get(`repairs/metrics/get_economic_performance?${params}`)
88
- }
89
-
90
- public async fetchEconomicsInfo(params: string): Promise<any> {
91
- return await this.get(`repairs/metrics/get_list_task_economic_performance?${params}`)
92
- }
93
- public async fetchQualityMetrics(params: string): Promise<any> {
94
- return await this.get(`repairs/metrics/get_quality_metrics?${params}`)
95
- }
96
-
97
- public async fetchQualityInfo(params: string): Promise<any> {
98
- return await this.get(`repairs/metrics/get_list_task_by_quality?${params}`)
99
- }
100
-
101
- public async fetchPieWorkZone(queryString: string): Promise<any> {
102
- return await this.get('repairs/metrics/get_statistics_on_controller_zones' + '?' + queryString)
103
- }
104
-
105
- public async fetchWorkZoneInfo(queryString: string): Promise<any> {
106
- return await this.get('exposed_equipment_zones/list' + '?' + queryString)
107
- }
108
-
109
- public async fetchPieAllTasks(queryString: string): Promise<any> {
110
- return await this.get('repairs/metrics/get_list_task_group_by_status' + '?' + queryString)
111
- }
112
-
113
- public async fetchPieAllTasksInfo(queryString: string): Promise<any> {
114
- return await this.get('repairs/metrics/get_list_task_by_status' + '?' + queryString)
115
- }
116
-
117
- public fetchPersonnelPlan(params: any): Promise<Api_Metrics_Personnel_Plan> {
118
- return this.get(`repairs/metrics/personnel_plan`, { params })
119
- }
120
- }
121
-
122
- let api: MetricsService
123
-
124
- export default function useMetricsService() {
125
- if (!api) api = new MetricsService()
126
- return api
127
- }
1
+ import ApiService from '../settings/ApiService'
2
+ import { ResponseApi } from '../types/Api_Service'
3
+ import {
4
+ Api_Metrics_Personnel_Plan,
5
+ Api_Metrics_Personnel_Plan_Project,
6
+ Api_Metrics_Personnel_Plan_Project_Body,
7
+ Api_Metrics_Unused_Personnel,
8
+ } from '@/api/types/Api_Metrics'
9
+
10
+ class MetricsService extends ApiService {
11
+ public async fetchPieProjects(queryString: string): Promise<ResponseApi<any>> {
12
+ return await this.get('repairs/pie/projects' + '?' + queryString)
13
+ }
14
+
15
+ public async fetchPieTasks(queryString: string): Promise<ResponseApi<any>> {
16
+ return await this.get('repairs/pie/tasks' + '?' + queryString)
17
+ }
18
+
19
+ public async fetchPiePersonnel(queryString: string): Promise<ResponseApi<any>> {
20
+ return await this.get('repairs/metrics/get_list_position' + '?' + queryString)
21
+ }
22
+
23
+ public async fetchPersonnelData(queryString: string): Promise<ResponseApi<any>> {
24
+ return await this.get('repairs/metrics/list_position_intersection_group_by_status' + '?' + queryString)
25
+ }
26
+
27
+ public async fetchPersonnelInfo(params: string): Promise<any> {
28
+ return await this.get(`repairs/metrics/list_position_intersection_details?${params}`)
29
+ }
30
+
31
+ public async fetchPersonnelDataNew(queryString: string): Promise<ResponseApi<any>> {
32
+ return await this.get('repairs/metrics/v2/list_position_intersection_group_by_status' + '?' + queryString)
33
+ }
34
+
35
+ public async fetchPersonnelInfoNew(params: string): Promise<any> {
36
+ return await this.get(`repairs/metrics/v2/list_position_intersection_details?${params}`)
37
+ }
38
+
39
+ public async fetchPersonnelUnused(params?: any): Promise<Api_Metrics_Unused_Personnel[]> {
40
+ return await this.get('repairs/metrics/v2/unused_brigade_personnel', { params })
41
+ }
42
+
43
+ public async fetchPiePersonnelInfo(params: string): Promise<any> {
44
+ return await this.get(`repairs/metrics/get_list_user_by_position?${params}`)
45
+ }
46
+
47
+ public async fetchPieCriticalPath(queryString: string): Promise<any[]> {
48
+ return await this.get('repairs/metrics/get_critical_path_group_by_status' + '?' + queryString)
49
+ }
50
+
51
+ public async fetchPieCriticalPathInfo(params: string): Promise<any> {
52
+ return await this.get(`repairs/metrics/get_list_task_critical_path_by_status?${params}`)
53
+ }
54
+
55
+ public async fetchPieTmc(queryString: string): Promise<ResponseApi<any>> {
56
+ return await this.get('repairs/metrics/get_list_instrument_type' + '?' + queryString)
57
+ }
58
+
59
+ public async fetchPieTmcInfo(params: string): Promise<any> {
60
+ return await this.get(`repairs/metrics/get_list_warehouse_by_instrument_type?${params}`)
61
+ }
62
+
63
+ public async fetchPieUntimelyClosedTask(queryString: string): Promise<any[]> {
64
+ return await this.get('repairs/metrics/get_list_comment_type' + '?' + queryString)
65
+ }
66
+
67
+ public async fetchPieUntimelyClosedTaskInfo(params: string): Promise<any> {
68
+ return await this.get(`repairs/metrics/get_list_task_by_comment_type?${params}`)
69
+ }
70
+
71
+ public async fetchPieAdditionalTasks(queryString: string): Promise<any[]> {
72
+ return await this.get('repairs/metrics/get_list_task_after_plan_fixate_group_by_status' + '?' + queryString)
73
+ }
74
+
75
+ public async fetchPieAdditionalTasksInfo(params: string): Promise<any> {
76
+ return await this.get(`repairs/metrics/get_list_task_after_plan_fixate_by_status?${params}`)
77
+ }
78
+
79
+ public async fetchPersonnel(queryString: string): Promise<any[]> {
80
+ return await this.get('repairs/statistic/personnel' + '?' + queryString)
81
+ }
82
+
83
+ public async fetchPieExpired(queryString: string): Promise<any[]> {
84
+ return await this.get('repairs/metrics/get_list_task_expired_group_by_status' + '?' + queryString)
85
+ }
86
+
87
+ public async fetchPieExpiredInfo(params: string): Promise<any> {
88
+ return await this.get(`repairs/metrics/get_list_task_expired?${params}`)
89
+ }
90
+
91
+ public async fetchEconomicsPerformance(params: string): Promise<any> {
92
+ return await this.get(`repairs/metrics/get_economic_performance?${params}`)
93
+ }
94
+
95
+ public async fetchEconomicsInfo(params: string): Promise<any> {
96
+ return await this.get(`repairs/metrics/get_list_task_economic_performance?${params}`)
97
+ }
98
+ public async fetchQualityMetrics(params: string): Promise<any> {
99
+ return await this.get(`repairs/metrics/get_quality_metrics?${params}`)
100
+ }
101
+
102
+ public async fetchQualityInfo(params: string): Promise<any> {
103
+ return await this.get(`repairs/metrics/get_list_task_by_quality?${params}`)
104
+ }
105
+
106
+ public async fetchPieWorkZone(queryString: string): Promise<any> {
107
+ return await this.get('repairs/metrics/get_statistics_on_controller_zones' + '?' + queryString)
108
+ }
109
+
110
+ public async fetchWorkZoneInfo(queryString: string): Promise<any> {
111
+ return await this.get('exposed_equipment_zones/list' + '?' + queryString)
112
+ }
113
+
114
+ public async fetchPieAllTasks(queryString: string): Promise<any> {
115
+ return await this.get('repairs/metrics/get_list_task_group_by_status' + '?' + queryString)
116
+ }
117
+
118
+ public async fetchPieAllTasksInfo(queryString: string): Promise<any> {
119
+ return await this.get('repairs/metrics/get_list_task_by_status' + '?' + queryString)
120
+ }
121
+
122
+ public fetchPersonnelPlan(params: any): Promise<Api_Metrics_Personnel_Plan> {
123
+ return this.get('repairs/metrics/personnel_plan', { params })
124
+ }
125
+
126
+ public fetchPersonnelPlanProjects(
127
+ body: Api_Metrics_Personnel_Plan_Project_Body,
128
+ ): Promise<Api_Metrics_Personnel_Plan_Project[]> {
129
+ return this.post('repairs/metrics/projects_with_personnel_plan', body)
130
+ }
131
+ }
132
+
133
+ let api: MetricsService
134
+
135
+ export default function useMetricsService() {
136
+ if (!api) api = new MetricsService()
137
+ return api
138
+ }
@@ -1,111 +1,111 @@
1
- import ApiService from '../settings/ApiService'
2
- import { ResponseApi } from '../types/Api_Service'
3
- import {
4
- Api_Create_Repair_With_Equipments,
5
- Api_Create_Repair_With_Template,
6
- Api_Repair_Dto,
7
- Api_Repair_Intersection,
8
- Api_Repair_Template,
9
- Api_Update_Repair,
10
- OptionFilters,
11
- } from '../types/Api_Repairs'
12
-
13
- class RepairsService extends ApiService {
14
- public fetchFilters(fullParams: string): Promise<OptionFilters> {
15
- return this.get(`get_list_repair?smart=1&${fullParams}`)
16
- }
17
-
18
- public fetchRepairs(
19
- isQuery: boolean,
20
- queries?: string,
21
- hasTeams?: boolean | string,
22
- teamsFilter?: string,
23
- typeFilter?: string,
24
- ): Promise<ResponseApi<Api_Repair_Dto[]>> {
25
- return this.get(
26
- 'get_list_repair' +
27
- (isQuery
28
- ? `${queries}&per_page=100000${typeFilter ? '&' + typeFilter : ''}&${!hasTeams ? teamsFilter : ''}`
29
- : `?per_page=100000${typeFilter ? '&' + typeFilter : ''}&${teamsFilter}`),
30
- )
31
- }
32
-
33
- public fetchRepairTemplates(params?: any): Promise<ResponseApi<Api_Repair_Template[]>> {
34
- return this.get('repairs/get_repair_template_list', { params })
35
- }
36
-
37
- public createRepair(payload: Api_Create_Repair_With_Equipments) {
38
- return this.post<Api_Create_Repair_With_Equipments, any>('/repairs/equipments', payload)
39
- }
40
-
41
- public createRepairFromTemplate(payload: Api_Create_Repair_With_Template) {
42
- return this.post<Api_Create_Repair_With_Template, any>('/repairs/create_repair_from_repair_template', payload)
43
- }
44
-
45
- public startRepair(id: string): Promise<void> {
46
- return this.post<null, void>(`/repairs/${id}/start`, null)
47
- }
48
-
49
- public finishRepair(id: string) {
50
- return this.post<any, void>(`/repairs/complete_repair_list`, {
51
- repairIdList: [id],
52
- })
53
- }
54
-
55
- public finishPreparationProject(id: string) {
56
- return this.post<null, void>(`/repairs/${id}/finish_preparation`, null)
57
- }
58
-
59
- public moveRepairToCurrent(id: string) {
60
- return this.post<any, void>(`/repairs/transfer_repair_plan_to_current`, {
61
- repairs: [id],
62
- })
63
- }
64
-
65
- public moveArchiveToCurrent(id: string) {
66
- return this.post<any, void>(`/repairs/transfer_repair_archive_to_current`, {
67
- repairs_ids: [id],
68
- })
69
- }
70
-
71
- public moveRepairToApr(id: string) {
72
- return this.post<any, void>(`/repairs/transfer_repair_current_to_plan`, {
73
- repairs: [id],
74
- })
75
- }
76
-
77
- public moveRepairToArchive(id: string) {
78
- return this.post<any, void>(`/repairs/transfer_repair_current_to_archive`, {
79
- repairs_ids: [id],
80
- })
81
- }
82
-
83
- public restoreRepair(id: string) {
84
- return this.post<any, void>(`/restore_repair`, {
85
- repairs_ids: [id],
86
- })
87
- }
88
-
89
- public updateRepair(payload: Api_Update_Repair, id: string) {
90
- return this.put<Api_Update_Repair, void>(`/repairs/${id}`, payload)
91
- }
92
-
93
- public copyRepair(id: string) {
94
- return this.post<null, any>(`/repairs/${id}/clone`, null)
95
- }
96
-
97
- public deleteRepair(id: string) {
98
- return this.delete<any>(`/repairs/${id}`)
99
- }
100
-
101
- public fetchIntersection(id: string): Promise<Api_Repair_Intersection[]> {
102
- return this.get(`v3/repairs/${id}/personnel/intersection`)
103
- }
104
- }
105
-
106
- let api: RepairsService
107
-
108
- export default function useRepairsService() {
109
- if (!api) api = new RepairsService()
110
- return api
111
- }
1
+ import ApiService from '../settings/ApiService'
2
+ import { ResponseApi } from '../types/Api_Service'
3
+ import {
4
+ Api_Create_Repair_With_Equipments,
5
+ Api_Create_Repair_With_Template,
6
+ Api_Repair_Dto,
7
+ Api_Repair_Intersection,
8
+ Api_Repair_Template,
9
+ Api_Update_Repair,
10
+ OptionFilters,
11
+ } from '../types/Api_Repairs'
12
+
13
+ class RepairsService extends ApiService {
14
+ public fetchFilters(fullParams: string): Promise<OptionFilters> {
15
+ return this.get(`get_list_repair?smart=1&${fullParams}`)
16
+ }
17
+
18
+ public fetchRepairs(
19
+ isQuery: boolean,
20
+ queries?: string,
21
+ hasTeams?: boolean | string,
22
+ teamsFilter?: string,
23
+ typeFilter?: string,
24
+ ): Promise<ResponseApi<Api_Repair_Dto[]>> {
25
+ return this.get(
26
+ 'get_list_repair' +
27
+ (isQuery
28
+ ? `${queries}&per_page=100000${typeFilter ? '&' + typeFilter : ''}&${!hasTeams ? teamsFilter : ''}`
29
+ : `?per_page=100000${typeFilter ? '&' + typeFilter : ''}&${teamsFilter}`),
30
+ )
31
+ }
32
+
33
+ public fetchRepairTemplates(params?: any): Promise<ResponseApi<Api_Repair_Template[]>> {
34
+ return this.get('repairs/get_repair_template_list', { params })
35
+ }
36
+
37
+ public createRepair(payload: Api_Create_Repair_With_Equipments) {
38
+ return this.post<Api_Create_Repair_With_Equipments, any>('/repairs/equipments', payload)
39
+ }
40
+
41
+ public createRepairFromTemplate(payload: Api_Create_Repair_With_Template) {
42
+ return this.post<Api_Create_Repair_With_Template, any>('/repairs/create_repair_from_repair_template', payload)
43
+ }
44
+
45
+ public startRepair(id: string): Promise<void> {
46
+ return this.post<null, void>(`/repairs/${id}/start`, null)
47
+ }
48
+
49
+ public finishRepair(id: string) {
50
+ return this.post<any, void>(`/repairs/complete_repair_list`, {
51
+ repairIdList: [id],
52
+ })
53
+ }
54
+
55
+ public finishPreparationProject(id: string) {
56
+ return this.post<null, void>(`/repairs/${id}/finish_preparation`, null)
57
+ }
58
+
59
+ public moveRepairToCurrent(id: string) {
60
+ return this.post<any, void>(`/repairs/transfer_repair_plan_to_current`, {
61
+ repairs: [id],
62
+ })
63
+ }
64
+
65
+ public moveArchiveToCurrent(id: string) {
66
+ return this.post<any, void>(`/repairs/transfer_repair_archive_to_current`, {
67
+ repairs_ids: [id],
68
+ })
69
+ }
70
+
71
+ public moveRepairToApr(id: string) {
72
+ return this.post<any, void>(`/repairs/transfer_repair_current_to_plan`, {
73
+ repairs: [id],
74
+ })
75
+ }
76
+
77
+ public moveRepairToArchive(id: string) {
78
+ return this.post<any, void>(`/repairs/transfer_repair_current_to_archive`, {
79
+ repairs_ids: [id],
80
+ })
81
+ }
82
+
83
+ public restoreRepair(id: string) {
84
+ return this.post<any, void>(`/restore_repair`, {
85
+ repairs_ids: [id],
86
+ })
87
+ }
88
+
89
+ public updateRepair(payload: Api_Update_Repair, id: string) {
90
+ return this.put<Api_Update_Repair, void>(`/repairs/${id}`, payload)
91
+ }
92
+
93
+ public copyRepair(id: string) {
94
+ return this.post<null, any>(`/repairs/${id}/clone`, null)
95
+ }
96
+
97
+ public deleteRepair(id: string) {
98
+ return this.delete<any>(`/repairs/${id}`)
99
+ }
100
+
101
+ public fetchIntersection(id: string): Promise<Api_Repair_Intersection[]> {
102
+ return this.get(`v3/repairs/${id}/personnel/intersection`)
103
+ }
104
+ }
105
+
106
+ let api: RepairsService
107
+
108
+ export default function useRepairsService() {
109
+ if (!api) api = new RepairsService()
110
+ return api
111
+ }