@muni-sanfer/types-gestor-documental 0.0.1-beta.2 → 0.0.1-beta.20

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 (137) hide show
  1. package/dist/base/entities.d.ts +605 -1
  2. package/dist/base/entities.js +133 -1
  3. package/dist/contracts/archivalSeries.contract.d.ts +50 -0
  4. package/dist/contracts/archivalSeries.contract.js +11 -0
  5. package/dist/contracts/audit.contract.d.ts +32 -0
  6. package/dist/contracts/audit.contract.js +8 -0
  7. package/dist/contracts/caseFile.contract.d.ts +262 -0
  8. package/dist/contracts/caseFile.contract.js +26 -0
  9. package/dist/contracts/document.contract.d.ts +145 -2
  10. package/dist/contracts/document.contract.js +9 -0
  11. package/dist/contracts/documentType.contract.d.ts +24 -1
  12. package/dist/contracts/holiday.contract.d.ts +30 -0
  13. package/dist/contracts/holiday.contract.js +9 -0
  14. package/dist/contracts/index.d.ts +157 -1
  15. package/dist/contracts/index.js +39 -0
  16. package/dist/contracts/indicators.contract.d.ts +103 -0
  17. package/dist/contracts/indicators.contract.js +15 -0
  18. package/dist/contracts/issuingEntity.contract.d.ts +52 -0
  19. package/dist/contracts/issuingEntity.contract.js +11 -0
  20. package/dist/contracts/partsOffice.contract.d.ts +177 -0
  21. package/dist/contracts/partsOffice.contract.js +23 -0
  22. package/dist/contracts/procedure.contract.d.ts +50 -0
  23. package/dist/contracts/procedure.contract.js +11 -0
  24. package/dist/contracts/registerBook.contract.d.ts +27 -0
  25. package/dist/contracts/registerBook.contract.js +8 -0
  26. package/dist/contracts/scan.contract.d.ts +63 -0
  27. package/dist/contracts/scan.contract.js +12 -0
  28. package/dist/contracts/signatureBatch.contract.d.ts +109 -0
  29. package/dist/contracts/signatureBatch.contract.js +12 -0
  30. package/dist/contracts/textSnippet.contract.d.ts +51 -0
  31. package/dist/contracts/textSnippet.contract.js +11 -0
  32. package/dist/contracts/workFolder.contract.d.ts +114 -0
  33. package/dist/contracts/workFolder.contract.js +16 -0
  34. package/dist/entities/archivalSeries/archivalSeries.entity.d.ts +27 -0
  35. package/dist/entities/archivalSeries/archivalSeries.entity.js +2 -0
  36. package/dist/entities/archivalSeries/index.d.ts +1 -0
  37. package/dist/entities/archivalSeries/index.js +17 -0
  38. package/dist/entities/audit/audit.entity.d.ts +27 -0
  39. package/dist/entities/audit/audit.entity.js +2 -0
  40. package/dist/entities/audit/index.d.ts +1 -0
  41. package/dist/entities/audit/index.js +17 -0
  42. package/dist/entities/caseFile/caseFile.entity.d.ts +297 -0
  43. package/dist/entities/caseFile/caseFile.entity.js +2 -0
  44. package/dist/entities/caseFile/index.d.ts +1 -0
  45. package/dist/entities/caseFile/index.js +17 -0
  46. package/dist/entities/document/document.entity.d.ts +252 -0
  47. package/dist/entities/documentType/documentType.entity.d.ts +37 -1
  48. package/dist/entities/holiday/holiday.entity.d.ts +10 -0
  49. package/dist/entities/holiday/holiday.entity.js +2 -0
  50. package/dist/entities/holiday/index.d.ts +1 -0
  51. package/dist/entities/holiday/index.js +17 -0
  52. package/dist/entities/index.d.ts +13 -0
  53. package/dist/entities/index.js +13 -0
  54. package/dist/entities/indicators/index.d.ts +1 -0
  55. package/dist/entities/indicators/index.js +17 -0
  56. package/dist/entities/indicators/indicators.entity.d.ts +152 -0
  57. package/dist/entities/indicators/indicators.entity.js +2 -0
  58. package/dist/entities/issuingEntity/index.d.ts +1 -0
  59. package/dist/entities/issuingEntity/index.js +17 -0
  60. package/dist/entities/issuingEntity/issuingEntity.entity.d.ts +20 -0
  61. package/dist/entities/issuingEntity/issuingEntity.entity.js +2 -0
  62. package/dist/entities/partsOffice/index.d.ts +1 -0
  63. package/dist/entities/partsOffice/index.js +17 -0
  64. package/dist/entities/partsOffice/partsOffice.entity.d.ts +102 -0
  65. package/dist/entities/partsOffice/partsOffice.entity.js +2 -0
  66. package/dist/entities/procedure/index.d.ts +1 -0
  67. package/dist/entities/procedure/index.js +17 -0
  68. package/dist/entities/procedure/procedure.entity.d.ts +20 -0
  69. package/dist/entities/procedure/procedure.entity.js +2 -0
  70. package/dist/entities/registerBook/index.d.ts +1 -0
  71. package/dist/entities/registerBook/index.js +17 -0
  72. package/dist/entities/registerBook/registerBook.entity.d.ts +48 -0
  73. package/dist/entities/registerBook/registerBook.entity.js +2 -0
  74. package/dist/entities/scan/index.d.ts +1 -0
  75. package/dist/entities/scan/index.js +17 -0
  76. package/dist/entities/scan/scan.entity.d.ts +29 -0
  77. package/dist/entities/scan/scan.entity.js +2 -0
  78. package/dist/entities/signatureBatch/index.d.ts +1 -0
  79. package/dist/entities/signatureBatch/index.js +17 -0
  80. package/dist/entities/signatureBatch/signatureBatch.entity.d.ts +107 -0
  81. package/dist/entities/signatureBatch/signatureBatch.entity.js +2 -0
  82. package/dist/entities/textSnippet/index.d.ts +1 -0
  83. package/dist/entities/textSnippet/index.js +17 -0
  84. package/dist/entities/textSnippet/textSnippet.entity.d.ts +20 -0
  85. package/dist/entities/textSnippet/textSnippet.entity.js +2 -0
  86. package/dist/entities/workFolder/index.d.ts +1 -0
  87. package/dist/entities/workFolder/index.js +17 -0
  88. package/dist/entities/workFolder/workFolder.entity.d.ts +83 -0
  89. package/dist/entities/workFolder/workFolder.entity.js +2 -0
  90. package/package.json +1 -1
  91. package/src/base/entities.ts +714 -1
  92. package/src/contracts/archivalSeries.contract.ts +53 -0
  93. package/src/contracts/audit.contract.ts +30 -0
  94. package/src/contracts/caseFile.contract.ts +228 -0
  95. package/src/contracts/document.contract.ts +151 -2
  96. package/src/contracts/documentType.contract.ts +32 -2
  97. package/src/contracts/holiday.contract.ts +16 -0
  98. package/src/contracts/index.ts +54 -1
  99. package/src/contracts/indicators.contract.ts +80 -0
  100. package/src/contracts/issuingEntity.contract.ts +55 -0
  101. package/src/contracts/partsOffice.contract.ts +123 -0
  102. package/src/contracts/procedure.contract.ts +53 -0
  103. package/src/contracts/registerBook.contract.ts +24 -0
  104. package/src/contracts/scan.contract.ts +52 -0
  105. package/src/contracts/signatureBatch.contract.ts +96 -0
  106. package/src/contracts/textSnippet.contract.ts +53 -0
  107. package/src/contracts/workFolder.contract.ts +75 -0
  108. package/src/entities/archivalSeries/archivalSeries.entity.ts +32 -0
  109. package/src/entities/archivalSeries/index.ts +1 -0
  110. package/src/entities/audit/audit.entity.ts +30 -0
  111. package/src/entities/audit/index.ts +1 -0
  112. package/src/entities/caseFile/caseFile.entity.ts +321 -0
  113. package/src/entities/caseFile/index.ts +1 -0
  114. package/src/entities/document/document.entity.ts +250 -0
  115. package/src/entities/documentType/documentType.entity.ts +31 -1
  116. package/src/entities/holiday/holiday.entity.ts +11 -0
  117. package/src/entities/holiday/index.ts +1 -0
  118. package/src/entities/index.ts +13 -0
  119. package/src/entities/indicators/index.ts +1 -0
  120. package/src/entities/indicators/indicators.entity.ts +157 -0
  121. package/src/entities/issuingEntity/index.ts +1 -0
  122. package/src/entities/issuingEntity/issuingEntity.entity.ts +24 -0
  123. package/src/entities/partsOffice/index.ts +1 -0
  124. package/src/entities/partsOffice/partsOffice.entity.ts +107 -0
  125. package/src/entities/procedure/index.ts +1 -0
  126. package/src/entities/procedure/procedure.entity.ts +24 -0
  127. package/src/entities/registerBook/index.ts +1 -0
  128. package/src/entities/registerBook/registerBook.entity.ts +52 -0
  129. package/src/entities/scan/index.ts +1 -0
  130. package/src/entities/scan/scan.entity.ts +32 -0
  131. package/src/entities/signatureBatch/index.ts +1 -0
  132. package/src/entities/signatureBatch/signatureBatch.entity.ts +110 -0
  133. package/src/entities/textSnippet/index.ts +1 -0
  134. package/src/entities/textSnippet/textSnippet.entity.ts +24 -0
  135. package/src/entities/workFolder/index.ts +1 -0
  136. package/src/entities/workFolder/workFolder.entity.ts +84 -0
  137. package/tsconfig.json +1 -3
@@ -1,5 +1,5 @@
1
- import { type DocumentAccessLevel, type DocumentAttachmentEntity, type DocumentDeliveryEntity, type DocumentEntity, type DocumentInstruction, type DocumentStatus } from '../base/entities';
2
- import { type DocumentAnnulResponseEntity, type DocumentCloseDeliveryResponseEntity, type DocumentCreateResponseEntity, type DocumentDeriveResponseEntity, type DocumentDiscardResponseEntity, type DocumentGetAllResponseEntity, type DocumentGetByIdResponseEntity, type DocumentGetSummaryResponseEntity, type DocumentInboxItemEntity, type DocumentPublicFileResponseEntity, type DocumentReviewResponseEntity, type DocumentUpdateResponseEntity, type DocumentVerifyResponseEntity } from '../entities';
1
+ import { type DocumentAccessAction, type DocumentAccessLevel, type DocumentAttachmentEntity, type DocumentDeliveryEntity, type DocumentEntity, type DocumentInstruction, type DocumentParticipantEntity, type DocumentStatus } from '../base/entities';
2
+ import { type DocumentAnnulResponseEntity, type DocumentCloseDeliveryResponseEntity, type DocumentCreateResponseEntity, type DocumentDeriveResponseEntity, type DocumentDiscardResponseEntity, type DocumentEmailCopyIssuedEntity, type DocumentEmailCopyViewEntity, type DocumentReminderEntity, type DocumentGetAllResponseEntity, type DocumentGetByIdResponseEntity, type DocumentGetSummaryResponseEntity, type DocumentInboxItemEntity, type DocumentPublicFileResponseEntity, type DocumentReassignResponseEntity, type DocumentReviewResponseEntity, type DocumentSignManyResponseEntity, type DocumentAgendaResponseEntity, type DocumentComposeResponseEntity, type DocumentComposition, type DocumentTrailExportEntity, type DocumentUpdateResponseEntity, type DocumentVerifyResponseEntity } from '../entities';
3
3
  import { type RpcPage } from './contract';
4
4
  /** Patrones NATS de `document`: `<servicio>.<recurso>.<acción>`. */
5
5
  export declare const DocumentPatterns: {
@@ -10,6 +10,8 @@ export declare const DocumentPatterns: {
10
10
  readonly create: "gestorDocumental.document.create";
11
11
  readonly update: "gestorDocumental.document.update";
12
12
  readonly review: "gestorDocumental.document.review";
13
+ readonly signMany: "gestorDocumental.document.signMany";
14
+ readonly reassign: "gestorDocumental.document.reassign";
13
15
  readonly discard: "gestorDocumental.document.discard";
14
16
  readonly annul: "gestorDocumental.document.annul";
15
17
  readonly derive: "gestorDocumental.document.derive";
@@ -17,6 +19,13 @@ export declare const DocumentPatterns: {
17
19
  readonly verify: "gestorDocumental.document.verify";
18
20
  readonly getPublicFile: "gestorDocumental.document.getPublicFile";
19
21
  readonly getFilesFolder: "gestorDocumental.document.getFilesFolder";
22
+ readonly getAgenda: "gestorDocumental.document.getAgenda";
23
+ readonly exportTrail: "gestorDocumental.document.exportTrail";
24
+ readonly compose: "gestorDocumental.document.compose";
25
+ readonly issueEmailCopies: "gestorDocumental.document.issueEmailCopies";
26
+ readonly getEmailCopy: "gestorDocumental.document.getEmailCopy";
27
+ readonly getEmailCopyFile: "gestorDocumental.document.getEmailCopyFile";
28
+ readonly claimReminders: "gestorDocumental.document.claimReminders";
20
29
  };
21
30
  /**
22
31
  * Funcionario que hace la operación y sus áreas (direcciones y departamentos a los que pertenece o que dirige). Lo
@@ -67,18 +76,80 @@ export interface DocumentWritePayload extends Pick<DocumentEntity, 'subject' | '
67
76
  };
68
77
  attachments?: Pick<DocumentAttachmentEntity, 'name' | 'type' | 'fileId' | 'url'>[];
69
78
  visaEmployeeIds: string[];
79
+ visaStages?: number[] | null;
80
+ restartFlow?: boolean;
81
+ composition?: DocumentComposition | null;
70
82
  signatureEmployeeIds: string[];
71
83
  signatureSheet?: boolean;
72
84
  recipients?: DocumentRecipientInput[];
73
85
  responseDueAt?: string | null;
74
86
  replyToDocumentId?: string | null;
87
+ externalRecipients?: DocumentExternalRecipientInput[];
88
+ restrictionEndsAt?: string | null;
89
+ emailCopies?: DocumentEmailCopyInput[];
75
90
  action?: 'Submit';
76
91
  actor: DocumentActor;
77
92
  }
93
+ /** Persona u organización fuera del Estado que recibe una copia por correo. */
94
+ export interface DocumentEmailCopyInput {
95
+ name: string;
96
+ email: string;
97
+ }
98
+ /** Destinatario externo: una institución de DocDigital y, si se indica, uno de sus usuarios. */
99
+ export interface DocumentExternalRecipientInput {
100
+ entityId: number;
101
+ userId?: number | null;
102
+ }
78
103
  /**
79
104
  * Qué se envía y qué se responde en cada patrón. Generado desde los handlers y los DTO del microservicio.
80
105
  */
106
+ /** Una lectura que queda en el registro de accesos del documento. */
107
+ export interface DocumentAccessInput {
108
+ action: DocumentAccessAction;
109
+ fullName: string;
110
+ }
81
111
  export interface DocumentContract {
112
+ /**
113
+ * Arma el PDF de un documento redactado con una plantilla oficial: membrete, estructura y espacio libre para el
114
+ * número, las visaciones, las firmas y el QR. Con `preview` lo entrega para verlo; si no, lo sube y entrega su
115
+ * `fileId` para guardarlo como el PDF del documento.
116
+ */
117
+ [DocumentPatterns.compose]: {
118
+ payload: {
119
+ documentTypeId: string;
120
+ subject: string;
121
+ composition: DocumentComposition;
122
+ visaCount: number;
123
+ signatureCount: number;
124
+ signatureSheet?: boolean;
125
+ /** Unidad que emite, para el membrete. */
126
+ issuingUnitName?: string | null;
127
+ preview?: boolean;
128
+ actor: DocumentActor;
129
+ };
130
+ response: DocumentComposeResponseEntity;
131
+ };
132
+ /** Plazos del funcionario entre `from` y `to` (hasta 62 días), y lo que tiene vencido sin atender. */
133
+ [DocumentPatterns.getAgenda]: {
134
+ payload: {
135
+ from: string;
136
+ to: string;
137
+ actor: DocumentActor;
138
+ };
139
+ response: DocumentAgendaResponseEntity;
140
+ };
141
+ /**
142
+ * Trazabilidad del documento en PDF: datos, flujo, hechos y huella de sus archivos. Con las mismas reglas de acceso
143
+ * del detalle. `generatedBy`: quién la descarga (va al pie).
144
+ */
145
+ [DocumentPatterns.exportTrail]: {
146
+ payload: Pick<DocumentEntity, 'id'> & {
147
+ actor?: DocumentActor;
148
+ viewAll?: boolean;
149
+ generatedBy: string;
150
+ };
151
+ response: DocumentTrailExportEntity;
152
+ };
82
153
  [DocumentPatterns.getAll]: {
83
154
  payload: {
84
155
  pagination?: {
@@ -92,6 +163,12 @@ export interface DocumentContract {
92
163
  documentTypeId?: string;
93
164
  dateFrom?: string;
94
165
  dateTo?: string;
166
+ number?: number;
167
+ year?: number;
168
+ signerEmployeeId?: string;
169
+ authorEmployeeId?: string;
170
+ directorateCodeReference?: number;
171
+ text?: string;
95
172
  };
96
173
  actor?: DocumentActor;
97
174
  };
@@ -122,6 +199,7 @@ export interface DocumentContract {
122
199
  payload: Pick<DocumentEntity, 'id'> & {
123
200
  actor?: DocumentActor;
124
201
  viewAll?: boolean;
202
+ access?: DocumentAccessInput;
125
203
  };
126
204
  response: DocumentGetByIdResponseEntity;
127
205
  };
@@ -148,6 +226,39 @@ export interface DocumentContract {
148
226
  };
149
227
  response: DocumentReviewResponseEntity;
150
228
  };
229
+ /**
230
+ * Firma con un solo OTP varios documentos que el funcionario tiene en su turno de firma (los de un lote, o los que
231
+ * marcó en su bandeja). Cada uno queda firmado aparte; los que no caben en la solicitud quedan en `remaining`.
232
+ */
233
+ [DocumentPatterns.signMany]: {
234
+ payload: {
235
+ ids: DocumentEntity['id'][];
236
+ observation?: string | null;
237
+ signer: {
238
+ rut: string;
239
+ fullName: string;
240
+ role: string;
241
+ areaName: string;
242
+ };
243
+ otp?: string;
244
+ actor: DocumentActor;
245
+ };
246
+ response: DocumentSignManyResponseEntity;
247
+ };
248
+ /**
249
+ * Pasa un turno pendiente (de visación o de firma) a otro funcionario, por ausencia o por error, y lo deja en la
250
+ * trazabilidad con su motivo. Puede hacerlo quien redactó el documento; con `anyDocument`, quien lleva el registro.
251
+ */
252
+ [DocumentPatterns.reassign]: {
253
+ payload: Pick<DocumentEntity, 'id'> & {
254
+ participantId: DocumentParticipantEntity['id'];
255
+ employeeId: string;
256
+ reason: string;
257
+ actor: DocumentActor;
258
+ anyDocument?: boolean;
259
+ };
260
+ response: DocumentReassignResponseEntity;
261
+ };
151
262
  [DocumentPatterns.discard]: {
152
263
  payload: Pick<DocumentEntity, 'id'> & {
153
264
  actor: DocumentActor;
@@ -173,6 +284,7 @@ export interface DocumentContract {
173
284
  instruction: DocumentInstruction;
174
285
  note?: string | null;
175
286
  dueAt?: string | null;
287
+ dueBusinessDays?: number | null;
176
288
  actor: DocumentActor;
177
289
  viewAll?: boolean;
178
290
  };
@@ -201,6 +313,37 @@ export interface DocumentContract {
201
313
  };
202
314
  response: DocumentPublicFileResponseEntity;
203
315
  };
316
+ /**
317
+ * Emite las copias por correo pendientes de estos documentos, si ya corresponde (finalizado y, si va por DocDigital,
318
+ * despachado): genera el enlace de cada una. Se puede pedir de más: lo ya emitido no se repite.
319
+ */
320
+ [DocumentPatterns.issueEmailCopies]: {
321
+ payload: {
322
+ documentIds: string[];
323
+ };
324
+ response: DocumentEmailCopyIssuedEntity[];
325
+ };
326
+ /** Sin sesión, con el token de la copia: el documento y quién lo emitió. */
327
+ [DocumentPatterns.getEmailCopy]: {
328
+ payload: {
329
+ token: string;
330
+ };
331
+ response: DocumentEmailCopyViewEntity;
332
+ };
333
+ /**
334
+ * Recordatorios de plazos que corresponde enviar ahora: lo que vence en un día hábil y lo vencido sin atender. Cada
335
+ * uno se entrega una sola vez (queda marcado al reclamarlo), aunque lo pidan varias instancias del gateway a la vez.
336
+ */
337
+ [DocumentPatterns.claimReminders]: {
338
+ payload: Record<string, never>;
339
+ response: DocumentReminderEntity[];
340
+ };
341
+ [DocumentPatterns.getEmailCopyFile]: {
342
+ payload: {
343
+ token: string;
344
+ };
345
+ response: DocumentPublicFileResponseEntity;
346
+ };
204
347
  /** Carpeta de Drive de los documentos y sus anexos: el gateway la pide antes de subir cada archivo. */
205
348
  [DocumentPatterns.getFilesFolder]: {
206
349
  payload: Record<string, never>;
@@ -10,6 +10,8 @@ exports.DocumentPatterns = {
10
10
  create: 'gestorDocumental.document.create',
11
11
  update: 'gestorDocumental.document.update',
12
12
  review: 'gestorDocumental.document.review',
13
+ signMany: 'gestorDocumental.document.signMany',
14
+ reassign: 'gestorDocumental.document.reassign',
13
15
  discard: 'gestorDocumental.document.discard',
14
16
  annul: 'gestorDocumental.document.annul',
15
17
  derive: 'gestorDocumental.document.derive',
@@ -17,4 +19,11 @@ exports.DocumentPatterns = {
17
19
  verify: 'gestorDocumental.document.verify',
18
20
  getPublicFile: 'gestorDocumental.document.getPublicFile',
19
21
  getFilesFolder: 'gestorDocumental.document.getFilesFolder',
22
+ getAgenda: 'gestorDocumental.document.getAgenda',
23
+ exportTrail: 'gestorDocumental.document.exportTrail',
24
+ compose: 'gestorDocumental.document.compose',
25
+ issueEmailCopies: 'gestorDocumental.document.issueEmailCopies',
26
+ getEmailCopy: 'gestorDocumental.document.getEmailCopy',
27
+ getEmailCopyFile: 'gestorDocumental.document.getEmailCopyFile',
28
+ claimReminders: 'gestorDocumental.document.claimReminders',
20
29
  };
@@ -1,4 +1,4 @@
1
- import { type DocumentCategory, type DocumentTypeEntity } from '../base/entities';
1
+ import { type DocumentCategory, type DocumentParticipantRole, type DocumentTypeEntity } from '../base/entities';
2
2
  import { type DocumentTypeCreateResponseEntity, type DocumentTypeGetAllResponseEntity, type DocumentTypeGetByIdResponseEntity, type DocumentTypeUpdateResponseEntity } from '../entities';
3
3
  import { type RpcPage } from './contract';
4
4
  /** Patrones NATS de `documentType`: `<servicio>.<recurso>.<acción>`. */
@@ -9,6 +9,23 @@ export declare const DocumentTypePatterns: {
9
9
  readonly update: "gestorDocumental.documentType.update";
10
10
  readonly setEnabled: "gestorDocumental.documentType.setEnabled";
11
11
  };
12
+ /**
13
+ * Paso del flujo sugerido de un tipo documental: un funcionario en particular, o quien dirija una dirección al
14
+ * momento de redactar (su jefatura o, con subrogancia activa, el subrogante). El nombre de la dirección lo resuelve
15
+ * el gateway; el navegador solo indica cuál es.
16
+ */
17
+ export type DocumentFlowStepInput = ({
18
+ role: DocumentParticipantRole;
19
+ type: 'Employee';
20
+ employeeId: string;
21
+ } | {
22
+ role: DocumentParticipantRole;
23
+ type: 'DirectorateHead';
24
+ directorateCodeReference: number;
25
+ name: string;
26
+ }) & {
27
+ withPrevious?: boolean;
28
+ };
12
29
  /** Datos de un tipo documental al crearlo o editarlo. */
13
30
  export interface DocumentTypeWritePayload {
14
31
  name: string;
@@ -17,8 +34,13 @@ export interface DocumentTypeWritePayload {
17
34
  description?: string | null;
18
35
  nextCorrelative?: number;
19
36
  resetsYearly?: boolean;
37
+ numbered?: boolean;
20
38
  directorateCodeReference?: number | null;
39
+ archivalSeriesId?: string | null;
40
+ issuingEntityId?: string | null;
41
+ sharesNumberingWithId?: string | null;
21
42
  enabled?: boolean;
43
+ flowSteps?: DocumentFlowStepInput[];
22
44
  }
23
45
  /**
24
46
  * Qué se envía y qué se responde en cada patrón. Generado desde los handlers y los DTO del microservicio.
@@ -34,6 +56,7 @@ export interface DocumentTypeContract {
34
56
  search?: string;
35
57
  enabled?: boolean;
36
58
  category?: DocumentCategory;
59
+ usableByDirectorates?: number[];
37
60
  };
38
61
  };
39
62
  response: RpcPage<DocumentTypeGetAllResponseEntity[]>;
@@ -0,0 +1,30 @@
1
+ import { type HolidayRemoveResponseEntity, type HolidayResponseEntity } from '../entities';
2
+ /** Patrones NATS de `holiday`: feriados para contar días hábiles. */
3
+ export declare const HolidayPatterns: {
4
+ readonly getAll: "gestorDocumental.holiday.getAll";
5
+ readonly create: "gestorDocumental.holiday.create";
6
+ readonly remove: "gestorDocumental.holiday.remove";
7
+ };
8
+ export interface HolidayContract {
9
+ /** Feriados de un año, en orden. */
10
+ [HolidayPatterns.getAll]: {
11
+ payload: {
12
+ year: number;
13
+ };
14
+ response: HolidayResponseEntity[];
15
+ };
16
+ /** `date` como «AAAA-MM-DD». */
17
+ [HolidayPatterns.create]: {
18
+ payload: {
19
+ date: string;
20
+ name: string;
21
+ };
22
+ response: HolidayResponseEntity;
23
+ };
24
+ [HolidayPatterns.remove]: {
25
+ payload: {
26
+ id: string;
27
+ };
28
+ response: HolidayRemoveResponseEntity;
29
+ };
30
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HolidayPatterns = void 0;
4
+ /** Patrones NATS de `holiday`: feriados para contar días hábiles. */
5
+ exports.HolidayPatterns = {
6
+ getAll: 'gestorDocumental.holiday.getAll',
7
+ create: 'gestorDocumental.holiday.create',
8
+ remove: 'gestorDocumental.holiday.remove',
9
+ };
@@ -1,8 +1,34 @@
1
+ import { type CaseFileContract } from './caseFile.contract';
1
2
  import { type DocumentContract } from './document.contract';
2
3
  import { type DocumentTypeContract } from './documentType.contract';
4
+ import { type IssuingEntityContract } from './issuingEntity.contract';
5
+ import { type ArchivalSeriesContract } from './archivalSeries.contract';
6
+ import { type TextSnippetContract } from './textSnippet.contract';
7
+ import { type HolidayContract } from './holiday.contract';
8
+ import { type IndicatorsContract } from './indicators.contract';
9
+ import { type AuditContract } from './audit.contract';
10
+ import { type ScanContract } from './scan.contract';
11
+ import { type PartsOfficeContract } from './partsOffice.contract';
12
+ import { type ProcedureContract } from './procedure.contract';
13
+ import { type RegisterBookContract } from './registerBook.contract';
14
+ import { type SignatureBatchContract } from './signatureBatch.contract';
15
+ import { type WorkFolderContract } from './workFolder.contract';
3
16
  export * from './contract';
4
17
  export * from './document.contract';
5
18
  export * from './documentType.contract';
19
+ export * from './procedure.contract';
20
+ export * from './issuingEntity.contract';
21
+ export * from './caseFile.contract';
22
+ export * from './partsOffice.contract';
23
+ export * from './registerBook.contract';
24
+ export * from './signatureBatch.contract';
25
+ export * from './workFolder.contract';
26
+ export * from './scan.contract';
27
+ export * from './archivalSeries.contract';
28
+ export * from './textSnippet.contract';
29
+ export * from './holiday.contract';
30
+ export * from './indicators.contract';
31
+ export * from './audit.contract';
6
32
  /** Patrones NATS de gestor-documental-ms, por recurso: `gestorDocumental.<recurso>.<acción>`. */
7
33
  export declare const GestorDocumentalPatterns: {
8
34
  readonly documentType: {
@@ -20,6 +46,8 @@ export declare const GestorDocumentalPatterns: {
20
46
  readonly create: "gestorDocumental.document.create";
21
47
  readonly update: "gestorDocumental.document.update";
22
48
  readonly review: "gestorDocumental.document.review";
49
+ readonly signMany: "gestorDocumental.document.signMany";
50
+ readonly reassign: "gestorDocumental.document.reassign";
23
51
  readonly discard: "gestorDocumental.document.discard";
24
52
  readonly annul: "gestorDocumental.document.annul";
25
53
  readonly derive: "gestorDocumental.document.derive";
@@ -27,7 +55,135 @@ export declare const GestorDocumentalPatterns: {
27
55
  readonly verify: "gestorDocumental.document.verify";
28
56
  readonly getPublicFile: "gestorDocumental.document.getPublicFile";
29
57
  readonly getFilesFolder: "gestorDocumental.document.getFilesFolder";
58
+ readonly getAgenda: "gestorDocumental.document.getAgenda";
59
+ readonly exportTrail: "gestorDocumental.document.exportTrail";
60
+ readonly compose: "gestorDocumental.document.compose";
61
+ readonly issueEmailCopies: "gestorDocumental.document.issueEmailCopies";
62
+ readonly getEmailCopy: "gestorDocumental.document.getEmailCopy";
63
+ readonly getEmailCopyFile: "gestorDocumental.document.getEmailCopyFile";
64
+ readonly claimReminders: "gestorDocumental.document.claimReminders";
65
+ };
66
+ readonly procedure: {
67
+ readonly getAll: "gestorDocumental.procedure.getAll";
68
+ readonly getById: "gestorDocumental.procedure.getById";
69
+ readonly create: "gestorDocumental.procedure.create";
70
+ readonly update: "gestorDocumental.procedure.update";
71
+ readonly setEnabled: "gestorDocumental.procedure.setEnabled";
72
+ };
73
+ readonly issuingEntity: {
74
+ readonly getAll: "gestorDocumental.issuingEntity.getAll";
75
+ readonly getById: "gestorDocumental.issuingEntity.getById";
76
+ readonly create: "gestorDocumental.issuingEntity.create";
77
+ readonly update: "gestorDocumental.issuingEntity.update";
78
+ readonly setEnabled: "gestorDocumental.issuingEntity.setEnabled";
79
+ };
80
+ readonly caseFile: {
81
+ readonly getAll: "gestorDocumental.caseFile.getAll";
82
+ readonly getById: "gestorDocumental.caseFile.getById";
83
+ readonly create: "gestorDocumental.caseFile.create";
84
+ readonly update: "gestorDocumental.caseFile.update";
85
+ readonly addEntry: "gestorDocumental.caseFile.addEntry";
86
+ readonly addBatch: "gestorDocumental.caseFile.addBatch";
87
+ readonly voidEntry: "gestorDocumental.caseFile.voidEntry";
88
+ readonly moveEntry: "gestorDocumental.caseFile.moveEntry";
89
+ readonly share: "gestorDocumental.caseFile.share";
90
+ readonly unshare: "gestorDocumental.caseFile.unshare";
91
+ readonly close: "gestorDocumental.caseFile.close";
92
+ readonly getEntryFile: "gestorDocumental.caseFile.getEntryFile";
93
+ readonly getExport: "gestorDocumental.caseFile.getExport";
94
+ readonly createShareLink: "gestorDocumental.caseFile.createShareLink";
95
+ readonly getShareLinks: "gestorDocumental.caseFile.getShareLinks";
96
+ readonly revokeShareLink: "gestorDocumental.caseFile.revokeShareLink";
97
+ readonly getShared: "gestorDocumental.caseFile.getShared";
98
+ readonly getSharedEntryFile: "gestorDocumental.caseFile.getSharedEntryFile";
99
+ readonly getSharedExport: "gestorDocumental.caseFile.getSharedExport";
100
+ readonly verifyExport: "gestorDocumental.caseFile.verifyExport";
101
+ };
102
+ readonly partsOffice: {
103
+ readonly getStatus: "gestorDocumental.partsOffice.getStatus";
104
+ readonly getSummary: "gestorDocumental.partsOffice.getSummary";
105
+ readonly getEntities: "gestorDocumental.partsOffice.getEntities";
106
+ readonly getOwnEntities: "gestorDocumental.partsOffice.getOwnEntities";
107
+ readonly getUsers: "gestorDocumental.partsOffice.getUsers";
108
+ readonly getDocumentTypes: "gestorDocumental.partsOffice.getDocumentTypes";
109
+ readonly getDispatches: "gestorDocumental.partsOffice.getDispatches";
110
+ readonly dispatch: "gestorDocumental.partsOffice.dispatch";
111
+ readonly returnDispatch: "gestorDocumental.partsOffice.returnDispatch";
112
+ readonly resendDispatch: "gestorDocumental.partsOffice.resendDispatch";
113
+ readonly getDispatchFile: "gestorDocumental.partsOffice.getDispatchFile";
114
+ readonly getInbound: "gestorDocumental.partsOffice.getInbound";
115
+ readonly syncInbound: "gestorDocumental.partsOffice.syncInbound";
116
+ readonly registerInbound: "gestorDocumental.partsOffice.registerInbound";
117
+ readonly acknowledgeInbound: "gestorDocumental.partsOffice.acknowledgeInbound";
118
+ readonly returnInbound: "gestorDocumental.partsOffice.returnInbound";
119
+ readonly getInboundFile: "gestorDocumental.partsOffice.getInboundFile";
120
+ };
121
+ readonly registerBook: {
122
+ readonly get: "gestorDocumental.registerBook.get";
123
+ readonly export: "gestorDocumental.registerBook.export";
124
+ };
125
+ readonly signatureBatch: {
126
+ readonly getAll: "gestorDocumental.signatureBatch.getAll";
127
+ readonly getById: "gestorDocumental.signatureBatch.getById";
128
+ readonly create: "gestorDocumental.signatureBatch.create";
129
+ readonly visa: "gestorDocumental.signatureBatch.visa";
130
+ readonly sign: "gestorDocumental.signatureBatch.sign";
131
+ readonly reject: "gestorDocumental.signatureBatch.reject";
132
+ };
133
+ readonly workFolder: {
134
+ readonly getAll: "gestorDocumental.workFolder.getAll";
135
+ readonly getById: "gestorDocumental.workFolder.getById";
136
+ readonly create: "gestorDocumental.workFolder.create";
137
+ readonly update: "gestorDocumental.workFolder.update";
138
+ readonly share: "gestorDocumental.workFolder.share";
139
+ readonly unshare: "gestorDocumental.workFolder.unshare";
140
+ readonly addItem: "gestorDocumental.workFolder.addItem";
141
+ readonly removeItem: "gestorDocumental.workFolder.removeItem";
142
+ readonly remove: "gestorDocumental.workFolder.remove";
143
+ readonly convert: "gestorDocumental.workFolder.convert";
144
+ };
145
+ readonly scan: {
146
+ readonly create: "gestorDocumental.scan.create";
147
+ readonly getById: "gestorDocumental.scan.getById";
148
+ readonly getFile: "gestorDocumental.scan.getFile";
149
+ readonly getByToken: "gestorDocumental.scan.getByToken";
150
+ readonly addPage: "gestorDocumental.scan.addPage";
151
+ readonly finish: "gestorDocumental.scan.finish";
152
+ };
153
+ readonly archivalSeries: {
154
+ readonly getAll: "gestorDocumental.archivalSeries.getAll";
155
+ readonly getById: "gestorDocumental.archivalSeries.getById";
156
+ readonly create: "gestorDocumental.archivalSeries.create";
157
+ readonly update: "gestorDocumental.archivalSeries.update";
158
+ readonly setEnabled: "gestorDocumental.archivalSeries.setEnabled";
159
+ };
160
+ readonly textSnippet: {
161
+ readonly getAll: "gestorDocumental.textSnippet.getAll";
162
+ readonly getById: "gestorDocumental.textSnippet.getById";
163
+ readonly create: "gestorDocumental.textSnippet.create";
164
+ readonly update: "gestorDocumental.textSnippet.update";
165
+ readonly setEnabled: "gestorDocumental.textSnippet.setEnabled";
166
+ };
167
+ readonly holiday: {
168
+ readonly getAll: "gestorDocumental.holiday.getAll";
169
+ readonly create: "gestorDocumental.holiday.create";
170
+ readonly remove: "gestorDocumental.holiday.remove";
171
+ };
172
+ readonly indicators: {
173
+ readonly getManagement: "gestorDocumental.indicators.getManagement";
174
+ readonly getQuality: "gestorDocumental.indicators.getQuality";
175
+ readonly export: "gestorDocumental.indicators.export";
176
+ readonly updateQualityMetric: "gestorDocumental.indicators.updateQualityMetric";
177
+ readonly getOutages: "gestorDocumental.indicators.getOutages";
178
+ readonly createOutage: "gestorDocumental.indicators.createOutage";
179
+ readonly updateOutage: "gestorDocumental.indicators.updateOutage";
180
+ readonly removeOutage: "gestorDocumental.indicators.removeOutage";
181
+ readonly getOutageCertificate: "gestorDocumental.indicators.getOutageCertificate";
182
+ };
183
+ readonly audit: {
184
+ readonly getEvents: "gestorDocumental.audit.getEvents";
185
+ readonly export: "gestorDocumental.audit.export";
30
186
  };
31
187
  };
32
188
  /** Contrato completo de gestor-documental-ms: la unión de los contratos de sus recursos. */
33
- export type GestorDocumentalContract = DocumentTypeContract & DocumentContract;
189
+ export type GestorDocumentalContract = DocumentTypeContract & DocumentContract & ProcedureContract & IssuingEntityContract & CaseFileContract & PartsOfficeContract & RegisterBookContract & SignatureBatchContract & WorkFolderContract & ScanContract & ArchivalSeriesContract & TextSnippetContract & HolidayContract & IndicatorsContract & AuditContract;
@@ -15,13 +15,52 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.GestorDocumentalPatterns = void 0;
18
+ const caseFile_contract_1 = require("./caseFile.contract");
18
19
  const document_contract_1 = require("./document.contract");
19
20
  const documentType_contract_1 = require("./documentType.contract");
21
+ const issuingEntity_contract_1 = require("./issuingEntity.contract");
22
+ const archivalSeries_contract_1 = require("./archivalSeries.contract");
23
+ const textSnippet_contract_1 = require("./textSnippet.contract");
24
+ const holiday_contract_1 = require("./holiday.contract");
25
+ const indicators_contract_1 = require("./indicators.contract");
26
+ const audit_contract_1 = require("./audit.contract");
27
+ const scan_contract_1 = require("./scan.contract");
28
+ const partsOffice_contract_1 = require("./partsOffice.contract");
29
+ const procedure_contract_1 = require("./procedure.contract");
30
+ const registerBook_contract_1 = require("./registerBook.contract");
31
+ const signatureBatch_contract_1 = require("./signatureBatch.contract");
32
+ const workFolder_contract_1 = require("./workFolder.contract");
20
33
  __exportStar(require("./contract"), exports);
21
34
  __exportStar(require("./document.contract"), exports);
22
35
  __exportStar(require("./documentType.contract"), exports);
36
+ __exportStar(require("./procedure.contract"), exports);
37
+ __exportStar(require("./issuingEntity.contract"), exports);
38
+ __exportStar(require("./caseFile.contract"), exports);
39
+ __exportStar(require("./partsOffice.contract"), exports);
40
+ __exportStar(require("./registerBook.contract"), exports);
41
+ __exportStar(require("./signatureBatch.contract"), exports);
42
+ __exportStar(require("./workFolder.contract"), exports);
43
+ __exportStar(require("./scan.contract"), exports);
44
+ __exportStar(require("./archivalSeries.contract"), exports);
45
+ __exportStar(require("./textSnippet.contract"), exports);
46
+ __exportStar(require("./holiday.contract"), exports);
47
+ __exportStar(require("./indicators.contract"), exports);
48
+ __exportStar(require("./audit.contract"), exports);
23
49
  /** Patrones NATS de gestor-documental-ms, por recurso: `gestorDocumental.<recurso>.<acción>`. */
24
50
  exports.GestorDocumentalPatterns = {
25
51
  documentType: documentType_contract_1.DocumentTypePatterns,
26
52
  document: document_contract_1.DocumentPatterns,
53
+ procedure: procedure_contract_1.ProcedurePatterns,
54
+ issuingEntity: issuingEntity_contract_1.IssuingEntityPatterns,
55
+ caseFile: caseFile_contract_1.CaseFilePatterns,
56
+ partsOffice: partsOffice_contract_1.PartsOfficePatterns,
57
+ registerBook: registerBook_contract_1.RegisterBookPatterns,
58
+ signatureBatch: signatureBatch_contract_1.SignatureBatchPatterns,
59
+ workFolder: workFolder_contract_1.WorkFolderPatterns,
60
+ scan: scan_contract_1.ScanPatterns,
61
+ archivalSeries: archivalSeries_contract_1.ArchivalSeriesPatterns,
62
+ textSnippet: textSnippet_contract_1.TextSnippetPatterns,
63
+ holiday: holiday_contract_1.HolidayPatterns,
64
+ indicators: indicators_contract_1.IndicatorsPatterns,
65
+ audit: audit_contract_1.AuditPatterns,
27
66
  };
@@ -0,0 +1,103 @@
1
+ import { type IndicatorsFileEntity, type ManagementIndicatorsEntity, type QualityMetricSettingResponseEntity, type QualityReportEntity, type ServiceOutageRemoveResponseEntity, type ServiceOutageResponseEntity } from '../entities';
2
+ import { type QualityMetricKey, type ServiceOutageKind } from '../base/entities';
3
+ /** Patrones NATS de `indicators`: indicadores de gestión y Plan de Mejora Continua (DS 11/2023). */
4
+ export declare const IndicatorsPatterns: {
5
+ readonly getManagement: "gestorDocumental.indicators.getManagement";
6
+ readonly getQuality: "gestorDocumental.indicators.getQuality";
7
+ readonly export: "gestorDocumental.indicators.export";
8
+ readonly updateQualityMetric: "gestorDocumental.indicators.updateQualityMetric";
9
+ readonly getOutages: "gestorDocumental.indicators.getOutages";
10
+ readonly createOutage: "gestorDocumental.indicators.createOutage";
11
+ readonly updateOutage: "gestorDocumental.indicators.updateOutage";
12
+ readonly removeOutage: "gestorDocumental.indicators.removeOutage";
13
+ readonly getOutageCertificate: "gestorDocumental.indicators.getOutageCertificate";
14
+ };
15
+ /** Período: días de Chile «AAAA-MM-DD», hasta dos años. */
16
+ export interface IndicatorsPeriodQuery {
17
+ from: string;
18
+ to: string;
19
+ }
20
+ export interface ManagementIndicatorsQuery extends IndicatorsPeriodQuery {
21
+ documentTypeId?: string | null;
22
+ directorateCode?: number | null;
23
+ }
24
+ export interface ServiceOutageInput {
25
+ kind: ServiceOutageKind;
26
+ startedAt: string;
27
+ endedAt?: string | null;
28
+ cause: string;
29
+ affectedServices?: string | null;
30
+ }
31
+ export interface IndicatorsContract {
32
+ [IndicatorsPatterns.getManagement]: {
33
+ payload: ManagementIndicatorsQuery;
34
+ response: ManagementIndicatorsEntity;
35
+ };
36
+ [IndicatorsPatterns.getQuality]: {
37
+ payload: IndicatorsPeriodQuery;
38
+ response: QualityReportEntity;
39
+ };
40
+ /**
41
+ * Indicadores y Plan de Mejora en una planilla Excel. `generatedBy`: quién la descarga. `unitNames`: nombre de cada
42
+ * unidad (`c:<código de dirección>` o `d:<id de departamento>`), que el ms no conoce.
43
+ */
44
+ [IndicatorsPatterns.export]: {
45
+ payload: ManagementIndicatorsQuery & {
46
+ generatedBy: string;
47
+ unitNames?: Record<string, string>;
48
+ };
49
+ response: IndicatorsFileEntity;
50
+ };
51
+ /** Umbral y, en las métricas declaradas, su valor y respaldo. */
52
+ [IndicatorsPatterns.updateQualityMetric]: {
53
+ payload: {
54
+ key: QualityMetricKey;
55
+ threshold: number;
56
+ declaredValue?: number | null;
57
+ declaredNote?: string | null;
58
+ actor: {
59
+ fullName: string;
60
+ };
61
+ };
62
+ response: QualityMetricSettingResponseEntity;
63
+ };
64
+ [IndicatorsPatterns.getOutages]: {
65
+ payload: {
66
+ year: number;
67
+ };
68
+ response: ServiceOutageResponseEntity[];
69
+ };
70
+ [IndicatorsPatterns.createOutage]: {
71
+ payload: ServiceOutageInput & {
72
+ actor: {
73
+ employeeId: string;
74
+ fullName: string;
75
+ };
76
+ };
77
+ response: ServiceOutageResponseEntity;
78
+ };
79
+ [IndicatorsPatterns.updateOutage]: {
80
+ payload: ServiceOutageInput & {
81
+ id: string;
82
+ actor: {
83
+ employeeId: string;
84
+ fullName: string;
85
+ };
86
+ };
87
+ response: ServiceOutageResponseEntity;
88
+ };
89
+ [IndicatorsPatterns.removeOutage]: {
90
+ payload: {
91
+ id: string;
92
+ };
93
+ response: ServiceOutageRemoveResponseEntity;
94
+ };
95
+ /** Certificado de indisponibilidad (DS 10/2023) en PDF, de una caída ya terminada. */
96
+ [IndicatorsPatterns.getOutageCertificate]: {
97
+ payload: {
98
+ id: string;
99
+ generatedBy: string;
100
+ };
101
+ response: IndicatorsFileEntity;
102
+ };
103
+ }