diff --git a/src/app/components/profesionales/formacionGrado/formacion-grado-detalle.component.ts b/src/app/components/profesionales/formacionGrado/formacion-grado-detalle.component.ts
index 6f26172..8d7e4b1 100644
--- a/src/app/components/profesionales/formacionGrado/formacion-grado-detalle.component.ts
+++ b/src/app/components/profesionales/formacionGrado/formacion-grado-detalle.component.ts
@@ -4,7 +4,8 @@ import {
Input,
Output,
EventEmitter,
- OnInit
+ OnInit,
+ ViewChild
} from '@angular/core';
// Plex
import {
@@ -19,6 +20,7 @@ import {
// Services
import { ProfesionalService } from './../../../services/profesional.service';
import { NumeracionMatriculasService } from './../../../services/numeracionMatriculas.service';
+import { PlexPanelComponent } from '@andes/plex/src/lib/accordion/panel.component';
// Utils
import { PDFUtils } from './../../../utils/PDFUtils';
@@ -36,6 +38,8 @@ export class FormacionGradoDetalleComponent implements OnInit {
@Input() profesional: IProfesional;
@Output() matriculacion = new EventEmitter();
@Output() cerrarDetalle = new EventEmitter();
+ @ViewChild('panelGestion', { static: false }) accordionGestion: PlexPanelComponent;
+ @ViewChild('panelBaja', { static: false }) accordionBaja: PlexPanelComponent;
public esSupervisor;
public motivoBaja;
edit = false;
@@ -47,10 +51,17 @@ export class FormacionGradoDetalleComponent implements OnInit {
public indexBaja;
public tieneBajas = false;
public motivoRechazo;
+ public campoBaja = false;
+ public fechaTemporal = null;
+ public motivoTemporal = null;
+
constructor(
private _profesionalService: ProfesionalService,
private _numeracionesService: NumeracionMatriculasService,
- private _pdfUtils: PDFUtils, private plex: Plex, public auth: Auth) { }
+ private _pdfUtils: PDFUtils,
+ private plex: Plex,
+ public auth: Auth) { }
+
@@ -190,24 +201,69 @@ export class FormacionGradoDetalleComponent implements OnInit {
}
editarMatriculacion(index) {
+ this.fechaTemporal = this.formacion.matriculacion[index].inicio;
+ if (this.campoBaja) {
+ this.campoBaja = false;
+ }
+ if (this.edicionBajas) {
+ this.edicionBajas = false;
+ }
this.edicionGestion = true;
this.indexGestion = index;
+ this.accordionGestion.active = false;
+ this.accordionBaja ? this.accordionBaja.active = false : null;
+
+
}
editarBaja(index) {
+ this.motivoTemporal = this.formacion.matriculacion[index].baja.motivo;
+ this.fechaTemporal = this.formacion.matriculacion[index].baja.fecha;
+ if (this.campoBaja) {
+ this.campoBaja = false;
+ }
+ if (this.edicionGestion) {
+ this.edicionGestion = false;
+ }
this.edicionBajas = true;
this.indexBaja = index;
+ this.accordionGestion.active = false;
+ this.accordionBaja.active = false;
+
+ }
+
+ mostrarBaja() {
+ this.motivoBaja = '';
+ if (this.edicionBajas) {
+ this.cancelarEdicionBaja();
+ }
+ if (this.edicionGestion) {
+ this.edicionGestion = false;
+ }
+ this.campoBaja = true;
+ this.accordionGestion.active = false;
+ this.accordionBaja ? this.accordionBaja.active = false : null;
+
+
+ }
+ cancelarBaja() {
+ this.campoBaja = false;
+
+
}
guardarBaja() {
this.actualizar();
this.edicionBajas = false;
+ this.plex.toast('success', 'La edición se registró con exito!', 'informacion', 1000);
+
}
guardarGestion() {
const vencimientoAnio = (new Date(this.formacion.matriculacion[this.indexGestion].inicio)).getUTCFullYear() + 5;
this.formacion.matriculacion[this.indexGestion].fin = new Date(new Date(this.profesional.fechaNacimiento).setFullYear(vencimientoAnio));
this.actualizar();
+ this.plex.toast('success', 'La edición se registró con exito!', 'informacion', 1000);
this.edicionGestion = false;
}
guardarRechazo() {
@@ -220,6 +276,8 @@ export class FormacionGradoDetalleComponent implements OnInit {
fecha: new Date(),
};
this.profesional.formacionGrado[this.index] = this.formacion;
+ this.profesional.formacionGrado[this.index].matriculado = false;
+
}
this.actualizar();
this.plex.toast('success', 'Se rechazo la renovacion de matricula!', 'informacion', 2000);
@@ -229,8 +287,10 @@ export class FormacionGradoDetalleComponent implements OnInit {
}
cancelarEdicionBaja() {
- this.edicionBajas = false;
+ this.formacion.matriculacion[this.indexBaja].baja.motivo = this.motivoTemporal;
+ this.formacion.matriculacion[this.indexBaja].baja.fecha = this.fechaTemporal;
this.indexBaja = null;
+ this.edicionBajas = false;
}
cancelarEdicionRechazo() {
this.edicionRechazo = false;
@@ -238,6 +298,7 @@ export class FormacionGradoDetalleComponent implements OnInit {
}
cancelarEdicionGestion() {
+ this.formacion.matriculacion[this.indexGestion].inicio = this.fechaTemporal;
this.edicionGestion = false;
this.indexGestion = null;
}
@@ -249,12 +310,12 @@ export class FormacionGradoDetalleComponent implements OnInit {
this.profesional.formacionGrado[this.index].papelesVerificados = false;
this.profesional.formacionGrado[this.index].matriculacion[this.profesional.formacionGrado[this.index].matriculacion.length - 1].baja.motivo = this.motivoBaja;
this.profesional.formacionGrado[this.index].matriculacion[this.profesional.formacionGrado[this.index].matriculacion.length - 1].baja.fecha = new Date();
+ this.formacion = this.profesional.formacionGrado[this.index];
this.actualizar();
this.compruebaBajas();
}
});
-
-
+ this.campoBaja = false;
}
renovarAntesVencimiento() {
diff --git a/src/app/components/profesionales/formacionGrado/formacion-grado-detalle.html b/src/app/components/profesionales/formacionGrado/formacion-grado-detalle.html
index 733fb58..20450cc 100644
--- a/src/app/components/profesionales/formacionGrado/formacion-grado-detalle.html
+++ b/src/app/components/profesionales/formacionGrado/formacion-grado-detalle.html
@@ -1,178 +1,173 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
- 0">
-
-
Ultima matrícula
- {{ formacion.matriculacion[formacion.matriculacion.length - 1].matriculaNumero }}
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Motivo de la baja
-
{{ formacion.matriculacion[formacion.matriculacion.length - 1].baja?.motivo }}
-
-
-
-
-
-
-
-
-
-
- Gestión
-
-
-
-
-
- # |
- Nº |
- Inicio |
- Fin |
- |
-
-
-
-
- {{ matriculacion.revalidacionNumero }} |
- {{ matriculacion.matriculaNumero }} |
- {{ formacion.fechaDeInscripcion | date: 'dd/MM/yyyy'}} |
- {{ matriculacion.inicio | date: 'dd/MM/yyyy'}} |
- {{ matriculacion.fin | date: 'dd/MM/yyyy'}} |
-
-
-
- |
-
-
-
-
-
-
-
-
-
-
- Bajas
-
+
+
+ Ultima matrícula
+ {{ formacion.matriculacion[formacion.matriculacion?.length - 1].matriculaNumero }}
+
+
+
+
+
+
+
+
+
+
+
+ Gestión
+
+
- N° Matricula |
- Motivo |
- Fecha |
+ # |
+ Nº |
+ Inicio |
+ Fin |
|
-
+
- {{ matriculacion.matriculaNumero }} |
- {{ matriculacion.baja?.motivo }} |
- {{ matriculacion.baja?.fecha | fecha }}
- |
-
-
+ {{ matriculacion.revalidacionNumero }} |
+ {{ matriculacion.matriculaNumero }} |
+ {{ formacion.fechaDeInscripcion | date: 'dd/MM/yyyy'}} |
+ {{ matriculacion.inicio | date: 'dd/MM/yyyy'}} |
+ {{ matriculacion.fin | date: 'dd/MM/yyyy'}} |
+
+
|
|
-
-
-
+
+
+
+
+
+
+ Bajas
+
+
+
+
+ N° Matricula |
+ Motivo |
+ Fecha |
+ |
+
+
+
+ {{ matriculacion.matriculaNumero }} |
+ {{ matriculacion.baja?.motivo }} |
+ {{ matriculacion.baja?.fecha | fecha }}
+ |
+
+
+
+ |
+
+
+
+
+
+
-
-
-
-
-
+
+
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/src/app/components/profesionales/formacionGrado/formacion-grado.component.ts b/src/app/components/profesionales/formacionGrado/formacion-grado.component.ts
index 9b0a209..6dd36a0 100644
--- a/src/app/components/profesionales/formacionGrado/formacion-grado.component.ts
+++ b/src/app/components/profesionales/formacionGrado/formacion-grado.component.ts
@@ -135,6 +135,9 @@ export class FormacionGradoComponent implements OnInit {
}
});
}
+ loadProfesiones(event) {
+ this._profesionService.getProfesiones({ gestionaColegio: false }).pipe(catchError(() => of(null))).subscribe(event.callback);
+ }
generarCertificadoEtica(i) {
const grado = this.profesional.formacionGrado[i];
@@ -156,7 +159,7 @@ export class FormacionGradoComponent implements OnInit {
const hoy = new Date();
const posgrados = [];
this.profesional.formacionPosgrado.forEach(formacion => {
- if (formacion.profesion.codigo === grado.profesion.codigo && formacion.matriculado && !formacion.revalida && (hoy <= formacion.matriculacion[formacion.matriculacion.length - 1].fin || ((hoy.getTime() - formacion.matriculacion[formacion.matriculacion.length - 1].fin.getTime()) / (1000 * 3600 * 24) < 365) || !formacion.tieneVencimiento)) {
+ if (formacion.profesion.codigo === grado.profesion.codigo && formacion.matriculado && !formacion.revalida && (hoy <= formacion.matriculacion[formacion.matriculacion.length - 1].fin || ((hoy.getTime() - formacion.matriculacion[formacion.matriculacion.length - 1].fin?.getTime()) / (1000 * 3600 * 24) < 365) || !formacion.tieneVencimiento)) {
posgrados.push({
titulo: formacion.especialidad.nombre,
matriculaNumero: formacion.matriculacion[formacion.matriculacion.length - 1].matriculaNumero,
@@ -257,7 +260,7 @@ export class FormacionGradoComponent implements OnInit {
}
verificarFecha(index) {
const formacionGrado = this.profesional.formacionGrado[index];
- return ((this.hoy.getTime() - formacionGrado.matriculacion[formacionGrado.matriculacion.length - 1].fin.getTime()) / (1000 * 3600 * 24) > 365);
+ return ((this.hoy.getTime() - formacionGrado.matriculacion[formacionGrado.matriculacion.length - 1].fin?.getTime()) / (1000 * 3600 * 24) > 365);
}
poseeVerificarPapeles(index) {
const formacionGrado = this.profesional.formacionGrado[index];
diff --git a/src/app/components/profesionales/formacionGrado/formacion-grado.html b/src/app/components/profesionales/formacionGrado/formacion-grado.html
index 864c3e9..dfb9a07 100644
--- a/src/app/components/profesionales/formacionGrado/formacion-grado.html
+++ b/src/app/components/profesionales/formacionGrado/formacion-grado.html
@@ -18,11 +18,9 @@
-
-
@@ -32,7 +30,6 @@
-
@@ -51,14 +48,12 @@
{{formacionGrado.fechaDeInscripcion | date: 'dd/MM/yyyy'}}
-
Matricula Vencida
Matriculado
-
-
Matricula
suspendida
@@ -73,7 +68,6 @@
-
@@ -130,6 +124,12 @@
+
@@ -138,7 +138,6 @@
validateForm="true">
-
diff --git a/src/app/components/profesionales/formacionGrado/grado.scss b/src/app/components/profesionales/formacionGrado/grado.scss
index 98aa143..4aa713f 100644
--- a/src/app/components/profesionales/formacionGrado/grado.scss
+++ b/src/app/components/profesionales/formacionGrado/grado.scss
@@ -1,19 +1,27 @@
.badge-white {
background: transparent;
border: 1.5px solid;
- font-size: 1em;
- font-weight: normal;
- padding: 5px;
- text-transform: uppercase;
+ font-size: 1em;
+ font-weight: normal;
+ padding: 5px;
+ text-transform: uppercase;
border-color: #ffffff;
color: #ffffff;
}
-.centrarBtn{
+.centrarBtn {
margin-top: 38px;
}
-.btnGrado { margin-left: 5px }
+.espacioTitulo {
+ margin-top: 8px;
+}
+
+.btnGrado {
+ margin-left: 5px
+}
-.bool-posicion {margin-top: 30px}
\ No newline at end of file
+.bool-posicion {
+ margin-top: 30px
+}
\ No newline at end of file