controles y validaciones version 2

parent acbf6245
...@@ -21,6 +21,7 @@ export class AddObjetivosPLNBVComponent implements OnInit { ...@@ -21,6 +21,7 @@ export class AddObjetivosPLNBVComponent implements OnInit {
idRecuperado: number; idRecuperado: number;
politicas: any[] = []; politicas: any[] = [];
objetivos: any[] = []; objetivos: any[] = [];
progObj: prograObj[] = [];
myForm: FormGroup; myForm: FormGroup;
formularioEnviado: boolean; formularioEnviado: boolean;
selectedObjetivo: string; selectedObjetivo: string;
...@@ -68,6 +69,10 @@ export class AddObjetivosPLNBVComponent implements OnInit { ...@@ -68,6 +69,10 @@ export class AddObjetivosPLNBVComponent implements OnInit {
this.objS.obtenerParametros().subscribe(data => { this.objS.obtenerParametros().subscribe(data => {
this.obj = data.filter(item => !item.uzytavobjetivo_b_vivirid_padre); this.obj = data.filter(item => !item.uzytavobjetivo_b_vivirid_padre);
}); });
this.objPS.obtenerRegistrosRelacionadosProyecto(this.idRecuperado).subscribe(data =>{
this.progObj = data;
});
} }
obtenerHijos(id: number) { obtenerHijos(id: number) {
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<!-- Control de fechas inicio --> <!-- Control de fechas inicio -->
<div class="save-button"> <div class="save-button">
<button mat-raised-button class="botones" color="primary" *ngIf="!cambio" (click)="cambiar()">Editar</button> <button mat-raised-button class="botones" color="primary" *ngIf="!cambio" (click)="cambiar()">Editar</button>
<button mat-raised-button class="botones" color="primary" *ngIf="cambio">Guardar</button> <button mat-raised-button class="botones" color="primary" [disabled]="!archivoEsValido" *ngIf="cambio">Guardar</button>
<span class="separator"></span> <span class="separator"></span>
<button mat-raised-button class="botones" color="warn" *ngIf="cambio" (click)="cancelado()">Cancelar</button> <button mat-raised-button class="botones" color="warn" *ngIf="cambio" (click)="cancelado()">Cancelar</button>
......
...@@ -9,6 +9,7 @@ import { Actualiza_datosService } from 'src/app/modules/main/services/actualiza_ ...@@ -9,6 +9,7 @@ import { Actualiza_datosService } from 'src/app/modules/main/services/actualiza_
import { Compartir_idService } from 'src/app/modules/main/services/compartir_id/compartir_id.service'; import { Compartir_idService } from 'src/app/modules/main/services/compartir_id/compartir_id.service';
import { format } from 'date-fns'; import { format } from 'date-fns';
import { ActualizarAnexosService } from 'src/app/modules/main/services/actualizar_anexos/actualizar-anexos.service'; import { ActualizarAnexosService } from 'src/app/modules/main/services/actualizar_anexos/actualizar-anexos.service';
import { ErrorTextoComponent } from '../../../errores/error-texto/error-texto.component';
@Component({ @Component({
...@@ -57,19 +58,49 @@ export class AddAnexosImagenesComponent implements OnInit { ...@@ -57,19 +58,49 @@ export class AddAnexosImagenesComponent implements OnInit {
this.selectedFile = event.target.files[0]; this.selectedFile = event.target.files[0];
} }
archivoEsValido: boolean = false;
onFileChange(event: any) { onFileChange(event: any) {
// Obtener el archivo seleccionado // Obtener el archivo seleccionado
const fileList: FileList = event.target.files; const fileList: FileList = event.target.files;
if (fileList.length > 0) { if (fileList.length > 0) {
this.file = fileList[0]; this.file = fileList[0];
if(!this.validarArchivo(this.file)){
this.openModalError('El archivo debe ser una imagen en formato (png, jpeg, jpg');
return;
}else{
this.archivoEsValido = true;
}
} }
} }
openModalError(texto: string) {
const dialogRef = this.dialog.open(ErrorTextoComponent, {
disableClose: true,
data: { mensaje: texto }
});
dialogRef.afterClosed().subscribe(result => {
console.log('La ventana modal se ha cerrado');
this.formularioEnviado = true;
});
}
validarArchivo(file: File): boolean {
const allowedExtensions = ['.jpg', '.jpeg', '.png', '.gif'];
const fileName = file.name.toLocaleLowerCase();
for (const extension of allowedExtensions) {
if (fileName.endsWith(extension)) {
return true;
}
}
return false;
}
openModal() { openModal(mensaje: string) {
const dialogRef = this.dialog.open(EnvioFormularioComponent, { const dialogRef = this.dialog.open(EnvioFormularioComponent, {
disableClose: true disableClose: true,
data: {mensaje: mensaje}
}); });
dialogRef.afterClosed().subscribe(result => { dialogRef.afterClosed().subscribe(result => {
...@@ -85,7 +116,7 @@ export class AddAnexosImagenesComponent implements OnInit { ...@@ -85,7 +116,7 @@ export class AddAnexosImagenesComponent implements OnInit {
//this.anexosImagenes.uzytavanexospr_fech_subida = new Date(); //this.anexosImagenes.uzytavanexospr_fech_subida = new Date();
this.anexosImagenesService.guardarParametrosSeparados(this.file, this.anexosImagenes).subscribe( this.anexosImagenesService.guardarParametrosSeparados(this.file, this.anexosImagenes).subscribe(
response => { response => {
this.openModal(); this.openModal('Los anexos se han enviado correctamente');
this.guardar() this.guardar()
this.datosCompartidos.actualizarDatos(this.anexosImagenes); this.datosCompartidos.actualizarDatos(this.anexosImagenes);
this.actualizarAnexosService.actualizarDatos(this.file); this.actualizarAnexosService.actualizarDatos(this.file);
......
...@@ -60,9 +60,9 @@ export class AddDocentesParticipantesComponent implements OnInit { ...@@ -60,9 +60,9 @@ export class AddDocentesParticipantesComponent implements OnInit {
openModal() { openModal(mensaje: string) {
const dialogRef = this.dialog.open(EnvioFormularioComponent, { const dialogRef = this.dialog.open(EnvioFormularioComponent, {
data: {mensaje: mensaje},
disableClose: true disableClose: true
}); });
...@@ -81,7 +81,7 @@ export class AddDocentesParticipantesComponent implements OnInit { ...@@ -81,7 +81,7 @@ export class AddDocentesParticipantesComponent implements OnInit {
this.docentesParticipantesService.guardarParametros(this.docenteParticipante).subscribe( this.docentesParticipantesService.guardarParametros(this.docenteParticipante).subscribe(
response => { response => {
this.openModal(); this.openModal('La información se ha enviado');
this.guardar() this.guardar()
this.datosCompartidos.actualizarDatos(this.docenteParticipante); this.datosCompartidos.actualizarDatos(this.docenteParticipante);
}, },
...@@ -128,12 +128,16 @@ export class AddDocentesParticipantesComponent implements OnInit { ...@@ -128,12 +128,16 @@ export class AddDocentesParticipantesComponent implements OnInit {
cancelado() { cancelado() {
this.cambio = false; this.cambio = false;
this.myForm.disable(); this.myForm.disable();
this.myForm.markAsDirty();
this.myForm.markAsUntouched();
} }
guardar() { guardar() {
this.cambio = false; this.cambio = false;
this.myForm.disable(); this.myForm.disable();
this.myForm.reset() this.myForm.reset();
this.myForm.markAsDirty();
this.myForm.markAsUntouched();
} }
} }
...@@ -58,8 +58,9 @@ export class AddEstudiantesParticipantesComponent implements OnInit { ...@@ -58,8 +58,9 @@ export class AddEstudiantesParticipantesComponent implements OnInit {
openModal() { openModal(mensaje: string) {
const dialogRef = this.dialog.open(EnvioFormularioComponent, { const dialogRef = this.dialog.open(EnvioFormularioComponent, {
data: {mensaje: mensaje},
disableClose: true disableClose: true
}); });
...@@ -67,7 +68,6 @@ export class AddEstudiantesParticipantesComponent implements OnInit { ...@@ -67,7 +68,6 @@ export class AddEstudiantesParticipantesComponent implements OnInit {
this.formularioEnviado = true; this.formularioEnviado = true;
}); });
} }
onSubmit() { onSubmit() {
if (this.myForm.valid) { if (this.myForm.valid) {
...@@ -81,7 +81,7 @@ export class AddEstudiantesParticipantesComponent implements OnInit { ...@@ -81,7 +81,7 @@ export class AddEstudiantesParticipantesComponent implements OnInit {
this.estudiantesParticipantesService.guardarParametros(this.estudianteParticipante).subscribe( this.estudiantesParticipantesService.guardarParametros(this.estudianteParticipante).subscribe(
response => { response => {
console.log("carrera guardada", this.estudianteParticipante) console.log("carrera guardada", this.estudianteParticipante)
this.openModal(); this.openModal('La información se ha enviado');
this.guardar() this.guardar()
this.datosCompartidos.actualizarDatos(this.estudianteParticipante); this.datosCompartidos.actualizarDatos(this.estudianteParticipante);
}, },
...@@ -125,11 +125,15 @@ export class AddEstudiantesParticipantesComponent implements OnInit { ...@@ -125,11 +125,15 @@ export class AddEstudiantesParticipantesComponent implements OnInit {
cancelado() { cancelado() {
this.cambio = false; this.cambio = false;
this.myForm.disable(); this.myForm.disable();
this.myForm.markAsDirty();
this.myForm.markAsUntouched();
} }
guardar() { guardar() {
this.cambio = false; this.cambio = false;
this.myForm.disable(); this.myForm.disable();
this.myForm.reset() this.myForm.reset();
this.myForm.markAsDirty();
this.myForm.markAsUntouched();
} }
} }
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<div class="save-button"> <div class="save-button">
<button mat-raised-button color="primary" *ngIf="!cambio" <button mat-raised-button color="primary" *ngIf="!cambio"
(click)="cambiar()">Editar</button> (click)="cambiar()">Editar</button>
<button mat-raised-button color="primary" *ngIf="cambio">Guardar</button> <button mat-raised-button color="primary" [disabled]="myForm.invalid" *ngIf="cambio">Guardar</button>
<span class="separator"></span> <span class="separator"></span>
<button mat-raised-button color="warn" *ngIf="cambio" <button mat-raised-button color="warn" *ngIf="cambio"
(click)="cancelado()">Cancelar</button> (click)="cancelado()">Cancelar</button>
...@@ -115,7 +115,7 @@ ...@@ -115,7 +115,7 @@
<mat-error <mat-error
*ngIf="myForm.get('ninosI').invalid && (myForm.get('ninosI').dirty *ngIf="myForm.get('ninosI').invalid && (myForm.get('ninosI').dirty
|| myForm.get('ninosI').touched)"> || myForm.get('ninosI').touched)">
Por favor, ingrese la cantidad de Niños directos. Por favor, ingrese la cantidad de Niños indirectos.
</mat-error> </mat-error>
</mat-form-field> </mat-form-field>
......
...@@ -101,6 +101,9 @@ export class AddIdentificacionPoblacionComponent implements OnInit { ...@@ -101,6 +101,9 @@ export class AddIdentificacionPoblacionComponent implements OnInit {
cancelado() { cancelado() {
this.cambio = false; this.cambio = false;
this.myForm.disable(); this.myForm.disable();
this.myForm.reset();
this.myForm.markAsUntouched();
this.myForm.markAsDirty();
} }
guardar() { guardar() {
...@@ -131,7 +134,7 @@ export class AddIdentificacionPoblacionComponent implements OnInit { ...@@ -131,7 +134,7 @@ export class AddIdentificacionPoblacionComponent implements OnInit {
this.proyectosService.modificarParametros(this.proyecto.uzytavproyec_id, this.proyecto).subscribe(response => { this.proyectosService.modificarParametros(this.proyecto.uzytavproyec_id, this.proyecto).subscribe(response => {
console.log('Datos Actualizados', this.proyecto); console.log('Datos Actualizados', this.proyecto);
this.myForm.disable(); this.myForm.disable();
this.openModal(); this.openModal('La información se ha enviado');
this.cambio = false; this.cambio = false;
//his.openModal(); //his.openModal();
//this.guardarFormulario = true; //this.guardarFormulario = true;
...@@ -142,10 +145,11 @@ export class AddIdentificacionPoblacionComponent implements OnInit { ...@@ -142,10 +145,11 @@ export class AddIdentificacionPoblacionComponent implements OnInit {
} }
} }
openModal() { openModal(mensaje: string) {
const dialogRef = this.dialog.open(EnvioFormularioComponent, { const dialogRef = this.dialog.open(EnvioFormularioComponent, {
width: '400px', width: '400px',
disableClose: true disableClose: true,
data:{mensaje: mensaje}
}); });
dialogRef.afterClosed().subscribe(result => { dialogRef.afterClosed().subscribe(result => {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment