validaciones y controles con tester

parent 834e060e
...@@ -273,7 +273,7 @@ const routes: Routes = [ ...@@ -273,7 +273,7 @@ const routes: Routes = [
{ path: 'Programas', component: ListarProgramaComponent , canActivate:[AuthGuard], data: { requiredEmails: ['jacaceres1@espe.edu.ec', 'jamolina13@espe.edu.ec', 'aczambrano3@espe.edu.ec'] } }, { path: 'Programas', component: ListarProgramaComponent , canActivate:[AuthGuard], data: { requiredEmails: ['jacaceres1@espe.edu.ec', 'jamolina13@espe.edu.ec', 'aczambrano3@espe.edu.ec'] } },
{ path: 'editar-programa/:id', component: EditProgramaComponent, canActivate:[AuthGuard], data: { requiredEmails: ['jacaceres1@espe.edu.ec', 'jamolina13@espe.edu.ec', 'aczambrano3@espe.edu.ec'] } }, { path: 'editar-programa/:id', component: EditProgramaComponent, canActivate:[AuthGuard], data: { requiredEmails: ['jacaceres1@espe.edu.ec', 'jamolina13@espe.edu.ec', 'aczambrano3@espe.edu.ec'] } },
{ path: 'agregar-pograma', component: AgregarProgramaComponent , canActivate:[AuthGuard], data: { requiredEmails: ['jacaceres1@espe.edu.ec', 'jamolina13@espe.edu.ec', 'aczambrano3@espe.edu.ec'] } }, { path: 'agregar-pograma', component: AgregarProgramaComponent , canActivate:[AuthGuard], data: { requiredEmails: ['jacaceres1@espe.edu.ec', 'jamolina13@espe.edu.ec', 'aczambrano3@espe.edu.ec'] } },
{ path: 'editar-programa', component: EditProgramaComponent, canActivate:[AuthGuard], data: { requiredEmails: ['jacaceres1@espe.edu.ec', 'jamolina13@espe.edu.ec', 'aczambrano3@espe.edu.ec'] } },
//Objetivos //Objetivos
{ path: 'ObjetivosPLNBV', component: OjetivosBnComponent , canActivate:[AuthGuard], data: { requiredEmails: ['jacaceres1@espe.edu.ec', 'jamolina13@espe.edu.ec', 'aczambrano3@espe.edu.ec'] } }, { path: 'ObjetivosPLNBV', component: OjetivosBnComponent , canActivate:[AuthGuard], data: { requiredEmails: ['jacaceres1@espe.edu.ec', 'jamolina13@espe.edu.ec', 'aczambrano3@espe.edu.ec'] } },
......
...@@ -61,7 +61,7 @@ export class AddLineaComponent implements OnInit { ...@@ -61,7 +61,7 @@ export class AddLineaComponent implements OnInit {
this.proyectoLineasInvService.guardarParametros(this.proyectoLineas).subscribe(() => { this.proyectoLineasInvService.guardarParametros(this.proyectoLineas).subscribe(() => {
console.log('Datos enviados', this.proyectoLineas); console.log('Datos enviados', this.proyectoLineas);
this.proyectoLineasInvService.parametrosActualizados.next(); this.proyectoLineasInvService.parametrosActualizados.next();
this.openModal(); this.openModal('La línea de Investigación ha sido agregada');
this.formularioGuardado.emit(); this.formularioGuardado.emit();
this.datosCompartidos.actualizarDatos(this.proyectoLineas); this.datosCompartidos.actualizarDatos(this.proyectoLineas);
this.myForm.reset(); this.myForm.reset();
...@@ -88,9 +88,10 @@ export class AddLineaComponent implements OnInit { ...@@ -88,9 +88,10 @@ export class AddLineaComponent implements OnInit {
}); });
} }
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 => {
...@@ -98,4 +99,6 @@ export class AddLineaComponent implements OnInit { ...@@ -98,4 +99,6 @@ export class AddLineaComponent implements OnInit {
this.formularioEnviado = true; this.formularioEnviado = true;
}); });
} }
} }
...@@ -7,6 +7,8 @@ import { Actualiza_datosService } from 'src/app/modules/main/services/actualiza_ ...@@ -7,6 +7,8 @@ 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 { ObjetivosPLNBVService } from 'src/app/modules/main/services/objetivosPLNBV/objetivos-plnbv.service'; import { ObjetivosPLNBVService } from 'src/app/modules/main/services/objetivosPLNBV/objetivos-plnbv.service';
import { PrograObjService } from 'src/app/modules/main/services/prograObj/prograObj.service'; import { PrograObjService } from 'src/app/modules/main/services/prograObj/prograObj.service';
import { ConfirmacionEliminacionComponent } from '../../../../programa/opciones/ConfirmacionEliminacion/ConfirmacionEliminacion.component';
import { Observable } from 'rxjs';
@Component({ @Component({
selector: 'vex-list-objetivos-plnbv', selector: 'vex-list-objetivos-plnbv',
...@@ -102,20 +104,30 @@ export class ListObjetivosPLNBVComponent implements OnInit { ...@@ -102,20 +104,30 @@ export class ListObjetivosPLNBVComponent implements OnInit {
eliminarParametros(id: number) { eliminarParametros(id: number) {
const confirmacion = confirm('¿Desea eliminar el registro?'); this.openModalDelete('¿Desea eliminar el registro?').subscribe(result =>{
if (confirmacion) { if (result) {
this.objPS.eliminarParametros(id).subscribe( this.objPS.eliminarParametros(id).subscribe(
() => { () => {
console.log('El registro se ha eliminado'); console.log('El registro se ha eliminado');
this.obtenerRegistros(); this.obtenerRegistros();
this.obtenerObjetivos(); this.obtenerObjetivos();
}, },
(error) => { (error) => {
// No mostrar el error en la consola // No mostrar el error en la consola
console.log('Error durante el tratamiento al registro'); console.log('Error durante el tratamiento al registro');
} }
); );
} }
});
} }
formularioEnviado:boolean;
openModalDelete(mensaje: string): Observable<string>{
const dialogRef = this.dialog.open(ConfirmacionEliminacionComponent, {
disableClose: true,
data: { mensaje: mensaje }
});
return dialogRef.afterClosed();
}
} }
...@@ -89,7 +89,7 @@ export class AddObjetivosEstrategicosComponent implements OnInit { ...@@ -89,7 +89,7 @@ export class AddObjetivosEstrategicosComponent implements OnInit {
this.estraS.guardarParametros(this.estraM).subscribe(response => { this.estraS.guardarParametros(this.estraM).subscribe(response => {
console.log('Datos Enviados'); console.log('Datos Enviados');
this.estraS.parametrosActualizados.next(); this.estraS.parametrosActualizados.next();
this.openModal(); this.openModal('Objetivo(s) Estrategico(s) Agregado(s)');
this.formularioGuardado.emit(); this.formularioGuardado.emit();
this.datosCompartidos.actualizarDatos(this.estraS); this.datosCompartidos.actualizarDatos(this.estraS);
this.myForm.reset(); this.myForm.reset();
...@@ -100,9 +100,10 @@ export class AddObjetivosEstrategicosComponent implements OnInit { ...@@ -100,9 +100,10 @@ export class AddObjetivosEstrategicosComponent implements OnInit {
} }
} }
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 => {
......
...@@ -175,7 +175,7 @@ export class AddDatosGeneralesComponent implements OnInit { ...@@ -175,7 +175,7 @@ export class AddDatosGeneralesComponent implements OnInit {
console.log("código departamento", this.proyectos.stvsubj_code) console.log("código departamento", this.proyectos.stvsubj_code)
this.proyectosService.guardarParametros(this.proyectos).subscribe(response => { this.proyectosService.guardarParametros(this.proyectos).subscribe(response => {
this.openModal(); this.openModal('Datos Generales del Proyecto Agregados');
this.guardarFormulario = true; this.guardarFormulario = true;
this.idGuardado = this.proyectosService.obtenerId(); this.idGuardado = this.proyectosService.obtenerId();
localStorage.setItem('proyectoId',this.idGuardado.toString()); localStorage.setItem('proyectoId',this.idGuardado.toString());
...@@ -228,9 +228,10 @@ export class AddDatosGeneralesComponent implements OnInit { ...@@ -228,9 +228,10 @@ export class AddDatosGeneralesComponent implements OnInit {
} }
} }
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 => {
......
...@@ -26,7 +26,7 @@ export class AddAnexosImagenesComponent implements OnInit { ...@@ -26,7 +26,7 @@ export class AddAnexosImagenesComponent implements OnInit {
enviarSolicitud = false; enviarSolicitud = false;
formularioEnviado: boolean formularioEnviado: boolean
cambio: boolean; cambio: boolean;
archivoEsValido: boolean = false;
constructor( constructor(
private formBuilder: FormBuilder, private formBuilder: FormBuilder,
private anexosImagenesService: AnexosImagenesService, private anexosImagenesService: AnexosImagenesService,
...@@ -58,7 +58,7 @@ export class AddAnexosImagenesComponent implements OnInit { ...@@ -58,7 +58,7 @@ 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;
...@@ -66,6 +66,7 @@ export class AddAnexosImagenesComponent implements OnInit { ...@@ -66,6 +66,7 @@ export class AddAnexosImagenesComponent implements OnInit {
this.file = fileList[0]; this.file = fileList[0];
if(!this.validarArchivo(this.file)){ if(!this.validarArchivo(this.file)){
this.openModalError('El archivo debe ser una imagen en formato (png, jpeg, jpg'); this.openModalError('El archivo debe ser una imagen en formato (png, jpeg, jpg');
this.archivoEsValido = false;
return; return;
}else{ }else{
this.archivoEsValido = true; this.archivoEsValido = 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('La información se ha enviado'); this.openModal('El número de Docentes ha sido Agregado');
this.guardar(); this.guardar();
this.datosCompartidos.actualizarDatos(this.docenteParticipante); this.datosCompartidos.actualizarDatos(this.docenteParticipante);
}, },
......
...@@ -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('La información se ha enviado'); this.openModal('El número de Estudiantes ha sido Agregado');
this.guardar() this.guardar()
this.datosCompartidos.actualizarDatos(this.estudianteParticipante); this.datosCompartidos.actualizarDatos(this.estudianteParticipante);
}, },
......
...@@ -134,7 +134,7 @@ export class AddIdentificacionPoblacionComponent implements OnInit { ...@@ -134,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('La información se ha enviado'); this.openModal('La Población ha sido identificada');
this.cambio = false; this.cambio = false;
//his.openModal(); //his.openModal();
//this.guardarFormulario = true; //this.guardarFormulario = true;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<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" [disabled]="myForm.invalid" <button mat-raised-button color="primary" *ngIf="cambio" [disabled]="myForm.invalid"
(click)="onSubmit()">Guardar</button> >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>
......
...@@ -6,6 +6,9 @@ import { Compartir_idService } from 'src/app/modules/main/services/compartir_id/ ...@@ -6,6 +6,9 @@ import { Compartir_idService } from 'src/app/modules/main/services/compartir_id/
import { Objetivo_programaService } from 'src/app/modules/main/services/objetivo_programa/objetivo_programa.service'; import { Objetivo_programaService } from 'src/app/modules/main/services/objetivo_programa/objetivo_programa.service';
import { MatTreeNestedDataSource } from '@angular/material/tree'; import { MatTreeNestedDataSource } from '@angular/material/tree';
import { NestedTreeControl } from '@angular/cdk/tree' import { NestedTreeControl } from '@angular/cdk/tree'
import { Observable } from 'rxjs';
import { ConfirmacionEliminacionComponent } from '../../../programa/opciones/ConfirmacionEliminacion/ConfirmacionEliminacion.component';
import { MatDialog } from '@angular/material/dialog';
@Component({ @Component({
selector: 'app-add-matriz-logico', selector: 'app-add-matriz-logico',
templateUrl: './add-matriz-logico.component.html', templateUrl: './add-matriz-logico.component.html',
...@@ -56,7 +59,8 @@ export class AddMatrizLogicoComponent implements OnInit { ...@@ -56,7 +59,8 @@ export class AddMatrizLogicoComponent implements OnInit {
private objeProS: Objetivo_programaService, private objeProS: Objetivo_programaService,
private objeProM: objetivoprograma, private objeProM: objetivoprograma,
private idCompartido: Compartir_idService, private idCompartido: Compartir_idService,
private datosCompartidos: Actualiza_datosService private datosCompartidos: Actualiza_datosService,
private dialog: MatDialog
) { } ) { }
ngOnInit(): void { ngOnInit(): void {
...@@ -308,67 +312,82 @@ export class AddMatrizLogicoComponent implements OnInit { ...@@ -308,67 +312,82 @@ export class AddMatrizLogicoComponent implements OnInit {
} }
eliminarObjG(id: number) { eliminarObjG(id: number) {
const confirmacion = confirm('¿Desea eliminar el registro?'); this.openModalDelete('¿Desea eliminar el registro?').subscribe(result =>{
if (confirmacion) { if (result) {
this.objeProS.eliminarParametros(id).subscribe( this.objeProS.eliminarParametros(id).subscribe(
() => { () => {
console.log('El registro se ha eliminado'); console.log('El registro se ha eliminado');
this.obtenerRegistros(); this.obtenerRegistros();
}, },
(error) => { (error) => {
// No mostrar el error en la consola // No mostrar el error en la consola
console.log('Error durante el tratamiento al registro'); console.log('Error durante el tratamiento al registro');
} }
); );
} }
});
} }
eliminarFin(id: number) { eliminarFin(id: number) {
const confirmacion = confirm('¿Desea eliminar el registro?'); this.openModalDelete('¿Desea eliminar el registro?').subscribe(result =>{
if (confirmacion) { if (result) {
this.objeProS.eliminarParametros(id).subscribe( this.objeProS.eliminarParametros(id).subscribe(
() => { () => {
console.log('El registro se ha eliminado'); console.log('El registro se ha eliminado');
this.obtenerRegistros(); this.obtenerRegistros();
}, },
(error) => { (error) => {
// No mostrar el error en la consola // No mostrar el error en la consola
console.log('Error durante el tratamiento al registro'); console.log('Error durante el tratamiento al registro');
} }
); );
} }
});
} }
eliminarObjEsp(id: number) { eliminarObjEsp(id: number) {
const confirmacion = confirm('¿Desea eliminar el registro?'); this.openModalDelete('¿Desea eliminar el registro?').subscribe(result => {
if (confirmacion) { if (result) {
this.objeProS.eliminarParametros(id).subscribe( this.objeProS.eliminarParametros(id).subscribe(
() => { () => {
console.log('El registro se ha eliminado'); console.log('El registro se ha eliminado');
this.obtenerRegistros(); this.obtenerRegistros();
}, },
(error) => { (error) => {
// No mostrar el error en la consola // No mostrar el error en la consola
console.log('Error durante el tratamiento al registro'); console.log('Error durante el tratamiento al registro');
} }
); );
} }
});
} }
eliminarActividad(id: number) { eliminarActividad(id: number) {
const confirmacion = confirm('¿Desea eliminar el registro?'); this.openModalDelete('¿Desea eliminar el registro?').subscribe(result =>{
if (confirmacion) { if (result) {
this.objeProS.eliminarParametros(id).subscribe( this.objeProS.eliminarParametros(id).subscribe(
() => { () => {
console.log('El registro se ha eliminado'); console.log('El registro se ha eliminado');
this.obtenerRegistros(); this.obtenerRegistros();
}, },
(error) => { (error) => {
// No mostrar el error en la consola // No mostrar el error en la consola
console.log('Error durante el tratamiento al registro'); console.log('Error durante el tratamiento al registro');
} }
); );
} }
});
}
formularioEnviado:boolean;
openModalDelete(mensaje: string): Observable<string>{
const dialogRef = this.dialog.open(ConfirmacionEliminacionComponent, {
disableClose: true,
data: { mensaje: mensaje }
});
return dialogRef.afterClosed();
} }
especificarValor(tipo: number) { especificarValor(tipo: number) {
......
...@@ -70,7 +70,7 @@ ...@@ -70,7 +70,7 @@
(click)="mostrarCober = true">Editar</button> (click)="mostrarCober = true">Editar</button>
<button mat-raised-button color="warn" <button mat-raised-button color="warn"
(click)="cancelarFormularioCobertura()">Cancelar</button> (click)="cancelarFormularioCobertura()">Cancelar</button>
<app-cobertura-proyecto *ngIf="mostrarCober"></app-cobertura-proyecto> <app-cobertura-proyecto *ngIf="mostrarCober" (formularioGuardado)="cancelarFormularioCobertura()"></app-cobertura-proyecto>
<app-listar-cobertura-proyecto></app-listar-cobertura-proyecto> <app-listar-cobertura-proyecto></app-listar-cobertura-proyecto>
<!--fin--> <!--fin-->
</mat-expansion-panel> </mat-expansion-panel>
......
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
<ng-container matColumnDef="Director" class="Column"> <ng-container matColumnDef="Director" class="Column">
<th class="Column" mat-header-cell *matHeaderCellDef mat-sort-header>Campus</th> <th class="Column" mat-header-cell *matHeaderCellDef mat-sort-header>Diretor</th>
<td class="Column" mat-cell *matCellDef="let dato"> <td class="Column" mat-cell *matCellDef="let dato">
{{dato.nombres$ | async }} </td> {{dato.nombres$ | async }} </td>
</ng-container> </ng-container>
...@@ -95,4 +95,4 @@ ...@@ -95,4 +95,4 @@
<mat-paginator #paginator [pageSize]="5" [pageSizeOptions]="[10, 20, 40, 60]"></mat-paginator> <mat-paginator #paginator [pageSize]="5" [pageSizeOptions]="[10, 20, 40, 60]"></mat-paginator>
</div> </div>
</div> </div>
\ No newline at end of file
...@@ -56,7 +56,7 @@ ...@@ -56,7 +56,7 @@
<th class="Column" mat-header-cell *matHeaderCellDef mat-sort-header> <th class="Column" mat-header-cell *matHeaderCellDef mat-sort-header>
Director </th> Director </th>
<td class="Column" mat-cell *matCellDef="let dato">{{ <td class="Column" mat-cell *matCellDef="let dato">{{
dato.uzytavprograma_vnombre ? dato.uzytavprograma_vnombre : 'N/A' }} dato.nombres$ | async }}
</td> </td>
</ng-container> </ng-container>
......
...@@ -8,6 +8,9 @@ import { MatSort } from '@angular/material/sort'; ...@@ -8,6 +8,9 @@ import { MatSort } from '@angular/material/sort';
import { MatTableDataSource } from '@angular/material/table'; import { MatTableDataSource } from '@angular/material/table';
import { MostrarOcultarService } from '../../../services/mostrar-ocultar.service'; import { MostrarOcultarService } from '../../../services/mostrar-ocultar.service';
import { Compartir_idService } from '../../../services/compartir_id/compartir_id.service'; import { Compartir_idService } from '../../../services/compartir_id/compartir_id.service';
import { UsuariosService } from '../../../services/usuarios/usuarios.service';
import { Usuario } from '../../../Models/usuario';
import { Observable, map } from 'rxjs';
@Component({ @Component({
selector: 'vex-listar-programa', selector: 'vex-listar-programa',
...@@ -18,6 +21,9 @@ export class ListarProgramaComponent implements OnInit { ...@@ -18,6 +21,9 @@ export class ListarProgramaComponent implements OnInit {
Progra!: Programa[]; Progra!: Programa[];
selectedEstado: string; selectedEstado: string;
tipo: number; tipo: number;
usuario!: Usuario[];
enviarIdUsuario: Programa;
director: string;
displayedColumns: string[] = [ displayedColumns: string[] = [
'Nro', 'Nro',
'Nombre', 'Nombre',
...@@ -30,16 +36,21 @@ export class ListarProgramaComponent implements OnInit { ...@@ -30,16 +36,21 @@ export class ListarProgramaComponent implements OnInit {
@ViewChild(MatPaginator) paginator: MatPaginator; @ViewChild(MatPaginator) paginator: MatPaginator;
@ViewChild(MatSort) sort: MatSort; @ViewChild(MatSort) sort: MatSort;
constructor(private router: Router, private programaS: ProgramaService, constructor(private router: Router,
private mostrarOcultarService: MostrarOcultarService, private compartirID: Compartir_idService) { private programaS: ProgramaService,
private mostrarOcultarService: MostrarOcultarService,
private compartirID: Compartir_idService,
private datosUsuarioService: UsuariosService) {
this.dataSource = new MatTableDataSource<Programa>([]); this.dataSource = new MatTableDataSource<Programa>([]);
this.tipo = 1; this.tipo = 1;
this.enviarIdUsuario = new Programa();
} }
ngOnInit(): void { ngOnInit(): void {
this.obtenerRegistros();
this.dataSource.paginator = this.paginator; this.dataSource.paginator = this.paginator;
this.dataSource.sort = this.sort; this.dataSource.sort = this.sort;
this.obtenerRegistros();
} }
ngAfterViewInit() { ngAfterViewInit() {
...@@ -49,11 +60,27 @@ export class ListarProgramaComponent implements OnInit { ...@@ -49,11 +60,27 @@ export class ListarProgramaComponent implements OnInit {
obtenerRegistros() { obtenerRegistros() {
this.programaS.getAll().subscribe(data => { this.programaS.getAll().subscribe(data => {
this.Progra = data; this.Progra = data.map(programa => {
return{
...programa,
nombres$: this.obtenerDatosUsuario(programa.uzytusuario_id)
}
});
this.dataSource.data = this.Progra; this.dataSource.data = this.Progra;
}); });
} }
obtenerDatosUsuario(id: number): Observable<string> {
return this.datosUsuarioService.getAll().pipe(
map(data => {
const usuarioEncontrado = data.find(c => c.uzytusuario_id === id);
return usuarioEncontrado ? usuarioEncontrado.uzytusuario_telefono_celular + " - "
+ usuarioEncontrado.uzytusuario_nombres + " " +
usuarioEncontrado.uzytusuario_apellidos : 'No encontrado';
})
);
}
agregarP() { agregarP() {
this.router.navigate(['main/agregar-pograma']); this.router.navigate(['main/agregar-pograma']);
} }
...@@ -79,6 +106,6 @@ export class ListarProgramaComponent implements OnInit { ...@@ -79,6 +106,6 @@ export class ListarProgramaComponent implements OnInit {
); );
this.compartirID.setIdGuardad(id); this.compartirID.setIdGuardad(id);
this.mostrarOcultarService.editPrograma = registroSeleccionado; this.mostrarOcultarService.editPrograma = registroSeleccionado;
this.router.navigate(['main/editar-programa/', id], { queryParams: { dgPrograma: this.tipo.toString() }} ); this.router.navigate(['main/editar-programa/', id], { queryParams: { dgPrograma: this.tipo.toString() } });
} }
} }
...@@ -132,30 +132,29 @@ export class DatosGeneralesComponent implements OnInit { ...@@ -132,30 +132,29 @@ export class DatosGeneralesComponent implements OnInit {
//recuperar la información para el editado //recuperar la información para el editado
this.mostrarOcultarService.editPrograma = this.programaM; this.mostrarOcultarService.editPrograma = this.programaM;
this.programaS.guardarParametros(this.programaM).subscribe(response => { this.programaS.guardarParametros(this.programaM).subscribe(response => {
console.log('Datos enviados');
this.myForm.disable(); this.myForm.disable();
this.openModal(); this.openModal('El Programa ha sido Agregado');
this.guardarFormulario = true; this.guardarFormulario = true;
this.idGuardado = this.programaS.obtenerId(); this.idGuardado = this.programaS.obtenerId();
localStorage.setItem('proyectoId',this.idGuardado.toString()); localStorage.setItem('programaId',this.idGuardado.toString());
this.compartiId.setIdUsuario(this.programaM.uzytusuario_id) this.compartiId.setIdUsuario(this.programaM.uzytusuario_id)
this.idGuardado = this.programaS.obtenerId(); this.idGuardado = this.programaS.obtenerId();
this.compartiId.setIdGuardad(this.idGuardado); this.compartiId.setIdGuardad(this.idGuardado);
this.router.navigate(['main/editar-programa']);
}); });
} catch (error) { } catch (error) {
console.error('Error al enviar los datos:', error); console.error('Error al enviar los datos:', error);
} }
} }
} }
openModal() { openModal(mensaje: string) {
const dialogRef = this.dialog.open(EnvioFormularioComponent, { const dialogRef = this.dialog.open(EnvioFormularioComponent, {
disableClose: true, disableClose: true,
data: { mensaje: 'Se han guardado los datos generales' } data: { mensaje: mensaje}
}); });
dialogRef.afterClosed().subscribe(result => { dialogRef.afterClosed().subscribe(result => {
......
...@@ -89,7 +89,9 @@ export class EditDatosGeneralesComponent implements OnInit { ...@@ -89,7 +89,9 @@ export class EditDatosGeneralesComponent implements OnInit {
cambiar(){ cambiar(){
this.cambio = true; this.cambio = true;
this.myForm.enable(); this.myForm.get('nombreP').enable();
this.myForm.get('fechaIni').enable();
this.myForm.get('fechaFin').enable();
} }
cancelado(){ cancelado(){
......
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