diff --git a/src/main/webapp/app/entities/encuesta/list/encuesta.component.html b/src/main/webapp/app/entities/encuesta/list/encuesta.component.html index ddf5127..6c068ca 100644 --- a/src/main/webapp/app/entities/encuesta/list/encuesta.component.html +++ b/src/main/webapp/app/entities/encuesta/list/encuesta.component.html @@ -284,7 +284,7 @@ Edit - + Delete @@ -316,7 +316,7 @@ data-cy="entityTable" > {{ encuesta.nombre }} - {{ encuesta.fechaCreacion | formatMediumDatetime }} + {{ encuesta.fechaCreacion | formatShortDatetime | titlecase }} {{ encuesta.acceso }} {{ encuesta.estado }} @@ -326,9 +326,7 @@ - - {{ encuesta.usuarioExtra?.nombre }} - + {{ encuesta.usuarioExtra?.user?.login }} diff --git a/src/main/webapp/app/entities/encuesta/list/encuesta.component.ts b/src/main/webapp/app/entities/encuesta/list/encuesta.component.ts index aeffa5e..56770c1 100644 --- a/src/main/webapp/app/entities/encuesta/list/encuesta.component.ts +++ b/src/main/webapp/app/entities/encuesta/list/encuesta.component.ts @@ -22,6 +22,7 @@ import { EstadoEncuesta } from 'app/entities/enumerations/estado-encuesta.model' import { AccountService } from 'app/core/auth/account.service'; import { Account } from 'app/core/auth/account.model'; import { Router } from '@angular/router'; +import { IUser } from '../../user/user.model'; import { faShareAlt, @@ -70,6 +71,7 @@ export class EncuestaComponent implements OnInit, AfterViewInit { categoriasSharedCollection: ICategoria[] = []; usuarioExtrasSharedCollection: IUsuarioExtra[] = []; + userSharedCollection: IUser[] = []; public searchString: string; public accesoEncuesta: string; @@ -117,22 +119,61 @@ export class EncuestaComponent implements OnInit, AfterViewInit { loadAll(): void { this.isLoading = true; - this.encuestaService.query().subscribe( - (res: HttpResponse) => { - this.isLoading = false; - const tmpEncuestas = res.body ?? []; - if (this.isAdmin()) { - this.encuestas = tmpEncuestas; - } else { - this.encuestas = tmpEncuestas - .filter(e => e.usuarioExtra?.id === this.usuarioExtra?.id) - .filter(e => e.estado !== EstadoEncuesta.DELETED); + this.usuarioExtraService + .retrieveAllPublicUsers() + .pipe(finalize(() => this.loadUserExtras())) + .subscribe(res => { + this.userSharedCollection = res; + }); + } + + loadPublicUser(): void { + this.usuarioExtraService + .retrieveAllPublicUsers() + .pipe(finalize(() => this.loadUserExtras())) + .subscribe(res => { + this.userSharedCollection = res; + }); + } + + loadUserExtras() { + this.usuarioExtraService + .query() + .pipe( + finalize(() => + this.encuestaService.query().subscribe( + (res: HttpResponse) => { + this.isLoading = false; + const tmpEncuestas = res.body ?? []; + if (this.isAdmin()) { + this.encuestas = tmpEncuestas; + this.encuestas.forEach(e => { + e.usuarioExtra = this.usuarioExtrasSharedCollection?.find(pU => pU.id == e.usuarioExtra?.id); + }); + } else { + this.encuestas = tmpEncuestas + .filter(e => e.usuarioExtra?.id === this.usuarioExtra?.id) + .filter(e => e.estado !== EstadoEncuesta.DELETED); + } + }, + () => { + this.isLoading = false; + } + ) + ) + ) + .subscribe( + (res: HttpResponse) => { + this.isLoading = false; + this.usuarioExtrasSharedCollection = res.body ?? []; + this.usuarioExtrasSharedCollection.forEach(uE => { + uE.user = this.userSharedCollection?.find(pU => pU.id == uE.user?.id); + }); + }, + () => { + this.isLoading = false; } - }, - () => { - this.isLoading = false; - } - ); + ); } ngOnInit(): void { @@ -173,6 +214,7 @@ export class EncuestaComponent implements OnInit, AfterViewInit { this.usuarioExtraService.find(account.id).subscribe(usuarioExtra => { this.usuarioExtra = usuarioExtra.body; this.loadAll(); + this.loadRelationshipsOptions(); if (this.usuarioExtra !== null) { if (this.usuarioExtra.id === undefined) {