Merge branch 'dev' into feature/US-12

This commit is contained in:
Paola 2021-07-23 23:07:40 -06:00
commit 4d7dd16756
6 changed files with 90 additions and 160 deletions

View File

@ -1,4 +1,4 @@
<form *ngIf="encuesta" name="deleteForm" (ngSubmit)="confirmDelete(encuesta.id!)">
<form *ngIf="encuesta" name="deleteForm" (ngSubmit)="confirmDelete(encuesta)">
<div class="modal-header">
<h4 class="modal-title" data-cy="encuestaDeleteDialogHeading" jhiTranslate="entity.delete.title">Confirm delete operation</h4>
@ -9,7 +9,7 @@
<jhi-alert-error></jhi-alert-error>
<p id="jhi-delete-encuesta-heading" jhiTranslate="dataSurveyApp.encuesta.delete.question" [translateValues]="{ id: encuesta.id }">
Are you sure you want to delete this Encuesta?
Are you sure you want to delete this survey?
</p>
</div>

View File

@ -1,65 +0,0 @@
jest.mock('@ng-bootstrap/ng-bootstrap');
import { ComponentFixture, TestBed, inject, fakeAsync, tick } from '@angular/core/testing';
import { HttpResponse } from '@angular/common/http';
import { HttpClientTestingModule } from '@angular/common/http/testing';
import { of } from 'rxjs';
import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
import { EncuestaService } from '../service/encuesta.service';
import { EncuestaDeleteDialogComponent } from './encuesta-delete-dialog.component';
describe('Component Tests', () => {
describe('Encuesta Management Delete Component', () => {
let comp: EncuestaDeleteDialogComponent;
let fixture: ComponentFixture<EncuestaDeleteDialogComponent>;
let service: EncuestaService;
let mockActiveModal: NgbActiveModal;
beforeEach(() => {
TestBed.configureTestingModule({
imports: [HttpClientTestingModule],
declarations: [EncuestaDeleteDialogComponent],
providers: [NgbActiveModal],
})
.overrideTemplate(EncuestaDeleteDialogComponent, '')
.compileComponents();
fixture = TestBed.createComponent(EncuestaDeleteDialogComponent);
comp = fixture.componentInstance;
service = TestBed.inject(EncuestaService);
mockActiveModal = TestBed.inject(NgbActiveModal);
});
describe('confirmDelete', () => {
it('Should call delete service on confirmDelete', inject(
[],
fakeAsync(() => {
// GIVEN
jest.spyOn(service, 'delete').mockReturnValue(of(new HttpResponse({})));
// WHEN
comp.confirmDelete(123);
tick();
// THEN
expect(service.delete).toHaveBeenCalledWith(123);
expect(mockActiveModal.close).toHaveBeenCalledWith('deleted');
})
));
it('Should not call delete service on clear', () => {
// GIVEN
jest.spyOn(service, 'delete');
// WHEN
comp.cancel();
// THEN
expect(service.delete).not.toHaveBeenCalled();
expect(mockActiveModal.close).not.toHaveBeenCalled();
expect(mockActiveModal.dismiss).toHaveBeenCalled();
});
});
});
});

View File

@ -1,5 +1,6 @@
import { Component } from '@angular/core';
import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
import { EstadoEncuesta } from 'app/entities/enumerations/estado-encuesta.model';
import { IEncuesta } from '../encuesta.model';
import { EncuestaService } from '../service/encuesta.service';
@ -16,8 +17,9 @@ export class EncuestaDeleteDialogComponent {
this.activeModal.dismiss();
}
confirmDelete(id: number): void {
this.encuestaService.delete(id).subscribe(() => {
confirmDelete(encuesta: IEncuesta): void {
encuesta.estado = EstadoEncuesta.DELETED;
this.encuestaService.update(encuesta).subscribe(() => {
this.activeModal.close('deleted');
});
}

View File

@ -32,11 +32,11 @@
<jhi-alert></jhi-alert>
<div class="alert alert-warning" id="no-result" *ngIf="encuestas?.length === 0">
<span jhiTranslate="dataSurveyApp.encuesta.home.notFound">No encuestas found</span>
<span jhiTranslate="dataSurveyApp.encuesta.home.notFound">No surveys found</span>
</div>
<!-- Lista de Encuestas del Usuario -->
<div class="ds-list" (contextmenu)="openContextMenu($event)">
<div class="ds-list" (contextmenu)="openContextMenu($event)" *ngIf="!isAdmin()">
<!-- Context Menu -->
<div class="ds-contextmenu ds-contextmenu--closed" id="contextmenu">
<ul id="ds-context-menu__list">
@ -205,83 +205,69 @@
</div>
</div>
<!-- <div class="table-responsive" id="entities" *ngIf="encuestas && encuestas.length > 0">
<table class="table table-striped" aria-describedby="page-heading">
<thead>
<tr>
<th scope="col"><span jhiTranslate="global.field.id">ID</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.nombre">Nombre</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.descripcion">Descripcion</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.fechaCreacion">Fecha Creacion</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.fechaPublicacion">Fecha Publicacion</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.fechaFinalizar">Fecha Finalizar</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.fechaFinalizada">Fecha Finalizada</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.calificacion">Calificacion</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.acceso">Acceso</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.contrasenna">Contrasenna</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.estado">Estado</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.categoria">Categoria</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.usuarioExtra">Usuario Extra</span></th>
<th scope="col"></th>
</tr>
</thead>
<tbody>
<tr *ngFor="let encuesta of encuestas; trackBy: trackId" data-cy="entityTable">
<td>
<a [routerLink]="['/encuesta', encuesta.id, 'view']">{{ encuesta.id }}</a>
</td>
<td>{{ encuesta.nombre }}</td>
<td>{{ encuesta.descripcion }}</td>
<td>{{ encuesta.fechaCreacion | formatMediumDatetime }}</td>
<td>{{ encuesta.fechaPublicacion | formatMediumDatetime }}</td>
<td>{{ encuesta.fechaFinalizar | formatMediumDatetime }}</td>
<td>{{ encuesta.fechaFinalizada | formatMediumDatetime }}</td>
<td>{{ encuesta.calificacion }}</td>
<td jhiTranslate="{{ 'dataSurveyApp.AccesoEncuesta.' + encuesta.acceso }}">{{ encuesta.acceso }}</td>
<td>{{ encuesta.contrasenna }}</td>
<td jhiTranslate="{{ 'dataSurveyApp.EstadoEncuesta.' + encuesta.estado }}">{{ encuesta.estado }}</td>
<td>
<div *ngIf="encuesta.categoria">
<a [routerLink]="['/categoria', encuesta.categoria?.id, 'view']">{{ encuesta.categoria?.nombre }}</a>
</div>
</td>
<td>
<div *ngIf="encuesta.usuarioExtra">
<a [routerLink]="['/usuario-extra', encuesta.usuarioExtra?.id, 'view']">{{ encuesta.usuarioExtra?.id }}</a>
</div>
</td>
<td class="text-right">
<div class="btn-group">
<button
type="submit"
[routerLink]="['/encuesta', encuesta.id, 'view']"
class="btn btn-info btn-sm"
data-cy="entityDetailsButton"
>
<fa-icon icon="eye"></fa-icon>
<span class="d-none d-md-inline" jhiTranslate="entity.action.view">View</span>
</button>
<div class="table-responsive" id="entities" *ngIf="isAdmin() && encuestas && encuestas.length > 0">
<table class="table table-striped" aria-describedby="page-heading">
<thead>
<tr>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.nombre">Nombre</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.fechaCreacion">Fecha Creacion</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.acceso">Acceso</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.estado">Estado</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.categoria">Categoria</span></th>
<th scope="col"><span jhiTranslate="dataSurveyApp.encuesta.usuarioExtra">Correo Usuario</span></th>
<th scope="col"></th>
</tr>
</thead>
<tbody>
<tr *ngFor="let encuesta of encuestas; trackBy: trackId" data-cy="entityTable">
<td>{{ encuesta.nombre }}</td>
<td>{{ encuesta.fechaCreacion | formatMediumDatetime }}</td>
<td jhiTranslate="{{ 'dataSurveyApp.AccesoEncuesta.' + encuesta.acceso }}">{{ encuesta.acceso }}</td>
<td jhiTranslate="{{ 'dataSurveyApp.EstadoEncuesta.' + encuesta.estado }}">{{ encuesta.estado }}</td>
<td>
<div *ngIf="encuesta.categoria">
<a [routerLink]="['/categoria', encuesta.categoria?.id, 'view']">{{ encuesta.categoria?.nombre }}</a>
</div>
</td>
<td>
<div *ngIf="encuesta.usuarioExtra">
<a [routerLink]="['/usuario-extra', encuesta.usuarioExtra?.nombre, 'view']">
{{ encuesta.usuarioExtra?.nombre }}
</a>
</div>
</td>
<td class="text-right">
<div class="btn-group">
<button
type="submit"
[routerLink]="['/encuesta', encuesta.id, 'view']"
class="ds-btn btn-info btn-sm"
data-cy="entityDetailsButton"
>
<fa-icon icon="eye"></fa-icon>
<span class="d-none d-md-inline" jhiTranslate="entity.action.view">View</span>
</button>
<button
type="submit"
[routerLink]="['/encuesta', encuesta.id, 'edit']"
class="btn btn-primary btn-sm"
data-cy="entityEditButton"
>
<fa-icon icon="pencil-alt"></fa-icon>
<span class="d-none d-md-inline" jhiTranslate="entity.action.edit">Edit</span>
</button>
<button
type="submit"
[routerLink]="['/encuesta', encuesta.id, 'edit']"
class="ds-btn ds-btn--primary btn-sm"
data-cy="entityEditButton"
>
<fa-icon icon="pencil-alt"></fa-icon>
<span class="d-none d-md-inline" jhiTranslate="entity.action.edit">Edit</span>
</button>
<button type="submit" (click)="delete(encuesta)" class="btn btn-danger btn-sm" data-cy="entityDeleteButton">
<fa-icon icon="times"></fa-icon>
<span class="d-none d-md-inline" jhiTranslate="entity.action.delete">Delete</span>
</button>
</div>
</td>
</tr>
</tbody>
</table>
</div> -->
<button type="submit" (click)="delete(encuesta)" class="ds-btn ds-btn--danger btn-sm" data-cy="entityDeleteButton">
<fa-icon icon="times"></fa-icon>
<span class="d-none d-md-inline" jhiTranslate="entity.action.delete">Delete</span>
</button>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- --------------------------------------------------------------------------------------------- -->
@ -415,7 +401,7 @@
<!-- ------------------------------------------------------------------------------------------------- -->
<!-- <div class="row justify-content-center">
<!-- <div ngIf class="row justify-content-center">
<div class="col-8">
<form name="editForm" role="form" novalidate (ngSubmit)="save()" [formGroup]="editForm">
<h2 id="jhi-encuesta-heading" data-cy="EncuestaCreateUpdateHeading" jhiTranslate="dataSurveyApp.encuesta.home.createOrEditLabel">

View File

@ -57,6 +57,7 @@ export class EncuestaComponent implements OnInit, AfterViewInit {
account: Account | null = null;
usuarioExtra: UsuarioExtra | null = null;
estadoDeleted = EstadoEncuesta.DELETED;
encuestas?: IEncuesta[];
isLoading = false;
@ -106,7 +107,13 @@ export class EncuestaComponent implements OnInit, AfterViewInit {
(res: HttpResponse<IEncuesta[]>) => {
this.isLoading = false;
const tmpEncuestas = res.body ?? [];
this.encuestas = tmpEncuestas.filter(e => e.usuarioExtra?.id === this.usuarioExtra?.id);
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.isLoading = false;
@ -163,7 +170,7 @@ export class EncuestaComponent implements OnInit, AfterViewInit {
ngAfterViewInit(): void {}
trackId(index: number, item: IEncuesta): number {
trackId(_index: number, item: IEncuesta): number {
return item.id!;
}
@ -193,11 +200,11 @@ export class EncuestaComponent implements OnInit, AfterViewInit {
}
}
trackCategoriaById(index: number, item: ICategoria): number {
trackCategoriaById(_index: number, item: ICategoria): number {
return item.id!;
}
trackUsuarioExtraById(index: number, item: IUsuarioExtra): number {
trackUsuarioExtraById(_index: number, item: IUsuarioExtra): number {
return item.id!;
}

View File

@ -4,15 +4,15 @@
"home": {
"title": "Encuestas",
"refreshListLabel": "Refrescar lista",
"createLabel": "Crear nuevo Encuesta",
"createOrEditLabel": "Crear o editar Encuesta",
"notFound": "Ningún Encuestas encontrado"
"createLabel": "Crear nueva encuesta",
"createOrEditLabel": "Crear o editar encuesta",
"notFound": "Ninguna encuesta fue encontrada"
},
"created": "Un nuevo Encuesta ha sido creado con el identificador {{ param }}",
"updated": "Un Encuesta ha sido actualizado con el identificador {{ param }}",
"deleted": "Un Encuesta ha sido eliminado con el identificador {{ param }}",
"created": "Una nueva encuesta ha sido creada con el identificador {{ param }}",
"updated": "Una encuesta ha sido actualizado con el identificador {{ param }}",
"deleted": "Una encuesta ha sido eliminada con el identificador {{ param }}",
"delete": {
"question": "¿Seguro que quiere eliminar Encuesta {{ id }}?"
"question": "¿Seguro que quiere eliminar la encuesta {{ id }}?"
},
"detail": {
"title": "Encuesta"
@ -32,7 +32,7 @@
"ePreguntaAbierta": "E Pregunta Abierta",
"ePreguntaCerrada": "E Pregunta Cerrada",
"categoria": "Categoría",
"usuarioExtra": "Usuario Extra"
"usuarioExtra": "Correo Usuario"
}
}
}