fpavon-ee-shared 1.0.63 → 1.0.64

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.
@@ -68,10 +68,11 @@ class ExpedienteElectronico {
68
68
  expediente.documentos.forEach((doc, index) => {
69
69
  // Verificamos si existe el campo 'estadoWorkflow' en el documento
70
70
  const estadoWorkflow = doc.estadoWorkflow;
71
- // Verificar si doc.extras existe, y si no, crear un objeto vacío
72
- const extras = doc.extras || {};
73
71
  // Creamos la instancia de DocumentoCC con estadoWorkflow incluido
74
- const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, {}, doc.firmado, estadoWorkflow);
72
+ const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, {
73
+ extras: doc.extras || {},
74
+ uuidOriginal: doc.uuidOriginal
75
+ }, doc.firmado, estadoWorkflow || [], doc.fecha);
75
76
  expediente.documentos[index] = documento;
76
77
  });
77
78
  expediente.extras = JSON.parse(expediente.extras);
@@ -39,7 +39,7 @@ class ExpedienteElectronicoSqlRepository {
39
39
  expediente.notas = JSON.parse(expediente.notas);
40
40
  expediente.documentos = JSON.parse(expediente.documentos);
41
41
  expediente.documentos.forEach((doc, index) => {
42
- const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, { extras: doc.extras }, doc.firmado, doc.estadoWorkflow);
42
+ const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, { extras: doc.extras || {}, uuidOriginal: doc.uuidOriginal || "" }, doc.firmado, doc.estadoWorkflow || [], doc.fecha);
43
43
  expediente.documentos[index] = documento;
44
44
  });
45
45
  expediente.extras = JSON.parse(expediente.extras);
@@ -66,7 +66,10 @@ class ExpedienteElectronicoSqlRepository {
66
66
  expediente.documentos = JSON.parse(expediente.documentos);
67
67
  expediente.documentos.forEach((doc, index) => {
68
68
  const estadoWorkflow = doc.estadoWorkflow;
69
- const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, { extras: doc.extras }, doc.firmado, estadoWorkflow);
69
+ const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, {
70
+ extras: doc.extras || {},
71
+ uuidOriginal: doc.uuidOriginal
72
+ }, doc.firmado, doc.estadoWorkflow || [], doc.fecha);
70
73
  expediente.documentos[index] = documento;
71
74
  });
72
75
  expediente.extras = JSON.parse(expediente.extras);
@@ -138,7 +141,10 @@ class ExpedienteElectronicoSqlRepository {
138
141
  ee.documentos = JSON.parse(ee.documentos);
139
142
  ee.documentos.forEach((doc, index) => {
140
143
  const estadoWorkflow = doc.estadoWorkflow;
141
- const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, { extras: doc.extras }, doc.firmado, estadoWorkflow);
144
+ const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, {
145
+ extras: doc.extras || {},
146
+ uuidOriginal: doc.uuidOriginal
147
+ }, doc.firmado, doc.estadoWorkflow || [], doc.fecha);
142
148
  ee.documentos[index] = documento;
143
149
  });
144
150
  ee.extras = JSON.parse(ee.extras);
@@ -203,7 +209,7 @@ class ExpedienteElectronicoSqlRepository {
203
209
  // reconstrucción
204
210
  ee.documentos = JSON.parse(ee.documentos);
205
211
  ee.documentos.forEach((doc, index) => {
206
- ee.documentos[index] = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, { extras: doc.extras }, doc.firmado, doc.estadoWorkflow);
212
+ ee.documentos[index] = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, { extras: doc.extras || {}, uuidOriginal: doc.uuidOriginal || "" }, doc.firmado, doc.estadoWorkflow || [], doc.fecha);
207
213
  });
208
214
  ee.extras = JSON.parse(ee.extras);
209
215
  ee.usuarioResponsable = JSON.parse(ee.usuarioResponsable);
@@ -271,7 +277,10 @@ class ExpedienteElectronicoSqlRepository {
271
277
  try {
272
278
  expediente.documentos = JSON.parse(expediente.documentos);
273
279
  expediente.documentos.forEach((doc, index) => {
274
- const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size);
280
+ const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, {
281
+ extras: doc.extras || {},
282
+ uuidOriginal: doc.uuidOriginal
283
+ }, doc.firmado, doc.estadoWorkflow || [], doc.fecha);
275
284
  expediente.documentos[index] = documento;
276
285
  });
277
286
  }
@@ -361,7 +370,10 @@ class ExpedienteElectronicoSqlRepository {
361
370
  try {
362
371
  expediente.documentos = JSON.parse(expediente.documentos);
363
372
  expediente.documentos.forEach((doc, index) => {
364
- const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size);
373
+ const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, {
374
+ extras: doc.extras || {},
375
+ uuidOriginal: doc.uuidOriginal
376
+ }, doc.firmado, doc.estadoWorkflow || [], doc.fecha);
365
377
  expediente.documentos[index] = documento;
366
378
  });
367
379
  }
@@ -493,7 +505,10 @@ class ExpedienteElectronicoSqlRepository {
493
505
  try {
494
506
  expediente.documentos = JSON.parse(expediente.documentos);
495
507
  expediente.documentos.forEach((doc, index) => {
496
- const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size);
508
+ const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, {
509
+ extras: doc.extras || {},
510
+ uuidOriginal: doc.uuidOriginal
511
+ }, doc.firmado, doc.estadoWorkflow || [], doc.fecha);
497
512
  expediente.documentos[index] = documento;
498
513
  });
499
514
  }
@@ -616,7 +631,10 @@ class ExpedienteElectronicoSqlRepository {
616
631
  try {
617
632
  expediente.documentos = JSON.parse(expediente.documentos);
618
633
  expediente.documentos.forEach((doc, index) => {
619
- const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size);
634
+ const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, {
635
+ extras: doc.extras || {},
636
+ uuidOriginal: doc.uuidOriginal
637
+ }, doc.firmado, doc.estadoWorkflow || [], doc.fecha);
620
638
  expediente.documentos[index] = documento;
621
639
  });
622
640
  }
@@ -664,7 +682,10 @@ class ExpedienteElectronicoSqlRepository {
664
682
  try {
665
683
  expediente.documentos = JSON.parse(expediente.documentos);
666
684
  expediente.documentos.forEach((doc, index) => {
667
- const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size);
685
+ const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, {
686
+ extras: doc.extras || {},
687
+ uuidOriginal: doc.uuidOriginal
688
+ }, doc.firmado, doc.estadoWorkflow || [], doc.fecha);
668
689
  expediente.documentos[index] = documento;
669
690
  });
670
691
  }
@@ -711,7 +732,10 @@ class ExpedienteElectronicoSqlRepository {
711
732
  try {
712
733
  expediente.documentos = JSON.parse(expediente.documentos);
713
734
  expediente.documentos.forEach((doc, index) => {
714
- const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size);
735
+ const documento = new documento_class_1.Documento(doc.uuid, doc.nombre, doc.descripcion, doc.size, {
736
+ extras: doc.extras || {},
737
+ uuidOriginal: doc.uuidOriginal
738
+ }, doc.firmado, doc.estadoWorkflow || [], doc.fecha);
715
739
  expediente.documentos[index] = documento;
716
740
  });
717
741
  }
@@ -1,223 +1,225 @@
1
- import {Documento, ImplementacionWorkflow} from "../../documentos/domain/documento.class";
1
+ import { Documento, ImplementacionWorkflow } from "../../documentos/domain/documento.class";
2
2
  import { Estado, Flujo } from "../../estados/domain/estado.class";
3
3
  import { IExpedienteElectronico } from "./expediente-electronico.interface";
4
4
  import { LimitedString } from "./value-object/limited-string.class";
5
5
  import { Nota } from "./value-object/notas.class";
6
6
 
7
7
  export class ExpedienteElectronico implements IExpedienteElectronico {
8
- id: number;
9
- fechaAlta: Date;
10
- fechaCierre: Date;
11
- usuarioResponsable: any;
12
- titulo: string;
13
- descripcion: string;
14
- tipo: string;
15
- codigoInterno: string;
16
- bitacora: any;
17
- private documentos: Documento[];
18
- private estado: Estado;
19
- notas: Nota[]
20
- extras: any;
21
-
22
- origen: string;
23
- destino: string;
24
-
25
- constructor(params) {
26
- if (params) {
27
- this.id = params.id;
28
- this.fechaAlta = params.fechaAlta;
29
- this.titulo = new LimitedString(params.titulo, 255).getValue();
30
- this.descripcion = new LimitedString(params.descripcion, 1000).getValue();
31
- this.tipo = params.tipo;
32
- this.codigoInterno = params.codigoInterno;
33
- this.fechaCierre = params.fechaCierre;
34
- if(params.usuarioResponsable){
35
- this.usuarioResponsable = params.usuarioResponsable;
36
- }
37
- else{
38
- throw new Error("usuarioResponsable debe estar definido");
39
- }
40
- this.setEstado(params.estado);
41
- this.bitacora = this.asignarBitacora(params.bitacora);
42
- let notas = []
43
- if(params.notas){
44
- params.notas.forEach(nota => {
45
- notas.push(new Nota(nota, nota.usuarioResponsable))
46
- });
47
- }
48
- this.notas = notas
49
- if(params.documentos) this.setDocumentos(params.documentos);
50
- else this.documentos = [];
51
- this.origen = new LimitedString(params.origen, 4).getValue();;
52
- this.destino = new LimitedString(params.destino, 4).getValue();;
53
- if (params.extras) this.extras = params.extras;
54
- else this.extras = {};
55
- }
56
- }
57
-
58
-
59
-
60
- private asignarBitacora(bitacora:any){
61
- if(bitacora){
62
- if(Array.isArray(bitacora)){
63
- return bitacora;
64
- }else{
65
- throw new Error('El atributo bitacora debe ser un array de objetos.');
66
- }
67
- }else{
68
- return []
69
- }
70
- }
71
-
72
- static fromRecordset(recordset) {
73
- if(!recordset){
74
- throw new Error("comprasContrataciones.fromRecordset recordset es undefined")
75
- }
76
-
77
- let expediente = recordset;
78
-
79
- expediente.bitacora = JSON.parse(expediente.bitacora);
80
- expediente.notas = expediente.notas ? JSON.parse(expediente.notas) : [];
81
- expediente.documentos = JSON.parse(expediente.documentos);
82
-
83
- expediente.documentos.forEach((doc, index) => {
84
- // Verificamos si existe el campo 'estadoWorkflow' en el documento
85
- const estadoWorkflow = doc.estadoWorkflow;
86
-
87
- // Verificar si doc.extras existe, y si no, crear un objeto vacío
88
- const extras = doc.extras || {};
89
- // Creamos la instancia de DocumentoCC con estadoWorkflow incluido
90
- const documento = new Documento(
91
- doc.uuid,
92
- doc.nombre,
93
- doc.descripcion,
94
- doc.size,
95
- {},
96
- doc.firmado,
97
- estadoWorkflow
98
- );
99
- expediente.documentos[index] = documento;
8
+ id: number;
9
+ fechaAlta: Date;
10
+ fechaCierre: Date;
11
+ usuarioResponsable: any;
12
+ titulo: string;
13
+ descripcion: string;
14
+ tipo: string;
15
+ codigoInterno: string;
16
+ bitacora: any;
17
+ private documentos: Documento[];
18
+ private estado: Estado;
19
+ notas: Nota[]
20
+ extras: any;
21
+
22
+ origen: string;
23
+ destino: string;
24
+
25
+ constructor(params) {
26
+ if (params) {
27
+ this.id = params.id;
28
+ this.fechaAlta = params.fechaAlta;
29
+ this.titulo = new LimitedString(params.titulo, 255).getValue();
30
+ this.descripcion = new LimitedString(params.descripcion, 1000).getValue();
31
+ this.tipo = params.tipo;
32
+ this.codigoInterno = params.codigoInterno;
33
+ this.fechaCierre = params.fechaCierre;
34
+ if (params.usuarioResponsable) {
35
+ this.usuarioResponsable = params.usuarioResponsable;
36
+ }
37
+ else {
38
+ throw new Error("usuarioResponsable debe estar definido");
39
+ }
40
+ this.setEstado(params.estado);
41
+ this.bitacora = this.asignarBitacora(params.bitacora);
42
+ let notas = []
43
+ if (params.notas) {
44
+ params.notas.forEach(nota => {
45
+ notas.push(new Nota(nota, nota.usuarioResponsable))
100
46
  });
101
-
102
- expediente.extras = JSON.parse(expediente.extras);
103
- expediente.usuarioResponsable = JSON.parse(expediente.usuarioResponsable);
104
- expediente.estado = JSON.parse(expediente.estado);
105
- expediente.estado = new Estado(expediente.estado);
106
-
107
- let exp = Object.assign(expediente, expediente.extras);
108
- delete exp.extras;
109
-
110
- return new ExpedienteElectronico(exp);
111
- }
112
-
113
- /**
114
- * Setea un estado al expediente. Si el estado es undefined, se setea un estado por default.
115
- * @param estado El estado que se quiere setear al expediente
116
- */
117
- setEstado(estado?:Estado){
118
- if(estado){
119
- if(estado instanceof Estado){
120
- this.estado = estado
121
- }else{
122
- this.estado = new Estado(estado);
123
- }
124
- }else{
125
- this.estado = Estado.estadoPorDefault();
126
- }
127
- }
128
-
129
- /**
130
- *
131
- * @returns Devuelve el estado actual del expediente.
132
- */
133
- getEstado():Estado{
134
- return this.estado;
135
- }
136
-
137
- /**
138
- * Setea un arreglo de documentos al expediente
139
- * @param documentos El nuevo arreglo de documentos que se quiere setear al expediente
140
- */
141
- setDocumentos(documentos:Documento[]){
142
- if (Array.isArray(documentos)) {
143
- if (documentos.every(doc => doc instanceof Documento)) {
144
- this.documentos = documentos;
145
- } else {
146
- throw new Error('El atributo documentos debe ser un array de objetos de tipo Documento');
147
- }
148
- } else {
149
- throw new Error('El atributo documentos debe ser un array');
150
- }
151
- }
152
-
153
- /**
154
- * Agrega un nuevo documento al arreglo de documentos del expediente.
155
- * @param documento El documento que se quiere agregar al arreglo de documentos del expediente.
156
- */
157
- pushDocumento(documento:Documento){
158
- if(documento instanceof Documento){
159
- this.documentos.push(documento);
160
- }
161
- else {
162
- throw new Error('El atributo documento debe ser de tipo Documento');
163
- }
164
- }
165
-
166
- /**
167
- * Reemplaza el documento que esta en el indice indicado por el que se envia como parametro.
168
- * @param index: Indice del docuemento a reemplazar.
169
- * @param documento El documento que reemplaza al anterior.
170
- */
171
- modificarDocumento(index:number, documento:Documento){
172
- if(documento instanceof Documento){
173
- this.documentos[index] = documento;
174
- }
175
- else {
176
- throw new Error('El atributo documento debe ser de tipo Documento');
177
- }
178
- }
179
-
180
- getDocumentos():Documento[]{
181
- return this.documentos;
182
- }
183
-
184
- avanzarEstado(usuario:any, flujo:Flujo){
185
- this.setEstado(this.estado.autorizar(usuario, flujo));
186
- }
187
-
188
- updateFlagExito(exito:boolean){
189
- this.estado.setFlagExito(exito)
190
- }
191
-
192
- supervisar(usuario:any, flujo:Flujo){
193
- this.setEstado(this.estado.supervisar(usuario, flujo));
194
- }
195
- observar(usuario:any, flujo:Flujo){
196
- this.setEstado(this.estado.observar(usuario, flujo))
197
- }
198
- rechazar(usuario:any, flujo:Flujo){
199
- this.setEstado(this.estado.rechazar(usuario, flujo))
200
- }
201
- cancelar(usuario:any, flujo:Flujo){
202
- this.setEstado(this.estado.cancelar(usuario, flujo))
203
- }
204
- devolver(usuario:any, flujo:Flujo){
205
- this.setEstado(this.estado.devolver(usuario, flujo))
206
- }
207
- firmar(usuario:any, flujo:Flujo){
208
- this.setEstado(this.estado.firmar(usuario, flujo))
209
- }
210
-
211
- getAtributos(){
212
- return this.extras;
213
- }
214
-
215
- public static transferirExpediente(expediente:ExpedienteElectronico, oficinaResponsable) {
216
- const unidad = oficinaResponsable.split("-")
217
- let result = unidad[1].replace(/\s/g, "");
218
- if (!expediente.getEstado().esVisiblePor.includes(result)) {
219
- expediente.getEstado().esVisiblePor.push(result);
220
- }
221
- return expediente.getEstado()
222
- }
47
+ }
48
+ this.notas = notas
49
+ if (params.documentos) this.setDocumentos(params.documentos);
50
+ else this.documentos = [];
51
+ this.origen = new LimitedString(params.origen, 4).getValue();;
52
+ this.destino = new LimitedString(params.destino, 4).getValue();;
53
+ if (params.extras) this.extras = params.extras;
54
+ else this.extras = {};
55
+ }
56
+ }
57
+
58
+
59
+
60
+ private asignarBitacora(bitacora: any) {
61
+ if (bitacora) {
62
+ if (Array.isArray(bitacora)) {
63
+ return bitacora;
64
+ } else {
65
+ throw new Error('El atributo bitacora debe ser un array de objetos.');
66
+ }
67
+ } else {
68
+ return []
69
+ }
70
+ }
71
+
72
+ static fromRecordset(recordset) {
73
+ if (!recordset) {
74
+ throw new Error("comprasContrataciones.fromRecordset recordset es undefined")
75
+ }
76
+
77
+ let expediente = recordset;
78
+
79
+ expediente.bitacora = JSON.parse(expediente.bitacora);
80
+ expediente.notas = expediente.notas ? JSON.parse(expediente.notas) : [];
81
+ expediente.documentos = JSON.parse(expediente.documentos);
82
+
83
+ expediente.documentos.forEach((doc, index) => {
84
+ // Verificamos si existe el campo 'estadoWorkflow' en el documento
85
+ const estadoWorkflow = doc.estadoWorkflow;
86
+
87
+ // Creamos la instancia de DocumentoCC con estadoWorkflow incluido
88
+ const documento = new Documento(
89
+ doc.uuid,
90
+ doc.nombre,
91
+ doc.descripcion,
92
+ doc.size,
93
+ {
94
+ extras: doc.extras || {},
95
+ uuidOriginal: doc.uuidOriginal
96
+ },
97
+ doc.firmado,
98
+ estadoWorkflow || [],
99
+ doc.fecha
100
+ );
101
+ expediente.documentos[index] = documento;
102
+ });
103
+
104
+ expediente.extras = JSON.parse(expediente.extras);
105
+ expediente.usuarioResponsable = JSON.parse(expediente.usuarioResponsable);
106
+ expediente.estado = JSON.parse(expediente.estado);
107
+ expediente.estado = new Estado(expediente.estado);
108
+
109
+ let exp = Object.assign(expediente, expediente.extras);
110
+ delete exp.extras;
111
+
112
+ return new ExpedienteElectronico(exp);
113
+ }
114
+
115
+ /**
116
+ * Setea un estado al expediente. Si el estado es undefined, se setea un estado por default.
117
+ * @param estado El estado que se quiere setear al expediente
118
+ */
119
+ setEstado(estado?: Estado) {
120
+ if (estado) {
121
+ if (estado instanceof Estado) {
122
+ this.estado = estado
123
+ } else {
124
+ this.estado = new Estado(estado);
125
+ }
126
+ } else {
127
+ this.estado = Estado.estadoPorDefault();
128
+ }
129
+ }
130
+
131
+ /**
132
+ *
133
+ * @returns Devuelve el estado actual del expediente.
134
+ */
135
+ getEstado(): Estado {
136
+ return this.estado;
137
+ }
138
+
139
+ /**
140
+ * Setea un arreglo de documentos al expediente
141
+ * @param documentos El nuevo arreglo de documentos que se quiere setear al expediente
142
+ */
143
+ setDocumentos(documentos: Documento[]) {
144
+ if (Array.isArray(documentos)) {
145
+ if (documentos.every(doc => doc instanceof Documento)) {
146
+ this.documentos = documentos;
147
+ } else {
148
+ throw new Error('El atributo documentos debe ser un array de objetos de tipo Documento');
149
+ }
150
+ } else {
151
+ throw new Error('El atributo documentos debe ser un array');
152
+ }
153
+ }
154
+
155
+ /**
156
+ * Agrega un nuevo documento al arreglo de documentos del expediente.
157
+ * @param documento El documento que se quiere agregar al arreglo de documentos del expediente.
158
+ */
159
+ pushDocumento(documento: Documento) {
160
+ if (documento instanceof Documento) {
161
+ this.documentos.push(documento);
162
+ }
163
+ else {
164
+ throw new Error('El atributo documento debe ser de tipo Documento');
165
+ }
166
+ }
167
+
168
+ /**
169
+ * Reemplaza el documento que esta en el indice indicado por el que se envia como parametro.
170
+ * @param index: Indice del docuemento a reemplazar.
171
+ * @param documento El documento que reemplaza al anterior.
172
+ */
173
+ modificarDocumento(index: number, documento: Documento) {
174
+ if (documento instanceof Documento) {
175
+ this.documentos[index] = documento;
176
+ }
177
+ else {
178
+ throw new Error('El atributo documento debe ser de tipo Documento');
179
+ }
180
+ }
181
+
182
+ getDocumentos(): Documento[] {
183
+ return this.documentos;
184
+ }
185
+
186
+ avanzarEstado(usuario: any, flujo: Flujo) {
187
+ this.setEstado(this.estado.autorizar(usuario, flujo));
188
+ }
189
+
190
+ updateFlagExito(exito: boolean) {
191
+ this.estado.setFlagExito(exito)
192
+ }
193
+
194
+ supervisar(usuario: any, flujo: Flujo) {
195
+ this.setEstado(this.estado.supervisar(usuario, flujo));
196
+ }
197
+ observar(usuario: any, flujo: Flujo) {
198
+ this.setEstado(this.estado.observar(usuario, flujo))
199
+ }
200
+ rechazar(usuario: any, flujo: Flujo) {
201
+ this.setEstado(this.estado.rechazar(usuario, flujo))
202
+ }
203
+ cancelar(usuario: any, flujo: Flujo) {
204
+ this.setEstado(this.estado.cancelar(usuario, flujo))
205
+ }
206
+ devolver(usuario: any, flujo: Flujo) {
207
+ this.setEstado(this.estado.devolver(usuario, flujo))
208
+ }
209
+ firmar(usuario: any, flujo: Flujo) {
210
+ this.setEstado(this.estado.firmar(usuario, flujo))
211
+ }
212
+
213
+ getAtributos() {
214
+ return this.extras;
215
+ }
216
+
217
+ public static transferirExpediente(expediente: ExpedienteElectronico, oficinaResponsable) {
218
+ const unidad = oficinaResponsable.split("-")
219
+ let result = unidad[1].replace(/\s/g, "");
220
+ if (!expediente.getEstado().esVisiblePor.includes(result)) {
221
+ expediente.getEstado().esVisiblePor.push(result);
222
+ }
223
+ return expediente.getEstado()
224
+ }
223
225
  }
@@ -42,9 +42,10 @@ export class ExpedienteElectronicoSqlRepository implements IExpedienteElectronic
42
42
  doc.nombre,
43
43
  doc.descripcion,
44
44
  doc.size,
45
- { extras: doc.extras },
45
+ { extras: doc.extras || {}, uuidOriginal: doc.uuidOriginal || "" },
46
46
  doc.firmado,
47
- doc.estadoWorkflow
47
+ doc.estadoWorkflow || [],
48
+ doc.fecha
48
49
  );
49
50
  expediente.documentos[index] = documento;
50
51
  });
@@ -79,9 +80,13 @@ export class ExpedienteElectronicoSqlRepository implements IExpedienteElectronic
79
80
  doc.nombre,
80
81
  doc.descripcion,
81
82
  doc.size,
82
- { extras: doc.extras },
83
+ {
84
+ extras: doc.extras || {},
85
+ uuidOriginal: doc.uuidOriginal
86
+ },
83
87
  doc.firmado,
84
- estadoWorkflow,
88
+ doc.estadoWorkflow || [],
89
+ doc.fecha
85
90
  );
86
91
  expediente.documentos[index] = documento;
87
92
  });
@@ -170,9 +175,13 @@ export class ExpedienteElectronicoSqlRepository implements IExpedienteElectronic
170
175
  doc.nombre,
171
176
  doc.descripcion,
172
177
  doc.size,
173
- { extras: doc.extras },
178
+ {
179
+ extras: doc.extras || {},
180
+ uuidOriginal: doc.uuidOriginal
181
+ },
174
182
  doc.firmado,
175
- estadoWorkflow,
183
+ doc.estadoWorkflow || [],
184
+ doc.fecha
176
185
  );
177
186
  ee.documentos[index] = documento;
178
187
  });
@@ -250,9 +259,10 @@ export class ExpedienteElectronicoSqlRepository implements IExpedienteElectronic
250
259
  doc.nombre,
251
260
  doc.descripcion,
252
261
  doc.size,
253
- { extras: doc.extras },
262
+ { extras: doc.extras || {}, uuidOriginal: doc.uuidOriginal || "" },
254
263
  doc.firmado,
255
- doc.estadoWorkflow
264
+ doc.estadoWorkflow || [],
265
+ doc.fecha
256
266
  );
257
267
  });
258
268
 
@@ -341,6 +351,13 @@ export class ExpedienteElectronicoSqlRepository implements IExpedienteElectronic
341
351
  doc.nombre,
342
352
  doc.descripcion,
343
353
  doc.size,
354
+ {
355
+ extras: doc.extras || {},
356
+ uuidOriginal: doc.uuidOriginal
357
+ },
358
+ doc.firmado,
359
+ doc.estadoWorkflow || [],
360
+ doc.fecha
344
361
  );
345
362
  expediente.documentos[index] = documento;
346
363
  });
@@ -455,6 +472,13 @@ export class ExpedienteElectronicoSqlRepository implements IExpedienteElectronic
455
472
  doc.nombre,
456
473
  doc.descripcion,
457
474
  doc.size,
475
+ {
476
+ extras: doc.extras || {},
477
+ uuidOriginal: doc.uuidOriginal
478
+ },
479
+ doc.firmado,
480
+ doc.estadoWorkflow || [],
481
+ doc.fecha
458
482
  );
459
483
  expediente.documentos[index] = documento;
460
484
  });
@@ -612,6 +636,13 @@ export class ExpedienteElectronicoSqlRepository implements IExpedienteElectronic
612
636
  doc.nombre,
613
637
  doc.descripcion,
614
638
  doc.size,
639
+ {
640
+ extras: doc.extras || {},
641
+ uuidOriginal: doc.uuidOriginal
642
+ },
643
+ doc.firmado,
644
+ doc.estadoWorkflow || [],
645
+ doc.fecha
615
646
  );
616
647
  expediente.documentos[index] = documento;
617
648
  });
@@ -756,6 +787,13 @@ export class ExpedienteElectronicoSqlRepository implements IExpedienteElectronic
756
787
  doc.nombre,
757
788
  doc.descripcion,
758
789
  doc.size,
790
+ {
791
+ extras: doc.extras || {},
792
+ uuidOriginal: doc.uuidOriginal
793
+ },
794
+ doc.firmado,
795
+ doc.estadoWorkflow || [],
796
+ doc.fecha
759
797
  );
760
798
  expediente.documentos[index] = documento;
761
799
  });
@@ -818,6 +856,13 @@ export class ExpedienteElectronicoSqlRepository implements IExpedienteElectronic
818
856
  doc.nombre,
819
857
  doc.descripcion,
820
858
  doc.size,
859
+ {
860
+ extras: doc.extras || {},
861
+ uuidOriginal: doc.uuidOriginal
862
+ },
863
+ doc.firmado,
864
+ doc.estadoWorkflow || [],
865
+ doc.fecha
821
866
  );
822
867
  expediente.documentos[index] = documento;
823
868
  });
@@ -882,6 +927,13 @@ export class ExpedienteElectronicoSqlRepository implements IExpedienteElectronic
882
927
  doc.nombre,
883
928
  doc.descripcion,
884
929
  doc.size,
930
+ {
931
+ extras: doc.extras || {},
932
+ uuidOriginal: doc.uuidOriginal
933
+ },
934
+ doc.firmado,
935
+ doc.estadoWorkflow || [],
936
+ doc.fecha
885
937
  );
886
938
  expediente.documentos[index] = documento;
887
939
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fpavon-ee-shared",
3
- "version": "1.0.63",
3
+ "version": "1.0.64",
4
4
  "description": "Carpeta compartida entre servicios de Expediente Electronico",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",