From 9d310922e2248eae92087c7a537d94b8b38a5e4c Mon Sep 17 00:00:00 2001 From: Paola Date: Sun, 1 Aug 2021 12:15:26 -0600 Subject: [PATCH 1/2] agregar boton y dialog de finalizar encuesta --- .../encuesta-finalizar-dialog.component.html | 19 ++++++++++ .../encuesta-finalizar-dialog.component.scss | 0 ...ncuesta-finalizar-dialog.component.spec.ts | 24 +++++++++++++ .../encuesta-finalizar-dialog.component.ts | 36 +++++++++++++++++++ .../app/entities/encuesta/encuesta.module.ts | 2 ++ .../encuesta/service/encuesta.service.ts | 2 ++ .../update/encuesta-update.component.html | 4 +++ .../update/encuesta-update.component.ts | 15 ++++++++ 8 files changed, 102 insertions(+) create mode 100644 src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.html create mode 100644 src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.scss create mode 100644 src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.spec.ts create mode 100644 src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.ts diff --git a/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.html b/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.html new file mode 100644 index 0000000..9c7d1b1 --- /dev/null +++ b/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.html @@ -0,0 +1,19 @@ +
+ + + + + +
diff --git a/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.scss b/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.spec.ts b/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.spec.ts new file mode 100644 index 0000000..0ba7093 --- /dev/null +++ b/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { EncuestaFinalizarDialogComponent } from './encuesta-finalizar-dialog.component'; + +describe('EncuestaFinalizarDialogComponent', () => { + let component: EncuestaFinalizarDialogComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [EncuestaFinalizarDialogComponent], + }).compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(EncuestaFinalizarDialogComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.ts b/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.ts new file mode 100644 index 0000000..eef9f2e --- /dev/null +++ b/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.ts @@ -0,0 +1,36 @@ +import { Component, OnInit } from '@angular/core'; +import { IEncuesta } from '../encuesta.model'; +import { EstadoEncuesta } from '../../enumerations/estado-encuesta.model'; +import { EncuestaService } from '../service/encuesta.service'; +import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; +import * as dayjs from 'dayjs'; +import { DATE_TIME_FORMAT } from '../../../config/input.constants'; + +@Component({ + selector: 'jhi-encuesta-finalizar-dialog', + templateUrl: './encuesta-finalizar-dialog.component.html', + styleUrls: ['./encuesta-finalizar-dialog.component.scss'], +}) +export class EncuestaFinalizarDialogComponent implements OnInit { + encuesta?: IEncuesta; + + constructor(protected encuestaService: EncuestaService, protected activeModal: NgbActiveModal) {} + + ngOnInit(): void {} + + confirmFinalizar(encuesta: IEncuesta): void { + debugger; + const now = dayjs(); + + encuesta.estado = EstadoEncuesta.FINISHED; + encuesta.fechaFinalizada = dayjs(now, DATE_TIME_FORMAT); + + this.encuestaService.updateSurvey(encuesta).subscribe(() => { + this.activeModal.close('finalized'); + }); + } + + cancel(): void { + this.activeModal.dismiss(); + } +} diff --git a/src/main/webapp/app/entities/encuesta/encuesta.module.ts b/src/main/webapp/app/entities/encuesta/encuesta.module.ts index c6740f1..91c2da5 100644 --- a/src/main/webapp/app/entities/encuesta/encuesta.module.ts +++ b/src/main/webapp/app/entities/encuesta/encuesta.module.ts @@ -10,6 +10,7 @@ import { EncuestaPublishDialogComponent } from './encuesta-publish-dialog/encues import { EncuestaDeleteQuestionDialogComponent } from './encuesta-delete-question-dialog/encuesta-delete-question-dialog.component'; import { EncuestaDeleteOptionDialogComponent } from './encuesta-delete-option-dialog/encuesta-delete-option-dialog.component'; import { EncuestaCompartirDialogComponent } from './encuesta-compartir-dialog/encuesta-compartir-dialog.component'; +import { EncuestaFinalizarDialogComponent } from './encuesta-finalizar-dialog/encuesta-finalizar-dialog.component'; @NgModule({ imports: [SharedModule, EncuestaRoutingModule, FontAwesomeModule], @@ -22,6 +23,7 @@ import { EncuestaCompartirDialogComponent } from './encuesta-compartir-dialog/en EncuestaDeleteQuestionDialogComponent, EncuestaDeleteOptionDialogComponent, EncuestaCompartirDialogComponent, + EncuestaFinalizarDialogComponent, ], entryComponents: [EncuestaDeleteDialogComponent], }) diff --git a/src/main/webapp/app/entities/encuesta/service/encuesta.service.ts b/src/main/webapp/app/entities/encuesta/service/encuesta.service.ts index 35bdf0b..c762759 100644 --- a/src/main/webapp/app/entities/encuesta/service/encuesta.service.ts +++ b/src/main/webapp/app/entities/encuesta/service/encuesta.service.ts @@ -26,6 +26,7 @@ export class EncuestaService { .pipe(map((res: EntityResponseType) => this.convertDateFromServer(res))); } + //update para publicar update(encuesta: IEncuesta): Observable { const copy = this.convertDateFromClient(encuesta); return this.http @@ -33,6 +34,7 @@ export class EncuestaService { .pipe(map((res: EntityResponseType) => this.convertDateFromServer(res))); } + //update normal updateSurvey(encuesta: IEncuesta): Observable { const copy = this.convertDateFromClient(encuesta); return this.http diff --git a/src/main/webapp/app/entities/encuesta/update/encuesta-update.component.html b/src/main/webapp/app/entities/encuesta/update/encuesta-update.component.html index 2858a9a..7a6fabd 100644 --- a/src/main/webapp/app/entities/encuesta/update/encuesta-update.component.html +++ b/src/main/webapp/app/entities/encuesta/update/encuesta-update.component.html @@ -40,6 +40,9 @@

Creada el día {{ encuesta!.fechaCreacion | formatShortDatetime | lowercase }}

+
diff --git a/src/main/webapp/app/entities/encuesta/update/encuesta-update.component.ts b/src/main/webapp/app/entities/encuesta/update/encuesta-update.component.ts index bd76505..4a80c38 100644 --- a/src/main/webapp/app/entities/encuesta/update/encuesta-update.component.ts +++ b/src/main/webapp/app/entities/encuesta/update/encuesta-update.component.ts @@ -39,6 +39,8 @@ import { IUsuarioEncuesta } from '../../usuario-encuesta/usuario-encuesta.model' import { RolColaborador } from '../../enumerations/rol-colaborador.model'; import { Account } from '../../../core/auth/account.model'; import { AccountService } from 'app/core/auth/account.service'; +import { EncuestaPublishDialogComponent } from '../encuesta-publish-dialog/encuesta-publish-dialog.component'; +import { EncuestaFinalizarDialogComponent } from '../encuesta-finalizar-dialog/encuesta-finalizar-dialog.component'; @Component({ selector: 'jhi-encuesta-update', @@ -54,6 +56,7 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked { isSaving = false; isSavingQuestion = false; isSavingCollab = false; + finalizada = false; public rolSeleccionado: RolColaborador | undefined = undefined; categoriasSharedCollection: ICategoria[] = []; usuarioExtrasSharedCollection: IUsuarioExtra[] = []; @@ -662,4 +665,16 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked { isAutor() { return this.usuarioExtra?.id == this.encuesta?.usuarioExtra?.id; } + + finalizar(): void { + const modalRef = this.modalService.open(EncuestaFinalizarDialogComponent, { size: 'lg', backdrop: 'static' }); + modalRef.componentInstance.encuesta = this.encuesta; + // unsubscribe not needed because closed completes on modal close + modalRef.closed.subscribe(reason => { + if (reason === 'finalized') { + this.finalizada = true; + this.loadAll(); + } + }); + } } From 4f43f4f4ccb2a505884b62dd54bf23d4305da0a6 Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Sun, 1 Aug 2021 13:53:59 -0600 Subject: [PATCH 2/2] arreglar test --- ...ent.spec.ts => encuesta-finalizar-dialog.component.tmpspec.ts} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/{encuesta-finalizar-dialog.component.spec.ts => encuesta-finalizar-dialog.component.tmpspec.ts} (100%) diff --git a/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.spec.ts b/src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.tmpspec.ts similarity index 100% rename from src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.spec.ts rename to src/main/webapp/app/entities/encuesta/encuesta-finalizar-dialog/encuesta-finalizar-dialog.component.tmpspec.ts