Merge branch 'desarrollo' into 'master'

validaciones tanto en programa y proyecto

See merge request !13
parents d72e5bad 792e2910
......@@ -34,9 +34,13 @@
<!--valor del indicador-->
<mat-form-field class="form-field-dos">
<mat-label>Valor Indicador</mat-label>
<input matInput formControlName="valorindicadorFin" type="number"
max="100">
<mat-error>El valor no puede ser mayor que 100</mat-error>
<input matInput formControlName="valorindicadorFin" type="number">
<mat-error *ngIf="myForm.get('valorindicadorFin').hasError('min')">
El valor no puede ser menor a 0
</mat-error>
<mat-error *ngIf="myForm.get('valorindicadorFin').hasError('max')">
El valor no puede ser mayor que 100
</mat-error>
</mat-form-field>
</div>
......@@ -100,8 +104,13 @@
<mat-form-field class="form-field-dos">
<mat-label>Valor Indicador:</mat-label>
<input matInput formControlName="valorindicadorObjG" type="number"
max="100">
<mat-error>El valor no puede ser mayor que 100</mat-error>
>
<mat-error *ngIf="myForm2.get('valorindicadorObjG').hasError('min')">
El valor no puede ser menor a 0
</mat-error>
<mat-error *ngIf="myForm2.get('valorindicadorObjG').hasError('max')">
El valor no puede ser mayor que 100
</mat-error>
</mat-form-field>
</div>
......@@ -165,8 +174,13 @@
<mat-form-field class="form-field-dos">
<mat-label>Valor Indicador:</mat-label>
<input matInput formControlName="valorindicadorObjEspe"
type="number" max="100">
<mat-error>El valor no puede ser mayor que 100</mat-error>
type="number">
<mat-error *ngIf="myForm3.get('valorindicadorObjEspe').hasError('min')">
El valor no puede ser menor a 0
</mat-error>
<mat-error *ngIf="myForm3.get('valorindicadorObjEspe').hasError('max')">
El valor no puede ser mayor que 100
</mat-error>
</mat-form-field>
</div>
......@@ -229,9 +243,13 @@
<!--valor del indicador-->
<mat-form-field class="form-field-dos">
<mat-label>Valor Indicador</mat-label>
<input matInput formControlName="valorindicadorActi" type="number"
max="100">
<mat-error>El valor no puede ser mayor que 100</mat-error>
<input matInput formControlName="valorindicadorActi" type="number">
<mat-error *ngIf="myForm4.get('valorindicadorActi').hasError('min')">
El valor no puede ser menor a 0
</mat-error>
<mat-error *ngIf="myForm4.get('valorindicadorActi').hasError('max')">
El valor no puede ser mayor que 100
</mat-error>
</mat-form-field>
</div>
......
......@@ -68,7 +68,7 @@ export class AddMatrizLogicoComponent implements OnInit {
this.myForm = this.formBuilder.group({
fin: ['', Validators.required],
tipoindiFin: ['', Validators.required],
valorindicadorFin: ['', Validators.required],
valorindicadorFin: ['',[Validators.required, Validators.min(0), Validators.max(100)]],
indicadorFin: ['', Validators.required],
medioVeriFin: ['', Validators.required],
supuestoFin: ['', Validators.required]
......@@ -77,7 +77,7 @@ export class AddMatrizLogicoComponent implements OnInit {
this.myForm2 = this.formBuilder.group({
objetivoG: ['', Validators.required],
tipoindiObjG: ['', Validators.required],
valorindicadorObjG: ['', Validators.required],
valorindicadorObjG: ['', [Validators.required, Validators.min(0), Validators.max(100)]],
indicadorObjG: ['', Validators.required],
medioVeriObjG: ['', Validators.required],
supuestoObjG: ['', Validators.required]
......@@ -86,7 +86,7 @@ export class AddMatrizLogicoComponent implements OnInit {
this.myForm3 = this.formBuilder.group({
objetivoEspe: ['', Validators.required],
tipoindiObjEspe: ['', Validators.required],
valorindicadorObjEspe: ['', Validators.required],
valorindicadorObjEspe: ['', [Validators.required, Validators.min(0), Validators.max(100)]],
indicadorObjEspe: ['', Validators.required],
medioVeriObjEspe: ['', Validators.required],
supuestoObjEspe: ['', Validators.required]
......@@ -95,7 +95,7 @@ export class AddMatrizLogicoComponent implements OnInit {
this.myForm4 = this.formBuilder.group({
actividadEspe: ['', Validators.required],
tipoindiActi: ['', Validators.required],
valorindicadorActi: ['', Validators.required],
valorindicadorActi: ['', [Validators.required, Validators.min(0), Validators.max(100)]],
indicadorObjActi: ['', Validators.required],
medioVeriActi: ['', Validators.required],
supuestoActi: ['', Validators.required]
......
......@@ -6,7 +6,7 @@
<button mat-raised-button color="primary" *ngIf="!cambio"
(click)="cambiar()">Editar</button>
<button mat-raised-button color="primary" *ngIf="cambio"
(click)="onSubmit()">Guardar</button>
(click)="onSubmit()" [disabled]="myForm.invalid">Guardar</button>
<span class="separator"></span>
<button mat-raised-button color="warn" *ngIf="cambio"
(click)="cancelado()">Cancelar</button>
......@@ -15,7 +15,7 @@
<mat-card-content>
<div>
<label class="label-negrita"> Metas del Programa:</label>
<label class="label-negrita"><strong>Metas del Programa:</strong> </label>
<ckeditor formControlName="metas" class="custom-ckeditor"
[disabled]="!isEditorEnabled" [style.height]="editorHeight"
[editor]="Editor"></ckeditor>
......@@ -23,10 +23,13 @@
class="error-message">
El contenido no puede exceder los 3000 caracteres.
</div>
<div *ngIf="myForm.get('metas').hasError('required') && (myForm.get('metas').touched || myForm.dirty)" class="error-message">
Este campo es requerido.
</div>
</div>
<div>
<label class="label-negrita"> Políticas del Programa para la ejecución de Proyectos:</label>
<label class="label-negrita"><strong>Políticas del Programa para la ejecución de Proyectos:</strong> </label>
<ckeditor formControlName="politica" class="custom-ckeditor"
[disabled]="!isEditorEnabled" [style.height]="editorHeight"
[editor]="Editor"></ckeditor>
......@@ -34,6 +37,9 @@
class="error-message">
El contenido no puede exceder los 3000 caracteres.
</div>
<div *ngIf="myForm.get('politica').hasError('required') && (myForm.get('politica').touched || myForm.dirty)" class="error-message">
Este campo es requerido.
</div>
</div>
</mat-card-content>
......
......@@ -37,10 +37,19 @@ export class EstraEComponent implements OnInit {
cancelado() {
this.cambio = false;
this.isEditorEnabled = false;
this.myForm.get('metas').setValue('');
this.myForm.get('politica').setValue('');
this.myForm.get('metas').markAsPristine();
this.myForm.get('metas').markAsUntouched();
this.myForm.get('politica').markAsPristine();
this.myForm.get('politica').markAsUntouched();
}
ngOnInit(): void {
this.idRecuperado = this.compartiId.getIdGuardado();
this.idRecuperado = parseInt(localStorage.getItem('programaId'),10);
this.programa = new Programa();
this.obtenerRegistros();
......
......@@ -6,7 +6,7 @@
<mat-card>
<mat-card-header>
<div class="save-button">
<button mat-raised-button color="primary" *ngIf="cambio">Guardar</button>
<button mat-raised-button color="primary" *ngIf="cambio" [disabled]="myForm.invalid">Guardar</button>
<span class="separator"></span>
<button mat-raised-button color="warn" *ngIf="cambio"
(click)="cancelado()">Cancelar</button>
......@@ -33,7 +33,13 @@
<!--valor del indicador-->
<mat-form-field class="form-field-dos">
<mat-label>Valor Indicador</mat-label>
<input matInput formControlName="valorindicadorFin">
<input matInput formControlName="valorindicadorFin" type="number">
<mat-error *ngIf="myForm.get('valorindicadorFin').hasError('min')">
El valor no puede ser menor a 0
</mat-error>
<mat-error *ngIf="myForm.get('valorindicadorFin').hasError('max')">
El valor no puede ser mayor que 100
</mat-error>
</mat-form-field>
</div>
......@@ -68,7 +74,7 @@
<mat-card>
<mat-card-header>
<div class="save-button">
<button mat-raised-button color="primary" *ngIf="cambio2">Guardar</button>
<button mat-raised-button color="primary" *ngIf="cambio2" [disabled]="myForm2.invalid">Guardar</button>
<span class="separator"></span>
<button mat-raised-button color="warn" *ngIf="cambio2"
(click)="cancelado2()">Cancelar</button>
......@@ -95,7 +101,13 @@
<!--valor del indicador-->
<mat-form-field class="form-field-dos">
<mat-label>Valor Indicador:</mat-label>
<input matInput formControlName="valorindicadorObjG">
<input matInput formControlName="valorindicadorObjG" type="number">
<mat-error *ngIf="myForm2.get('valorindicadorObjG').hasError('min')">
El valor no puede ser menor a 0
</mat-error>
<mat-error *ngIf="myForm2.get('valorindicadorObjG').hasError('max')">
El valor no puede ser mayor que 100
</mat-error>
</mat-form-field>
</div>
......@@ -130,7 +142,7 @@
<mat-card>
<mat-card-header>
<div class="save-button">
<button mat-raised-button color="primary" *ngIf="cambio3">Guardar</button>
<button mat-raised-button color="primary" *ngIf="cambio3" [disabled]="myForm3.invalid">Guardar</button>
<span class="separator"></span>
<button mat-raised-button color="warn" *ngIf="cambio3"
(click)="canceladoObjEs()">Cancelar</button>
......@@ -157,7 +169,13 @@
<!--valor del indicador-->
<mat-form-field class="form-field-dos">
<mat-label>Valor Indicador:</mat-label>
<input matInput formControlName="valorindicadorObjEspe">
<input matInput formControlName="valorindicadorObjEspe" type="number" >
<mat-error *ngIf="myForm3.get('valorindicadorObjEspe').hasError('min')">
El valor no puede ser menor a 0
</mat-error>
<mat-error *ngIf="myForm3.get('valorindicadorObjEspe').hasError('max')">
El valor no puede ser mayor que 100
</mat-error>
</mat-form-field>
</div>
......@@ -192,7 +210,7 @@
<mat-card>
<mat-card-header>
<div class="save-button">
<button mat-raised-button color="primary" *ngIf="cambio4">Guardar</button>
<button mat-raised-button color="primary" *ngIf="cambio4" [disabled]="myForm4.invalid">Guardar</button>
<span class="separator"></span>
<button mat-raised-button color="warn" *ngIf="cambio4"
(click)="canceladoActi()">Cancelar</button>
......@@ -219,7 +237,13 @@
<!--valor del indicador-->
<mat-form-field class="form-field-dos">
<mat-label>Valor Indicador:</mat-label>
<input matInput formControlName="valorindicadorActi">
<input matInput formControlName="valorindicadorActi" type="number" min="0" max="100">
<mat-error *ngIf="myForm4.get('valorindicadorActi').hasError('min')">
El valor no puede ser menor a 0
</mat-error>
<mat-error *ngIf="myForm4.get('valorindicadorActi').hasError('max')">
El valor no puede ser mayor que 100
</mat-error>
</mat-form-field>
</div>
......@@ -373,7 +397,7 @@
</tr>
<!-- tabla interna para cada item -->
<tr>
<tr *ngIf="mostrarDiv[i]">
<td colspan="8">
<div class="container">
<div class="mat-elevation-z8">
......@@ -410,7 +434,7 @@
<td>
<button>
<mat-icon color="warn"
(click)="eliminarActividad(item.uzytavobjetivo_programa_id)">delete</mat-icon>
(click)="eliminarActividad(acti.uzytavobjetivo_programa_id)">delete</mat-icon>
</button>
</td>
</ng-container>
......
import { Component, OnInit, ElementRef, ViewChild } from '@angular/core';
import { FormBuilder, FormGroup } from '@angular/forms';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
import { Observable } from 'rxjs';
import { objetivoprograma } from 'src/app/modules/main/Models/objetivoPrograma';
import { Actualiza_datosService } from 'src/app/modules/main/services/actualiza_datos/actualiza_datos.service';
import { Compartir_idService } from 'src/app/modules/main/services/compartir_id/compartir_id.service';
import { Objetivo_programaService } from 'src/app/modules/main/services/objetivo_programa/objetivo_programa.service';
import { ConfirmacionEliminacionComponent } from '../ConfirmacionEliminacion/ConfirmacionEliminacion.component';
import { MatDialog } from '@angular/material/dialog';
@Component({
selector: 'vex-matriz-m',
......@@ -43,45 +46,46 @@ export class MatrizMComponent implements OnInit {
private objeProS: Objetivo_programaService,
private objeProM: objetivoprograma,
private idCompartido: Compartir_idService,
private datosCompartidos: Actualiza_datosService
private datosCompartidos: Actualiza_datosService,
private dialog: MatDialog
) { }
ngOnInit(): void {
this.idRecuperado = parseInt(localStorage.getItem('programaId'),10);
this.myForm = this.formBuilder.group({
fin: [],
tipoindiFin: [],
valorindicadorFin: [],
indicadorFin: [],
medioVeriFin: [],
supuestoFin: []
fin: ['', Validators.required],
tipoindiFin: ['', Validators.required],
valorindicadorFin: ['', [Validators.required, Validators.min(0), Validators.max(100)]],
indicadorFin: ['', Validators.required],
medioVeriFin: ['', Validators.required],
supuestoFin: ['', Validators.required]
});
this.myForm2 = this.formBuilder.group({
objetivoG: [],
tipoindiObjG: [],
valorindicadorObjG: [],
indicadorObjG: [],
medioVeriObjG: [],
supuestoObjG: []
objetivoG: ['', Validators.required],
tipoindiObjG: ['', Validators.required],
valorindicadorObjG: ['', [Validators.required, Validators.min(0), Validators.max(100)]],
indicadorObjG: ['', Validators.required],
medioVeriObjG: ['', Validators.required],
supuestoObjG: ['', Validators.required]
});
this.myForm3 = this.formBuilder.group({
objetivoEspe: [],
tipoindiObjEspe: [],
valorindicadorObjEspe: [],
indicadorObjEspe: [],
medioVeriObjEspe: [],
supuestoObjEspe: []
objetivoEspe: ['', Validators.required],
tipoindiObjEspe: ['', Validators.required],
valorindicadorObjEspe: ['', [Validators.required, Validators.min(0), Validators.max(100)]],
indicadorObjEspe: ['', Validators.required],
medioVeriObjEspe: ['', Validators.required],
supuestoObjEspe: ['', Validators.required]
});
this.myForm4 = this.formBuilder.group({
actividadEspe: [],
tipoindiActi: [],
valorindicadorActi: [],
indicadorObjActi: [],
medioVeriActi: [],
supuestoActi: []
actividadEspe: ['', Validators.required],
tipoindiActi: ['', Validators.required],
valorindicadorActi: ['', [Validators.required, Validators.min(0), Validators.max(100)]],
indicadorObjActi: ['', Validators.required],
medioVeriActi: ['', Validators.required],
supuestoActi: ['', Validators.required]
});
this.datosCompartidos.datos$.subscribe(() => {
......@@ -116,7 +120,7 @@ export class MatrizMComponent implements OnInit {
if (this.myForm.valid) {
try {
//guardar el id del proyecto
this.objeProM.uzytavprograma_v_id = this.idCompartido.getIdGuardado();
this.objeProM.uzytavprograma_v_id = this.idRecuperado;
//guardar el tipo por defecto que sea de 1.
this.objeProM.uzytavobjetivo_programatipo = 1;
......@@ -144,7 +148,7 @@ export class MatrizMComponent implements OnInit {
if (this.myForm2.valid) {
try {
//guardar el id del proyecto
this.objeProM.uzytavprograma_v_id = this.idCompartido.getIdGuardado();
this.objeProM.uzytavprograma_v_id = this.idRecuperado;
//guardar el tipo por defecto que sea de 2.
this.objeProM.uzytavobjetivo_programatipo = 2;
......@@ -175,7 +179,7 @@ export class MatrizMComponent implements OnInit {
if (this.myForm3.valid) {
try {
//guardar el id del proyecto
this.objeProM.uzytavprograma_v_id = this.idCompartido.getIdGuardado();
this.objeProM.uzytavprograma_v_id = this.idRecuperado;
//guardar el id del objetivo general
this.objeProM.uzytavobjetivo_programa_id_padre = this.idCompartido.getIdPadre();
//guardar el tipo por defecto que sea de 3.
......@@ -207,7 +211,7 @@ export class MatrizMComponent implements OnInit {
if (this.myForm4.valid) {
try {
//guardar el id del proyecto
this.objeProM.uzytavprograma_v_id = this.idCompartido.getIdGuardado();
this.objeProM.uzytavprograma_v_id = this.idRecuperado;
this.objeProM.uzytavobjetivo_programa_id_padre = this.idCompartido.getIdEspe();
//guardar el tipo por defecto que sea de 4.
this.objeProM.uzytavobjetivo_programatipo = 4;
......@@ -235,7 +239,6 @@ export class MatrizMComponent implements OnInit {
}
obtenerRegistros() {
this.idRecuperado = this.idCompartido.getIdGuardado();
if (this.idRecuperado !== undefined) {
this.objeProS.registrosRelacionadosConPrograma(this.idRecuperado).subscribe(data => {
if (data !== undefined) {
......@@ -287,67 +290,72 @@ export class MatrizMComponent implements OnInit {
}
eliminarObjG(id: number) {
const confirmacion = confirm('¿Desea eliminar el registro?');
if (confirmacion) {
this.objeProS.eliminarParametros(id).subscribe(
() => {
console.log('El registro se ha eliminado');
this.obtenerRegistros();
},
(error) => {
// No mostrar el error en la consola
console.log('Error durante el tratamiento al registro');
}
);
}
this.openModalDelete('¿Desea eliminar el registro?').subscribe(result =>{
if (result) {
this.objeProS.eliminarParametros(id).subscribe(
() => {
console.log('El registro se ha eliminado');
this.obtenerRegistros();
},
(error) => {
// No mostrar el error en la consola
console.log('Error durante el tratamiento al registro');
}
);
}
});
}
eliminarFin(id: number) {
const confirmacion = confirm('¿Desea eliminar el registro?');
if (confirmacion) {
this.objeProS.eliminarParametros(id).subscribe(
() => {
console.log('El registro se ha eliminado');
this.obtenerRegistros();
},
(error) => {
// No mostrar el error en la consola
console.log('Error durante el tratamiento al registro');
}
);
}
this.openModalDelete('¿Desea eliminar el registro?').subscribe(result =>{
if (result) {
this.objeProS.eliminarParametros(id).subscribe(
() => {
console.log('El registro se ha eliminado');
this.obtenerRegistros();
},
(error) => {
// No mostrar el error en la consola
console.log('Error durante el tratamiento al registro');
}
);
}
});
}
eliminarObjEsp(id: number){
const confirmacion = confirm('¿Desea eliminar el registro?');
if (confirmacion) {
this.objeProS.eliminarParametros(id).subscribe(
() => {
console.log('El registro se ha eliminado');
this.obtenerRegistros();
},
(error) => {
// No mostrar el error en la consola
console.log('Error durante el tratamiento al registro');
}
);
}
this.openModalDelete('¿Desea eliminar el registro?').subscribe(result =>{
if (result) {
this.objeProS.eliminarParametros(id).subscribe(
() => {
console.log('El registro se ha eliminado');
this.obtenerRegistros();
},
(error) => {
// No mostrar el error en la consola
console.log('Error durante el tratamiento al registro');
}
);
}
});
}
eliminarActividad(id: number){
const confirmacion = confirm('¿Desea eliminar el registro?');
if (confirmacion) {
this.objeProS.eliminarParametros(id).subscribe(
() => {
console.log('El registro se ha eliminado');
this.obtenerRegistros();
},
(error) => {
// No mostrar el error en la consola
console.log('Error durante el tratamiento al registro');
}
);
}
this.openModalDelete('¿Desea eliminar el registro?').subscribe(result =>{
if (result) {
this.objeProS.eliminarParametrosHijo(id).subscribe(
() => {
console.log('El registro se ha eliminado');
this.obtenerRegistros();
},
(error) => {
// No mostrar el error en la consola
console.log('Error durante el tratamiento al registro');
}
);
}
});
}
especificarValor(tipo : number){
......@@ -358,6 +366,16 @@ export class MatrizMComponent implements OnInit {
}
}
formularioEnviado:boolean;
openModalDelete(mensaje: string): Observable<string>{
const dialogRef = this.dialog.open(ConfirmacionEliminacionComponent, {
disableClose: true,
data: { mensaje: mensaje }
});
return dialogRef.afterClosed();
}
scrollIntoView() {
if (this.activitySection && this.activitySection.nativeElement) {
this.activitySection.nativeElement.scrollIntoView({ behavior: 'smooth' });
......
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