@hed-hog/operations 0.0.332 → 0.0.338

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 (109) hide show
  1. package/dist/controllers/operations-collaborators.controller.d.ts +0 -54
  2. package/dist/controllers/operations-collaborators.controller.d.ts.map +1 -1
  3. package/dist/controllers/operations-collaborators.controller.js +0 -100
  4. package/dist/controllers/operations-collaborators.controller.js.map +1 -1
  5. package/dist/controllers/operations-contracts.controller.d.ts +12 -12
  6. package/dist/operations.service.d.ts +0 -76
  7. package/dist/operations.service.d.ts.map +1 -1
  8. package/dist/operations.service.js +7 -230
  9. package/dist/operations.service.js.map +1 -1
  10. package/dist/operations.service.spec.js +6 -0
  11. package/dist/operations.service.spec.js.map +1 -1
  12. package/hedhog/data/menu.yaml +8 -27
  13. package/hedhog/data/route.yaml +0 -72
  14. package/hedhog/frontend/app/_components/collaborator-details-screen.tsx.ejs +476 -0
  15. package/hedhog/frontend/app/_components/collaborator-form-screen.tsx.ejs +3 -39
  16. package/hedhog/frontend/app/_components/collaborator-select-with-create.tsx.ejs +261 -0
  17. package/hedhog/frontend/app/_components/collaborator-tasks-tab.tsx.ejs +358 -358
  18. package/hedhog/frontend/app/_components/collaborator-timesheets-tab.tsx.ejs +6 -6
  19. package/hedhog/frontend/app/_components/contract-content-editor.tsx.ejs +258 -0
  20. package/hedhog/frontend/app/_components/my-project-summary-screen.tsx.ejs +5 -4
  21. package/hedhog/frontend/app/_components/person-select-with-create.tsx.ejs +1 -0
  22. package/hedhog/frontend/app/_components/project-assignments-tab.tsx.ejs +10 -218
  23. package/hedhog/frontend/app/_components/project-cost-report-screen.tsx.ejs +23 -23
  24. package/hedhog/frontend/app/_components/project-details-screen.tsx.ejs +24 -708
  25. package/hedhog/frontend/app/_components/project-form-screen.tsx.ejs +38 -158
  26. package/hedhog/frontend/app/_components/task-detail-sheet.tsx.ejs +1 -5
  27. package/hedhog/frontend/app/_components/task-form-sheet.tsx.ejs +629 -629
  28. package/hedhog/frontend/app/_lib/api.ts.ejs +0 -151
  29. package/hedhog/frontend/app/_lib/types.ts.ejs +0 -1
  30. package/hedhog/frontend/app/_lib/utils/task-ui.ts.ejs +0 -18
  31. package/hedhog/frontend/app/my-projects/page.tsx.ejs +2 -16
  32. package/hedhog/frontend/app/my-tasks/page.tsx.ejs +86 -24
  33. package/hedhog/frontend/app/projects/page.tsx.ejs +6 -42
  34. package/hedhog/frontend/messages/en.json +2 -96
  35. package/hedhog/frontend/messages/operations/operations/en.json +2100 -0
  36. package/hedhog/frontend/messages/operations/operations/pt.json +2111 -0
  37. package/hedhog/frontend/messages/pt.json +2 -96
  38. package/hedhog/frontend/widgets/capacity-distribution.tsx.ejs +16 -16
  39. package/hedhog/frontend/widgets/effort-by-project.tsx.ejs +16 -16
  40. package/hedhog/frontend/widgets/headcount-by-area.tsx.ejs +16 -16
  41. package/hedhog/frontend/widgets/index.ts.ejs +25 -25
  42. package/hedhog/frontend/widgets/managed-projects-status.tsx.ejs +16 -16
  43. package/hedhog/frontend/widgets/my-hours-period-kpi.tsx.ejs +16 -16
  44. package/hedhog/frontend/widgets/my-open-requests-kpi.tsx.ejs +16 -16
  45. package/hedhog/frontend/widgets/my-pending-requests-list.tsx.ejs +16 -16
  46. package/hedhog/frontend/widgets/my-project-allocations-kpi.tsx.ejs +16 -16
  47. package/hedhog/frontend/widgets/my-quick-actions.tsx.ejs +16 -16
  48. package/hedhog/frontend/widgets/my-relevant-deadlines.tsx.ejs +16 -16
  49. package/hedhog/frontend/widgets/my-timesheet-status-kpi.tsx.ejs +16 -16
  50. package/hedhog/frontend/widgets/my-weekly-journey.tsx.ejs +16 -16
  51. package/hedhog/frontend/widgets/portfolio-costs-kpi.tsx.ejs +16 -16
  52. package/hedhog/frontend/widgets/portfolio-effort-kpi.tsx.ejs +16 -16
  53. package/hedhog/frontend/widgets/portfolio-projects-kpi.tsx.ejs +16 -16
  54. package/hedhog/frontend/widgets/portfolio-risk-kpi.tsx.ejs +16 -16
  55. package/hedhog/frontend/widgets/project-status-overview.tsx.ejs +16 -16
  56. package/hedhog/frontend/widgets/shared-operations-widget.tsx.ejs +169 -169
  57. package/hedhog/frontend/widgets/strategic-deadlines.tsx.ejs +16 -16
  58. package/hedhog/frontend/widgets/team-approval-queue.tsx.ejs +16 -16
  59. package/hedhog/frontend/widgets/team-capacity-kpi.tsx.ejs +16 -16
  60. package/hedhog/frontend/widgets/team-headcount-kpi.tsx.ejs +16 -16
  61. package/hedhog/frontend/widgets/team-hours-kpi.tsx.ejs +16 -16
  62. package/hedhog/frontend/widgets/team-pending-approvals-kpi.tsx.ejs +16 -16
  63. package/hedhog/frontend/widgets/team-utilization-overview.tsx.ejs +16 -16
  64. package/hedhog/frontend/widgets/team-workload-alerts.tsx.ejs +16 -16
  65. package/hedhog/table/operations_collaborator.yaml +8 -8
  66. package/hedhog/table/operations_task.yaml +76 -76
  67. package/hedhog/table/operations_task_activity.yaml +51 -51
  68. package/package.json +6 -6
  69. package/src/controllers/operations-collaborators.controller.ts +8 -117
  70. package/src/controllers/operations-tasks.controller.ts +156 -156
  71. package/src/dashboard/widgets/MyQuickActions.tsx +22 -22
  72. package/src/dto/create-collaborator.dto.ts +4 -4
  73. package/src/operations.service.spec.ts +1006 -988
  74. package/src/operations.service.ts +7 -323
  75. package/dist/dto/create-collaborator-invoice.dto.d.ts +0 -11
  76. package/dist/dto/create-collaborator-invoice.dto.d.ts.map +0 -1
  77. package/dist/dto/create-collaborator-invoice.dto.js +0 -55
  78. package/dist/dto/create-collaborator-invoice.dto.js.map +0 -1
  79. package/dist/dto/create-collaborator-payment.dto.d.ts +0 -10
  80. package/dist/dto/create-collaborator-payment.dto.d.ts.map +0 -1
  81. package/dist/dto/create-collaborator-payment.dto.js +0 -50
  82. package/dist/dto/create-collaborator-payment.dto.js.map +0 -1
  83. package/dist/dto/list-collaborator-invoice.dto.d.ts +0 -4
  84. package/dist/dto/list-collaborator-invoice.dto.d.ts.map +0 -1
  85. package/dist/dto/list-collaborator-invoice.dto.js +0 -8
  86. package/dist/dto/list-collaborator-invoice.dto.js.map +0 -1
  87. package/dist/dto/list-collaborator-payment.dto.d.ts +0 -4
  88. package/dist/dto/list-collaborator-payment.dto.d.ts.map +0 -1
  89. package/dist/dto/list-collaborator-payment.dto.js +0 -8
  90. package/dist/dto/list-collaborator-payment.dto.js.map +0 -1
  91. package/dist/dto/update-collaborator-invoice.dto.d.ts +0 -6
  92. package/dist/dto/update-collaborator-invoice.dto.d.ts.map +0 -1
  93. package/dist/dto/update-collaborator-invoice.dto.js +0 -9
  94. package/dist/dto/update-collaborator-invoice.dto.js.map +0 -1
  95. package/dist/dto/update-collaborator-payment.dto.d.ts +0 -6
  96. package/dist/dto/update-collaborator-payment.dto.d.ts.map +0 -1
  97. package/dist/dto/update-collaborator-payment.dto.js +0 -9
  98. package/dist/dto/update-collaborator-payment.dto.js.map +0 -1
  99. package/hedhog/frontend/app/_components/collaborator-invoices-tab.tsx.ejs +0 -443
  100. package/hedhog/frontend/app/_components/collaborator-payment-history-tab.tsx.ejs +0 -429
  101. package/hedhog/frontend/app/tasks-gantt/page.tsx.ejs +0 -953
  102. package/hedhog/table/operations_collaborator_invoice.yaml +0 -35
  103. package/hedhog/table/operations_collaborator_payment.yaml +0 -32
  104. package/src/dto/create-collaborator-invoice.dto.ts +0 -39
  105. package/src/dto/create-collaborator-payment.dto.ts +0 -35
  106. package/src/dto/list-collaborator-invoice.dto.ts +0 -3
  107. package/src/dto/list-collaborator-payment.dto.ts +0 -3
  108. package/src/dto/update-collaborator-invoice.dto.ts +0 -6
  109. package/src/dto/update-collaborator-payment.dto.ts +0 -6
@@ -1,17 +1,17 @@
1
- 'use client';
2
-
3
- import SharedOperationsWidget from './operations.shared-operations-widget';
4
-
5
- interface WidgetLayoutLike {
6
- name?: string;
7
- slug?: string;
8
- }
9
-
10
- interface OperationsWidgetProps {
11
- widget?: WidgetLayoutLike;
12
- onRemove?: () => void;
13
- }
14
-
15
- export default function OperationsWidget(props: OperationsWidgetProps) {
16
- return <SharedOperationsWidget {...props} slug='team-pending-approvals-kpi' />;
1
+ 'use client';
2
+
3
+ import SharedOperationsWidget from './operations.shared-operations-widget';
4
+
5
+ interface WidgetLayoutLike {
6
+ name?: string;
7
+ slug?: string;
8
+ }
9
+
10
+ interface OperationsWidgetProps {
11
+ widget?: WidgetLayoutLike;
12
+ onRemove?: () => void;
13
+ }
14
+
15
+ export default function OperationsWidget(props: OperationsWidgetProps) {
16
+ return <SharedOperationsWidget {...props} slug='team-pending-approvals-kpi' />;
17
17
  }
@@ -1,17 +1,17 @@
1
- 'use client';
2
-
3
- import SharedOperationsWidget from './operations.shared-operations-widget';
4
-
5
- interface WidgetLayoutLike {
6
- name?: string;
7
- slug?: string;
8
- }
9
-
10
- interface OperationsWidgetProps {
11
- widget?: WidgetLayoutLike;
12
- onRemove?: () => void;
13
- }
14
-
15
- export default function OperationsWidget(props: OperationsWidgetProps) {
16
- return <SharedOperationsWidget {...props} slug='team-utilization-overview' />;
1
+ 'use client';
2
+
3
+ import SharedOperationsWidget from './operations.shared-operations-widget';
4
+
5
+ interface WidgetLayoutLike {
6
+ name?: string;
7
+ slug?: string;
8
+ }
9
+
10
+ interface OperationsWidgetProps {
11
+ widget?: WidgetLayoutLike;
12
+ onRemove?: () => void;
13
+ }
14
+
15
+ export default function OperationsWidget(props: OperationsWidgetProps) {
16
+ return <SharedOperationsWidget {...props} slug='team-utilization-overview' />;
17
17
  }
@@ -1,17 +1,17 @@
1
- 'use client';
2
-
3
- import SharedOperationsWidget from './operations.shared-operations-widget';
4
-
5
- interface WidgetLayoutLike {
6
- name?: string;
7
- slug?: string;
8
- }
9
-
10
- interface OperationsWidgetProps {
11
- widget?: WidgetLayoutLike;
12
- onRemove?: () => void;
13
- }
14
-
15
- export default function OperationsWidget(props: OperationsWidgetProps) {
16
- return <SharedOperationsWidget {...props} slug='team-workload-alerts' />;
1
+ 'use client';
2
+
3
+ import SharedOperationsWidget from './operations.shared-operations-widget';
4
+
5
+ interface WidgetLayoutLike {
6
+ name?: string;
7
+ slug?: string;
8
+ }
9
+
10
+ interface OperationsWidgetProps {
11
+ widget?: WidgetLayoutLike;
12
+ onRemove?: () => void;
13
+ }
14
+
15
+ export default function OperationsWidget(props: OperationsWidgetProps) {
16
+ return <SharedOperationsWidget {...props} slug='team-workload-alerts' />;
17
17
  }
@@ -1,8 +1,8 @@
1
- columns:
2
- - type: pk
3
- - name: person_id
4
- type: fk
5
- isNullable: true
1
+ columns:
2
+ - type: pk
3
+ - name: person_id
4
+ type: fk
5
+ isNullable: true
6
6
  references:
7
7
  table: person
8
8
  column: id
@@ -83,9 +83,9 @@ columns:
83
83
  - type: created_at
84
84
  - type: updated_at
85
85
 
86
- indices:
87
- - columns: [person_id]
88
- isUnique: true
86
+ indices:
87
+ - columns: [person_id]
88
+ isUnique: true
89
89
  - columns: [code]
90
90
  isUnique: true
91
91
  - columns: [collaborator_type_id]
@@ -1,76 +1,76 @@
1
- columns:
2
- - type: pk
3
- - name: project_id
4
- type: fk
5
- isNullable: true
6
- references:
7
- table: operations_project
8
- column: id
9
- onDelete: CASCADE
10
- onUpdate: CASCADE
11
- - name: project_assignment_id
12
- type: fk
13
- isNullable: true
14
- references:
15
- table: operations_project_assignment
16
- column: id
17
- onDelete: SET NULL
18
- onUpdate: CASCADE
19
- - name: assignee_collaborator_id
20
- type: fk
21
- isNullable: true
22
- references:
23
- table: operations_collaborator
24
- column: id
25
- onDelete: SET NULL
26
- onUpdate: CASCADE
27
- - name: name
28
- type: varchar
29
- length: 180
30
- - name: description
31
- type: text
32
- isNullable: true
33
- - name: priority
34
- type: enum
35
- values: [low, medium, high]
36
- default: medium
37
- - name: status
38
- type: enum
39
- values: [todo, doing, review, done]
40
- default: todo
41
- - name: due_date
42
- type: date
43
- isNullable: true
44
- - name: estimate_hours
45
- type: decimal
46
- precision: 6
47
- scale: 2
48
- isNullable: true
49
- - name: position
50
- type: int
51
- default: 0
52
- - name: tags
53
- type: text
54
- isNullable: true
55
- - name: doing_started_at
56
- type: datetime
57
- isNullable: true
58
- - name: total_doing_minutes
59
- type: int
60
- default: 0
61
- - name: deleted_at
62
- type: datetime
63
- isNullable: true
64
- - type: created_at
65
- - type: updated_at
66
-
67
- indices:
68
- - columns: [project_id]
69
- - columns: [project_assignment_id]
70
- - columns: [assignee_collaborator_id]
71
- - columns: [status]
72
- - columns: [priority]
73
- - columns: [due_date]
74
- - columns: [project_id, status]
75
- - columns: [doing_started_at]
76
- - columns: [deleted_at]
1
+ columns:
2
+ - type: pk
3
+ - name: project_id
4
+ type: fk
5
+ isNullable: true
6
+ references:
7
+ table: operations_project
8
+ column: id
9
+ onDelete: CASCADE
10
+ onUpdate: CASCADE
11
+ - name: project_assignment_id
12
+ type: fk
13
+ isNullable: true
14
+ references:
15
+ table: operations_project_assignment
16
+ column: id
17
+ onDelete: SET NULL
18
+ onUpdate: CASCADE
19
+ - name: assignee_collaborator_id
20
+ type: fk
21
+ isNullable: true
22
+ references:
23
+ table: operations_collaborator
24
+ column: id
25
+ onDelete: SET NULL
26
+ onUpdate: CASCADE
27
+ - name: name
28
+ type: varchar
29
+ length: 180
30
+ - name: description
31
+ type: text
32
+ isNullable: true
33
+ - name: priority
34
+ type: enum
35
+ values: [low, medium, high]
36
+ default: medium
37
+ - name: status
38
+ type: enum
39
+ values: [todo, doing, review, done]
40
+ default: todo
41
+ - name: due_date
42
+ type: date
43
+ isNullable: true
44
+ - name: estimate_hours
45
+ type: decimal
46
+ precision: 6
47
+ scale: 2
48
+ isNullable: true
49
+ - name: position
50
+ type: int
51
+ default: 0
52
+ - name: tags
53
+ type: text
54
+ isNullable: true
55
+ - name: doing_started_at
56
+ type: datetime
57
+ isNullable: true
58
+ - name: total_doing_minutes
59
+ type: int
60
+ default: 0
61
+ - name: deleted_at
62
+ type: datetime
63
+ isNullable: true
64
+ - type: created_at
65
+ - type: updated_at
66
+
67
+ indices:
68
+ - columns: [project_id]
69
+ - columns: [project_assignment_id]
70
+ - columns: [assignee_collaborator_id]
71
+ - columns: [status]
72
+ - columns: [priority]
73
+ - columns: [due_date]
74
+ - columns: [project_id, status]
75
+ - columns: [doing_started_at]
76
+ - columns: [deleted_at]
@@ -1,51 +1,51 @@
1
- columns:
2
- - type: pk
3
- - name: task_id
4
- type: fk
5
- references:
6
- table: operations_task
7
- column: id
8
- onDelete: CASCADE
9
- onUpdate: CASCADE
10
- - name: actor_collaborator_id
11
- type: fk
12
- isNullable: true
13
- references:
14
- table: operations_collaborator
15
- column: id
16
- onDelete: SET NULL
17
- onUpdate: CASCADE
18
- - name: action
19
- type: enum
20
- values:
21
- [
22
- status_changed,
23
- task_created,
24
- task_deleted,
25
- task_restored,
26
- assignee_changed,
27
- priority_changed,
28
- due_date_changed,
29
- name_changed,
30
- description_changed,
31
- comment_added,
32
- comment_updated,
33
- comment_removed,
34
- file_added,
35
- file_removed,
36
- ]
37
- default: status_changed
38
- - name: from_status
39
- type: enum
40
- values: [todo, doing, review, done]
41
- isNullable: true
42
- - name: to_status
43
- type: enum
44
- values: [todo, doing, review, done]
45
- isNullable: true
46
- - type: created_at
47
-
48
- indices:
49
- - columns: [task_id]
50
- - columns: [actor_collaborator_id]
51
- - columns: [created_at]
1
+ columns:
2
+ - type: pk
3
+ - name: task_id
4
+ type: fk
5
+ references:
6
+ table: operations_task
7
+ column: id
8
+ onDelete: CASCADE
9
+ onUpdate: CASCADE
10
+ - name: actor_collaborator_id
11
+ type: fk
12
+ isNullable: true
13
+ references:
14
+ table: operations_collaborator
15
+ column: id
16
+ onDelete: SET NULL
17
+ onUpdate: CASCADE
18
+ - name: action
19
+ type: enum
20
+ values:
21
+ [
22
+ status_changed,
23
+ task_created,
24
+ task_deleted,
25
+ task_restored,
26
+ assignee_changed,
27
+ priority_changed,
28
+ due_date_changed,
29
+ name_changed,
30
+ description_changed,
31
+ comment_added,
32
+ comment_updated,
33
+ comment_removed,
34
+ file_added,
35
+ file_removed,
36
+ ]
37
+ default: status_changed
38
+ - name: from_status
39
+ type: enum
40
+ values: [todo, doing, review, done]
41
+ isNullable: true
42
+ - name: to_status
43
+ type: enum
44
+ values: [todo, doing, review, done]
45
+ isNullable: true
46
+ - type: created_at
47
+
48
+ indices:
49
+ - columns: [task_id]
50
+ - columns: [actor_collaborator_id]
51
+ - columns: [created_at]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hed-hog/operations",
3
- "version": "0.0.332",
3
+ "version": "0.0.338",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "dependencies": {
@@ -10,13 +10,13 @@
10
10
  "@nestjs/jwt": "^11",
11
11
  "@nestjs/mapped-types": "*",
12
12
  "lucide-react": "^0.562.0",
13
- "@hed-hog/api-pagination": "0.0.7",
14
- "@hed-hog/api": "0.0.8",
15
- "@hed-hog/api-prisma": "0.0.6",
16
13
  "@hed-hog/api-types": "0.0.1",
14
+ "@hed-hog/api": "0.0.8",
17
15
  "@hed-hog/api-locale": "0.0.14",
18
- "@hed-hog/core": "0.0.332",
19
- "@hed-hog/contact": "0.0.332"
16
+ "@hed-hog/core": "0.0.338",
17
+ "@hed-hog/api-pagination": "0.0.7",
18
+ "@hed-hog/api-prisma": "0.0.6",
19
+ "@hed-hog/contact": "0.0.338"
20
20
  },
21
21
  "exports": {
22
22
  ".": {
@@ -1,22 +1,17 @@
1
1
  import { Role, User } from '@hed-hog/api';
2
2
  import {
3
- Body,
4
- Controller,
5
- Delete,
6
- Get,
7
- Param,
8
- ParseIntPipe,
9
- Patch,
10
- Post,
11
- Query,
3
+ Body,
4
+ Controller,
5
+ Get,
6
+ Param,
7
+ ParseIntPipe,
8
+ Patch,
9
+ Post,
10
+ Query,
12
11
  } from '@nestjs/common';
13
- import { CreateCollaboratorInvoiceDto } from '../dto/create-collaborator-invoice.dto';
14
- import { CreateCollaboratorPaymentDto } from '../dto/create-collaborator-payment.dto';
15
12
  import { CreateCollaboratorProjectAssignmentDto } from '../dto/create-collaborator-project-assignment.dto';
16
13
  import { CreateCollaboratorDto } from '../dto/create-collaborator.dto';
17
14
  import { ListCollaboratorsDto } from '../dto/list-collaborators.dto';
18
- import { UpdateCollaboratorInvoiceDto } from '../dto/update-collaborator-invoice.dto';
19
- import { UpdateCollaboratorPaymentDto } from '../dto/update-collaborator-payment.dto';
20
15
  import { UpdateCollaboratorProjectAssignmentDto } from '../dto/update-collaborator-project-assignment.dto';
21
16
  import { UpdateCollaboratorDto } from '../dto/update-collaborator.dto';
22
17
  import { OperationsService } from '../operations.service';
@@ -63,110 +58,6 @@ export class OperationsCollaboratorsController {
63
58
  );
64
59
  }
65
60
 
66
- @Get('collaborators/:id/payment-history')
67
- getCollaboratorPaymentHistory(
68
- @User() user,
69
- @Param('id', ParseIntPipe) id: number,
70
- ) {
71
- return this.operationsService.getCollaboratorPaymentHistory(
72
- Number(user?.id || 0),
73
- id,
74
- );
75
- }
76
-
77
- @Get('collaborators/:id/invoices')
78
- getCollaboratorInvoices(
79
- @User() user,
80
- @Param('id', ParseIntPipe) id: number,
81
- ) {
82
- return this.operationsService.getCollaboratorInvoices(
83
- Number(user?.id || 0),
84
- id,
85
- );
86
- }
87
-
88
- @Post('collaborators/:id/payment-history')
89
- createCollaboratorPayment(
90
- @User() user,
91
- @Param('id', ParseIntPipe) collaboratorId: number,
92
- @Body() data: CreateCollaboratorPaymentDto,
93
- ) {
94
- return this.operationsService.createCollaboratorPayment(
95
- Number(user?.id || 0),
96
- collaboratorId,
97
- data,
98
- );
99
- }
100
-
101
- @Patch('collaborators/:id/payment-history/:paymentId')
102
- updateCollaboratorPayment(
103
- @User() user,
104
- @Param('id', ParseIntPipe) collaboratorId: number,
105
- @Param('paymentId', ParseIntPipe) paymentId: number,
106
- @Body() data: UpdateCollaboratorPaymentDto,
107
- ) {
108
- return this.operationsService.updateCollaboratorPayment(
109
- Number(user?.id || 0),
110
- collaboratorId,
111
- paymentId,
112
- data,
113
- );
114
- }
115
-
116
- @Delete('collaborators/:id/payment-history/:paymentId')
117
- deleteCollaboratorPayment(
118
- @User() user,
119
- @Param('id', ParseIntPipe) collaboratorId: number,
120
- @Param('paymentId', ParseIntPipe) paymentId: number,
121
- ) {
122
- return this.operationsService.deleteCollaboratorPayment(
123
- Number(user?.id || 0),
124
- collaboratorId,
125
- paymentId,
126
- );
127
- }
128
-
129
- @Post('collaborators/:id/invoices')
130
- createCollaboratorInvoice(
131
- @User() user,
132
- @Param('id', ParseIntPipe) collaboratorId: number,
133
- @Body() data: CreateCollaboratorInvoiceDto,
134
- ) {
135
- return this.operationsService.createCollaboratorInvoice(
136
- Number(user?.id || 0),
137
- collaboratorId,
138
- data,
139
- );
140
- }
141
-
142
- @Patch('collaborators/:id/invoices/:invoiceId')
143
- updateCollaboratorInvoice(
144
- @User() user,
145
- @Param('id', ParseIntPipe) collaboratorId: number,
146
- @Param('invoiceId', ParseIntPipe) invoiceId: number,
147
- @Body() data: UpdateCollaboratorInvoiceDto,
148
- ) {
149
- return this.operationsService.updateCollaboratorInvoice(
150
- Number(user?.id || 0),
151
- collaboratorId,
152
- invoiceId,
153
- data,
154
- );
155
- }
156
-
157
- @Delete('collaborators/:id/invoices/:invoiceId')
158
- deleteCollaboratorInvoice(
159
- @User() user,
160
- @Param('id', ParseIntPipe) collaboratorId: number,
161
- @Param('invoiceId', ParseIntPipe) invoiceId: number,
162
- ) {
163
- return this.operationsService.deleteCollaboratorInvoice(
164
- Number(user?.id || 0),
165
- collaboratorId,
166
- invoiceId,
167
- );
168
- }
169
-
170
61
  @Get('collaborators/:id')
171
62
  getCollaborator(@User() user, @Param('id', ParseIntPipe) id: number) {
172
63
  return this.operationsService.getCollaboratorByIdForUser(