@muni-sanfer/types-gestor-documental 0.0.1-beta.3 → 0.0.1-beta.30
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/base/entities.d.ts +978 -1
- package/dist/base/entities.js +263 -1
- package/dist/contracts/accessRequest.contract.d.ts +109 -0
- package/dist/contracts/accessRequest.contract.js +12 -0
- package/dist/contracts/archivalSeries.contract.d.ts +56 -0
- package/dist/contracts/archivalSeries.contract.js +11 -0
- package/dist/contracts/audit.contract.d.ts +32 -0
- package/dist/contracts/audit.contract.js +8 -0
- package/dist/contracts/caseFile.contract.d.ts +262 -0
- package/dist/contracts/caseFile.contract.js +26 -0
- package/dist/contracts/dataProtection.contract.d.ts +251 -0
- package/dist/contracts/dataProtection.contract.js +23 -0
- package/dist/contracts/desk.contract.d.ts +86 -0
- package/dist/contracts/desk.contract.js +13 -0
- package/dist/contracts/document.contract.d.ts +130 -2
- package/dist/contracts/document.contract.js +8 -0
- package/dist/contracts/documentType.contract.d.ts +11 -1
- package/dist/contracts/holiday.contract.d.ts +30 -0
- package/dist/contracts/holiday.contract.js +9 -0
- package/dist/contracts/index.d.ts +234 -1
- package/dist/contracts/index.js +60 -0
- package/dist/contracts/indicators.contract.d.ts +103 -0
- package/dist/contracts/indicators.contract.js +15 -0
- package/dist/contracts/issuingEntity.contract.d.ts +52 -0
- package/dist/contracts/issuingEntity.contract.js +11 -0
- package/dist/contracts/partsOffice.contract.d.ts +263 -0
- package/dist/contracts/partsOffice.contract.js +27 -0
- package/dist/contracts/procedure.contract.d.ts +50 -0
- package/dist/contracts/procedure.contract.js +11 -0
- package/dist/contracts/registerBook.contract.d.ts +27 -0
- package/dist/contracts/registerBook.contract.js +8 -0
- package/dist/contracts/repositoryExport.contract.d.ts +57 -0
- package/dist/contracts/repositoryExport.contract.js +13 -0
- package/dist/contracts/retention.contract.d.ts +58 -0
- package/dist/contracts/retention.contract.js +11 -0
- package/dist/contracts/scan.contract.d.ts +63 -0
- package/dist/contracts/scan.contract.js +12 -0
- package/dist/contracts/signatureBatch.contract.d.ts +109 -0
- package/dist/contracts/signatureBatch.contract.js +12 -0
- package/dist/contracts/signatureCheck.contract.d.ts +14 -0
- package/dist/contracts/signatureCheck.contract.js +7 -0
- package/dist/contracts/textSnippet.contract.d.ts +51 -0
- package/dist/contracts/textSnippet.contract.js +11 -0
- package/dist/contracts/transparency.contract.d.ts +96 -0
- package/dist/contracts/transparency.contract.js +12 -0
- package/dist/contracts/workFolder.contract.d.ts +114 -0
- package/dist/contracts/workFolder.contract.js +16 -0
- package/dist/entities/accessRequest/accessRequest.entity.d.ts +73 -0
- package/dist/entities/accessRequest/accessRequest.entity.js +2 -0
- package/dist/entities/accessRequest/index.d.ts +1 -0
- package/dist/entities/accessRequest/index.js +17 -0
- package/dist/entities/archivalSeries/archivalSeries.entity.d.ts +32 -0
- package/dist/entities/archivalSeries/archivalSeries.entity.js +2 -0
- package/dist/entities/archivalSeries/index.d.ts +1 -0
- package/dist/entities/archivalSeries/index.js +17 -0
- package/dist/entities/audit/audit.entity.d.ts +27 -0
- package/dist/entities/audit/audit.entity.js +2 -0
- package/dist/entities/audit/index.d.ts +1 -0
- package/dist/entities/audit/index.js +17 -0
- package/dist/entities/caseFile/caseFile.entity.d.ts +302 -0
- package/dist/entities/caseFile/caseFile.entity.js +2 -0
- package/dist/entities/caseFile/index.d.ts +1 -0
- package/dist/entities/caseFile/index.js +17 -0
- package/dist/entities/dataProtection/dataProtection.entity.d.ts +174 -0
- package/dist/entities/dataProtection/dataProtection.entity.js +2 -0
- package/dist/entities/dataProtection/index.d.ts +1 -0
- package/dist/entities/dataProtection/index.js +17 -0
- package/dist/entities/desk/desk.entity.d.ts +21 -0
- package/dist/entities/desk/desk.entity.js +2 -0
- package/dist/entities/desk/index.d.ts +1 -0
- package/dist/entities/desk/index.js +17 -0
- package/dist/entities/document/document.entity.d.ts +256 -1
- package/dist/entities/documentType/documentType.entity.d.ts +23 -0
- package/dist/entities/holiday/holiday.entity.d.ts +10 -0
- package/dist/entities/holiday/holiday.entity.js +2 -0
- package/dist/entities/holiday/index.d.ts +1 -0
- package/dist/entities/holiday/index.js +17 -0
- package/dist/entities/index.d.ts +20 -0
- package/dist/entities/index.js +20 -0
- package/dist/entities/indicators/index.d.ts +1 -0
- package/dist/entities/indicators/index.js +17 -0
- package/dist/entities/indicators/indicators.entity.d.ts +152 -0
- package/dist/entities/indicators/indicators.entity.js +2 -0
- package/dist/entities/issuingEntity/index.d.ts +1 -0
- package/dist/entities/issuingEntity/index.js +17 -0
- package/dist/entities/issuingEntity/issuingEntity.entity.d.ts +20 -0
- package/dist/entities/issuingEntity/issuingEntity.entity.js +2 -0
- package/dist/entities/partsOffice/index.d.ts +1 -0
- package/dist/entities/partsOffice/index.js +17 -0
- package/dist/entities/partsOffice/partsOffice.entity.d.ts +137 -0
- package/dist/entities/partsOffice/partsOffice.entity.js +2 -0
- package/dist/entities/procedure/index.d.ts +1 -0
- package/dist/entities/procedure/index.js +17 -0
- package/dist/entities/procedure/procedure.entity.d.ts +20 -0
- package/dist/entities/procedure/procedure.entity.js +2 -0
- package/dist/entities/registerBook/index.d.ts +1 -0
- package/dist/entities/registerBook/index.js +17 -0
- package/dist/entities/registerBook/registerBook.entity.d.ts +48 -0
- package/dist/entities/registerBook/registerBook.entity.js +2 -0
- package/dist/entities/repositoryExport/index.d.ts +1 -0
- package/dist/entities/repositoryExport/index.js +17 -0
- package/dist/entities/repositoryExport/repositoryExport.entity.d.ts +124 -0
- package/dist/entities/repositoryExport/repositoryExport.entity.js +2 -0
- package/dist/entities/retention/index.d.ts +1 -0
- package/dist/entities/retention/index.js +17 -0
- package/dist/entities/retention/retention.entity.d.ts +49 -0
- package/dist/entities/retention/retention.entity.js +2 -0
- package/dist/entities/scan/index.d.ts +1 -0
- package/dist/entities/scan/index.js +17 -0
- package/dist/entities/scan/scan.entity.d.ts +29 -0
- package/dist/entities/scan/scan.entity.js +2 -0
- package/dist/entities/signatureBatch/index.d.ts +1 -0
- package/dist/entities/signatureBatch/index.js +17 -0
- package/dist/entities/signatureBatch/signatureBatch.entity.d.ts +107 -0
- package/dist/entities/signatureBatch/signatureBatch.entity.js +2 -0
- package/dist/entities/signatureCheck/index.d.ts +1 -0
- package/dist/entities/signatureCheck/index.js +17 -0
- package/dist/entities/signatureCheck/signatureCheck.entity.d.ts +49 -0
- package/dist/entities/signatureCheck/signatureCheck.entity.js +2 -0
- package/dist/entities/textSnippet/index.d.ts +1 -0
- package/dist/entities/textSnippet/index.js +17 -0
- package/dist/entities/textSnippet/textSnippet.entity.d.ts +20 -0
- package/dist/entities/textSnippet/textSnippet.entity.js +2 -0
- package/dist/entities/transparency/index.d.ts +1 -0
- package/dist/entities/transparency/index.js +17 -0
- package/dist/entities/transparency/transparency.entity.d.ts +77 -0
- package/dist/entities/transparency/transparency.entity.js +2 -0
- package/dist/entities/workFolder/index.d.ts +1 -0
- package/dist/entities/workFolder/index.js +17 -0
- package/dist/entities/workFolder/workFolder.entity.d.ts +83 -0
- package/dist/entities/workFolder/workFolder.entity.js +2 -0
- package/package.json +1 -1
- package/src/base/entities.ts +1163 -1
- package/src/contracts/accessRequest.contract.ts +81 -0
- package/src/contracts/archivalSeries.contract.ts +59 -0
- package/src/contracts/audit.contract.ts +30 -0
- package/src/contracts/caseFile.contract.ts +228 -0
- package/src/contracts/dataProtection.contract.ts +195 -0
- package/src/contracts/desk.contract.ts +68 -0
- package/src/contracts/document.contract.ts +133 -2
- package/src/contracts/documentType.contract.ts +25 -3
- package/src/contracts/holiday.contract.ts +16 -0
- package/src/contracts/index.ts +82 -1
- package/src/contracts/indicators.contract.ts +80 -0
- package/src/contracts/issuingEntity.contract.ts +55 -0
- package/src/contracts/partsOffice.contract.ts +199 -0
- package/src/contracts/procedure.contract.ts +53 -0
- package/src/contracts/registerBook.contract.ts +24 -0
- package/src/contracts/repositoryExport.contract.ts +54 -0
- package/src/contracts/retention.contract.ts +44 -0
- package/src/contracts/scan.contract.ts +52 -0
- package/src/contracts/signatureBatch.contract.ts +96 -0
- package/src/contracts/signatureCheck.contract.ts +11 -0
- package/src/contracts/textSnippet.contract.ts +53 -0
- package/src/contracts/transparency.contract.ts +55 -0
- package/src/contracts/workFolder.contract.ts +75 -0
- package/src/entities/accessRequest/accessRequest.entity.ts +78 -0
- package/src/entities/accessRequest/index.ts +1 -0
- package/src/entities/archivalSeries/archivalSeries.entity.ts +37 -0
- package/src/entities/archivalSeries/index.ts +1 -0
- package/src/entities/audit/audit.entity.ts +30 -0
- package/src/entities/audit/index.ts +1 -0
- package/src/entities/caseFile/caseFile.entity.ts +326 -0
- package/src/entities/caseFile/index.ts +1 -0
- package/src/entities/dataProtection/dataProtection.entity.ts +185 -0
- package/src/entities/dataProtection/index.ts +1 -0
- package/src/entities/desk/desk.entity.ts +24 -0
- package/src/entities/desk/index.ts +1 -0
- package/src/entities/document/document.entity.ts +252 -0
- package/src/entities/documentType/documentType.entity.ts +16 -0
- package/src/entities/holiday/holiday.entity.ts +11 -0
- package/src/entities/holiday/index.ts +1 -0
- package/src/entities/index.ts +20 -0
- package/src/entities/indicators/index.ts +1 -0
- package/src/entities/indicators/indicators.entity.ts +157 -0
- package/src/entities/issuingEntity/index.ts +1 -0
- package/src/entities/issuingEntity/issuingEntity.entity.ts +24 -0
- package/src/entities/partsOffice/index.ts +1 -0
- package/src/entities/partsOffice/partsOffice.entity.ts +138 -0
- package/src/entities/procedure/index.ts +1 -0
- package/src/entities/procedure/procedure.entity.ts +24 -0
- package/src/entities/registerBook/index.ts +1 -0
- package/src/entities/registerBook/registerBook.entity.ts +52 -0
- package/src/entities/repositoryExport/index.ts +1 -0
- package/src/entities/repositoryExport/repositoryExport.entity.ts +86 -0
- package/src/entities/retention/index.ts +1 -0
- package/src/entities/retention/retention.entity.ts +53 -0
- package/src/entities/scan/index.ts +1 -0
- package/src/entities/scan/scan.entity.ts +32 -0
- package/src/entities/signatureBatch/index.ts +1 -0
- package/src/entities/signatureBatch/signatureBatch.entity.ts +110 -0
- package/src/entities/signatureCheck/index.ts +1 -0
- package/src/entities/signatureCheck/signatureCheck.entity.ts +51 -0
- package/src/entities/textSnippet/index.ts +1 -0
- package/src/entities/textSnippet/textSnippet.entity.ts +24 -0
- package/src/entities/transparency/index.ts +1 -0
- package/src/entities/transparency/transparency.entity.ts +78 -0
- package/src/entities/workFolder/index.ts +1 -0
- package/src/entities/workFolder/workFolder.entity.ts +84 -0
- package/tsconfig.json +1 -3
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type DeskFileSource } from '../../base/entities';
|
|
2
|
+
/** Archivo suelto del escritorio de un funcionario («Sin clasificar»). */
|
|
3
|
+
export interface DeskFileResponseEntity {
|
|
4
|
+
id: string;
|
|
5
|
+
fileName: string;
|
|
6
|
+
size: number;
|
|
7
|
+
sha256: string;
|
|
8
|
+
source: DeskFileSource;
|
|
9
|
+
description: string | null;
|
|
10
|
+
/** Es un PDF: se puede redactar una comunicación con él o firmarlo como documento suelto. */
|
|
11
|
+
isPdf: boolean;
|
|
12
|
+
createdAt: string;
|
|
13
|
+
}
|
|
14
|
+
export interface DeskSummaryEntity {
|
|
15
|
+
/** Archivos del escritorio aún sin clasificar. */
|
|
16
|
+
unclassified: number;
|
|
17
|
+
}
|
|
18
|
+
export interface DeskOkResponseEntity {
|
|
19
|
+
id: string;
|
|
20
|
+
ok: boolean;
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './desk.entity';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./desk.entity"), exports);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DocumentAnnulledNumberEntity, DocumentAttachmentEntity, DocumentDeliveryEntity, DocumentEntity, DocumentParticipantEntity, DocumentRecipientEntity, DocumentTrackingEntity, DocumentTypeEntity } from '../../base/entities';
|
|
1
|
+
import { type CommunicationMeans, DocumentAnnulledNumberEntity, DocumentAttachmentEntity, DocumentDeliveryEntity, DocumentEntity, DocumentParticipantEntity, DocumentRecipientEntity, DocumentTrackingEntity, DocumentTypeEntity } from '../../base/entities';
|
|
2
2
|
/** Tipo documental de un documento, con lo necesario para citarlo. */
|
|
3
3
|
export interface DocumentTypeSummaryEntity {
|
|
4
4
|
id: DocumentTypeEntity['id'];
|
|
@@ -10,6 +10,8 @@ export interface DocumentParticipantResponseEntity {
|
|
|
10
10
|
id: DocumentParticipantEntity['id'];
|
|
11
11
|
role: DocumentParticipantEntity['role'];
|
|
12
12
|
order: DocumentParticipantEntity['order'];
|
|
13
|
+
/** Los visadores de una misma etapa visan a la vez. */
|
|
14
|
+
stage: DocumentParticipantEntity['stage'];
|
|
13
15
|
status: DocumentParticipantEntity['status'];
|
|
14
16
|
employeeId: DocumentParticipantEntity['employeeId'];
|
|
15
17
|
fullName: DocumentParticipantEntity['fullName'];
|
|
@@ -55,6 +57,39 @@ export interface DocumentLinkEntity {
|
|
|
55
57
|
createdByFullName: DocumentEntity['createdByFullName'];
|
|
56
58
|
finishedAt: DocumentEntity['finishedAt'];
|
|
57
59
|
documentType: DocumentTypeSummaryEntity;
|
|
60
|
+
/** Folio de ingreso de Oficina de Partes, si llegó por DocDigital. */
|
|
61
|
+
intakeNumber: DocumentEntity['intakeNumber'];
|
|
62
|
+
intakeYear: DocumentEntity['intakeYear'];
|
|
63
|
+
}
|
|
64
|
+
/** Institución (y usuario) de DocDigital a la que va dirigido un documento. */
|
|
65
|
+
export interface DocumentExternalRecipientResponseEntity {
|
|
66
|
+
id: string;
|
|
67
|
+
entityId: number;
|
|
68
|
+
entityName: string;
|
|
69
|
+
userId: number | null;
|
|
70
|
+
userName: string | null;
|
|
71
|
+
userPosition: string | null;
|
|
72
|
+
}
|
|
73
|
+
/** Despacho de un documento por DocDigital. */
|
|
74
|
+
export interface DocumentDispatchResponseEntity {
|
|
75
|
+
id: string;
|
|
76
|
+
status: 'Pending' | 'Dispatched' | 'Returned';
|
|
77
|
+
folio: string | null;
|
|
78
|
+
docDigitalTypeName: string | null;
|
|
79
|
+
docDigitalDocumentId: string | null;
|
|
80
|
+
dispatchedAt: string | null;
|
|
81
|
+
dispatchedByFullName: string | null;
|
|
82
|
+
returnedAt: string | null;
|
|
83
|
+
returnedByFullName: string | null;
|
|
84
|
+
returnReason: string | null;
|
|
85
|
+
/** Registro por contingencia: salió por otro medio porque no se pudo por DocDigital. */
|
|
86
|
+
contingency: {
|
|
87
|
+
means: CommunicationMeans;
|
|
88
|
+
sentTo: string | null;
|
|
89
|
+
reason: string | null;
|
|
90
|
+
/** Nombre del comprobante, si se adjuntó. */
|
|
91
|
+
receiptName: string | null;
|
|
92
|
+
} | null;
|
|
58
93
|
}
|
|
59
94
|
export interface DocumentGetAllResponseEntity {
|
|
60
95
|
id: DocumentEntity['id'];
|
|
@@ -69,18 +104,37 @@ export interface DocumentGetAllResponseEntity {
|
|
|
69
104
|
createdByEmployeeId: DocumentEntity['createdByEmployeeId'];
|
|
70
105
|
createdByFullName: DocumentEntity['createdByFullName'];
|
|
71
106
|
documentType: DocumentTypeSummaryEntity;
|
|
107
|
+
intakeNumber: DocumentEntity['intakeNumber'];
|
|
108
|
+
intakeYear: DocumentEntity['intakeYear'];
|
|
109
|
+
origin: DocumentEntity['origin'];
|
|
110
|
+
/** Con búsqueda de texto completo: el fragmento donde aparece lo buscado, con lo encontrado entre ⟦ y ⟧. */
|
|
111
|
+
snippet?: string | null;
|
|
72
112
|
currentParticipant: Pick<DocumentParticipantResponseEntity, 'role' | 'employeeId' | 'fullName'> | null;
|
|
113
|
+
otherCurrentCount: number;
|
|
73
114
|
distribution: {
|
|
74
115
|
total: number;
|
|
75
116
|
read: number;
|
|
76
117
|
} | null;
|
|
77
118
|
}
|
|
78
119
|
/** Una entrada de la bandeja de recibidos: la entrega y el documento al que corresponde. */
|
|
120
|
+
/** Semáforo de un plazo pendiente: a tiempo, por vencer (2 días hábiles o menos) o vencido. */
|
|
121
|
+
export type DocumentDueStatus = 'OnTime' | 'DueSoon' | 'Overdue';
|
|
79
122
|
export interface DocumentInboxItemEntity extends DocumentDeliveryResponseEntity {
|
|
123
|
+
/** Semáforo de lo pendiente con plazo (sin plazo o ya atendido, `null`). */
|
|
124
|
+
dueStatus: DocumentDueStatus | null;
|
|
125
|
+
/** Días hábiles que quedan, sin contar hoy (vencido: `null`). */
|
|
126
|
+
businessDaysLeft: number | null;
|
|
80
127
|
document: DocumentLinkEntity;
|
|
81
128
|
}
|
|
82
129
|
export interface DocumentGetByIdResponseEntity {
|
|
83
130
|
id: DocumentEntity['id'];
|
|
131
|
+
issuerName: string;
|
|
132
|
+
archivalSeries: {
|
|
133
|
+
id: string;
|
|
134
|
+
code: string;
|
|
135
|
+
name: string;
|
|
136
|
+
} | null;
|
|
137
|
+
restrictionEndsAt: string | null;
|
|
84
138
|
subject: DocumentEntity['subject'];
|
|
85
139
|
keywords: DocumentEntity['keywords'];
|
|
86
140
|
accessLevel: DocumentEntity['accessLevel'];
|
|
@@ -115,7 +169,32 @@ export interface DocumentGetByIdResponseEntity {
|
|
|
115
169
|
recipients: DocumentRecipientResponseEntity[];
|
|
116
170
|
deliveries: DocumentDeliveryResponseEntity[];
|
|
117
171
|
replyTo: DocumentLinkEntity | null;
|
|
172
|
+
/** Lote de firma al que pertenece. */
|
|
173
|
+
batch: {
|
|
174
|
+
id: string;
|
|
175
|
+
name: string;
|
|
176
|
+
} | null;
|
|
177
|
+
/** Contenido redactado en el sistema con una plantilla, para volver a editarlo (sin valor si se subió un PDF). */
|
|
178
|
+
composition: DocumentComposition | null;
|
|
118
179
|
replies: DocumentLinkEntity[];
|
|
180
|
+
/** Expedientes en que está incorporado y que quien consulta puede ver. */
|
|
181
|
+
caseFiles: {
|
|
182
|
+
id: string;
|
|
183
|
+
code: string;
|
|
184
|
+
title: string;
|
|
185
|
+
status: 'Open' | 'Closed';
|
|
186
|
+
}[];
|
|
187
|
+
/** De dónde viene: del gestor o recibido por DocDigital, con su folio de ingreso y los datos de quien lo envió. */
|
|
188
|
+
origin: DocumentEntity['origin'];
|
|
189
|
+
intakeNumber: DocumentEntity['intakeNumber'];
|
|
190
|
+
intakeYear: DocumentEntity['intakeYear'];
|
|
191
|
+
externalFolio: DocumentEntity['externalFolio'];
|
|
192
|
+
externalSender: DocumentEntity['externalSender'];
|
|
193
|
+
externalDate: DocumentEntity['externalDate'];
|
|
194
|
+
/** Instituciones de DocDigital a quienes va dirigido, y su despacho por Oficina de Partes. */
|
|
195
|
+
externalRecipients: DocumentExternalRecipientResponseEntity[];
|
|
196
|
+
dispatch: DocumentDispatchResponseEntity | null;
|
|
197
|
+
emailCopies: DocumentEmailCopyResponseEntity[];
|
|
119
198
|
documentType: DocumentTypeSummaryEntity;
|
|
120
199
|
participants: DocumentParticipantResponseEntity[];
|
|
121
200
|
attachments: {
|
|
@@ -129,6 +208,7 @@ export interface DocumentGetByIdResponseEntity {
|
|
|
129
208
|
id: DocumentTrackingEntity['id'];
|
|
130
209
|
action: DocumentTrackingEntity['action'];
|
|
131
210
|
observation: DocumentTrackingEntity['observation'];
|
|
211
|
+
sha256: DocumentTrackingEntity['sha256'];
|
|
132
212
|
employeeId: DocumentTrackingEntity['employeeId'];
|
|
133
213
|
employeeFullName: DocumentTrackingEntity['employeeFullName'];
|
|
134
214
|
createdAt: DocumentTrackingEntity['createdAt'];
|
|
@@ -140,6 +220,8 @@ export interface DocumentGetByIdResponseEntity {
|
|
|
140
220
|
canDerive: boolean;
|
|
141
221
|
canReply: boolean;
|
|
142
222
|
canReassign: boolean;
|
|
223
|
+
/** Quien consulta redactó el documento (o lo ingresó, si llegó por DocDigital). */
|
|
224
|
+
isAuthor: boolean;
|
|
143
225
|
inbox: DocumentDeliveryResponseEntity[];
|
|
144
226
|
};
|
|
145
227
|
signatureRequiresOtp: boolean;
|
|
@@ -148,6 +230,11 @@ export interface DocumentGetByIdResponseEntity {
|
|
|
148
230
|
export interface DocumentGetSummaryResponseEntity {
|
|
149
231
|
toVisa: number;
|
|
150
232
|
toSign: number;
|
|
233
|
+
/** Lotes de firma con documentos en su turno (los documentos de un lote no se cuentan en `toVisa` ni `toSign`). */
|
|
234
|
+
batches: {
|
|
235
|
+
toVisa: number;
|
|
236
|
+
toSign: number;
|
|
237
|
+
};
|
|
151
238
|
created: {
|
|
152
239
|
drafted: number;
|
|
153
240
|
inProgress: number;
|
|
@@ -173,6 +260,27 @@ export interface DocumentReviewResponseEntity {
|
|
|
173
260
|
ok: boolean;
|
|
174
261
|
status: DocumentEntity['status'];
|
|
175
262
|
}
|
|
263
|
+
/** Resultado de un documento en una firma de varios documentos. */
|
|
264
|
+
export interface DocumentSignManyResultEntity {
|
|
265
|
+
id: DocumentEntity['id'];
|
|
266
|
+
ok: boolean;
|
|
267
|
+
/** Estado en que quedó, si se firmó. */
|
|
268
|
+
status?: DocumentEntity['status'];
|
|
269
|
+
/** Por qué no se firmó. */
|
|
270
|
+
message?: string;
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* Firma de varios documentos con un solo OTP. FirmaGob admite 5 MB por solicitud: los que no cupieron quedan en
|
|
274
|
+
* `remaining`, en el turno del firmante, para firmarlos con un OTP nuevo.
|
|
275
|
+
*/
|
|
276
|
+
export interface DocumentSignManyResponseEntity {
|
|
277
|
+
results: DocumentSignManyResultEntity[];
|
|
278
|
+
signed: number;
|
|
279
|
+
failed: number;
|
|
280
|
+
remaining: DocumentEntity['id'][];
|
|
281
|
+
/** FirmaGob avisó que el OTP venció antes de firmar todos los documentos de la solicitud. */
|
|
282
|
+
otpExpired: boolean;
|
|
283
|
+
}
|
|
176
284
|
export interface DocumentDiscardResponseEntity {
|
|
177
285
|
id: DocumentEntity['id'];
|
|
178
286
|
ok: boolean;
|
|
@@ -196,6 +304,7 @@ export interface DocumentVerifyResponseEntity {
|
|
|
196
304
|
state: DocumentVerificationState;
|
|
197
305
|
verificationCode: string;
|
|
198
306
|
documentType: Pick<DocumentTypeSummaryEntity, 'name' | 'abbreviation'>;
|
|
307
|
+
issuerName: string;
|
|
199
308
|
correlative: DocumentEntity['correlative'];
|
|
200
309
|
correlativeYear: DocumentEntity['correlativeYear'];
|
|
201
310
|
numberedAt: DocumentEntity['numberedAt'];
|
|
@@ -227,3 +336,149 @@ export interface DocumentReassignResponseEntity {
|
|
|
227
336
|
id: DocumentEntity['id'];
|
|
228
337
|
ok: boolean;
|
|
229
338
|
}
|
|
339
|
+
/**
|
|
340
|
+
* Un plazo en la agenda de un funcionario: lo que recibió (como destinatario o por derivación) y debe atender, o un
|
|
341
|
+
* documento que envió y del que espera respuesta.
|
|
342
|
+
*/
|
|
343
|
+
export interface DocumentAgendaItemEntity {
|
|
344
|
+
kind: 'Received' | 'Sent';
|
|
345
|
+
/** Semáforo de lo pendiente (atendido o ya respondido por todos: `null`). */
|
|
346
|
+
dueStatus: DocumentDueStatus | null;
|
|
347
|
+
/** Días hábiles que quedan, sin contar hoy (vencido: `null`). */
|
|
348
|
+
businessDaysLeft: number | null;
|
|
349
|
+
/** La entrega (lo recibido) o el documento (lo enviado). */
|
|
350
|
+
id: string;
|
|
351
|
+
documentId: DocumentEntity['id'];
|
|
352
|
+
subject: DocumentEntity['subject'];
|
|
353
|
+
documentType: {
|
|
354
|
+
name: string;
|
|
355
|
+
abbreviation: string | null;
|
|
356
|
+
};
|
|
357
|
+
correlative: DocumentEntity['correlative'];
|
|
358
|
+
correlativeYear: DocumentEntity['correlativeYear'];
|
|
359
|
+
intakeNumber: DocumentEntity['intakeNumber'];
|
|
360
|
+
intakeYear: DocumentEntity['intakeYear'];
|
|
361
|
+
/** Plazo, en ISO 8601. */
|
|
362
|
+
dueAt: string;
|
|
363
|
+
/** Lo recibido: cuándo lo marcó como atendido (sin valor si sigue pendiente). */
|
|
364
|
+
closedAt: string | null;
|
|
365
|
+
/** Lo recibido: la providencia y quién lo derivó. */
|
|
366
|
+
instruction: DocumentDeliveryEntity['instruction'] | null;
|
|
367
|
+
sentByFullName: string | null;
|
|
368
|
+
/** Lo enviado: a cuántos les llegó y cuántos aún no lo atienden. */
|
|
369
|
+
recipients: {
|
|
370
|
+
total: number;
|
|
371
|
+
pending: number;
|
|
372
|
+
} | null;
|
|
373
|
+
}
|
|
374
|
+
export interface DocumentAgendaResponseEntity {
|
|
375
|
+
/** Plazos dentro del período pedido. */
|
|
376
|
+
items: DocumentAgendaItemEntity[];
|
|
377
|
+
/** Lo recibido con el plazo vencido y sin atender, de cualquier fecha (los 50 más antiguos). */
|
|
378
|
+
overdue: DocumentAgendaItemEntity[];
|
|
379
|
+
}
|
|
380
|
+
/** Trazabilidad de un documento en PDF, lista para descargar. */
|
|
381
|
+
export interface DocumentTrailExportEntity {
|
|
382
|
+
fileName: string;
|
|
383
|
+
contentType: string;
|
|
384
|
+
contentBase64: string;
|
|
385
|
+
}
|
|
386
|
+
/** Plantilla oficial con que se redacta un documento en el sistema. */
|
|
387
|
+
export type DocumentTemplateKind = 'Decree' | 'Office' | 'Memorandum' | 'General';
|
|
388
|
+
/**
|
|
389
|
+
* Contenido de un documento redactado en el sistema. Cada plantilla tiene su estructura; los párrafos son texto
|
|
390
|
+
* (un salto de línea dentro de un párrafo se respeta). La materia es el asunto del documento.
|
|
391
|
+
*/
|
|
392
|
+
export type DocumentComposition = {
|
|
393
|
+
template: 'Decree';
|
|
394
|
+
/** VISTOS: las normas y antecedentes. */
|
|
395
|
+
vistos: string[];
|
|
396
|
+
/** CONSIDERANDO: cada fundamento, numerado. */
|
|
397
|
+
considerando: string[];
|
|
398
|
+
/** DECRETO: cada punto resolutivo, numerado. */
|
|
399
|
+
resolutive: string[];
|
|
400
|
+
/** Fórmula de cierre: «Anótese, comuníquese y archívese». */
|
|
401
|
+
closing: string;
|
|
402
|
+
distribution: string[];
|
|
403
|
+
} | {
|
|
404
|
+
template: 'Office';
|
|
405
|
+
/** ANT.: antecedentes (otro oficio, una solicitud). */
|
|
406
|
+
antecedents?: string | null;
|
|
407
|
+
from: string;
|
|
408
|
+
to: string;
|
|
409
|
+
body: string[];
|
|
410
|
+
closing: string;
|
|
411
|
+
distribution: string[];
|
|
412
|
+
} | {
|
|
413
|
+
template: 'Memorandum';
|
|
414
|
+
from: string;
|
|
415
|
+
to: string;
|
|
416
|
+
body: string[];
|
|
417
|
+
closing?: string | null;
|
|
418
|
+
distribution: string[];
|
|
419
|
+
} | {
|
|
420
|
+
template: 'General';
|
|
421
|
+
title: string;
|
|
422
|
+
body: string[];
|
|
423
|
+
closing?: string | null;
|
|
424
|
+
};
|
|
425
|
+
/** PDF armado con una plantilla: para la vista previa (`contentBase64`) o ya subido (`fileId`). */
|
|
426
|
+
export interface DocumentComposeResponseEntity {
|
|
427
|
+
fileName: string;
|
|
428
|
+
fileId?: string;
|
|
429
|
+
contentBase64?: string;
|
|
430
|
+
}
|
|
431
|
+
/** Copia por correo de un documento, como la ve quien lo consulta en el gestor. */
|
|
432
|
+
export interface DocumentEmailCopyResponseEntity {
|
|
433
|
+
id: string;
|
|
434
|
+
name: string;
|
|
435
|
+
email: string;
|
|
436
|
+
/** Cuándo se envió (sin valor: aún no corresponde). */
|
|
437
|
+
issuedAt: string | null;
|
|
438
|
+
expiresAt: string | null;
|
|
439
|
+
openedAt: string | null;
|
|
440
|
+
downloadCount: number;
|
|
441
|
+
}
|
|
442
|
+
/** Copia recién emitida: el gateway le envía el enlace a su destinatario. El token viaja solo aquí. */
|
|
443
|
+
export interface DocumentEmailCopyIssuedEntity {
|
|
444
|
+
copyId: string;
|
|
445
|
+
documentId: string;
|
|
446
|
+
name: string;
|
|
447
|
+
email: string;
|
|
448
|
+
token: string;
|
|
449
|
+
expiresAt: string;
|
|
450
|
+
/** Cómo se cita: «D.E. N° 590/2026», o el tipo si no lleva número. */
|
|
451
|
+
folio: string;
|
|
452
|
+
subject: string;
|
|
453
|
+
issuerName: string;
|
|
454
|
+
}
|
|
455
|
+
/** El documento como lo ve quien abre su copia por correo. */
|
|
456
|
+
export interface DocumentEmailCopyViewEntity {
|
|
457
|
+
recipientName: string;
|
|
458
|
+
expiresAt: string;
|
|
459
|
+
documentTypeName: string;
|
|
460
|
+
folio: string;
|
|
461
|
+
subject: string;
|
|
462
|
+
issuerName: string;
|
|
463
|
+
finishedAt: string | null;
|
|
464
|
+
verificationCode: string | null;
|
|
465
|
+
signers: {
|
|
466
|
+
fullName: string;
|
|
467
|
+
position: string | null;
|
|
468
|
+
signedAt: string | null;
|
|
469
|
+
}[];
|
|
470
|
+
}
|
|
471
|
+
/** Recordatorio de un plazo: al recibido y, si venció, también a su jefatura (la resuelve el gateway). */
|
|
472
|
+
export interface DocumentReminderEntity {
|
|
473
|
+
deliveryId: string;
|
|
474
|
+
kind: 'DueSoon' | 'Overdue';
|
|
475
|
+
employeeId: string;
|
|
476
|
+
fullName: string;
|
|
477
|
+
documentId: string;
|
|
478
|
+
/** Cómo se cita: «D.E. N° 590/2026», el folio de ingreso o el tipo. */
|
|
479
|
+
folio: string;
|
|
480
|
+
subject: string;
|
|
481
|
+
dueAt: string;
|
|
482
|
+
instruction: DocumentDeliveryEntity['instruction'];
|
|
483
|
+
sentByFullName: string | null;
|
|
484
|
+
}
|
|
@@ -9,6 +9,7 @@ export interface DocumentTypeFlowStepResponseEntity {
|
|
|
9
9
|
directorateCodeReference: DocumentTypeFlowStepEntity['directorateCodeReference'];
|
|
10
10
|
name: DocumentTypeFlowStepEntity['name'];
|
|
11
11
|
position: DocumentTypeFlowStepEntity['position'];
|
|
12
|
+
withPrevious: DocumentTypeFlowStepEntity['withPrevious'];
|
|
12
13
|
}
|
|
13
14
|
export interface DocumentTypeGetAllResponseEntity {
|
|
14
15
|
id: DocumentTypeEntity['id'];
|
|
@@ -19,7 +20,29 @@ export interface DocumentTypeGetAllResponseEntity {
|
|
|
19
20
|
nextCorrelative: DocumentTypeEntity['nextCorrelative'];
|
|
20
21
|
correlativeYear: DocumentTypeEntity['correlativeYear'];
|
|
21
22
|
resetsYearly: DocumentTypeEntity['resetsYearly'];
|
|
23
|
+
numbered: DocumentTypeEntity['numbered'];
|
|
24
|
+
/** Transparencia Activa: sus documentos se publican cada mes, en esta sección del Portal. */
|
|
25
|
+
activeTransparency: DocumentTypeEntity['activeTransparency'];
|
|
26
|
+
transparencySection: DocumentTypeEntity['transparencySection'];
|
|
22
27
|
directorateCodeReference: DocumentTypeEntity['directorateCodeReference'];
|
|
28
|
+
archivalSeries: {
|
|
29
|
+
id: string;
|
|
30
|
+
code: string;
|
|
31
|
+
name: string;
|
|
32
|
+
} | null;
|
|
33
|
+
issuingEntity: {
|
|
34
|
+
id: string;
|
|
35
|
+
name: string;
|
|
36
|
+
shortName: string | null;
|
|
37
|
+
} | null;
|
|
38
|
+
sharesNumberingWith: {
|
|
39
|
+
id: string;
|
|
40
|
+
name: string;
|
|
41
|
+
} | null;
|
|
42
|
+
numberingMembers: {
|
|
43
|
+
id: string;
|
|
44
|
+
name: string;
|
|
45
|
+
}[];
|
|
23
46
|
enabled: DocumentTypeEntity['enabled'];
|
|
24
47
|
flow: {
|
|
25
48
|
visa: number;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './holiday.entity';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./holiday.entity"), exports);
|
package/dist/entities/index.d.ts
CHANGED
|
@@ -1,2 +1,22 @@
|
|
|
1
1
|
export * from './documentType';
|
|
2
2
|
export * from './document';
|
|
3
|
+
export * from './procedure';
|
|
4
|
+
export * from './issuingEntity';
|
|
5
|
+
export * from './caseFile';
|
|
6
|
+
export * from './partsOffice';
|
|
7
|
+
export * from './registerBook';
|
|
8
|
+
export * from './signatureBatch';
|
|
9
|
+
export * from './workFolder';
|
|
10
|
+
export * from './scan';
|
|
11
|
+
export * from './archivalSeries';
|
|
12
|
+
export * from './textSnippet';
|
|
13
|
+
export * from './holiday';
|
|
14
|
+
export * from './indicators';
|
|
15
|
+
export * from './audit';
|
|
16
|
+
export * from './signatureCheck';
|
|
17
|
+
export * from './repositoryExport';
|
|
18
|
+
export * from './retention';
|
|
19
|
+
export * from './accessRequest';
|
|
20
|
+
export * from './transparency';
|
|
21
|
+
export * from './dataProtection';
|
|
22
|
+
export * from './desk';
|
package/dist/entities/index.js
CHANGED
|
@@ -16,3 +16,23 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./documentType"), exports);
|
|
18
18
|
__exportStar(require("./document"), exports);
|
|
19
|
+
__exportStar(require("./procedure"), exports);
|
|
20
|
+
__exportStar(require("./issuingEntity"), exports);
|
|
21
|
+
__exportStar(require("./caseFile"), exports);
|
|
22
|
+
__exportStar(require("./partsOffice"), exports);
|
|
23
|
+
__exportStar(require("./registerBook"), exports);
|
|
24
|
+
__exportStar(require("./signatureBatch"), exports);
|
|
25
|
+
__exportStar(require("./workFolder"), exports);
|
|
26
|
+
__exportStar(require("./scan"), exports);
|
|
27
|
+
__exportStar(require("./archivalSeries"), exports);
|
|
28
|
+
__exportStar(require("./textSnippet"), exports);
|
|
29
|
+
__exportStar(require("./holiday"), exports);
|
|
30
|
+
__exportStar(require("./indicators"), exports);
|
|
31
|
+
__exportStar(require("./audit"), exports);
|
|
32
|
+
__exportStar(require("./signatureCheck"), exports);
|
|
33
|
+
__exportStar(require("./repositoryExport"), exports);
|
|
34
|
+
__exportStar(require("./retention"), exports);
|
|
35
|
+
__exportStar(require("./accessRequest"), exports);
|
|
36
|
+
__exportStar(require("./transparency"), exports);
|
|
37
|
+
__exportStar(require("./dataProtection"), exports);
|
|
38
|
+
__exportStar(require("./desk"), exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './indicators.entity';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./indicators.entity"), exports);
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { type DocumentParticipantRole, type QualityMetricKey, type ServiceOutageKind } from '../../base/entities';
|
|
2
|
+
/** Tiempos de tramitación, desde el primer envío a tramitación hasta la última firma. En días corridos y hábiles. */
|
|
3
|
+
export interface ProcessingTimeEntity {
|
|
4
|
+
count: number;
|
|
5
|
+
averageDays: number | null;
|
|
6
|
+
medianDays: number | null;
|
|
7
|
+
p90Days: number | null;
|
|
8
|
+
averageBusinessDays: number | null;
|
|
9
|
+
}
|
|
10
|
+
export interface IndicatorsByTypeEntity {
|
|
11
|
+
documentTypeId: string;
|
|
12
|
+
name: string;
|
|
13
|
+
submitted: number;
|
|
14
|
+
finished: number;
|
|
15
|
+
rejections: number;
|
|
16
|
+
averageDays: number | null;
|
|
17
|
+
averageBusinessDays: number | null;
|
|
18
|
+
}
|
|
19
|
+
/** Unidad emisora: una dirección (código de caschile) o un departamento; el nombre lo pone el front. */
|
|
20
|
+
export interface IndicatorsByUnitEntity {
|
|
21
|
+
directorateCode: number | null;
|
|
22
|
+
departmentId: string | null;
|
|
23
|
+
submitted: number;
|
|
24
|
+
finished: number;
|
|
25
|
+
averageDays: number | null;
|
|
26
|
+
averageBusinessDays: number | null;
|
|
27
|
+
}
|
|
28
|
+
/** Quién demora más en su turno de visación o firma, y cuánto tiene pendiente hoy. */
|
|
29
|
+
export interface IndicatorsBottleneckEntity {
|
|
30
|
+
employeeId: string;
|
|
31
|
+
fullName: string;
|
|
32
|
+
role: DocumentParticipantRole;
|
|
33
|
+
resolved: number;
|
|
34
|
+
averageDays: number | null;
|
|
35
|
+
pending: number;
|
|
36
|
+
oldestPendingDays: number | null;
|
|
37
|
+
}
|
|
38
|
+
export interface ManagementIndicatorsEntity {
|
|
39
|
+
/** Período consultado, días de Chile «AAAA-MM-DD». */
|
|
40
|
+
from: string;
|
|
41
|
+
to: string;
|
|
42
|
+
generatedAt: string;
|
|
43
|
+
filters: {
|
|
44
|
+
documentTypeId: string | null;
|
|
45
|
+
directorateCode: number | null;
|
|
46
|
+
};
|
|
47
|
+
volume: {
|
|
48
|
+
/** Enviados a tramitación por primera vez en el período. */
|
|
49
|
+
submitted: number;
|
|
50
|
+
finished: number;
|
|
51
|
+
/** Rechazos de visadores y firmantes (un documento puede tener varios). */
|
|
52
|
+
rejections: number;
|
|
53
|
+
annulled: number;
|
|
54
|
+
discarded: number;
|
|
55
|
+
/** En tramitación hoy, sin importar el período. */
|
|
56
|
+
inProcess: number;
|
|
57
|
+
};
|
|
58
|
+
processing: ProcessingTimeEntity;
|
|
59
|
+
byType: IndicatorsByTypeEntity[];
|
|
60
|
+
byUnit: IndicatorsByUnitEntity[];
|
|
61
|
+
/** Por mes de Chile «AAAA-MM». */
|
|
62
|
+
monthly: {
|
|
63
|
+
month: string;
|
|
64
|
+
submitted: number;
|
|
65
|
+
finished: number;
|
|
66
|
+
}[];
|
|
67
|
+
bottlenecks: IndicatorsBottleneckEntity[];
|
|
68
|
+
/** Plazos de lo recibido y derivado que vencían en el período. */
|
|
69
|
+
deadlines: {
|
|
70
|
+
withDeadline: number;
|
|
71
|
+
onTime: number;
|
|
72
|
+
late: number;
|
|
73
|
+
/** Vencidos sin atender. */
|
|
74
|
+
overdue: number;
|
|
75
|
+
/** Sin atender, todavía en plazo. */
|
|
76
|
+
pending: number;
|
|
77
|
+
/** A tiempo sobre los ya resueltos o vencidos, en %. */
|
|
78
|
+
onTimeRate: number | null;
|
|
79
|
+
};
|
|
80
|
+
partsOffice: {
|
|
81
|
+
received: number;
|
|
82
|
+
registered: number;
|
|
83
|
+
returned: number;
|
|
84
|
+
/** Días desde que llegó por DocDigital hasta que Partes lo ingresó. */
|
|
85
|
+
averageIntakeDays: number | null;
|
|
86
|
+
dispatched: number;
|
|
87
|
+
dispatchReturned: number;
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
export type QualityMetricUnit = 'Percent' | 'Ratio' | 'Milliseconds';
|
|
91
|
+
export type QualityMetricDirection = 'AtLeast' | 'AtMost';
|
|
92
|
+
/** Una métrica del Plan de Mejora Continua, con su valor en el período y su umbral. */
|
|
93
|
+
export interface QualityMetricEntity {
|
|
94
|
+
key: QualityMetricKey;
|
|
95
|
+
/** Subcaracterística de la ISO/IEC 25010 que mide. */
|
|
96
|
+
subcharacteristic: string;
|
|
97
|
+
model: 'Product' | 'InUse';
|
|
98
|
+
name: string;
|
|
99
|
+
description: string;
|
|
100
|
+
/** La mide el sistema o la declara quien administra la calidad, con su respaldo. */
|
|
101
|
+
source: 'Measured' | 'Declared';
|
|
102
|
+
value: number | null;
|
|
103
|
+
unit: QualityMetricUnit;
|
|
104
|
+
threshold: number;
|
|
105
|
+
direction: QualityMetricDirection;
|
|
106
|
+
/** Cumple el umbral. `null` sin valor. */
|
|
107
|
+
meets: boolean | null;
|
|
108
|
+
/** Con qué se calculó: cantidades del período. */
|
|
109
|
+
detail: string | null;
|
|
110
|
+
declaredNote: string | null;
|
|
111
|
+
declaredAt: string | null;
|
|
112
|
+
declaredByFullName: string | null;
|
|
113
|
+
}
|
|
114
|
+
export interface ServiceOutageResponseEntity {
|
|
115
|
+
id: string;
|
|
116
|
+
kind: ServiceOutageKind;
|
|
117
|
+
startedAt: string;
|
|
118
|
+
endedAt: string | null;
|
|
119
|
+
/** Duración en minutos; si sigue caído, hasta ahora. */
|
|
120
|
+
minutes: number;
|
|
121
|
+
cause: string;
|
|
122
|
+
affectedServices: string | null;
|
|
123
|
+
createdByFullName: string;
|
|
124
|
+
updatedByFullName: string | null;
|
|
125
|
+
createdAt: string;
|
|
126
|
+
}
|
|
127
|
+
export interface QualityReportEntity {
|
|
128
|
+
from: string;
|
|
129
|
+
to: string;
|
|
130
|
+
generatedAt: string;
|
|
131
|
+
metrics: QualityMetricEntity[];
|
|
132
|
+
/** Caídas que tocan el período. */
|
|
133
|
+
outages: ServiceOutageResponseEntity[];
|
|
134
|
+
}
|
|
135
|
+
export interface QualityMetricSettingResponseEntity {
|
|
136
|
+
key: QualityMetricKey;
|
|
137
|
+
threshold: number;
|
|
138
|
+
declaredValue: number | null;
|
|
139
|
+
declaredNote: string | null;
|
|
140
|
+
declaredAt: string | null;
|
|
141
|
+
declaredByFullName: string | null;
|
|
142
|
+
}
|
|
143
|
+
export interface ServiceOutageRemoveResponseEntity {
|
|
144
|
+
id: string;
|
|
145
|
+
ok: boolean;
|
|
146
|
+
}
|
|
147
|
+
/** Un archivo generado (planilla o certificado), en base64. */
|
|
148
|
+
export interface IndicatorsFileEntity {
|
|
149
|
+
fileName: string;
|
|
150
|
+
contentType: string;
|
|
151
|
+
contentBase64: string;
|
|
152
|
+
}
|