controles y validaciones version 2

parent acbf6245
......@@ -21,6 +21,7 @@ export class AddObjetivosPLNBVComponent implements OnInit {
idRecuperado: number;
politicas: any[] = [];
objetivos: any[] = [];
progObj: prograObj[] = [];
myForm: FormGroup;
formularioEnviado: boolean;
selectedObjetivo: string;
......@@ -68,6 +69,10 @@ export class AddObjetivosPLNBVComponent implements OnInit {
this.objS.obtenerParametros().subscribe(data => {
this.obj = data.filter(item => !item.uzytavobjetivo_b_vivirid_padre);
});
this.objPS.obtenerRegistrosRelacionadosProyecto(this.idRecuperado).subscribe(data =>{
this.progObj = data;
});
}
obtenerHijos(id: number) {
......
......@@ -5,7 +5,7 @@
<!-- Control de fechas inicio -->
<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">Guardar</button>
<button mat-raised-button class="botones" color="primary" [disabled]="!archivoEsValido" *ngIf="cambio">Guardar</button>
<span class="separator"></span>
<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_
import { Compartir_idService } from 'src/app/modules/main/services/compartir_id/compartir_id.service';
import { format } from 'date-fns';
import { ActualizarAnexosService } from 'src/app/modules/main/services/actualizar_anexos/actualizar-anexos.service';
import { ErrorTextoComponent } from '../../../errores/error-texto/error-texto.component';
@Component({
......@@ -57,19 +58,49 @@ export class AddAnexosImagenesComponent implements OnInit {
this.selectedFile = event.target.files[0];
}
archivoEsValido: boolean = false;
onFileChange(event: any) {
// Obtener el archivo seleccionado
const fileList: FileList = event.target.files;
if (fileList.length > 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, {
disableClose: true
disableClose: true,
data: {mensaje: mensaje}
});
dialogRef.afterClosed().subscribe(result => {
......@@ -85,7 +116,7 @@ export class AddAnexosImagenesComponent implements OnInit {
//this.anexosImagenes.uzytavanexospr_fech_subida = new Date();
this.anexosImagenesService.guardarParametrosSeparados(this.file, this.anexosImagenes).subscribe(
response => {
this.openModal();
this.openModal('Los anexos se han enviado correctamente');
this.guardar()
this.datosCompartidos.actualizarDatos(this.anexosImagenes);
this.actualizarAnexosService.actualizarDatos(this.file);
......
......@@ -60,9 +60,9 @@ export class AddDocentesParticipantesComponent implements OnInit {
openModal() {
openModal(mensaje: string) {
const dialogRef = this.dialog.open(EnvioFormularioComponent, {
data: {mensaje: mensaje},
disableClose: true
});
......@@ -81,7 +81,7 @@ export class AddDocentesParticipantesComponent implements OnInit {
this.docentesParticipantesService.guardarParametros(this.docenteParticipante).subscribe(
response => {
this.openModal();
this.openModal('La información se ha enviado');
this.guardar()
this.datosCompartidos.actualizarDatos(this.docenteParticipante);
},
......@@ -128,12 +128,16 @@ export class AddDocentesParticipantesComponent implements OnInit {
cancelado() {
this.cambio = false;
this.myForm.disable();
this.myForm.markAsDirty();
this.myForm.markAsUntouched();
}
guardar() {
this.cambio = false;
this.myForm.disable();
this.myForm.reset()
this.myForm.reset();
this.myForm.markAsDirty();
this.myForm.markAsUntouched();
}
}
......@@ -58,8 +58,9 @@ export class AddEstudiantesParticipantesComponent implements OnInit {
openModal() {
openModal(mensaje: string) {
const dialogRef = this.dialog.open(EnvioFormularioComponent, {
data: {mensaje: mensaje},
disableClose: true
});
......@@ -67,7 +68,6 @@ export class AddEstudiantesParticipantesComponent implements OnInit {
this.formularioEnviado = true;
});
}
onSubmit() {
if (this.myForm.valid) {
......@@ -81,7 +81,7 @@ export class AddEstudiantesParticipantesComponent implements OnInit {
this.estudiantesParticipantesService.guardarParametros(this.estudianteParticipante).subscribe(
response => {
console.log("carrera guardada", this.estudianteParticipante)
this.openModal();
this.openModal('La información se ha enviado');
this.guardar()
this.datosCompartidos.actualizarDatos(this.estudianteParticipante);
},
......@@ -125,11 +125,15 @@ export class AddEstudiantesParticipantesComponent implements OnInit {
cancelado() {
this.cambio = false;
this.myForm.disable();
this.myForm.markAsDirty();
this.myForm.markAsUntouched();
}
guardar() {
this.cambio = false;
this.myForm.disable();
this.myForm.reset()
this.myForm.reset();
this.myForm.markAsDirty();
this.myForm.markAsUntouched();
}
}
......@@ -7,7 +7,7 @@
<div class="save-button">
<button mat-raised-button color="primary" *ngIf="!cambio"
(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>
<button mat-raised-button color="warn" *ngIf="cambio"
(click)="cancelado()">Cancelar</button>
......@@ -115,7 +115,7 @@
<mat-error
*ngIf="myForm.get('ninosI').invalid && (myForm.get('ninosI').dirty
|| 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-form-field>
......
......@@ -101,6 +101,9 @@ export class AddIdentificacionPoblacionComponent implements OnInit {
cancelado() {
this.cambio = false;
this.myForm.disable();
this.myForm.reset();
this.myForm.markAsUntouched();
this.myForm.markAsDirty();
}
guardar() {
......@@ -131,7 +134,7 @@ export class AddIdentificacionPoblacionComponent implements OnInit {
this.proyectosService.modificarParametros(this.proyecto.uzytavproyec_id, this.proyecto).subscribe(response => {
console.log('Datos Actualizados', this.proyecto);
this.myForm.disable();
this.openModal();
this.openModal('La información se ha enviado');
this.cambio = false;
//his.openModal();
//this.guardarFormulario = true;
......@@ -142,10 +145,11 @@ export class AddIdentificacionPoblacionComponent implements OnInit {
}
}
openModal() {
openModal(mensaje: string) {
const dialogRef = this.dialog.open(EnvioFormularioComponent, {
width: '400px',
disableClose: true
disableClose: true,
data:{mensaje: mensaje}
});
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