@hed-hog/operations 0.0.299 → 0.0.301
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.
- package/dist/operations.controller.d.ts +713 -31
- package/dist/operations.controller.d.ts.map +1 -1
- package/dist/operations.controller.js +157 -0
- package/dist/operations.controller.js.map +1 -1
- package/dist/operations.module.d.ts.map +1 -1
- package/dist/operations.module.js +5 -1
- package/dist/operations.module.js.map +1 -1
- package/dist/operations.proposal.subscriber.d.ts +11 -0
- package/dist/operations.proposal.subscriber.d.ts.map +1 -0
- package/dist/operations.proposal.subscriber.js +80 -0
- package/dist/operations.proposal.subscriber.js.map +1 -0
- package/dist/operations.proposal.subscriber.spec.d.ts +2 -0
- package/dist/operations.proposal.subscriber.spec.d.ts.map +1 -0
- package/dist/operations.proposal.subscriber.spec.js +88 -0
- package/dist/operations.proposal.subscriber.spec.js.map +1 -0
- package/dist/operations.service.d.ts +490 -46
- package/dist/operations.service.d.ts.map +1 -1
- package/dist/operations.service.js +3590 -1267
- package/dist/operations.service.js.map +1 -1
- package/dist/operations.service.spec.d.ts +2 -0
- package/dist/operations.service.spec.d.ts.map +1 -0
- package/dist/operations.service.spec.js +159 -0
- package/dist/operations.service.spec.js.map +1 -0
- package/hedhog/data/menu.yaml +232 -198
- package/hedhog/data/role.yaml +23 -23
- package/hedhog/data/role_route.yaml +39 -0
- package/hedhog/data/route.yaml +447 -317
- package/hedhog/frontend/app/_components/collaborator-details-screen.tsx.ejs +8 -6
- package/hedhog/frontend/app/_components/collaborator-form-screen.tsx.ejs +1163 -327
- package/hedhog/frontend/app/_components/collaborator-select-with-create.tsx.ejs +256 -0
- package/hedhog/frontend/app/_components/contract-content-editor.tsx.ejs +258 -0
- package/hedhog/frontend/app/_components/contract-creation-wizard.tsx.ejs +631 -0
- package/hedhog/frontend/app/_components/contract-details-screen.tsx.ejs +353 -27
- package/hedhog/frontend/app/_components/contract-form-screen.tsx.ejs +1926 -87
- package/hedhog/frontend/app/_components/contract-template-form-screen.tsx.ejs +526 -0
- package/hedhog/frontend/app/_components/contract-template-select-with-create.tsx.ejs +247 -0
- package/hedhog/frontend/app/_components/contract-wizard-sheet.tsx.ejs +3520 -0
- package/hedhog/frontend/app/_components/department-select-with-create.tsx.ejs +370 -0
- package/hedhog/frontend/app/_components/person-select-with-create.tsx.ejs +826 -0
- package/hedhog/frontend/app/_components/project-form-screen.tsx.ejs +1251 -364
- package/hedhog/frontend/app/_components/section-card.tsx.ejs +48 -13
- package/hedhog/frontend/app/_lib/api.ts.ejs +2 -5
- package/hedhog/frontend/app/_lib/types.ts.ejs +76 -33
- package/hedhog/frontend/app/_lib/utils/format.ts.ejs +85 -8
- package/hedhog/frontend/app/approvals/page.tsx.ejs +90 -54
- package/hedhog/frontend/app/collaborators/[id]/edit/page.tsx.ejs +2 -2
- package/hedhog/frontend/app/collaborators/[id]/page.tsx.ejs +2 -2
- package/hedhog/frontend/app/collaborators/page.tsx.ejs +597 -140
- package/hedhog/frontend/app/contracts/[id]/edit/page.tsx.ejs +2 -2
- package/hedhog/frontend/app/contracts/[id]/page.tsx.ejs +2 -2
- package/hedhog/frontend/app/contracts/page.tsx.ejs +941 -262
- package/hedhog/frontend/app/contracts/templates/page.tsx.ejs +384 -0
- package/hedhog/frontend/app/departments/page.tsx.ejs +442 -0
- package/hedhog/frontend/app/page.tsx.ejs +36 -12
- package/hedhog/frontend/app/projects/[id]/edit/page.tsx.ejs +2 -2
- package/hedhog/frontend/app/projects/new/page.tsx.ejs +2 -2
- package/hedhog/frontend/app/projects/page.tsx.ejs +264 -102
- package/hedhog/frontend/app/schedule-adjustments/page.tsx.ejs +50 -28
- package/hedhog/frontend/app/time-off/page.tsx.ejs +57 -31
- package/hedhog/frontend/app/timesheets/page.tsx.ejs +85 -42
- package/hedhog/frontend/messages/en.json +473 -12
- package/hedhog/frontend/messages/pt.json +528 -66
- package/hedhog/table/operations_approval.yaml +49 -49
- package/hedhog/table/operations_approval_history.yaml +29 -29
- package/hedhog/table/operations_collaborator.yaml +87 -67
- package/hedhog/table/operations_collaborator_schedule_day.yaml +34 -34
- package/hedhog/table/operations_contract.yaml +121 -100
- package/hedhog/table/operations_contract_document.yaml +40 -23
- package/hedhog/table/operations_contract_financial_term.yaml +40 -40
- package/hedhog/table/operations_contract_history.yaml +27 -27
- package/hedhog/table/operations_contract_party.yaml +46 -46
- package/hedhog/table/operations_contract_revision.yaml +38 -38
- package/hedhog/table/operations_contract_signature.yaml +38 -38
- package/hedhog/table/operations_contract_template.yaml +58 -0
- package/hedhog/table/operations_department.yaml +24 -0
- package/hedhog/table/operations_project.yaml +54 -54
- package/hedhog/table/operations_project_assignment.yaml +55 -55
- package/hedhog/table/operations_schedule_adjustment_day.yaml +34 -34
- package/hedhog/table/operations_schedule_adjustment_request.yaml +53 -53
- package/hedhog/table/operations_time_off_request.yaml +57 -57
- package/hedhog/table/operations_timesheet.yaml +41 -41
- package/hedhog/table/operations_timesheet_entry.yaml +40 -40
- package/package.json +5 -3
- package/src/operations.controller.ts +304 -182
- package/src/operations.module.ts +26 -22
- package/src/operations.proposal.subscriber.spec.ts +121 -0
- package/src/operations.proposal.subscriber.ts +86 -0
- package/src/operations.service.spec.ts +210 -0
- package/src/operations.service.ts +7317 -3595
- package/dist/operations-data.controller.d.ts +0 -139
- package/dist/operations-data.controller.d.ts.map +0 -1
- package/dist/operations-data.controller.js +0 -113
- package/dist/operations-data.controller.js.map +0 -1
- package/dist/operations-growth.controller.d.ts +0 -48
- package/dist/operations-growth.controller.d.ts.map +0 -1
- package/dist/operations-growth.controller.js +0 -90
- package/dist/operations-growth.controller.js.map +0 -1
|
@@ -12,23 +12,28 @@
|
|
|
12
12
|
"addLine": "Adicionar linha",
|
|
13
13
|
"approve": "Aprovar",
|
|
14
14
|
"reject": "Rejeitar",
|
|
15
|
-
"cancel": "Cancelar"
|
|
15
|
+
"cancel": "Cancelar",
|
|
16
|
+
"loadMore": "Carregar mais",
|
|
17
|
+
"clearSelection": "Limpar seleção",
|
|
18
|
+
"manageDepartments": "Gerenciar departamentos",
|
|
19
|
+
"manageTemplates": "Gerenciar templates",
|
|
20
|
+
"useTemplate": "Usar template"
|
|
16
21
|
},
|
|
17
22
|
"filters": {
|
|
18
23
|
"allStatuses": "Todos os status",
|
|
19
24
|
"allTypes": "Todos os tipos"
|
|
20
25
|
},
|
|
21
26
|
"labels": {
|
|
22
|
-
"notAvailable": "
|
|
23
|
-
"notAssigned": "
|
|
27
|
+
"notAvailable": "Não informado",
|
|
28
|
+
"notAssigned": "Não atribuído",
|
|
24
29
|
"collaborator": "Colaborador",
|
|
25
30
|
"collaboratorType": "Tipo",
|
|
26
31
|
"department": "Departamento",
|
|
27
32
|
"supervisor": "Supervisor",
|
|
28
33
|
"weeklyCapacity": "Capacidade semanal",
|
|
29
34
|
"joinedAt": "Entrada",
|
|
30
|
-
"leftAt": "
|
|
31
|
-
"actions": "
|
|
35
|
+
"leftAt": "Saída",
|
|
36
|
+
"actions": "Ações",
|
|
32
37
|
"status": "Status",
|
|
33
38
|
"project": "Projeto",
|
|
34
39
|
"contract": "Contrato",
|
|
@@ -36,42 +41,42 @@
|
|
|
36
41
|
"contractCategory": "Categoria do contrato",
|
|
37
42
|
"manager": "Gestor",
|
|
38
43
|
"progress": "Progresso",
|
|
39
|
-
"timeline": "
|
|
40
|
-
"budget": "
|
|
44
|
+
"timeline": "Período",
|
|
45
|
+
"budget": "Orçamento",
|
|
41
46
|
"teamSize": "Tamanho da equipe",
|
|
42
47
|
"client": "Cliente",
|
|
43
48
|
"billingModel": "Modelo de faturamento",
|
|
44
|
-
"accountManager": "
|
|
49
|
+
"accountManager": "Responsável pela conta",
|
|
45
50
|
"projectCount": "Qtd. de projetos",
|
|
46
|
-
"entries": "
|
|
51
|
+
"entries": "Lançamentos",
|
|
47
52
|
"totalHours": "Total de horas",
|
|
48
53
|
"approver": "Aprovador",
|
|
49
|
-
"noNotes": "Sem
|
|
54
|
+
"noNotes": "Sem observações",
|
|
50
55
|
"lines": "linhas",
|
|
51
|
-
"unassigned": "Sem
|
|
56
|
+
"unassigned": "Sem vinculação",
|
|
52
57
|
"viewOnly": "Somente leitura",
|
|
53
58
|
"week": "Semana",
|
|
54
|
-
"weekStart": "
|
|
59
|
+
"weekStart": "Início da semana",
|
|
55
60
|
"weekEnd": "Fim da semana",
|
|
56
|
-
"notes": "
|
|
57
|
-
"projectAssignment": "
|
|
61
|
+
"notes": "Observações",
|
|
62
|
+
"projectAssignment": "Alocação do projeto",
|
|
58
63
|
"activity": "Tarefa / atividade",
|
|
59
|
-
"description": "
|
|
64
|
+
"description": "Descrição",
|
|
60
65
|
"workDate": "Data trabalhada",
|
|
61
66
|
"hours": "Horas",
|
|
62
67
|
"days": "Dias",
|
|
63
68
|
"reason": "Motivo",
|
|
64
|
-
"requestType": "Tipo de
|
|
65
|
-
"requestScope": "Escopo da
|
|
66
|
-
"schedule": "
|
|
67
|
-
"weeklySchedule": "
|
|
68
|
-
"workingDay": "Dia
|
|
69
|
+
"requestType": "Tipo de solicitação",
|
|
70
|
+
"requestScope": "Escopo da solicitação",
|
|
71
|
+
"schedule": "Horário",
|
|
72
|
+
"weeklySchedule": "Horário semanal",
|
|
73
|
+
"workingDay": "Dia útil",
|
|
69
74
|
"dayOff": "Folga",
|
|
70
75
|
"requester": "Solicitante",
|
|
71
76
|
"submittedAt": "Enviado em",
|
|
72
|
-
"noteOptional": "
|
|
73
|
-
"activeAssignments": "
|
|
74
|
-
"pendingApprovals": "
|
|
77
|
+
"noteOptional": "Observação opcional",
|
|
78
|
+
"activeAssignments": "Alocações ativas",
|
|
79
|
+
"pendingApprovals": "Aprovações pendentes",
|
|
75
80
|
"startDate": "Data inicial",
|
|
76
81
|
"endDate": "Data final",
|
|
77
82
|
"monthlyHourCap": "Limite mensal de horas",
|
|
@@ -84,7 +89,7 @@
|
|
|
84
89
|
"states": {
|
|
85
90
|
"emptyTitle": "Nenhum registro encontrado",
|
|
86
91
|
"emptyDescription": "Ajuste os filtros atuais ou crie um novo registro.",
|
|
87
|
-
"noAccessTitle": "Acesso
|
|
92
|
+
"noAccessTitle": "Acesso necessário"
|
|
88
93
|
}
|
|
89
94
|
},
|
|
90
95
|
"DashboardPage": {
|
|
@@ -139,75 +144,161 @@
|
|
|
139
144
|
"title": "Colaboradores",
|
|
140
145
|
"description": "Mantenha perfis operacionais, linhas de reporte e capacidade da equipe.",
|
|
141
146
|
"breadcrumb": "Colaboradores",
|
|
142
|
-
"searchPlaceholder": "Buscar colaborador,
|
|
147
|
+
"searchPlaceholder": "Buscar colaborador, código, departamento ou cargo...",
|
|
143
148
|
"profileTitle": "Meu perfil operacional",
|
|
144
|
-
"profileDescription": "
|
|
149
|
+
"profileDescription": "Visão de autoatendimento do perfil operacional vinculado ao seu usuário.",
|
|
145
150
|
"emptyDescription": "Nenhum colaborador corresponde aos filtros atuais.",
|
|
151
|
+
"viewMode": "Visualização",
|
|
152
|
+
"viewModeTable": "Tabela",
|
|
153
|
+
"viewModeCards": "Grade",
|
|
154
|
+
"cards": {
|
|
155
|
+
"total": "Total de colaboradores",
|
|
156
|
+
"active": "Colaboradores ativos",
|
|
157
|
+
"onLeave": "Em afastamento",
|
|
158
|
+
"withContracts": "Com contrato"
|
|
159
|
+
},
|
|
146
160
|
"sheet": {
|
|
147
161
|
"createTitle": "Criar colaborador",
|
|
148
162
|
"editTitle": "Editar colaborador",
|
|
149
|
-
"description": "Crie ou atualize o perfil de workforce usado em projetos, contratos e
|
|
163
|
+
"description": "Crie ou atualize o perfil de workforce usado em projetos, contratos e aprovações."
|
|
150
164
|
},
|
|
151
165
|
"form": {
|
|
152
|
-
"userId": "ID do
|
|
153
|
-
"code": "
|
|
166
|
+
"userId": "ID do usuário",
|
|
167
|
+
"code": "Código",
|
|
154
168
|
"displayName": "Nome exibido",
|
|
155
169
|
"department": "Departamento",
|
|
156
170
|
"title": "Cargo",
|
|
157
|
-
"levelLabel": "
|
|
171
|
+
"levelLabel": "Nível",
|
|
158
172
|
"weeklyCapacityHours": "Horas semanais",
|
|
159
|
-
"notes": "
|
|
173
|
+
"notes": "Observações"
|
|
160
174
|
},
|
|
161
175
|
"messages": {
|
|
162
|
-
"userRequired": "Um ID de
|
|
163
|
-
"requiredFields": "
|
|
176
|
+
"userRequired": "Um ID de usuário é obrigatório para novos colaboradores.",
|
|
177
|
+
"requiredFields": "Código e nome exibido são obrigatórios.",
|
|
164
178
|
"saveSuccess": "Colaborador salvo com sucesso.",
|
|
165
|
-
"saveError": "
|
|
179
|
+
"saveError": "Não foi possível salvar o colaborador.",
|
|
166
180
|
"statusSuccess": "Status do colaborador atualizado com sucesso.",
|
|
167
|
-
"statusError": "
|
|
181
|
+
"statusError": "Não foi possível atualizar o status do colaborador."
|
|
182
|
+
}
|
|
183
|
+
},
|
|
184
|
+
"DepartmentsPage": {
|
|
185
|
+
"title": "Departamentos",
|
|
186
|
+
"description": "Gerencie os departamentos operacionais usados nos perfis de colaboradores e na estrutura de reporte.",
|
|
187
|
+
"breadcrumb": "Departamentos",
|
|
188
|
+
"searchPlaceholder": "Buscar departamento, código ou descrição...",
|
|
189
|
+
"emptyDescription": "Nenhum departamento corresponde aos filtros atuais.",
|
|
190
|
+
"noAccessDescription": "Permissões de diretor são necessárias para gerenciar departamentos.",
|
|
191
|
+
"cards": {
|
|
192
|
+
"total": "Total de departamentos",
|
|
193
|
+
"active": "Departamentos ativos",
|
|
194
|
+
"linkedCollaborators": "Colaboradores vinculados",
|
|
195
|
+
"inactive": "Departamentos inativos"
|
|
196
|
+
},
|
|
197
|
+
"columns": {
|
|
198
|
+
"name": "Nome",
|
|
199
|
+
"code": "Código",
|
|
200
|
+
"description": "Descrição",
|
|
201
|
+
"collaborators": "Colaboradores"
|
|
202
|
+
},
|
|
203
|
+
"sheet": {
|
|
204
|
+
"createTitle": "Criar departamento",
|
|
205
|
+
"editTitle": "Editar departamento",
|
|
206
|
+
"description": "Mantenha o catálogo de departamentos de operações organizado e pronto para vinculação dos colaboradores."
|
|
207
|
+
},
|
|
208
|
+
"form": {
|
|
209
|
+
"name": "Nome do departamento",
|
|
210
|
+
"code": "Código",
|
|
211
|
+
"description": "Descrição",
|
|
212
|
+
"status": "Status"
|
|
213
|
+
},
|
|
214
|
+
"messages": {
|
|
215
|
+
"requiredFields": "O nome do departamento é obrigatório.",
|
|
216
|
+
"saveSuccess": "Departamento salvo com sucesso.",
|
|
217
|
+
"saveError": "Não foi possível salvar o departamento.",
|
|
218
|
+
"statusSuccess": "Status do departamento atualizado com sucesso.",
|
|
219
|
+
"statusError": "Não foi possível atualizar o status do departamento."
|
|
168
220
|
}
|
|
169
221
|
},
|
|
170
222
|
"CollaboratorFormPage": {
|
|
171
223
|
"newTitle": "Novo Colaborador",
|
|
172
224
|
"editTitle": "Editar Colaborador",
|
|
173
225
|
"breadcrumb": "Cadastro de Colaborador",
|
|
174
|
-
"description": "Cadastre colaboradores com o perfil de
|
|
175
|
-
"noAccessDescription": "
|
|
226
|
+
"description": "Cadastre colaboradores com o perfil de contratação correto e gere um contrato rascunho a partir da origem de admissão quando necessário.",
|
|
227
|
+
"noAccessDescription": "Permissões de diretor são necessárias para cadastrar ou editar colaboradores.",
|
|
176
228
|
"loading": "Carregando dados do colaborador...",
|
|
229
|
+
"tabs": {
|
|
230
|
+
"profile": "Cadastro",
|
|
231
|
+
"contract": "Contrato",
|
|
232
|
+
"schedule": "Agenda",
|
|
233
|
+
"activity": "Atividade"
|
|
234
|
+
},
|
|
177
235
|
"sections": {
|
|
178
|
-
"basicInfo": "
|
|
179
|
-
"basicInfoDescription": "Dados principais de
|
|
180
|
-
"employmentInfo": "
|
|
236
|
+
"basicInfo": "Informações básicas",
|
|
237
|
+
"basicInfoDescription": "Dados principais de identificação usados em toda a operação.",
|
|
238
|
+
"employmentInfo": "Informações de contratação",
|
|
181
239
|
"employmentInfoDescription": "Defina o tipo do colaborador, o status do ciclo e as datas principais.",
|
|
182
|
-
"supervisor": "
|
|
183
|
-
"supervisorDescription": "Associe o supervisor direto usado para
|
|
184
|
-
"contract": "
|
|
185
|
-
"contractDescription": "Informe os dados contratuais
|
|
186
|
-
"schedule": "
|
|
187
|
-
"scheduleDescription": "Defina o
|
|
240
|
+
"supervisor": "Vínculo de supervisor",
|
|
241
|
+
"supervisorDescription": "Associe o supervisor direto usado para visão de equipe e aprovações.",
|
|
242
|
+
"contract": "Remuneração e contrato rascunho",
|
|
243
|
+
"contractDescription": "Informe os dados contratuais básicos e escolha se o sistema deve gerar automaticamente um contrato relacionado a partir da contratação.",
|
|
244
|
+
"schedule": "Horário semanal padrão",
|
|
245
|
+
"scheduleDescription": "Defina o horário recorrente esperado para uso operacional e nos fluxos de aprovação."
|
|
188
246
|
},
|
|
189
247
|
"fields": {
|
|
190
|
-
"
|
|
191
|
-
"
|
|
248
|
+
"person": "Pessoa",
|
|
249
|
+
"personEntityLabel": "pessoa",
|
|
250
|
+
"personDescription": "Selecione uma pessoa existente ou cadastre uma nova sem sair desta tela.",
|
|
251
|
+
"userId": "ID do usuário",
|
|
252
|
+
"userIdOptional": "ID do usuário (opcional)",
|
|
253
|
+
"userIdDescription": "Use este campo apenas quando precisar vincular uma conta de acesso depois do cadastro da pessoa.",
|
|
254
|
+
"code": "Código",
|
|
192
255
|
"displayName": "Nome exibido",
|
|
193
256
|
"department": "Departamento",
|
|
194
|
-
"
|
|
195
|
-
"
|
|
196
|
-
"
|
|
257
|
+
"departmentDescription": "Selecione um departamento existente ou cadastre um novo para este colaborador.",
|
|
258
|
+
"title": "Cargo / função",
|
|
259
|
+
"levelLabel": "Nível",
|
|
260
|
+
"notes": "Observações",
|
|
197
261
|
"collaboratorType": "Tipo de colaborador",
|
|
198
|
-
"weeklyCapacityHours": "Carga
|
|
199
|
-
"compensationAmount": "Valor da
|
|
200
|
-
"contractDescription": "
|
|
262
|
+
"weeklyCapacityHours": "Carga horária semanal",
|
|
263
|
+
"compensationAmount": "Valor da remuneração",
|
|
264
|
+
"contractDescription": "Observações do contrato rascunho",
|
|
265
|
+
"startTime": "Início",
|
|
266
|
+
"endTime": "Fim",
|
|
267
|
+
"breakMinutes": "Intervalo (min)",
|
|
268
|
+
"breakMinutesDescription": "O último campo numérico define o intervalo/pausa diária em minutos. Ex.: 60 = 1 hora de almoço.",
|
|
201
269
|
"autoGenerateContractDraft": "Gerar contrato rascunho automaticamente",
|
|
202
|
-
"autoGenerateContractDraftDescription": "Cria um contrato rascunho relacionado, classificado pelo tipo de colaborador e vinculado
|
|
270
|
+
"autoGenerateContractDraftDescription": "Cria um contrato rascunho relacionado, classificado pelo tipo de colaborador e vinculado à origem de contratação."
|
|
271
|
+
},
|
|
272
|
+
"options": {
|
|
273
|
+
"collaboratorTypes": {
|
|
274
|
+
"clt": "CLT",
|
|
275
|
+
"pj": "PJ",
|
|
276
|
+
"freelancer": "Freelancer",
|
|
277
|
+
"intern": "Estagiário",
|
|
278
|
+
"other": "Outro"
|
|
279
|
+
},
|
|
280
|
+
"statuses": {
|
|
281
|
+
"active": "Ativo",
|
|
282
|
+
"on_leave": "Em afastamento",
|
|
283
|
+
"inactive": "Inativo",
|
|
284
|
+
"draft": "Rascunho"
|
|
285
|
+
}
|
|
286
|
+
},
|
|
287
|
+
"placeholders": {
|
|
288
|
+
"person": "Selecione ou cadastre uma pessoa",
|
|
289
|
+
"department": "Selecione ou cadastre um departamento",
|
|
290
|
+
"departmentCreate": "Nome do departamento",
|
|
291
|
+
"supervisor": "Busque um colaborador",
|
|
292
|
+
"userIdOptional": "Vincule um usuário depois, se necessário"
|
|
203
293
|
},
|
|
204
294
|
"messages": {
|
|
205
|
-
"userRequired": "
|
|
206
|
-
"
|
|
295
|
+
"userRequired": "O vínculo com usuário pode ser feito depois do cadastro inicial.",
|
|
296
|
+
"personRequired": "Selecione ou cadastre uma pessoa para o colaborador.",
|
|
297
|
+
"requiredFields": "O código do colaborador é obrigatório.",
|
|
207
298
|
"createSuccess": "Colaborador criado com sucesso.",
|
|
208
|
-
"createError": "
|
|
299
|
+
"createError": "Não foi possível criar o colaborador.",
|
|
209
300
|
"updateSuccess": "Colaborador atualizado com sucesso.",
|
|
210
|
-
"updateError": "
|
|
301
|
+
"updateError": "Não foi possível atualizar o colaborador."
|
|
211
302
|
}
|
|
212
303
|
},
|
|
213
304
|
"CollaboratorDetailsPage": {
|
|
@@ -247,6 +338,12 @@
|
|
|
247
338
|
"breadcrumb": "Projetos",
|
|
248
339
|
"searchPlaceholder": "Buscar projeto, cliente, gestor ou contrato...",
|
|
249
340
|
"emptyDescription": "Nenhum projeto corresponde aos filtros atuais.",
|
|
341
|
+
"cards": {
|
|
342
|
+
"total": "Projetos",
|
|
343
|
+
"active": "Ativos",
|
|
344
|
+
"atRisk": "Em risco",
|
|
345
|
+
"upcomingDeliveries": "Com prazo"
|
|
346
|
+
},
|
|
250
347
|
"actions": {
|
|
251
348
|
"archive": "Arquivar"
|
|
252
349
|
},
|
|
@@ -283,11 +380,11 @@
|
|
|
283
380
|
"governance": "Responsavel e datas",
|
|
284
381
|
"governanceDescription": "Defina o responsavel, o status do ciclo e o periodo do projeto.",
|
|
285
382
|
"team": "Alocacao inicial da equipe",
|
|
286
|
-
"teamDescription": "
|
|
383
|
+
"teamDescription": "{count} colaboradores selecionados para a equipe inicial.",
|
|
287
384
|
"financials": "Base financeira e contratual",
|
|
288
385
|
"financialsDescription": "Dados base usados em controles operacionais e na geracao do contrato rascunho.",
|
|
289
386
|
"contract": "Configuracoes do contrato",
|
|
290
|
-
"contractDescription": "Escolha
|
|
387
|
+
"contractDescription": "Escolha um template reutilizavel, vincule um contrato existente ou gere um novo rascunho com origem no projeto."
|
|
291
388
|
},
|
|
292
389
|
"fields": {
|
|
293
390
|
"code": "Codigo do projeto",
|
|
@@ -295,16 +392,71 @@
|
|
|
295
392
|
"clientName": "Nome do cliente",
|
|
296
393
|
"deliveryModel": "Modelo de entrega",
|
|
297
394
|
"summary": "Resumo operacional",
|
|
395
|
+
"progressPercent": "Progresso %",
|
|
298
396
|
"roleLabel": "Papel / responsabilidade",
|
|
299
397
|
"weeklyHours": "Horas semanais",
|
|
300
398
|
"allocationPercent": "Alocacao %",
|
|
399
|
+
"isBillable": "Faturavel",
|
|
400
|
+
"isBillableDescription": "Inclui esta alocacao na capacidade faturavel.",
|
|
301
401
|
"contractCode": "Codigo do contrato rascunho",
|
|
302
402
|
"contractName": "Nome do contrato rascunho",
|
|
303
403
|
"contractDescription": "Observacoes do contrato rascunho",
|
|
404
|
+
"contractTemplate": "Template do contrato",
|
|
304
405
|
"autoGenerateContractDraft": "Gerar contrato rascunho automaticamente",
|
|
305
406
|
"autoGenerateContractDraftDescription": "Cria um contrato rascunho de cliente/servico com originType client_project vinculado a este projeto.",
|
|
306
407
|
"existingContractSelected": "Ja existe um contrato selecionado para este projeto."
|
|
307
408
|
},
|
|
409
|
+
"labels": {
|
|
410
|
+
"enabled": "Ativado",
|
|
411
|
+
"disabled": "Desativado",
|
|
412
|
+
"templateSelected": "Template selecionado para novos rascunhos"
|
|
413
|
+
},
|
|
414
|
+
"hints": {
|
|
415
|
+
"summary": "Seja breve: escopo, objetivo e contexto principal da entrega.",
|
|
416
|
+
"progressPercent": "Use uma estimativa simples de 0 a 100.",
|
|
417
|
+
"monthlyHourCap": "Limite opcional usado no planejamento e na geracao do contrato rascunho.",
|
|
418
|
+
"contract": "Ao selecionar um contrato existente, a geracao automatica do rascunho e desativada.",
|
|
419
|
+
"contractTemplate": "Use um template para pre-preencher o novo contrato ou o rascunho automatico deste projeto.",
|
|
420
|
+
"contractCode": "Usado apenas se um contrato rascunho for gerado a partir deste projeto.",
|
|
421
|
+
"contractName": "Titulo visivel para o contrato rascunho gerado.",
|
|
422
|
+
"contractDescription": "Observacoes comerciais ou clausulas opcionais para o rascunho."
|
|
423
|
+
},
|
|
424
|
+
"placeholders": {
|
|
425
|
+
"code": "Ex: PRJ-2026-001",
|
|
426
|
+
"name": "Informe o nome do projeto",
|
|
427
|
+
"clientName": "Informe o cliente ou conta",
|
|
428
|
+
"summary": "Descreva escopo, objetivos e contexto da entrega",
|
|
429
|
+
"progressPercent": "0 a 100",
|
|
430
|
+
"managerSearch": "Buscar gestor...",
|
|
431
|
+
"assignmentSearch": "Buscar colaborador por nome, departamento ou cargo",
|
|
432
|
+
"contractSearch": "Buscar contrato existente...",
|
|
433
|
+
"contractTemplateSearch": "Buscar template de contrato...",
|
|
434
|
+
"monthlyHourCap": "Limite mensal de horas",
|
|
435
|
+
"contractCode": "Usado apenas ao criar contrato rascunho",
|
|
436
|
+
"contractName": "Nome visivel do contrato gerado",
|
|
437
|
+
"contractDescription": "Adicione observacoes comerciais ou clausulas da entrega"
|
|
438
|
+
},
|
|
439
|
+
"options": {
|
|
440
|
+
"deliveryModels": {
|
|
441
|
+
"project_delivery": "Entrega de projeto",
|
|
442
|
+
"dedicated_team": "Time dedicado",
|
|
443
|
+
"shared_team": "Time compartilhado",
|
|
444
|
+
"support": "Suporte"
|
|
445
|
+
},
|
|
446
|
+
"statuses": {
|
|
447
|
+
"planning": "Planejamento",
|
|
448
|
+
"active": "Ativo",
|
|
449
|
+
"at_risk": "Em risco",
|
|
450
|
+
"paused": "Pausado",
|
|
451
|
+
"completed": "Concluido",
|
|
452
|
+
"archived": "Arquivado"
|
|
453
|
+
},
|
|
454
|
+
"billingModels": {
|
|
455
|
+
"time_and_material": "Tempo e material",
|
|
456
|
+
"monthly_retainer": "Mensalidade fixa",
|
|
457
|
+
"fixed_price": "Preco fechado"
|
|
458
|
+
}
|
|
459
|
+
},
|
|
308
460
|
"messages": {
|
|
309
461
|
"requiredFields": "Codigo, nome do projeto e nome do cliente sao obrigatorios.",
|
|
310
462
|
"createSuccess": "Projeto criado com sucesso.",
|
|
@@ -352,29 +504,181 @@
|
|
|
352
504
|
"breadcrumb": "Contratos",
|
|
353
505
|
"searchPlaceholder": "Buscar contrato, parte relacionada, cliente, tipo ou codigo...",
|
|
354
506
|
"emptyDescription": "Nenhum contrato corresponde aos filtros atuais.",
|
|
507
|
+
"cards": {
|
|
508
|
+
"total": "Total de contratos",
|
|
509
|
+
"active": "Contratos ativos",
|
|
510
|
+
"underReview": "Em revisao",
|
|
511
|
+
"withTemplate": "Com template"
|
|
512
|
+
},
|
|
513
|
+
"viewMode": "Visualizacao",
|
|
514
|
+
"viewModeTable": "Tabela",
|
|
515
|
+
"viewModeCards": "Cards",
|
|
355
516
|
"columns": {
|
|
356
517
|
"title": "Titulo",
|
|
357
518
|
"code": "Codigo",
|
|
358
519
|
"type": "Tipo",
|
|
359
520
|
"origin": "Origem",
|
|
521
|
+
"template": "Template",
|
|
360
522
|
"party": "Parte principal",
|
|
361
523
|
"signatureStatus": "Status da assinatura",
|
|
362
524
|
"active": "Ativo",
|
|
363
525
|
"financials": "Resumo financeiro"
|
|
364
526
|
},
|
|
365
527
|
"actions": {
|
|
528
|
+
"downloadPdf": "Baixar PDF",
|
|
529
|
+
"uploadPdf": "Enviar PDF",
|
|
366
530
|
"duplicate": "Duplicar",
|
|
367
|
-
"archive": "Arquivar"
|
|
531
|
+
"archive": "Arquivar",
|
|
532
|
+
"delete": "Excluir"
|
|
368
533
|
},
|
|
369
534
|
"filters": {
|
|
370
535
|
"originType": "Tipo de origem"
|
|
371
536
|
},
|
|
537
|
+
"sheet": {
|
|
538
|
+
"createTitle": "Novo Contrato",
|
|
539
|
+
"editTitle": "Editar Contrato",
|
|
540
|
+
"duplicateTitle": "Duplicar Contrato",
|
|
541
|
+
"description": "Gerencie o contrato em uma lateral, sem sair da lista principal."
|
|
542
|
+
},
|
|
543
|
+
"wizard": {
|
|
544
|
+
"title": "Assistente de criacao de contrato",
|
|
545
|
+
"description": "Escolha como deseja iniciar: enviar um documento existente, usar um template salvo ou criar do zero.",
|
|
546
|
+
"options": {
|
|
547
|
+
"upload": {
|
|
548
|
+
"title": "Ja tenho um PDF ou Word",
|
|
549
|
+
"description": "Envie um contrato existente para extrair dados e revisar antes de salvar."
|
|
550
|
+
},
|
|
551
|
+
"template": {
|
|
552
|
+
"title": "Quero usar um template",
|
|
553
|
+
"description": "Comece com um modelo salvo e ajuste os campos conforme necessario."
|
|
554
|
+
},
|
|
555
|
+
"blank": {
|
|
556
|
+
"title": "Quero criar do zero",
|
|
557
|
+
"description": "Abra o formulario em branco para montar um contrato totalmente personalizado."
|
|
558
|
+
}
|
|
559
|
+
},
|
|
560
|
+
"upload": {
|
|
561
|
+
"title": "Enviar contrato existente",
|
|
562
|
+
"description": "Adicione um PDF ou DOCX. A IA pode sugerir um rascunho, mas voce sempre revisa antes de salvar.",
|
|
563
|
+
"selectFile": "Selecionar arquivo",
|
|
564
|
+
"supportedFiles": "Formatos aceitos: PDF, DOC e DOCX.",
|
|
565
|
+
"aiReady": "Extracao assistida pronta com {provider}.",
|
|
566
|
+
"aiUnavailable": "Nenhum provedor de IA esta configurado. Voce ainda pode continuar manualmente com o arquivo anexado.",
|
|
567
|
+
"promptMessage": "Analyze the attached contract and extract a structured draft for the contract form."
|
|
568
|
+
},
|
|
569
|
+
"template": {
|
|
570
|
+
"title": "Comecar com um template",
|
|
571
|
+
"description": "Selecione um template salvo para abrir o formulario ja preenchido com estrutura inicial.",
|
|
572
|
+
"placeholder": "Selecione um template",
|
|
573
|
+
"noDescription": "Este template ainda nao possui descricao."
|
|
574
|
+
},
|
|
575
|
+
"blank": {
|
|
576
|
+
"title": "Criacao personalizada",
|
|
577
|
+
"description": "Abra um formulario vazio e preencha manualmente todas as informacoes do contrato.",
|
|
578
|
+
"helper": "Ideal para contratos novos, cenarios fora do padrao ou quando voce quer controlar cada detalhe desde o inicio."
|
|
579
|
+
},
|
|
580
|
+
"review": {
|
|
581
|
+
"title": "Revisao obrigatoria antes de salvar",
|
|
582
|
+
"description": "Confira os dados sugeridos pela IA no formulario antes de concluir o contrato.",
|
|
583
|
+
"missingFields": "Campos que ainda precisam de atencao",
|
|
584
|
+
"warnings": "Alertas da extracao"
|
|
585
|
+
},
|
|
586
|
+
"actions": {
|
|
587
|
+
"extractWithAi": "Extrair dados com IA",
|
|
588
|
+
"reviewInForm": "Revisar no formulario",
|
|
589
|
+
"continueManual": "Continuar manualmente",
|
|
590
|
+
"skipToBlank": "Pular para formulario em branco",
|
|
591
|
+
"useTemplate": "Usar template",
|
|
592
|
+
"startBlank": "Abrir formulario em branco"
|
|
593
|
+
},
|
|
594
|
+
"messages": {
|
|
595
|
+
"missingFile": "Selecione um arquivo PDF, DOC ou DOCX para continuar.",
|
|
596
|
+
"missingAiConfiguration": "Configure OpenAI ou Gemini para usar a extracao assistida.",
|
|
597
|
+
"extractSuccess": "Rascunho extraido com sucesso usando {provider}.",
|
|
598
|
+
"extractError": "Nao foi possivel extrair os dados do documento. Voce ainda pode continuar manualmente."
|
|
599
|
+
}
|
|
600
|
+
},
|
|
372
601
|
"messages": {
|
|
373
602
|
"statusSuccess": "Status do contrato atualizado com sucesso.",
|
|
374
603
|
"statusError": "Nao foi possivel atualizar o status do contrato.",
|
|
375
604
|
"uploadSuccess": "PDF do contrato enviado com sucesso.",
|
|
376
605
|
"uploadError": "Nao foi possivel enviar o PDF do contrato.",
|
|
377
|
-
"noPdf": "Nenhum PDF esta disponivel para este contrato."
|
|
606
|
+
"noPdf": "Nenhum PDF esta disponivel para este contrato.",
|
|
607
|
+
"deleteSuccess": "Contrato excluido com sucesso.",
|
|
608
|
+
"deleteError": "Nao foi possivel excluir o contrato.",
|
|
609
|
+
"confirmDeleteTitle": "Excluir contrato?",
|
|
610
|
+
"confirmDeleteDescription": "Essa acao removera \"{name}\" da lista de contratos."
|
|
611
|
+
}
|
|
612
|
+
},
|
|
613
|
+
"ContractTemplatesPage": {
|
|
614
|
+
"title": "Templates de Contrato",
|
|
615
|
+
"description": "Gerencie modelos reutilizaveis com conteudo RichText, metadados padrao e apoio de IA.",
|
|
616
|
+
"breadcrumb": "Templates de Contrato",
|
|
617
|
+
"searchPlaceholder": "Buscar template, codigo, descricao ou tipo...",
|
|
618
|
+
"emptyDescription": "Nenhum template corresponde aos filtros atuais.",
|
|
619
|
+
"noAccessDescription": "Permissoes de diretor sao necessarias para gerenciar templates de contrato.",
|
|
620
|
+
"cards": {
|
|
621
|
+
"total": "Total de templates",
|
|
622
|
+
"active": "Templates ativos",
|
|
623
|
+
"draft": "Em rascunho",
|
|
624
|
+
"archived": "Arquivados"
|
|
625
|
+
},
|
|
626
|
+
"columns": {
|
|
627
|
+
"name": "Template",
|
|
628
|
+
"code": "Codigo",
|
|
629
|
+
"type": "Tipo",
|
|
630
|
+
"usageCount": "Uso",
|
|
631
|
+
"updatedAt": "Atualizado em"
|
|
632
|
+
},
|
|
633
|
+
"filters": {
|
|
634
|
+
"type": "Tipo do contrato"
|
|
635
|
+
},
|
|
636
|
+
"sheet": {
|
|
637
|
+
"createTitle": "Novo Template de Contrato",
|
|
638
|
+
"editTitle": "Editar Template de Contrato",
|
|
639
|
+
"description": "Mantenha modelos reutilizaveis para acelerar novos contratos e rascunhos de projeto."
|
|
640
|
+
},
|
|
641
|
+
"messages": {
|
|
642
|
+
"statusSuccess": "Status do template atualizado com sucesso.",
|
|
643
|
+
"statusError": "Nao foi possivel atualizar o status do template."
|
|
644
|
+
}
|
|
645
|
+
},
|
|
646
|
+
"ContractTemplateFormPage": {
|
|
647
|
+
"newTitle": "Novo Template de Contrato",
|
|
648
|
+
"editTitle": "Editar Template de Contrato",
|
|
649
|
+
"breadcrumb": "Cadastro de Template de Contrato",
|
|
650
|
+
"description": "Defina textos base e metadados padrao para acelerar novos contratos de projeto.",
|
|
651
|
+
"noAccessDescription": "Permissoes de diretor sao necessarias para gerenciar templates de contrato.",
|
|
652
|
+
"loading": "Carregando template...",
|
|
653
|
+
"sections": {
|
|
654
|
+
"overview": "Dados do template",
|
|
655
|
+
"overviewDescription": "Metadados padrao aplicados quando um novo contrato nasce a partir deste template.",
|
|
656
|
+
"editor": "Conteudo do template",
|
|
657
|
+
"editorDescription": "Edite o texto base em rich text e mantenha placeholders como client_name e project_name quando fizer sentido.",
|
|
658
|
+
"preview": "Previa",
|
|
659
|
+
"previewDescription": "Previa em tempo real do conteudo reutilizavel."
|
|
660
|
+
},
|
|
661
|
+
"fields": {
|
|
662
|
+
"code": "Codigo",
|
|
663
|
+
"name": "Nome do template",
|
|
664
|
+
"description": "Descricao",
|
|
665
|
+
"contractCategory": "Categoria",
|
|
666
|
+
"contractType": "Tipo",
|
|
667
|
+
"signatureStatus": "Status de assinatura padrao",
|
|
668
|
+
"isActive": "Template ativo",
|
|
669
|
+
"isActiveDescription": "Desative para retirar o template das selecoes sem perder o historico."
|
|
670
|
+
},
|
|
671
|
+
"placeholders": {
|
|
672
|
+
"code": "Ex: MSA-SAAS",
|
|
673
|
+
"name": "Ex: Prestacao de servicos padrao",
|
|
674
|
+
"description": "Explique quando usar este template e quais dados ele cobre"
|
|
675
|
+
},
|
|
676
|
+
"messages": {
|
|
677
|
+
"requiredFields": "O nome do template e obrigatorio.",
|
|
678
|
+
"createSuccess": "Template criado com sucesso.",
|
|
679
|
+
"createError": "Nao foi possivel criar o template.",
|
|
680
|
+
"updateSuccess": "Template atualizado com sucesso.",
|
|
681
|
+
"updateError": "Nao foi possivel atualizar o template."
|
|
378
682
|
}
|
|
379
683
|
},
|
|
380
684
|
"ContractFormPage": {
|
|
@@ -404,7 +708,7 @@
|
|
|
404
708
|
"financials": "Termos financeiros",
|
|
405
709
|
"financialsDescription": "Controle de valores, receitas, pagamentos e multas.",
|
|
406
710
|
"documents": "Documentos",
|
|
407
|
-
"documentsDescription": "Envie ou substitua o
|
|
711
|
+
"documentsDescription": "Envie ou substitua o documento atual do contrato (PDF, DOC ou DOCX).",
|
|
408
712
|
"revisions": "Aditivos / renovacoes",
|
|
409
713
|
"revisionsDescription": "Acompanhe aditivos, emendas e renovacoes.",
|
|
410
714
|
"editor": "Editor do contrato",
|
|
@@ -416,6 +720,8 @@
|
|
|
416
720
|
"code": "Codigo",
|
|
417
721
|
"name": "Titulo do contrato",
|
|
418
722
|
"clientName": "Nome do cliente",
|
|
723
|
+
"contractTemplate": "Template do contrato",
|
|
724
|
+
"contractTemplateDescription": "Selecione um template reutilizavel para preencher metadados e conteudo iniciais deste contrato.",
|
|
419
725
|
"contractCategory": "Categoria",
|
|
420
726
|
"contractType": "Tipo",
|
|
421
727
|
"originType": "Tipo de origem",
|
|
@@ -425,6 +731,8 @@
|
|
|
425
731
|
"isActiveDescription": "Use isso para desativar ou reativar o contrato sem remover seu registro.",
|
|
426
732
|
"budgetAmount": "Valor de orcamento",
|
|
427
733
|
"monthlyHourCap": "Limite mensal de horas",
|
|
734
|
+
"effectiveDate": "Data de vigencia",
|
|
735
|
+
"signedAt": "Assinado em",
|
|
428
736
|
"partyDisplayName": "Nome da parte",
|
|
429
737
|
"partyRole": "Papel da parte",
|
|
430
738
|
"partyType": "Tipo da parte",
|
|
@@ -447,14 +755,115 @@
|
|
|
447
755
|
"revisionStatus": "Status da revisao",
|
|
448
756
|
"summary": "Resumo"
|
|
449
757
|
},
|
|
758
|
+
"options": {
|
|
759
|
+
"contractCategories": {
|
|
760
|
+
"employee": "Funcionario",
|
|
761
|
+
"contractor": "Contratado",
|
|
762
|
+
"client": "Cliente",
|
|
763
|
+
"supplier": "Fornecedor",
|
|
764
|
+
"vendor": "Vendor",
|
|
765
|
+
"partner": "Parceiro",
|
|
766
|
+
"internal": "Interno",
|
|
767
|
+
"other": "Outro"
|
|
768
|
+
},
|
|
769
|
+
"contractTypes": {
|
|
770
|
+
"clt": "CLT",
|
|
771
|
+
"pj": "PJ",
|
|
772
|
+
"freelancer_agreement": "Acordo freelancer",
|
|
773
|
+
"service_agreement": "Prestacao de servicos",
|
|
774
|
+
"fixed_term": "Prazo determinado",
|
|
775
|
+
"recurring_service": "Servico recorrente",
|
|
776
|
+
"nda": "NDA",
|
|
777
|
+
"amendment": "Emenda",
|
|
778
|
+
"addendum": "Aditivo",
|
|
779
|
+
"other": "Outro"
|
|
780
|
+
},
|
|
781
|
+
"signatureStatuses": {
|
|
782
|
+
"not_started": "Nao iniciado",
|
|
783
|
+
"pending": "Pendente",
|
|
784
|
+
"partially_signed": "Parcialmente assinado",
|
|
785
|
+
"signed": "Assinado",
|
|
786
|
+
"expired": "Expirado",
|
|
787
|
+
"rejected": "Rejeitado"
|
|
788
|
+
},
|
|
789
|
+
"billingModels": {
|
|
790
|
+
"time_and_material": "Tempo e material",
|
|
791
|
+
"monthly_retainer": "Mensalidade fixa",
|
|
792
|
+
"fixed_price": "Preco fechado"
|
|
793
|
+
},
|
|
794
|
+
"statuses": {
|
|
795
|
+
"draft": "Rascunho",
|
|
796
|
+
"under_review": "Em revisao",
|
|
797
|
+
"active": "Ativo",
|
|
798
|
+
"renewal": "Renovacao",
|
|
799
|
+
"expired": "Expirado",
|
|
800
|
+
"closed": "Encerrado",
|
|
801
|
+
"archived": "Arquivado"
|
|
802
|
+
},
|
|
803
|
+
"partyRoles": {
|
|
804
|
+
"employee": "Funcionario",
|
|
805
|
+
"employer": "Empregador",
|
|
806
|
+
"client": "Cliente",
|
|
807
|
+
"supplier": "Fornecedor",
|
|
808
|
+
"vendor": "Vendor",
|
|
809
|
+
"partner": "Parceiro",
|
|
810
|
+
"witness": "Testemunha",
|
|
811
|
+
"internal_owner": "Responsavel interno",
|
|
812
|
+
"other": "Outro"
|
|
813
|
+
},
|
|
814
|
+
"financialTermTypes": {
|
|
815
|
+
"value": "Valor",
|
|
816
|
+
"payment": "Pagamento",
|
|
817
|
+
"revenue": "Receita",
|
|
818
|
+
"fine": "Multa",
|
|
819
|
+
"other": "Outro"
|
|
820
|
+
},
|
|
821
|
+
"recurrences": {
|
|
822
|
+
"one_time": "Unica",
|
|
823
|
+
"monthly": "Mensal",
|
|
824
|
+
"quarterly": "Trimestral",
|
|
825
|
+
"yearly": "Anual",
|
|
826
|
+
"other": "Outro"
|
|
827
|
+
},
|
|
828
|
+
"creationModes": {
|
|
829
|
+
"blank": "Em branco",
|
|
830
|
+
"template": "Template",
|
|
831
|
+
"upload": "Upload",
|
|
832
|
+
"duplicate": "Duplicado"
|
|
833
|
+
},
|
|
834
|
+
"extractionStatuses": {
|
|
835
|
+
"pending": "Pendente",
|
|
836
|
+
"processing": "Processando",
|
|
837
|
+
"completed": "Concluida",
|
|
838
|
+
"failed": "Falhou",
|
|
839
|
+
"skipped": "Ignorada"
|
|
840
|
+
}
|
|
841
|
+
},
|
|
450
842
|
"messages": {
|
|
451
843
|
"requiredFields": "Codigo, titulo do contrato e nome do cliente sao obrigatorios.",
|
|
452
844
|
"createSuccess": "Contrato criado com sucesso.",
|
|
453
845
|
"createError": "Nao foi possivel criar o contrato.",
|
|
454
846
|
"updateSuccess": "Contrato atualizado com sucesso.",
|
|
455
847
|
"updateError": "Nao foi possivel atualizar o contrato.",
|
|
456
|
-
"pdfHint": "Envie um PDF para anexar como documento atual do contrato.",
|
|
457
|
-
"pdfReady": "
|
|
848
|
+
"pdfHint": "Envie um PDF, DOC ou DOCX para anexar como documento atual do contrato.",
|
|
849
|
+
"pdfReady": "Documento pronto para salvar: {name}"
|
|
850
|
+
}
|
|
851
|
+
},
|
|
852
|
+
"ContractContentEditor": {
|
|
853
|
+
"assistantTitle": "Assistente de conteudo por IA",
|
|
854
|
+
"assistantDescription": "Descreva o que precisa e o texto sera gerado automaticamente usando {provider}.",
|
|
855
|
+
"promptPlaceholder": "Ex: Gere um contrato mensal com escopo, pagamento, confidencialidade, SLA e clausula de rescisao.",
|
|
856
|
+
"emptyPreview": "Ainda nao existe conteudo para este contrato.",
|
|
857
|
+
"suggestedPrompt": "Crie um rascunho profissional para {subject}, com linguagem clara e secoes objetivas.",
|
|
858
|
+
"actions": {
|
|
859
|
+
"useSuggestion": "Sugerir prompt",
|
|
860
|
+
"generate": "Gerar texto"
|
|
861
|
+
},
|
|
862
|
+
"messages": {
|
|
863
|
+
"missingConfiguration": "Configure um provedor de IA nas settings para usar esta acao.",
|
|
864
|
+
"missingPrompt": "Digite um prompt antes de gerar o texto.",
|
|
865
|
+
"generateSuccess": "Conteudo atualizado com {provider}.",
|
|
866
|
+
"generateError": "Nao foi possivel gerar o conteudo com IA."
|
|
458
867
|
}
|
|
459
868
|
},
|
|
460
869
|
"ContractDetailsPage": {
|
|
@@ -559,6 +968,30 @@
|
|
|
559
968
|
"rejectTitle": "Rejeitar solicitacao",
|
|
560
969
|
"description": "Adicione uma observacao opcional para a solicitacao de {requester}: {target}."
|
|
561
970
|
},
|
|
971
|
+
"options": {
|
|
972
|
+
"statuses": {
|
|
973
|
+
"pending": "Pendente",
|
|
974
|
+
"approved": "Aprovado",
|
|
975
|
+
"rejected": "Rejeitado",
|
|
976
|
+
"cancelled": "Cancelado"
|
|
977
|
+
},
|
|
978
|
+
"targetTypes": {
|
|
979
|
+
"timesheet": "Timesheet",
|
|
980
|
+
"time_off_request": "Solicitacao de ausencia",
|
|
981
|
+
"schedule_adjustment_request": "Ajuste de horario"
|
|
982
|
+
},
|
|
983
|
+
"timeOffTypes": {
|
|
984
|
+
"vacation": "Ferias",
|
|
985
|
+
"personal_time": "Folga pessoal",
|
|
986
|
+
"sick_leave": "Licenca medica",
|
|
987
|
+
"unpaid_leave": "Licenca sem remuneracao",
|
|
988
|
+
"other": "Outro"
|
|
989
|
+
},
|
|
990
|
+
"scheduleScopes": {
|
|
991
|
+
"temporary": "Temporario",
|
|
992
|
+
"permanent": "Permanente"
|
|
993
|
+
}
|
|
994
|
+
},
|
|
562
995
|
"messages": {
|
|
563
996
|
"approveSuccess": "Aprovacao concluida com sucesso.",
|
|
564
997
|
"approveError": "Nao foi possivel aprovar a solicitacao.",
|
|
@@ -581,6 +1014,22 @@
|
|
|
581
1014
|
"approved": "Solicitacoes aprovadas",
|
|
582
1015
|
"days": "Dias solicitados"
|
|
583
1016
|
},
|
|
1017
|
+
"options": {
|
|
1018
|
+
"requestTypes": {
|
|
1019
|
+
"vacation": "Ferias",
|
|
1020
|
+
"personal_time": "Folga pessoal",
|
|
1021
|
+
"sick_leave": "Licenca medica",
|
|
1022
|
+
"unpaid_leave": "Licenca sem remuneracao",
|
|
1023
|
+
"other": "Outro"
|
|
1024
|
+
},
|
|
1025
|
+
"statuses": {
|
|
1026
|
+
"draft": "Rascunho",
|
|
1027
|
+
"submitted": "Enviado",
|
|
1028
|
+
"approved": "Aprovado",
|
|
1029
|
+
"rejected": "Rejeitado",
|
|
1030
|
+
"cancelled": "Cancelado"
|
|
1031
|
+
}
|
|
1032
|
+
},
|
|
584
1033
|
"messages": {
|
|
585
1034
|
"requiredFields": "Datas inicial e final sao obrigatorias.",
|
|
586
1035
|
"saveSuccess": "Solicitacao de ausencia enviada com sucesso.",
|
|
@@ -602,6 +1051,19 @@
|
|
|
602
1051
|
"approved": "Solicitacoes aprovadas",
|
|
603
1052
|
"permanent": "Solicitacoes permanentes"
|
|
604
1053
|
},
|
|
1054
|
+
"options": {
|
|
1055
|
+
"requestScopes": {
|
|
1056
|
+
"temporary": "Temporario",
|
|
1057
|
+
"permanent": "Permanente"
|
|
1058
|
+
},
|
|
1059
|
+
"statuses": {
|
|
1060
|
+
"draft": "Rascunho",
|
|
1061
|
+
"submitted": "Enviado",
|
|
1062
|
+
"approved": "Aprovado",
|
|
1063
|
+
"rejected": "Rejeitado",
|
|
1064
|
+
"cancelled": "Cancelado"
|
|
1065
|
+
}
|
|
1066
|
+
},
|
|
605
1067
|
"table": {
|
|
606
1068
|
"currentSchedule": "Horario atual"
|
|
607
1069
|
},
|