@seniorsistemas/hcm-clocking-event-rule-nodejs 0.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/.github/copilot-instructions.md +11 -0
  2. package/.github/workflows/release.yaml +10 -0
  3. package/.gitlab-ci.yml +68 -0
  4. package/CHANGELOG.md +274 -0
  5. package/README.doc.md +658 -0
  6. package/README.md +117 -0
  7. package/assets/favicon.ico +0 -0
  8. package/catalog-info.yaml +19 -0
  9. package/jest.config.js +17 -0
  10. package/package.json +48 -0
  11. package/prompt.md +15 -0
  12. package/run_build_win.bat +1 -0
  13. package/run_link.bat +3 -0
  14. package/run_test.bat +1 -0
  15. package/sonar-project.properties +21 -0
  16. package/src/data/changes/changes.ts +92 -0
  17. package/src/data/context/context.ts +251 -0
  18. package/src/data/context/contextReference.ts +376 -0
  19. package/src/data/contract/contract.ts +272 -0
  20. package/src/data/dataset/database.ts +130 -0
  21. package/src/data/dataset/dataset.ts +275 -0
  22. package/src/data/definition/timeEvaluationSituationDefinitionHistory.ts +1425 -0
  23. package/src/data/employee/employee.ts +434 -0
  24. package/src/data/foundation/companyBranch.ts +66 -0
  25. package/src/data/foundation/costCenter.ts +47 -0
  26. package/src/data/foundation/employer.ts +35 -0
  27. package/src/data/foundation/employmentRelationship.ts +63 -0
  28. package/src/data/foundation/holiday.ts +84 -0
  29. package/src/data/foundation/holidayGroup.ts +47 -0
  30. package/src/data/foundation/jobPosition.ts +73 -0
  31. package/src/data/foundation/person.ts +35 -0
  32. package/src/data/foundation/situation.ts +301 -0
  33. package/src/data/foundation/syndicate.ts +244 -0
  34. package/src/data/foundation/workschedule.ts +688 -0
  35. package/src/data/foundation/workshift.ts +647 -0
  36. package/src/data/foundation/workshiftBase.ts +113 -0
  37. package/src/data/histories/companyBranchHistory.ts +128 -0
  38. package/src/data/histories/costCenterHistory.ts +114 -0
  39. package/src/data/histories/employmentRelationshipHistory.ts +116 -0
  40. package/src/data/histories/histories.ts +419 -0
  41. package/src/data/histories/jobPositionHistory.ts +117 -0
  42. package/src/data/histories/leaveHistory.ts +227 -0
  43. package/src/data/histories/timeEvaluationHistory.ts +191 -0
  44. package/src/data/histories/workshiftHistory.ts +66 -0
  45. package/src/data/hourBank/hourBank.ts +43 -0
  46. package/src/data/hourBank/hourBankAccount.ts +77 -0
  47. package/src/data/log/log.ts +38 -0
  48. package/src/data/schedules/bridge.ts +84 -0
  49. package/src/data/schedules/compensation.ts +332 -0
  50. package/src/data/schedules/overtimeAuthorization.ts +174 -0
  51. package/src/data/schedules/readiness.ts +150 -0
  52. package/src/data/schedules/schedules.ts +398 -0
  53. package/src/data/schedules/workscheduleChange.ts +91 -0
  54. package/src/data/schedules/workshiftChange.ts +76 -0
  55. package/src/data/timeEvaluation/adjustmentReason.ts +46 -0
  56. package/src/data/timeEvaluation/clockingEvent.ts +198 -0
  57. package/src/data/timeEvaluation/estimatedHours.ts +245 -0
  58. package/src/data/timeEvaluation/interval.ts +568 -0
  59. package/src/data/timeEvaluation/separatedHours.ts +134 -0
  60. package/src/data/timeEvaluation/timeEvaluation.ts +1540 -0
  61. package/src/data/timeEvaluation/timeEvaluationSituation.ts +154 -0
  62. package/src/data/user/user.ts +44 -0
  63. package/src/index.ts +60 -0
  64. package/src/test/builder/bridgeBuilder.builder.ts +28 -0
  65. package/src/test/builder/clockingEvent.builder.ts +49 -0
  66. package/src/test/builder/companyBranchHistoryBuilder.ts +29 -0
  67. package/src/test/builder/compensation.builder.ts +84 -0
  68. package/src/test/builder/contextReference.builder.ts +69 -0
  69. package/src/test/builder/costCenterHistoryBuilder.ts +29 -0
  70. package/src/test/builder/database.builder.ts +21 -0
  71. package/src/test/builder/datasetBuilder.ts +111 -0
  72. package/src/test/builder/dateIntervalBuilder.ts +25 -0
  73. package/src/test/builder/employee.builder.ts +91 -0
  74. package/src/test/builder/employmentRelationshipBuilder.ts +35 -0
  75. package/src/test/builder/employmentRelationshipHistoryBuilder.ts +29 -0
  76. package/src/test/builder/historiesBuilder.ts +56 -0
  77. package/src/test/builder/holiday.builder.ts +44 -0
  78. package/src/test/builder/hourBankAccountBuilder.ts +77 -0
  79. package/src/test/builder/hourBankBuilder.ts +32 -0
  80. package/src/test/builder/interval.builder.ts +113 -0
  81. package/src/test/builder/jobPositionHistoryBuilder.ts +29 -0
  82. package/src/test/builder/overtimeAuthorization.builder.ts +42 -0
  83. package/src/test/builder/readinessBuilder.builder.ts +57 -0
  84. package/src/test/builder/schedules.builder.ts +126 -0
  85. package/src/test/builder/situation.builder.ts +59 -0
  86. package/src/test/builder/syndicate.builder.ts +96 -0
  87. package/src/test/builder/syndicateHistoryBuilder.ts +33 -0
  88. package/src/test/builder/timeEvaluation.builder.ts +138 -0
  89. package/src/test/builder/timeEvaluationHistory.builder.ts +49 -0
  90. package/src/test/builder/timeEvaluationSituation.builder.ts +34 -0
  91. package/src/test/builder/workschedule.builder.ts +96 -0
  92. package/src/test/builder/workshift.builder.ts +179 -0
  93. package/src/test/builder/workshiftBuilder.ts +55 -0
  94. package/src/test/data/clockingEvent.spec.ts +56 -0
  95. package/src/test/data/context.spec.ts +176 -0
  96. package/src/test/data/currentUser.spec.ts +11 -0
  97. package/src/test/data/dataset.spec.ts +144 -0
  98. package/src/test/data/employee/employee.spec.ts +20 -0
  99. package/src/test/data/employmentRelationship/employmentRelationship.spec.ts +48 -0
  100. package/src/test/data/estimatedHours/estimatedHours.spec.ts +96 -0
  101. package/src/test/data/histories/costCenterHistory.spec.ts +32 -0
  102. package/src/test/data/histories/histories.spec.ts +306 -0
  103. package/src/test/data/holyday.spec.ts +89 -0
  104. package/src/test/data/hourBank/hourBank.spec.ts +48 -0
  105. package/src/test/data/hourBank/hourBankAccount.spec.ts +32 -0
  106. package/src/test/data/schedules/bridge.spec.ts +13 -0
  107. package/src/test/data/schedules/compesation.spect.ts +89 -0
  108. package/src/test/data/schedules/overtimeAuthorization.spec.ts +52 -0
  109. package/src/test/data/schedules/readiness.spec.ts +64 -0
  110. package/src/test/data/schedules/schedules.spec.ts +134 -0
  111. package/src/test/data/schedules/workscheduleChange.spec.ts +21 -0
  112. package/src/test/data/syndicate/syndicate.spec.ts +51 -0
  113. package/src/test/data/timeEvaluation.spec.ts +1057 -0
  114. package/src/test/data/timeEvaluationDefinition.spec.ts +144 -0
  115. package/src/test/data/workschedule/workschedule.spec.ts +194 -0
  116. package/src/test/data/workshift/workshift.spec.ts +79 -0
  117. package/src/test/utils/date.utils.spec.ts +198 -0
  118. package/src/test/utils/dateIntervalUtils.spec.ts +210 -0
  119. package/src/test/utils/object.utils.spec.ts +83 -0
  120. package/src/utils/dateIntervalUtils.ts +284 -0
  121. package/src/utils/dateUtils.ts +456 -0
  122. package/src/utils/decompressGzipLambda.ts +15 -0
  123. package/src/utils/object.utils.ts +156 -0
  124. package/trivy/vulnerabilities_scan.json +1160 -0
  125. package/tsconfig.json +32 -0
  126. package/tsconfig.spec.json +21 -0
  127. package/tslint.json +92 -0
  128. package/typedoc.json +22 -0
@@ -0,0 +1,84 @@
1
+ import { ObjectUtils } from "../../utils/object.utils";
2
+ import { HolidayGroupParams, HolidayGroup } from "./holidayGroup";
3
+ /**
4
+ * @hidden
5
+ */
6
+ export interface HolidayParams {
7
+ key: string;
8
+ date: Date;
9
+ holidayGroup: HolidayGroupParams;
10
+ }
11
+
12
+ /**
13
+ * Representa um feriado.
14
+ * Um feriado é um dia específico que é reconhecido como um dia de descanso ou celebração e está associado a um grupo de feriados.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * context.logInfo(`Feriado, Data: ${DateUtils.format(holiday.date)}, Tabela: ${holiday.holidayGroup.name}`);
19
+ * ```
20
+ * @see {@link HolidayGroup}
21
+ */
22
+ export class Holiday {
23
+ private readonly _key: string;
24
+ private readonly _date: Date;
25
+ private readonly _holidayGroup: HolidayGroup;
26
+
27
+ /**
28
+ * @hidden
29
+ */
30
+ constructor(params: HolidayParams) {
31
+ this._key = params.key;
32
+ this._date = ObjectUtils.toDateOrThrow(params.date, "Holiday.date");
33
+ this._holidayGroup = new HolidayGroup(params.holidayGroup);
34
+ }
35
+
36
+ /**
37
+ * @hidden
38
+ */
39
+ get key(): string {
40
+ return this._key;
41
+ }
42
+
43
+ /**
44
+ * Retorna a data do feriado.
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * let holidayDate = holiday.date; // Retorna a data do feriado.
49
+ * ```
50
+ */
51
+ get date(): Date {
52
+ return this._date;
53
+ }
54
+
55
+ /**
56
+ * Retorna a tabela de feriados ao qual este feriado pertence.
57
+ * @example
58
+ * ```typescript
59
+ * let holidayGroup = holiday.holidayGroup; // Retorna a tabela de feriados do feriado.
60
+ * ```
61
+ * @return A tabela de feriados do feriado.
62
+ * @see {@link HolidayGroup}
63
+ */
64
+ get holidayGroup(): HolidayGroup {
65
+ return this._holidayGroup;
66
+ }
67
+
68
+ /**
69
+ * Clona um feriado.
70
+ * @param holiday Feriado a ser clonado.
71
+ * @returns
72
+ */
73
+ public static clone(holiday: Holiday): Holiday {
74
+ return new Holiday({
75
+ key: holiday.key,
76
+ date: holiday.date,
77
+ holidayGroup: {
78
+ code: holiday.holidayGroup.code,
79
+ }
80
+ });
81
+ }
82
+
83
+ }
84
+
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Parâmetros para a criação de um HolidayGroup.
3
+ * @hidden
4
+ */
5
+ export interface HolidayGroupParams {
6
+ /**
7
+ * Código da tabela de feriados.
8
+ */
9
+ code: number;
10
+ }
11
+
12
+
13
+ /**
14
+ * Representa uma tabela de feriados.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * holidayGroup.code; // Retorna o código da tabela de feriados.
19
+ * ```
20
+ */
21
+ export class HolidayGroup {
22
+ /**
23
+ * Código da tabela de feriados.
24
+ */
25
+ private readonly _code: number;
26
+
27
+ /**
28
+ * @hidden
29
+ */
30
+ constructor(params: HolidayGroupParams) {
31
+ this._code = params.code;
32
+ }
33
+
34
+ /**
35
+ * Código da tabela de feriados.
36
+ *
37
+ * @example
38
+ * ```typescript
39
+ * let code = holidayGroup.code; // Retorna o código da tabela de feriados.
40
+ * ```
41
+ * @return Código da tabela de feriados.
42
+ */
43
+ get code(): number {
44
+ return this._code;
45
+ }
46
+ }
47
+
@@ -0,0 +1,73 @@
1
+ /**
2
+ * @hidden
3
+ */
4
+ export interface JobPositionParams {
5
+ /**
6
+ * Código do cargo.
7
+ */
8
+ code: number;
9
+ /**
10
+ * Código da estrutura do cargo.
11
+ */
12
+ structureCode: number;
13
+ }
14
+
15
+ /**
16
+ * Representa um cargo de um colaborador.
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * jobPosition.code; // Retorna o código do cargo.
21
+ * jobPosition.structureCode; // Retorna o código da estrutura do cargo.
22
+ * ```
23
+ */
24
+ export class JobPosition {
25
+ /**
26
+ * Código do cargo.
27
+ */
28
+ private readonly _code: number;
29
+ /**
30
+ * Código da estrutura do cargo.
31
+ */
32
+ private readonly _structureCode: number;
33
+
34
+ /**
35
+ * @hidden
36
+ * @param params Parâmetros para a criação de JobPosition.
37
+ */
38
+ constructor(params: JobPositionParams) {
39
+ this._code = params.code;
40
+ this._structureCode = params.structureCode;
41
+ }
42
+
43
+
44
+ /**
45
+ * Código do cargo.
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * let jobPositionCode = jobPosition.code;
50
+ * console.log(`Código do cargo: ${jobPositionCode}`);
51
+ * ```
52
+ *
53
+ * @returns Código do cargo.
54
+ */
55
+ get code(): number {
56
+ return this._code;
57
+ }
58
+
59
+ /**
60
+ * Código da estrutura do cargo.
61
+ *
62
+ * @example
63
+ * ```typescript
64
+ * let structureCode = jobPosition.structureCode;
65
+ * console.log(`Código da estrutura do cargo: ${structureCode}`);
66
+ * ```
67
+ *
68
+ * @returns Código da estrutura do cargo.
69
+ */
70
+ get structureCode(): number {
71
+ return this._structureCode;
72
+ }
73
+ }
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @hidden
3
+ */
4
+ export interface PersonParams {
5
+ name: string;
6
+ }
7
+ /**
8
+ * Representa uma pessoa no sistema, com um nome associado.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * person.name; // Retorna o nome da pessoa.
13
+ * ```
14
+ */
15
+ export class Person {
16
+ private readonly _name: string;
17
+
18
+ /**
19
+ * @hidden
20
+ */
21
+ constructor(params: PersonParams) {
22
+ this._name = params.name;
23
+ }
24
+
25
+ /**
26
+ * Retorna o nome da pessoa.
27
+ * @example
28
+ * ```typescript
29
+ * let name = person.name; // Retorna o nome da pessoa.
30
+ * ```
31
+ */
32
+ get name(): string {
33
+ return this._name;
34
+ }
35
+ }
@@ -0,0 +1,301 @@
1
+ // Situation.ts
2
+
3
+ import { ContextReference } from "../context/contextReference";
4
+ /**
5
+ * Interface para os parâmetros do construtor de Situation.
6
+ * @hidden
7
+ */
8
+ export interface SituationParams {
9
+ id: string;
10
+ code: number;
11
+ type: SituationType;
12
+ exception: boolean;
13
+ daytime: boolean;
14
+ complementarySituationId: string;
15
+ }
16
+
17
+ /**
18
+ * Representa uma situação de um colaborador.
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * console.log(situation.code); // Retorna o código da situação.
23
+ * console.log(situation.type); // Retorna o tipo da situação.
24
+ * console.log(situation.exception); // Retorna se a situação é uma exceção.
25
+ * console.log(situation.daytime); // Retorna se a situação é diurna.
26
+ * console.log(situation.complementarySituation); // Retorna a situação complementar.
27
+ * ```
28
+ * @see {@link SituationType}
29
+ */
30
+ export class Situation {
31
+ /**
32
+ * * O código da situação é o código que identifica a situação do colaborador, como férias, atestado, etc..
33
+ */
34
+ private readonly _id: string;
35
+ private readonly _code: number;
36
+ private readonly _type: SituationType;
37
+ private readonly _exception: boolean;
38
+ private readonly _daytime: boolean
39
+ private readonly _complementarySituationId: string;
40
+
41
+ /**
42
+ * @hidden
43
+ * Construtor privado para garantir que a classe seja construída apenas através do método estático build.
44
+ */
45
+ constructor(params: SituationParams) {
46
+ this._id = params.id;
47
+ this._code = params.code;
48
+ this._type = params.type;
49
+ this._exception = params.exception;
50
+ this._daytime = params.daytime;
51
+ this._complementarySituationId = params.complementarySituationId;
52
+ }
53
+
54
+ /**
55
+ * @hidden
56
+ * @param _situationCode
57
+ * @returns
58
+ */
59
+ static build(_situationCode: number): Situation {
60
+ return new Situation({
61
+ id: "",
62
+ code: _situationCode,
63
+ type: SituationType.OTHERS,
64
+ exception: false,
65
+ daytime: false,
66
+ complementarySituationId: ""
67
+ });
68
+ }
69
+
70
+ /**
71
+ * Retorna o identificador único da situação.
72
+ * @hidden
73
+ *
74
+ */
75
+ get id(): string {
76
+ return this._id;
77
+ }
78
+
79
+ /**
80
+ * Retorna o código da situação.
81
+ *
82
+ * @example
83
+ * ```typescript
84
+ * let code = situation.code; // Retorna o código da situação.
85
+ * ```
86
+ * @return Código da situação.
87
+ */
88
+ get code(): number {
89
+ return this._code;
90
+ }
91
+
92
+ /**
93
+ * Retorna o tipo da situação, como trabalhando, férias, auxílio doença, etc.
94
+ *
95
+ * @example
96
+ * ```typescript
97
+ * let type = situation.type; // Retorna o tipo da situação.
98
+ * ```
99
+ * @return Tipo da situação.
100
+ * @see {@link SituationType}
101
+ */
102
+ get type(): SituationType {
103
+ return this._type;
104
+ }
105
+
106
+ /**
107
+ * Retorna se a situação é uma exceção.
108
+ *
109
+ * @example
110
+ * ```typescript
111
+ * let isException = situation.exception; // Retorna se a situação é uma exceção.
112
+ * ```
113
+ * @return Verdadeiro se a situação for uma exceção, falso caso contrário.
114
+ */
115
+ get exception(): boolean {
116
+ return this._exception;
117
+ }
118
+
119
+ /**
120
+ * Retorna se a situação é diurna.
121
+ *
122
+ * @example
123
+ * ```typescript
124
+ * let isDaytime = situation.daytime; // Retorna se a situação é diurna.
125
+ * ```
126
+ * @return Verdadeiro se a situação for diurna, falso caso contrário.
127
+ */
128
+ get daytime(): boolean {
129
+ return this._daytime;
130
+ }
131
+
132
+ /**
133
+ * @hidden
134
+ * Retorna o ID da situação complementar, se houver.
135
+ *
136
+ * @example
137
+ * ```typescript
138
+ * let complementarySituationId = situation.complementarySituationId; // Retorna o ID da situação complementar
139
+ * ```
140
+ * @return ID da situação complementar.
141
+ */
142
+ private get complementarySituationId(): string {
143
+ return this._complementarySituationId;
144
+ }
145
+
146
+ /**
147
+ * Retorna a situação complementar associada a esta situação.
148
+ * Observação: Se a situação complementar não for encontrada no contexto de regras, uma exceção será lançada.
149
+ * Somente estão disponíveis as situações complementares que estão referenciadas no contexto de regras ou seja utilizadas em definição de situação, situação do dia, histórico de afastamento, etc.
150
+ *
151
+ * @example
152
+ * ```typescript
153
+ * let complementarySituation = situation.complementarySituation; // Retorna a situação complementar.
154
+ * complementarySituation.code; // Retorna o código da situação complementar.
155
+ * complementarySituation.type; // Retorna o tipo da situação complementar.
156
+ * ```
157
+ * @return Situação complementar.
158
+ * @throws Se a situação complementar não for encontrada no contexto de regras.
159
+ */
160
+ get complementarySituation(): Situation {
161
+ const situation = ContextReference.getGlobalInstance().getSituationById(this._complementarySituationId);
162
+ if (!situation) {
163
+ throw new Error(`Complementary situation not found for ID: ${this._complementarySituationId}`);
164
+ }
165
+ return situation;
166
+ }
167
+
168
+ /**
169
+ * Verifica se a situação é uma situação completa com todas os atributos ou se é uma situação padrão somente com o código.
170
+ * Isso pode acontecer caso for criado uma situação somente com o código e a situação não for encontrada no contexto de regras, por não ser referenciado por nenhum cadastro.
171
+ */
172
+ get isLoaded(): boolean {
173
+ return this._id !== "";
174
+ }
175
+
176
+
177
+ public static clone(situation: Situation): Situation {
178
+ return new Situation({
179
+ id: situation.id,
180
+ code: situation.code,
181
+ type: situation.type,
182
+ exception: situation.exception,
183
+ daytime: situation.daytime,
184
+ complementarySituationId: situation.complementarySituationId
185
+ });
186
+ }
187
+
188
+ }
189
+
190
+
191
+ /**
192
+ * Enumeração para os tipos de situações.
193
+ * @enum
194
+ */
195
+ export enum SituationType {
196
+ /**
197
+ * Trabalhando.
198
+ */
199
+ WORKING = "WORKING",
200
+ /**
201
+ * Férias.
202
+ */
203
+ VACATION = "VACATION",
204
+ /**
205
+ * Auxílio doença.
206
+ */
207
+ ILLNESSAID = "ILLNESSAID",
208
+ /**
209
+ * Acidente de trabalho.
210
+ */
211
+ LABORACCIDENT = "LABORACCIDENT",
212
+ /**
213
+ * Serviço militar.
214
+ */
215
+ MILITARYSERVICE = "MILITARYSERVICE",
216
+ /**
217
+ * Licença maternidade.
218
+ */
219
+ MATERNITYLEAVE = "MATERNITYLEAVE",
220
+ /**
221
+ * Licença maternidade - Aborto não criminoso.
222
+ */
223
+ MATERNITYLEAVENONCRIMINALABORTION = "MATERNITYLEAVENONCRIMINALABORTION",
224
+ /**
225
+ * Licença maternidade - Prorrogação mediante atestado médico.
226
+ */
227
+ MATERNITYLEAVEANTICIPATIONEXTENSION = "MATERNITYLEAVEANTICIPATIONEXTENSION",
228
+ /**
229
+ * Licença maternidade - Empresa cidadã.
230
+ */
231
+ CITIZENCOMPANYMATERNITY = "CITIZENCOMPANYMATERNITY",
232
+ /**
233
+ * Licença maternidade - INSS.
234
+ */
235
+ INSSMATERNITYLEAVE = "INSSMATERNITYLEAVE",
236
+ /**
237
+ * Licença sem remuneração.
238
+ */
239
+ LEAVEWITHOUTCOMPENSATION = "LEAVEWITHOUTCOMPENSATION",
240
+ /**
241
+ * Licença remunerada.
242
+ */
243
+ PAIDLEAVE = "PAIDLEAVE",
244
+ /**
245
+ * Licença paternidade.
246
+ */
247
+ PATERNITYLEAVE = "PATERNITYLEAVE",
248
+ /**
249
+ * Licença paternidade - Empresa cidadã.
250
+ */
251
+ CITIZENCOMPANYPATERNITY = "CITIZENCOMPANYPATERNITY",
252
+ /**
253
+ * Férias coletivas.
254
+ */
255
+ COLLECTIVEVACATION = "COLLECTIVEVACATION",
256
+ /**
257
+ * Licença médica (pgto empresa).
258
+ */
259
+ MEDICALLEAVE = "MEDICALLEAVE",
260
+ /**
261
+ * Licença médica sem incidência INSS.
262
+ */
263
+ MEDICALLEAVEWITHOUTINSS = "MEDICALLEAVEWITHOUTINSS",
264
+ /**
265
+ * Faltas.
266
+ */
267
+ ABSENCES = "ABSENCES",
268
+ /**
269
+ * Horas extras.
270
+ */
271
+ OVERTIME = "OVERTIME",
272
+ /**
273
+ * Situação de apuração ponto.
274
+ */
275
+ TIMEEVALUATIONSITUATION = "TIMEEVALUATIONSITUATION",
276
+ /**
277
+ * Sobreaviso/Prontidão.
278
+ */
279
+ PRECAUTIONREADINESS = "PRECAUTIONREADINESS",
280
+ /**
281
+ * Mandato sindical.
282
+ */
283
+ TRADEUNIONMANDATE = "TRADEUNIONMANDATE",
284
+ /**
285
+ * Licença acidente de trabalho (pgto empresa).
286
+ */
287
+ WORKACCIDENTLEAVE = "WORKACCIDENTLEAVE",
288
+ /**
289
+ * Licença acidente de trabalho sem incidência INSS.
290
+ */
291
+ WORKACCIDENTLEAVEWITHOUTINSS = "WORKACCIDENTLEAVEWITHOUTINSS",
292
+ /**
293
+ * Aposentadoria por invalidez.
294
+ */
295
+ RETIREMENTDUETODISABILITY = "RETIREMENTDUETODISABILITY",
296
+ /**
297
+ * Outros.
298
+ */
299
+ OTHERS = "OTHERS"
300
+ }
301
+