@hed-hog/operations 0.0.3 → 0.0.285

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 (108) hide show
  1. package/README.md +122 -0
  2. package/dist/index.d.ts +1 -0
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +1 -0
  5. package/dist/index.js.map +1 -1
  6. package/dist/operations-data.controller.d.ts +139 -0
  7. package/dist/operations-data.controller.d.ts.map +1 -0
  8. package/dist/operations-data.controller.js +113 -0
  9. package/dist/operations-data.controller.js.map +1 -0
  10. package/dist/operations-growth.controller.d.ts +48 -0
  11. package/dist/operations-growth.controller.d.ts.map +1 -0
  12. package/dist/operations-growth.controller.js +90 -0
  13. package/dist/operations-growth.controller.js.map +1 -0
  14. package/dist/operations.module.d.ts.map +1 -1
  15. package/dist/operations.module.js +10 -4
  16. package/dist/operations.module.js.map +1 -1
  17. package/dist/operations.service.d.ts +178 -0
  18. package/dist/operations.service.d.ts.map +1 -0
  19. package/dist/operations.service.js +134 -0
  20. package/dist/operations.service.js.map +1 -0
  21. package/hedhog/data/menu.yaml +251 -132
  22. package/hedhog/data/operations_career_level.yaml +102 -0
  23. package/hedhog/data/operations_career_track.yaml +8 -0
  24. package/hedhog/data/operations_certification.yaml +38 -0
  25. package/hedhog/data/operations_evaluation_cycle.yaml +18 -0
  26. package/hedhog/data/operations_performance_criterion.yaml +48 -0
  27. package/hedhog/data/role.yaml +14 -7
  28. package/hedhog/data/route.yaml +143 -80
  29. package/hedhog/frontend/app/_components/allocation-calendar.tsx.ejs +56 -56
  30. package/hedhog/frontend/app/_components/kanban-board.tsx.ejs +83 -83
  31. package/hedhog/frontend/app/_components/operations-header.tsx.ejs +29 -29
  32. package/hedhog/frontend/app/_components/section-card.tsx.ejs +32 -32
  33. package/hedhog/frontend/app/_components/status-badge.tsx.ejs +15 -15
  34. package/hedhog/frontend/app/_components/timesheet-entry-dialog.tsx.ejs +142 -142
  35. package/hedhog/frontend/app/_lib/hooks/use-operations-data.ts.ejs +41 -41
  36. package/hedhog/frontend/app/_lib/hooks/use-operations-growth-data.ts.ejs +63 -0
  37. package/hedhog/frontend/app/_lib/mocks/allocations.mock.ts.ejs +74 -74
  38. package/hedhog/frontend/app/_lib/mocks/contracts.mock.ts.ejs +74 -74
  39. package/hedhog/frontend/app/_lib/mocks/operations-growth.mock.ts.ejs +824 -0
  40. package/hedhog/frontend/app/_lib/mocks/projects.mock.ts.ejs +60 -60
  41. package/hedhog/frontend/app/_lib/mocks/tasks.mock.ts.ejs +88 -88
  42. package/hedhog/frontend/app/_lib/mocks/timesheets.mock.ts.ejs +84 -84
  43. package/hedhog/frontend/app/_lib/mocks/users.mock.ts.ejs +67 -67
  44. package/hedhog/frontend/app/_lib/services/contracts.service.ts.ejs +10 -10
  45. package/hedhog/frontend/app/_lib/services/operations-growth.service.ts.ejs +31 -0
  46. package/hedhog/frontend/app/_lib/services/projects.service.ts.ejs +10 -10
  47. package/hedhog/frontend/app/_lib/services/tasks.service.ts.ejs +10 -10
  48. package/hedhog/frontend/app/_lib/services/timesheets.service.ts.ejs +10 -10
  49. package/hedhog/frontend/app/_lib/types/operations-growth.ts.ejs +209 -0
  50. package/hedhog/frontend/app/_lib/types/operations.ts.ejs +95 -95
  51. package/hedhog/frontend/app/_lib/utils/format.ts.ejs +25 -25
  52. package/hedhog/frontend/app/_lib/utils/growth.ts.ejs +62 -0
  53. package/hedhog/frontend/app/_lib/utils/metrics.ts.ejs +103 -103
  54. package/hedhog/frontend/app/_lib/utils/status.ts.ejs +80 -80
  55. package/hedhog/frontend/app/allocations/page.tsx.ejs +154 -99
  56. package/hedhog/frontend/app/approvals/page.tsx.ejs +147 -147
  57. package/hedhog/frontend/app/career/page.tsx.ejs +143 -0
  58. package/hedhog/frontend/app/certifications/page.tsx.ejs +201 -0
  59. package/hedhog/frontend/app/contracts/[id]/page.tsx.ejs +108 -108
  60. package/hedhog/frontend/app/contracts/page.tsx.ejs +180 -124
  61. package/hedhog/frontend/app/evaluations/page.tsx.ejs +277 -0
  62. package/hedhog/frontend/app/goals/page.tsx.ejs +170 -0
  63. package/hedhog/frontend/app/growth/page.tsx.ejs +288 -0
  64. package/hedhog/frontend/app/layout.tsx.ejs +9 -9
  65. package/hedhog/frontend/app/manager/page.tsx.ejs +175 -0
  66. package/hedhog/frontend/app/page.tsx.ejs +177 -177
  67. package/hedhog/frontend/app/projects/[id]/page.tsx.ejs +186 -186
  68. package/hedhog/frontend/app/projects/page.tsx.ejs +111 -111
  69. package/hedhog/frontend/app/rewards/page.tsx.ejs +195 -0
  70. package/hedhog/frontend/app/tasks/page.tsx.ejs +47 -47
  71. package/hedhog/frontend/app/timesheets/page.tsx.ejs +126 -126
  72. package/hedhog/frontend/messages/en.json +152 -142
  73. package/hedhog/frontend/messages/pt.json +152 -142
  74. package/hedhog/table/operations_allocation.yaml +52 -0
  75. package/hedhog/table/operations_calibration_item.yaml +61 -0
  76. package/hedhog/table/operations_calibration_session.yaml +25 -0
  77. package/hedhog/table/operations_career_level.yaml +75 -0
  78. package/hedhog/table/operations_career_track.yaml +21 -0
  79. package/hedhog/table/operations_certification.yaml +48 -0
  80. package/hedhog/table/operations_contract.yaml +57 -0
  81. package/hedhog/table/operations_employee.yaml +64 -0
  82. package/hedhog/table/operations_employee_certification.yaml +43 -0
  83. package/hedhog/table/operations_employee_connect.yaml +61 -0
  84. package/hedhog/table/operations_employee_evaluation.yaml +113 -0
  85. package/hedhog/table/operations_employee_evaluation_item.yaml +39 -0
  86. package/hedhog/table/operations_employee_profile.yaml +80 -0
  87. package/hedhog/table/operations_employee_skill_matrix.yaml +30 -0
  88. package/hedhog/table/operations_evaluation_cycle.yaml +31 -0
  89. package/hedhog/table/operations_goal.yaml +67 -0
  90. package/hedhog/table/operations_goal_progress.yaml +31 -0
  91. package/hedhog/table/operations_performance_criterion.yaml +29 -0
  92. package/hedhog/table/operations_project.yaml +66 -0
  93. package/hedhog/table/operations_promotion_readiness.yaml +49 -0
  94. package/hedhog/table/operations_promotion_recommendation.yaml +63 -0
  95. package/hedhog/table/operations_public_recognition.yaml +46 -0
  96. package/hedhog/table/operations_reward.yaml +100 -0
  97. package/hedhog/table/operations_score_event.yaml +81 -0
  98. package/hedhog/table/operations_task.yaml +60 -0
  99. package/hedhog/table/operations_timesheet.yaml +49 -0
  100. package/hedhog/table/operations_timesheet_entry.yaml +51 -0
  101. package/package.json +4 -4
  102. package/src/index.ts +2 -1
  103. package/src/language/en.json +8 -8
  104. package/src/language/pt.json +8 -8
  105. package/src/operations-data.controller.ts +54 -0
  106. package/src/operations-growth.controller.ts +44 -0
  107. package/src/operations.module.ts +21 -15
  108. package/src/operations.service.ts +137 -0
package/README.md ADDED
@@ -0,0 +1,122 @@
1
+ # @hed-hog/operations
2
+
3
+ ## 1. Visão geral do módulo
4
+
5
+ O módulo `@hed-hog/operations` é responsável por fornecer funcionalidades relacionadas à gestão operacional dentro do ecossistema HedHog. Ele integra-se com módulos de paginação, localização e acesso a banco de dados via Prisma, oferecendo endpoints para consulta de operações, contratos, projetos, alocações, tarefas, folhas de ponto e aprovações.
6
+
7
+ ## 2. Escopo e responsabilidades
8
+
9
+ - Disponibilizar endpoints para consulta de dados operacionais.
10
+ - Garantir controle de acesso baseado em papéis (roles) específicos.
11
+ - Integrar-se com módulos de configuração, paginação, localização e banco de dados.
12
+ - Suportar operações administrativas relacionadas a contratos, projetos, alocações, tarefas, timesheets e aprovações.
13
+
14
+ ## 3. Endpoints
15
+
16
+ Todos os endpoints são protegidos e requerem autenticação com papéis específicos (`admin` ou `admin-operations`).
17
+
18
+ | Método | Path | Autenticação | Descrição |
19
+ |--------|---------------------------|--------------|------------------------------------------------|
20
+ | GET | `/operations` | Sim | Retorna lista geral de operações. |
21
+ | GET | `/operations/contracts` | Sim | Retorna lista de contratos. |
22
+ | GET | `/operations/contracts/:id` | Sim | Retorna detalhes de um contrato específico. |
23
+ | GET | `/operations/projects` | Sim | Retorna lista de projetos. |
24
+ | GET | `/operations/projects/:id` | Sim | Retorna detalhes de um projeto específico. |
25
+ | GET | `/operations/allocations` | Sim | Retorna lista de alocações. |
26
+ | GET | `/operations/tasks` | Sim | Retorna lista de tarefas. |
27
+ | GET | `/operations/timesheets` | Sim | Retorna lista de folhas de ponto (timesheets). |
28
+ | GET | `/operations/approvals` | Sim | Retorna lista de aprovações. |
29
+
30
+ ### Parâmetros e Respostas
31
+
32
+ - **Parâmetros Path:** Para endpoints com `:id`, espera-se um identificador único do recurso.
33
+ - **Query Parameters:** Possível suporte a paginação e filtros via módulos integrados (não detalhado no código fornecido).
34
+ - **Body:** Não aplicável para os endpoints GET listados.
35
+ - **Resposta:** Listas ou objetos JSON representando os recursos solicitados.
36
+ - **Erros:** Autorização negada, recurso não encontrado, erros internos do servidor.
37
+
38
+ ## 4. Regras de autenticação e autorização
39
+
40
+ - Todos os endpoints são protegidos e requerem autenticação.
41
+ - O acesso é restrito a usuários com os papéis (`roles`) `admin` ou `admin-operations`.
42
+ - A verificação de papéis é feita via relações definidas no arquivo `route.yaml`.
43
+
44
+ ## 5. Estruturas de request/response
45
+
46
+ Não há definições explícitas de estruturas de request ou response no código fornecido, pois todos os endpoints são do tipo GET e não recebem corpo. Espera-se que as respostas sejam JSON contendo listas ou objetos dos recursos solicitados.
47
+
48
+ ## 6. Erros comuns
49
+
50
+ - **401 Unauthorized:** Usuário não autenticado.
51
+ - **403 Forbidden:** Usuário autenticado, mas sem os papéis necessários (`admin` ou `admin-operations`).
52
+ - **404 Not Found:** Recurso com o `id` especificado não encontrado.
53
+ - **500 Internal Server Error:** Erro inesperado no servidor.
54
+
55
+ ## 7. Banco de dados (tabelas YAML)
56
+
57
+ Não foram fornecidos arquivos YAML de tabelas específicas para o módulo `operations`. O módulo depende do `PrismaModule` para acesso ao banco de dados, mas detalhes das tabelas não estão disponíveis no código fornecido.
58
+
59
+ ## 8. Regras de negócio relevantes
60
+
61
+ - O módulo é destinado exclusivamente para uso administrativo, conforme papéis definidos.
62
+ - O papel `admin-operations` é descrito como "Administrador com acesso total à gestão de operações".
63
+ - O acesso aos dados operacionais é restrito e controlado via papéis.
64
+ - Integração com módulos de paginação e localização sugere suporte a consultas paginadas e internacionalizadas, embora não detalhado.
65
+
66
+ ## 9. Guia rápido de uso (exemplos)
67
+
68
+ ### Exemplo de requisição para listar contratos
69
+
70
+ ```http
71
+ GET /operations/contracts HTTP/1.1
72
+ Host: api.hed-hog.com
73
+ Authorization: Bearer <token_de_acesso>
74
+ Accept: application/json
75
+ ```
76
+
77
+ ### Exemplo de resposta
78
+
79
+ ```json
80
+ [
81
+ {
82
+ "id": "123",
83
+ "name": "Contrato A",
84
+ "startDate": "2023-01-01",
85
+ "endDate": "2023-12-31",
86
+ "status": "ativo"
87
+ },
88
+ {
89
+ "id": "124",
90
+ "name": "Contrato B",
91
+ "startDate": "2023-02-01",
92
+ "endDate": "2023-11-30",
93
+ "status": "ativo"
94
+ }
95
+ ]
96
+ ```
97
+
98
+ ### Exemplo de requisição para obter detalhes de um projeto
99
+
100
+ ```http
101
+ GET /operations/projects/456 HTTP/1.1
102
+ Host: api.hed-hog.com
103
+ Authorization: Bearer <token_de_acesso>
104
+ Accept: application/json
105
+ ```
106
+
107
+ ### Exemplo de resposta
108
+
109
+ ```json
110
+ {
111
+ "id": "456",
112
+ "name": "Projeto X",
113
+ "description": "Descrição detalhada do projeto X",
114
+ "startDate": "2023-03-01",
115
+ "endDate": "2023-09-30",
116
+ "status": "em andamento"
117
+ }
118
+ ```
119
+
120
+ ---
121
+
122
+ **Nota:** Para utilizar os endpoints, o token JWT deve conter os papéis `admin` ou `admin-operations` para garantir acesso autorizado.
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './operations.module';
2
+ export * from './operations.service';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./operations.module"), exports);
18
+ __exportStar(require("./operations.service"), exports);
18
19
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,uDAAqC"}
@@ -0,0 +1,139 @@
1
+ import { OperationsService } from './operations.service';
2
+ export declare class OperationsDataController {
3
+ private readonly operationsService;
4
+ constructor(operationsService: OperationsService);
5
+ getDashboard(): {
6
+ module: string;
7
+ operationalCollections: {
8
+ contracts: {
9
+ id: number;
10
+ code: string;
11
+ name: string;
12
+ status: string;
13
+ }[];
14
+ projects: {
15
+ id: number;
16
+ code: string;
17
+ name: string;
18
+ status: string;
19
+ }[];
20
+ allocations: {
21
+ id: number;
22
+ employeeId: number;
23
+ projectId: number;
24
+ weeklyHours: number;
25
+ allocationPercent: number;
26
+ }[];
27
+ tasks: {
28
+ id: number;
29
+ title: string;
30
+ status: string;
31
+ }[];
32
+ timesheets: {
33
+ id: number;
34
+ employeeId: number;
35
+ status: string;
36
+ cycleStartDate: string;
37
+ }[];
38
+ approvals: {
39
+ id: number;
40
+ employeeId: number;
41
+ status: string;
42
+ hours: number;
43
+ }[];
44
+ };
45
+ growthCollections: {
46
+ growth: {
47
+ topSignals: string[];
48
+ note: string;
49
+ };
50
+ evaluations: {
51
+ id: number;
52
+ employeeId: number;
53
+ cycle: string;
54
+ status: string;
55
+ generatedScore: number;
56
+ }[];
57
+ goals: {
58
+ id: number;
59
+ employeeId: number;
60
+ title: string;
61
+ status: string;
62
+ progressPercent: number;
63
+ }[];
64
+ certifications: {
65
+ id: number;
66
+ slug: string;
67
+ status: string;
68
+ }[];
69
+ rewards: {
70
+ id: number;
71
+ employeeId: number;
72
+ rewardType: string;
73
+ status: string;
74
+ }[];
75
+ career: {
76
+ id: number;
77
+ track: string;
78
+ currentLevel: string;
79
+ nextLevel: string;
80
+ }[];
81
+ manager: {
82
+ summary: {
83
+ promotionEligible: number;
84
+ goalsAtRisk: number;
85
+ pendingCertifications: number;
86
+ };
87
+ };
88
+ };
89
+ };
90
+ listContracts(): {
91
+ id: number;
92
+ code: string;
93
+ name: string;
94
+ status: string;
95
+ }[];
96
+ getContract(id: number): {
97
+ id: number;
98
+ code: string;
99
+ name: string;
100
+ status: string;
101
+ };
102
+ listProjects(): {
103
+ id: number;
104
+ code: string;
105
+ name: string;
106
+ status: string;
107
+ }[];
108
+ getProject(id: number): {
109
+ id: number;
110
+ code: string;
111
+ name: string;
112
+ status: string;
113
+ };
114
+ listAllocations(): {
115
+ id: number;
116
+ employeeId: number;
117
+ projectId: number;
118
+ weeklyHours: number;
119
+ allocationPercent: number;
120
+ }[];
121
+ listTasks(): {
122
+ id: number;
123
+ title: string;
124
+ status: string;
125
+ }[];
126
+ listTimesheets(): {
127
+ id: number;
128
+ employeeId: number;
129
+ status: string;
130
+ cycleStartDate: string;
131
+ }[];
132
+ listApprovals(): {
133
+ id: number;
134
+ employeeId: number;
135
+ status: string;
136
+ hours: number;
137
+ }[];
138
+ }
139
+ //# sourceMappingURL=operations-data.controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations-data.controller.d.ts","sourceRoot":"","sources":["../src/operations-data.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAEa,wBAAwB;IACvB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBAAjB,iBAAiB,EAAE,iBAAiB;IAGjE,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKZ,aAAa;;;;;;IAKb,WAAW,CAA4B,EAAE,EAAE,MAAM;;;;;;IAKjD,YAAY;;;;;;IAKZ,UAAU,CAA4B,EAAE,EAAE,MAAM;;;;;;IAKhD,eAAe;;;;;;;IAKf,SAAS;;;;;IAKT,cAAc;;;;;;IAKd,aAAa;;;;;;CAGd"}
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.OperationsDataController = void 0;
16
+ const api_1 = require("@hed-hog/api");
17
+ const common_1 = require("@nestjs/common");
18
+ const operations_service_1 = require("./operations.service");
19
+ let OperationsDataController = class OperationsDataController {
20
+ constructor(operationsService) {
21
+ this.operationsService = operationsService;
22
+ }
23
+ getDashboard() {
24
+ return this.operationsService.getDashboard();
25
+ }
26
+ listContracts() {
27
+ return this.operationsService.listContracts();
28
+ }
29
+ getContract(id) {
30
+ return this.operationsService.getContractById(id);
31
+ }
32
+ listProjects() {
33
+ return this.operationsService.listProjects();
34
+ }
35
+ getProject(id) {
36
+ return this.operationsService.getProjectById(id);
37
+ }
38
+ listAllocations() {
39
+ return this.operationsService.listAllocations();
40
+ }
41
+ listTasks() {
42
+ return this.operationsService.listTasks();
43
+ }
44
+ listTimesheets() {
45
+ return this.operationsService.listTimesheets();
46
+ }
47
+ listApprovals() {
48
+ return this.operationsService.listApprovals();
49
+ }
50
+ };
51
+ exports.OperationsDataController = OperationsDataController;
52
+ __decorate([
53
+ (0, common_1.Get)(),
54
+ __metadata("design:type", Function),
55
+ __metadata("design:paramtypes", []),
56
+ __metadata("design:returntype", void 0)
57
+ ], OperationsDataController.prototype, "getDashboard", null);
58
+ __decorate([
59
+ (0, common_1.Get)('contracts'),
60
+ __metadata("design:type", Function),
61
+ __metadata("design:paramtypes", []),
62
+ __metadata("design:returntype", void 0)
63
+ ], OperationsDataController.prototype, "listContracts", null);
64
+ __decorate([
65
+ (0, common_1.Get)('contracts/:id'),
66
+ __param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
67
+ __metadata("design:type", Function),
68
+ __metadata("design:paramtypes", [Number]),
69
+ __metadata("design:returntype", void 0)
70
+ ], OperationsDataController.prototype, "getContract", null);
71
+ __decorate([
72
+ (0, common_1.Get)('projects'),
73
+ __metadata("design:type", Function),
74
+ __metadata("design:paramtypes", []),
75
+ __metadata("design:returntype", void 0)
76
+ ], OperationsDataController.prototype, "listProjects", null);
77
+ __decorate([
78
+ (0, common_1.Get)('projects/:id'),
79
+ __param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
80
+ __metadata("design:type", Function),
81
+ __metadata("design:paramtypes", [Number]),
82
+ __metadata("design:returntype", void 0)
83
+ ], OperationsDataController.prototype, "getProject", null);
84
+ __decorate([
85
+ (0, common_1.Get)('allocations'),
86
+ __metadata("design:type", Function),
87
+ __metadata("design:paramtypes", []),
88
+ __metadata("design:returntype", void 0)
89
+ ], OperationsDataController.prototype, "listAllocations", null);
90
+ __decorate([
91
+ (0, common_1.Get)('tasks'),
92
+ __metadata("design:type", Function),
93
+ __metadata("design:paramtypes", []),
94
+ __metadata("design:returntype", void 0)
95
+ ], OperationsDataController.prototype, "listTasks", null);
96
+ __decorate([
97
+ (0, common_1.Get)('timesheets'),
98
+ __metadata("design:type", Function),
99
+ __metadata("design:paramtypes", []),
100
+ __metadata("design:returntype", void 0)
101
+ ], OperationsDataController.prototype, "listTimesheets", null);
102
+ __decorate([
103
+ (0, common_1.Get)('approvals'),
104
+ __metadata("design:type", Function),
105
+ __metadata("design:paramtypes", []),
106
+ __metadata("design:returntype", void 0)
107
+ ], OperationsDataController.prototype, "listApprovals", null);
108
+ exports.OperationsDataController = OperationsDataController = __decorate([
109
+ (0, api_1.Role)(),
110
+ (0, common_1.Controller)('operations'),
111
+ __metadata("design:paramtypes", [operations_service_1.OperationsService])
112
+ ], OperationsDataController);
113
+ //# sourceMappingURL=operations-data.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations-data.controller.js","sourceRoot":"","sources":["../src/operations-data.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sCAAoC;AACpC,2CAAsE;AACtE,6DAAyD;AAIlD,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IACnC,YAA6B,iBAAoC;QAApC,sBAAiB,GAAjB,iBAAiB,CAAmB;IAAG,CAAC;IAGrE,YAAY;QACV,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;IAC/C,CAAC;IAGD,aAAa;QACX,OAAO,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;IAChD,CAAC;IAGD,WAAW,CAA4B,EAAU;QAC/C,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;IAGD,YAAY;QACV,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;IAC/C,CAAC;IAGD,UAAU,CAA4B,EAAU;QAC9C,OAAO,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IACnD,CAAC;IAGD,eAAe;QACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC;IAClD,CAAC;IAGD,SAAS;QACP,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC;IAC5C,CAAC;IAGD,cAAc;QACZ,OAAO,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,CAAC;IACjD,CAAC;IAGD,aAAa;QACX,OAAO,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;IAChD,CAAC;CACF,CAAA;AA/CY,4DAAwB;AAInC;IADC,IAAA,YAAG,GAAE;;;;4DAGL;AAGD;IADC,IAAA,YAAG,EAAC,WAAW,CAAC;;;;6DAGhB;AAGD;IADC,IAAA,YAAG,EAAC,eAAe,CAAC;IACR,WAAA,IAAA,cAAK,EAAC,IAAI,EAAE,qBAAY,CAAC,CAAA;;;;2DAErC;AAGD;IADC,IAAA,YAAG,EAAC,UAAU,CAAC;;;;4DAGf;AAGD;IADC,IAAA,YAAG,EAAC,cAAc,CAAC;IACR,WAAA,IAAA,cAAK,EAAC,IAAI,EAAE,qBAAY,CAAC,CAAA;;;;0DAEpC;AAGD;IADC,IAAA,YAAG,EAAC,aAAa,CAAC;;;;+DAGlB;AAGD;IADC,IAAA,YAAG,EAAC,OAAO,CAAC;;;;yDAGZ;AAGD;IADC,IAAA,YAAG,EAAC,YAAY,CAAC;;;;8DAGjB;AAGD;IADC,IAAA,YAAG,EAAC,WAAW,CAAC;;;;6DAGhB;mCA9CU,wBAAwB;IAFpC,IAAA,UAAI,GAAE;IACN,IAAA,mBAAU,EAAC,YAAY,CAAC;qCAEyB,sCAAiB;GADtD,wBAAwB,CA+CpC"}
@@ -0,0 +1,48 @@
1
+ import { OperationsService } from './operations.service';
2
+ export declare class OperationsGrowthController {
3
+ private readonly operationsService;
4
+ constructor(operationsService: OperationsService);
5
+ getGrowthDashboard(): {
6
+ topSignals: string[];
7
+ note: string;
8
+ };
9
+ listEvaluations(): {
10
+ id: number;
11
+ employeeId: number;
12
+ cycle: string;
13
+ status: string;
14
+ generatedScore: number;
15
+ }[];
16
+ listGoals(): {
17
+ id: number;
18
+ employeeId: number;
19
+ title: string;
20
+ status: string;
21
+ progressPercent: number;
22
+ }[];
23
+ listCertifications(): {
24
+ id: number;
25
+ slug: string;
26
+ status: string;
27
+ }[];
28
+ listRewards(): {
29
+ id: number;
30
+ employeeId: number;
31
+ rewardType: string;
32
+ status: string;
33
+ }[];
34
+ listCareerPaths(): {
35
+ id: number;
36
+ track: string;
37
+ currentLevel: string;
38
+ nextLevel: string;
39
+ }[];
40
+ getManagerOverview(): {
41
+ summary: {
42
+ promotionEligible: number;
43
+ goalsAtRisk: number;
44
+ pendingCertifications: number;
45
+ };
46
+ };
47
+ }
48
+ //# sourceMappingURL=operations-growth.controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations-growth.controller.d.ts","sourceRoot":"","sources":["../src/operations-growth.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAEa,0BAA0B;IACzB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBAAjB,iBAAiB,EAAE,iBAAiB;IAGjE,kBAAkB;;;;IAKlB,eAAe;;;;;;;IAKf,SAAS;;;;;;;IAKT,kBAAkB;;;;;IAKlB,WAAW;;;;;;IAKX,eAAe;;;;;;IAKf,kBAAkB;;;;;;;CAGnB"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.OperationsGrowthController = void 0;
13
+ const api_1 = require("@hed-hog/api");
14
+ const common_1 = require("@nestjs/common");
15
+ const operations_service_1 = require("./operations.service");
16
+ let OperationsGrowthController = class OperationsGrowthController {
17
+ constructor(operationsService) {
18
+ this.operationsService = operationsService;
19
+ }
20
+ getGrowthDashboard() {
21
+ return this.operationsService.getGrowthDashboard();
22
+ }
23
+ listEvaluations() {
24
+ return this.operationsService.listEvaluations();
25
+ }
26
+ listGoals() {
27
+ return this.operationsService.listGoals();
28
+ }
29
+ listCertifications() {
30
+ return this.operationsService.listCertifications();
31
+ }
32
+ listRewards() {
33
+ return this.operationsService.listRewards();
34
+ }
35
+ listCareerPaths() {
36
+ return this.operationsService.listCareerPaths();
37
+ }
38
+ getManagerOverview() {
39
+ return this.operationsService.getManagerOverview();
40
+ }
41
+ };
42
+ exports.OperationsGrowthController = OperationsGrowthController;
43
+ __decorate([
44
+ (0, common_1.Get)('growth'),
45
+ __metadata("design:type", Function),
46
+ __metadata("design:paramtypes", []),
47
+ __metadata("design:returntype", void 0)
48
+ ], OperationsGrowthController.prototype, "getGrowthDashboard", null);
49
+ __decorate([
50
+ (0, common_1.Get)('evaluations'),
51
+ __metadata("design:type", Function),
52
+ __metadata("design:paramtypes", []),
53
+ __metadata("design:returntype", void 0)
54
+ ], OperationsGrowthController.prototype, "listEvaluations", null);
55
+ __decorate([
56
+ (0, common_1.Get)('goals'),
57
+ __metadata("design:type", Function),
58
+ __metadata("design:paramtypes", []),
59
+ __metadata("design:returntype", void 0)
60
+ ], OperationsGrowthController.prototype, "listGoals", null);
61
+ __decorate([
62
+ (0, common_1.Get)('certifications'),
63
+ __metadata("design:type", Function),
64
+ __metadata("design:paramtypes", []),
65
+ __metadata("design:returntype", void 0)
66
+ ], OperationsGrowthController.prototype, "listCertifications", null);
67
+ __decorate([
68
+ (0, common_1.Get)('rewards'),
69
+ __metadata("design:type", Function),
70
+ __metadata("design:paramtypes", []),
71
+ __metadata("design:returntype", void 0)
72
+ ], OperationsGrowthController.prototype, "listRewards", null);
73
+ __decorate([
74
+ (0, common_1.Get)('career'),
75
+ __metadata("design:type", Function),
76
+ __metadata("design:paramtypes", []),
77
+ __metadata("design:returntype", void 0)
78
+ ], OperationsGrowthController.prototype, "listCareerPaths", null);
79
+ __decorate([
80
+ (0, common_1.Get)('manager'),
81
+ __metadata("design:type", Function),
82
+ __metadata("design:paramtypes", []),
83
+ __metadata("design:returntype", void 0)
84
+ ], OperationsGrowthController.prototype, "getManagerOverview", null);
85
+ exports.OperationsGrowthController = OperationsGrowthController = __decorate([
86
+ (0, api_1.Role)(),
87
+ (0, common_1.Controller)('operations'),
88
+ __metadata("design:paramtypes", [operations_service_1.OperationsService])
89
+ ], OperationsGrowthController);
90
+ //# sourceMappingURL=operations-growth.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations-growth.controller.js","sourceRoot":"","sources":["../src/operations-growth.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sCAAoC;AACpC,2CAAiD;AACjD,6DAAyD;AAIlD,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IACrC,YAA6B,iBAAoC;QAApC,sBAAiB,GAAjB,iBAAiB,CAAmB;IAAG,CAAC;IAGrE,kBAAkB;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;IACrD,CAAC;IAGD,eAAe;QACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC;IAClD,CAAC;IAGD,SAAS;QACP,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC;IAC5C,CAAC;IAGD,kBAAkB;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;IACrD,CAAC;IAGD,WAAW;QACT,OAAO,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;IAC9C,CAAC;IAGD,eAAe;QACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC;IAClD,CAAC;IAGD,kBAAkB;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;IACrD,CAAC;CACF,CAAA;AArCY,gEAA0B;AAIrC;IADC,IAAA,YAAG,EAAC,QAAQ,CAAC;;;;oEAGb;AAGD;IADC,IAAA,YAAG,EAAC,aAAa,CAAC;;;;iEAGlB;AAGD;IADC,IAAA,YAAG,EAAC,OAAO,CAAC;;;;2DAGZ;AAGD;IADC,IAAA,YAAG,EAAC,gBAAgB,CAAC;;;;oEAGrB;AAGD;IADC,IAAA,YAAG,EAAC,SAAS,CAAC;;;;6DAGd;AAGD;IADC,IAAA,YAAG,EAAC,QAAQ,CAAC;;;;iEAGb;AAGD;IADC,IAAA,YAAG,EAAC,SAAS,CAAC;;;;oEAGd;qCApCU,0BAA0B;IAFtC,IAAA,UAAI,GAAE;IACN,IAAA,mBAAU,EAAC,YAAY,CAAC;qCAEyB,sCAAiB;GADtD,0BAA0B,CAqCtC"}
@@ -1 +1 @@
1
- {"version":3,"file":"operations.module.d.ts","sourceRoot":"","sources":["../src/operations.module.ts"],"names":[],"mappings":"AAMA,qBAQa,gBAAgB;CAAG"}
1
+ {"version":3,"file":"operations.module.d.ts","sourceRoot":"","sources":["../src/operations.module.ts"],"names":[],"mappings":"AASA,qBAWa,gBAAgB;CAAG"}
@@ -7,11 +7,14 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  };
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.OperationsModule = void 0;
10
- const common_1 = require("@nestjs/common");
11
- const config_1 = require("@nestjs/config");
12
10
  const api_locale_1 = require("@hed-hog/api-locale");
13
11
  const api_pagination_1 = require("@hed-hog/api-pagination");
14
12
  const api_prisma_1 = require("@hed-hog/api-prisma");
13
+ const common_1 = require("@nestjs/common");
14
+ const config_1 = require("@nestjs/config");
15
+ const operations_data_controller_1 = require("./operations-data.controller");
16
+ const operations_growth_controller_1 = require("./operations-growth.controller");
17
+ const operations_service_1 = require("./operations.service");
15
18
  let OperationsModule = class OperationsModule {
16
19
  };
17
20
  exports.OperationsModule = OperationsModule;
@@ -21,8 +24,11 @@ exports.OperationsModule = OperationsModule = __decorate([
21
24
  config_1.ConfigModule.forRoot(),
22
25
  (0, common_1.forwardRef)(() => api_pagination_1.PaginationModule),
23
26
  (0, common_1.forwardRef)(() => api_prisma_1.PrismaModule),
24
- (0, common_1.forwardRef)(() => api_locale_1.LocaleModule)
25
- ]
27
+ (0, common_1.forwardRef)(() => api_locale_1.LocaleModule),
28
+ ],
29
+ controllers: [operations_data_controller_1.OperationsDataController, operations_growth_controller_1.OperationsGrowthController],
30
+ providers: [operations_service_1.OperationsService],
31
+ exports: [operations_service_1.OperationsService],
26
32
  })
27
33
  ], OperationsModule);
28
34
  //# sourceMappingURL=operations.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operations.module.js","sourceRoot":"","sources":["../src/operations.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAoD;AACpD,2CAA8C;AAC9C,oDAAmD;AACnD,4DAA2D;AAC3D,oDAAmD;AAU5C,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAAG,CAAA;AAAnB,4CAAgB;2BAAhB,gBAAgB;IAR5B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,qBAAY,CAAC,OAAO,EAAE;YACtB,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,iCAAgB,CAAC;YAClC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,yBAAY,CAAC;YAC9B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,yBAAY,CAAC;SAC/B;KACF,CAAC;GACW,gBAAgB,CAAG"}
1
+ {"version":3,"file":"operations.module.js","sourceRoot":"","sources":["../src/operations.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,oDAAmD;AACnD,4DAA2D;AAC3D,oDAAmD;AACnD,2CAAoD;AACpD,2CAA8C;AAC9C,6EAAwE;AACxE,iFAA4E;AAC5E,6DAAyD;AAalD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAAG,CAAA;AAAnB,4CAAgB;2BAAhB,gBAAgB;IAX5B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,qBAAY,CAAC,OAAO,EAAE;YACtB,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,iCAAgB,CAAC;YAClC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,yBAAY,CAAC;YAC9B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,yBAAY,CAAC;SAC/B;QACD,WAAW,EAAE,CAAC,qDAAwB,EAAE,yDAA0B,CAAC;QACnE,SAAS,EAAE,CAAC,sCAAiB,CAAC;QAC9B,OAAO,EAAE,CAAC,sCAAiB,CAAC;KAC7B,CAAC;GACW,gBAAgB,CAAG"}