2021-07-03 21:48:27 +00:00
|
|
|
import { Component, OnInit } from '@angular/core';
|
|
|
|
import { HttpResponse } from '@angular/common/http';
|
|
|
|
import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
|
|
|
|
|
|
|
|
import { IUsuarioEncuesta } from '../usuario-encuesta.model';
|
|
|
|
import { UsuarioEncuestaService } from '../service/usuario-encuesta.service';
|
|
|
|
import { UsuarioEncuestaDeleteDialogComponent } from '../delete/usuario-encuesta-delete-dialog.component';
|
2021-07-27 06:09:01 +00:00
|
|
|
import * as dayjs from 'dayjs';
|
|
|
|
import { faPollH, faPencilAlt } from '@fortawesome/free-solid-svg-icons';
|
|
|
|
|
|
|
|
import { AccountService } from 'app/core/auth/account.service';
|
|
|
|
import { Account } from 'app/core/auth/account.model';
|
|
|
|
import { IUsuarioExtra, UsuarioExtra } from 'app/entities/usuario-extra/usuario-extra.model';
|
|
|
|
import { IUser } from '../../user/user.model';
|
|
|
|
import { UsuarioExtraService } from 'app/entities/usuario-extra/service/usuario-extra.service';
|
|
|
|
import { ActivatedRoute, Router } from '@angular/router';
|
2021-07-03 21:48:27 +00:00
|
|
|
|
|
|
|
@Component({
|
|
|
|
selector: 'jhi-usuario-encuesta',
|
|
|
|
templateUrl: './usuario-encuesta.component.html',
|
|
|
|
})
|
|
|
|
export class UsuarioEncuestaComponent implements OnInit {
|
2021-07-27 06:09:01 +00:00
|
|
|
faPollH = faPollH;
|
|
|
|
faPencilAlt = faPencilAlt;
|
|
|
|
|
2021-07-03 21:48:27 +00:00
|
|
|
usuarioEncuestas?: IUsuarioEncuesta[];
|
|
|
|
isLoading = false;
|
2021-07-27 06:09:01 +00:00
|
|
|
usuarioExtra: IUsuarioExtra | null = null;
|
|
|
|
user: IUser | null = null;
|
2021-07-03 21:48:27 +00:00
|
|
|
|
2021-07-27 06:09:01 +00:00
|
|
|
constructor(
|
|
|
|
protected usuarioEncuestaService: UsuarioEncuestaService,
|
|
|
|
protected modalService: NgbModal,
|
|
|
|
protected usuarioExtraService: UsuarioExtraService,
|
|
|
|
protected activatedRoute: ActivatedRoute,
|
|
|
|
protected accountService: AccountService,
|
|
|
|
protected router: Router
|
|
|
|
) {}
|
2021-07-03 21:48:27 +00:00
|
|
|
|
|
|
|
loadAll(): void {
|
|
|
|
this.isLoading = true;
|
|
|
|
|
|
|
|
this.usuarioEncuestaService.query().subscribe(
|
|
|
|
(res: HttpResponse<IUsuarioEncuesta[]>) => {
|
|
|
|
this.isLoading = false;
|
2021-07-27 06:09:01 +00:00
|
|
|
const tempUsuarioEncuestas = res.body ?? [];
|
|
|
|
this.usuarioEncuestas = tempUsuarioEncuestas
|
|
|
|
.filter(c => c.usuarioExtra?.id === this.usuarioExtra?.id)
|
|
|
|
.filter(c => c.estado === 'ACTIVE')
|
|
|
|
.filter(c => c.encuesta?.estado !== 'DELETED');
|
2021-07-03 21:48:27 +00:00
|
|
|
},
|
|
|
|
() => {
|
|
|
|
this.isLoading = false;
|
|
|
|
}
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
ngOnInit(): void {
|
2021-07-27 06:09:01 +00:00
|
|
|
this.accountService.getAuthenticationState().subscribe(account => {
|
|
|
|
if (account !== null) {
|
|
|
|
this.usuarioExtraService.find(account.id).subscribe(usuarioExtra => {
|
|
|
|
this.usuarioExtra = usuarioExtra.body;
|
|
|
|
this.loadAll();
|
|
|
|
if (this.usuarioExtra !== null) {
|
|
|
|
if (this.usuarioExtra.id === undefined) {
|
|
|
|
const today = dayjs().startOf('day');
|
|
|
|
this.usuarioExtra.fechaNacimiento = today;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|
2021-07-03 21:48:27 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
trackId(index: number, item: IUsuarioEncuesta): number {
|
|
|
|
return item.id!;
|
|
|
|
}
|
|
|
|
|
|
|
|
delete(usuarioEncuesta: IUsuarioEncuesta): void {
|
|
|
|
const modalRef = this.modalService.open(UsuarioEncuestaDeleteDialogComponent, { size: 'lg', backdrop: 'static' });
|
|
|
|
modalRef.componentInstance.usuarioEncuesta = usuarioEncuesta;
|
|
|
|
// unsubscribe not needed because closed completes on modal close
|
|
|
|
modalRef.closed.subscribe(reason => {
|
|
|
|
if (reason === 'deleted') {
|
|
|
|
this.loadAll();
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|