Merge pull request #116 from Quantum-P3/feature/US-40
Add crear encuesta a partir de una plantilla
This commit is contained in:
commit
842fd46ff8
|
@ -11,10 +11,7 @@ import java.util.stream.Collectors;
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
import javax.validation.Valid;
|
import javax.validation.Valid;
|
||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
import org.datasurvey.domain.EPreguntaAbierta;
|
import org.datasurvey.domain.*;
|
||||||
import org.datasurvey.domain.EPreguntaCerrada;
|
|
||||||
import org.datasurvey.domain.EPreguntaCerradaOpcion;
|
|
||||||
import org.datasurvey.domain.Encuesta;
|
|
||||||
import org.datasurvey.domain.enumeration.AccesoEncuesta;
|
import org.datasurvey.domain.enumeration.AccesoEncuesta;
|
||||||
import org.datasurvey.repository.EncuestaRepository;
|
import org.datasurvey.repository.EncuestaRepository;
|
||||||
import org.datasurvey.service.*;
|
import org.datasurvey.service.*;
|
||||||
|
@ -59,6 +56,14 @@ public class EncuestaResource {
|
||||||
|
|
||||||
private final EPreguntaCerradaOpcionService ePreguntaCerradaOpcionService;
|
private final EPreguntaCerradaOpcionService ePreguntaCerradaOpcionService;
|
||||||
|
|
||||||
|
private final PlantillaService plantillaService;
|
||||||
|
|
||||||
|
private final PPreguntaCerradaService pPreguntaCerradaService;
|
||||||
|
|
||||||
|
private final PPreguntaAbiertaService pPreguntaAbiertaService;
|
||||||
|
|
||||||
|
private final PPreguntaCerradaOpcionService pPreguntaCerradaOpcionService;
|
||||||
|
|
||||||
public EncuestaResource(
|
public EncuestaResource(
|
||||||
EncuestaService encuestaService,
|
EncuestaService encuestaService,
|
||||||
EncuestaRepository encuestaRepository,
|
EncuestaRepository encuestaRepository,
|
||||||
|
@ -66,7 +71,11 @@ public class EncuestaResource {
|
||||||
MailService mailService,
|
MailService mailService,
|
||||||
EPreguntaCerradaService ePreguntaCerradaService,
|
EPreguntaCerradaService ePreguntaCerradaService,
|
||||||
EPreguntaAbiertaService ePreguntaAbiertaService,
|
EPreguntaAbiertaService ePreguntaAbiertaService,
|
||||||
EPreguntaCerradaOpcionService ePreguntaCerradaOpcionService
|
EPreguntaCerradaOpcionService ePreguntaCerradaOpcionService,
|
||||||
|
PlantillaService plantillaService,
|
||||||
|
PPreguntaCerradaService pPreguntaCerradaService,
|
||||||
|
PPreguntaAbiertaService pPreguntaAbiertaService,
|
||||||
|
PPreguntaCerradaOpcionService pPreguntaCerradaOpcionService
|
||||||
) {
|
) {
|
||||||
this.encuestaService = encuestaService;
|
this.encuestaService = encuestaService;
|
||||||
this.encuestaRepository = encuestaRepository;
|
this.encuestaRepository = encuestaRepository;
|
||||||
|
@ -75,6 +84,10 @@ public class EncuestaResource {
|
||||||
this.ePreguntaCerradaService = ePreguntaCerradaService;
|
this.ePreguntaCerradaService = ePreguntaCerradaService;
|
||||||
this.ePreguntaAbiertaService = ePreguntaAbiertaService;
|
this.ePreguntaAbiertaService = ePreguntaAbiertaService;
|
||||||
this.ePreguntaCerradaOpcionService = ePreguntaCerradaOpcionService;
|
this.ePreguntaCerradaOpcionService = ePreguntaCerradaOpcionService;
|
||||||
|
this.plantillaService = plantillaService;
|
||||||
|
this.pPreguntaCerradaService = pPreguntaCerradaService;
|
||||||
|
this.pPreguntaAbiertaService = pPreguntaAbiertaService;
|
||||||
|
this.pPreguntaCerradaOpcionService = pPreguntaCerradaOpcionService;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -97,6 +110,78 @@ public class EncuestaResource {
|
||||||
.body(result);
|
.body(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/encuestas/{plantillaId}")
|
||||||
|
public ResponseEntity<Encuesta> createEncuestaFromTemplate(
|
||||||
|
@Valid @RequestBody Encuesta encuesta,
|
||||||
|
@PathVariable(value = "plantillaId", required = false) final Long plantillaId
|
||||||
|
) throws URISyntaxException {
|
||||||
|
log.debug("REST request to save Encuesta : {}", encuesta);
|
||||||
|
if (encuesta.getId() != null) {
|
||||||
|
throw new BadRequestAlertException("A new encuesta cannot already have an ID", ENTITY_NAME, "idexists");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Copy from survey template to survey
|
||||||
|
Optional<Plantilla> plantilla = plantillaService.findOne(plantillaId);
|
||||||
|
|
||||||
|
if (plantilla.isPresent()) {
|
||||||
|
encuesta.setNombre(plantilla.get().getNombre());
|
||||||
|
encuesta.setDescripcion(plantilla.get().getDescripcion());
|
||||||
|
encuesta.setCategoria(plantilla.get().getCategoria());
|
||||||
|
|
||||||
|
Encuesta encuestaCreated = encuestaService.save(encuesta);
|
||||||
|
|
||||||
|
// Preguntas cerradas
|
||||||
|
List<PPreguntaCerrada> preguntasCerradas = pPreguntaCerradaService.findAll();
|
||||||
|
for (PPreguntaCerrada pPreguntaCerrada : preguntasCerradas) {
|
||||||
|
if (pPreguntaCerrada.getPlantilla().getId().equals(plantillaId)) {
|
||||||
|
EPreguntaCerrada newEPreguntaCerrada = new EPreguntaCerrada();
|
||||||
|
newEPreguntaCerrada.setNombre(pPreguntaCerrada.getNombre());
|
||||||
|
newEPreguntaCerrada.setTipo(pPreguntaCerrada.getTipo());
|
||||||
|
newEPreguntaCerrada.setOpcional(pPreguntaCerrada.getOpcional());
|
||||||
|
newEPreguntaCerrada.setOrden(pPreguntaCerrada.getOrden());
|
||||||
|
newEPreguntaCerrada.setEncuesta(encuestaCreated);
|
||||||
|
|
||||||
|
ePreguntaCerradaService.save(newEPreguntaCerrada);
|
||||||
|
|
||||||
|
// Opciones de preguntas cerradas
|
||||||
|
List<PPreguntaCerradaOpcion> opciones = pPreguntaCerradaOpcionService.findAll();
|
||||||
|
for (PPreguntaCerradaOpcion pPreguntaCerradaOpcion : opciones) {
|
||||||
|
if (pPreguntaCerradaOpcion.getPPreguntaCerrada().getId().equals(pPreguntaCerrada.getId())) {
|
||||||
|
EPreguntaCerradaOpcion newEPreguntaCerradaOpcion = new EPreguntaCerradaOpcion();
|
||||||
|
newEPreguntaCerradaOpcion.setNombre(pPreguntaCerradaOpcion.getNombre());
|
||||||
|
newEPreguntaCerradaOpcion.setOrden(pPreguntaCerradaOpcion.getOrden());
|
||||||
|
newEPreguntaCerradaOpcion.setCantidad(0);
|
||||||
|
newEPreguntaCerradaOpcion.setEPreguntaCerrada(newEPreguntaCerrada);
|
||||||
|
|
||||||
|
ePreguntaCerradaOpcionService.save(newEPreguntaCerradaOpcion);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Preguntas abiertas
|
||||||
|
List<PPreguntaAbierta> preguntasAbiertas = pPreguntaAbiertaService.findAll();
|
||||||
|
for (PPreguntaAbierta pPreguntaAbierta : preguntasAbiertas) {
|
||||||
|
if (pPreguntaAbierta.getPlantilla().getId().equals(plantillaId)) {
|
||||||
|
EPreguntaAbierta newEPreguntaAbierta = new EPreguntaAbierta();
|
||||||
|
newEPreguntaAbierta.setNombre(pPreguntaAbierta.getNombre());
|
||||||
|
newEPreguntaAbierta.setOpcional(pPreguntaAbierta.getOpcional());
|
||||||
|
newEPreguntaAbierta.setOrden(pPreguntaAbierta.getOrden());
|
||||||
|
newEPreguntaAbierta.setEncuesta(encuestaCreated);
|
||||||
|
|
||||||
|
ePreguntaAbiertaService.save(newEPreguntaAbierta);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ResponseEntity
|
||||||
|
.created(new URI("/api/encuestas/" + encuestaCreated.getId()))
|
||||||
|
.headers(HeaderUtil.createEntityCreationAlert(applicationName, true, ENTITY_NAME, encuestaCreated.getId().toString()))
|
||||||
|
.body(encuestaCreated);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ResponseEntity.ok().body(null);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@code PUT /encuestas/:id} : Updates an existing encuesta.
|
* {@code PUT /encuestas/:id} : Updates an existing encuesta.
|
||||||
*
|
*
|
||||||
|
|
|
@ -34,7 +34,7 @@
|
||||||
<p class="ds-subtitle text-center">Inicie creando preguntas y opciones para su encuesta.</p>
|
<p class="ds-subtitle text-center">Inicie creando preguntas y opciones para su encuesta.</p>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
|
|
||||||
<div class="ds-survey--question-wrapper card-encuesta lift" *ngFor="let ePregunta of ePreguntas; let i = index; trackBy: trackId">
|
<div class="ds-survey--question-wrapper card-encuesta" *ngFor="let ePregunta of ePreguntas; let i = index; trackBy: trackId">
|
||||||
<div
|
<div
|
||||||
[attr.data-index]="ePregunta.id"
|
[attr.data-index]="ePregunta.id"
|
||||||
[attr.data-tipo]="ePregunta.tipo"
|
[attr.data-tipo]="ePregunta.tipo"
|
||||||
|
|
|
@ -1,9 +1,8 @@
|
||||||
<form *ngIf="encuesta" name="deleteForm" (ngSubmit)="confirmFinalizar(encuesta!)">
|
<form *ngIf="encuesta" name="deleteForm" (ngSubmit)="confirmFinalizar(encuesta!)">
|
||||||
<div class="modal-header">
|
<div class="modal-header"></div>
|
||||||
<h4 class="ds-title--small" data-cy="encuestaDeleteDialogHeading">Finalizar encuesta</h4>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
|
<p class="ds-title--small" data-cy="encuestaDeleteDialogHeading">Finalizar encuesta</p>
|
||||||
<p class="ds-subtitle" id="jhi-delete-encuesta-heading">¿Está seguro de querer finalizar la encuesta?</p>
|
<p class="ds-subtitle" id="jhi-delete-encuesta-heading">¿Está seguro de querer finalizar la encuesta?</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -40,10 +40,6 @@
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="alert alert-warning" id="no-result" *ngIf="encuestas?.length === 0">
|
|
||||||
<span jhiTranslate="dataSurveyApp.encuesta.home.notFound">No surveys found</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<form class="ds-form">
|
<form class="ds-form">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<div class="ds-filter">
|
<div class="ds-filter">
|
||||||
|
@ -83,8 +79,17 @@
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
<div class="ds-survey" id="entities" *ngIf="encuestas?.length === 0">
|
||||||
|
<div class="ds-survey--all-question-wrapper">
|
||||||
|
<ng-container class="">
|
||||||
|
<p class="ds-title text-center">No posee encuestas</p>
|
||||||
|
<p class="ds-subtitle text-center">Incie a explorar, colaborar y adquirir datos al crear encuestas mundialmente</p>
|
||||||
|
</ng-container>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- Lista de Encuestas del Usuario -->
|
<!-- Lista de Encuestas del Usuario -->
|
||||||
<div class="ds-list" (contextmenu)="openContextMenu($event)" *ngIf="!isAdmin()">
|
<div class="ds-list" (contextmenu)="openContextMenu($event)" *ngIf="!isAdmin() && encuestas?.length !== 0">
|
||||||
<!-- Context Menu -->
|
<!-- Context Menu -->
|
||||||
<div class="ds-contextmenu ds-contextmenu--closed" id="contextmenu">
|
<div class="ds-contextmenu ds-contextmenu--closed" id="contextmenu">
|
||||||
<ul id="ds-context-menu__list">
|
<ul id="ds-context-menu__list">
|
||||||
|
|
|
@ -26,6 +26,13 @@ export class EncuestaService {
|
||||||
.pipe(map((res: EntityResponseType) => this.convertDateFromServer(res)));
|
.pipe(map((res: EntityResponseType) => this.convertDateFromServer(res)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
createFromTemplate(encuesta: IEncuesta, plantillaId: Number): Observable<EntityResponseType> {
|
||||||
|
const copy = this.convertDateFromClient(encuesta);
|
||||||
|
return this.http
|
||||||
|
.post<IEncuesta>(`${this.resourceUrl}/${plantillaId}`, copy, { observe: 'response' })
|
||||||
|
.pipe(map((res: EntityResponseType) => this.convertDateFromServer(res)));
|
||||||
|
}
|
||||||
|
|
||||||
//update para publicar
|
//update para publicar
|
||||||
update(encuesta: IEncuesta): Observable<EntityResponseType> {
|
update(encuesta: IEncuesta): Observable<EntityResponseType> {
|
||||||
const copy = this.convertDateFromClient(encuesta);
|
const copy = this.convertDateFromClient(encuesta);
|
||||||
|
|
|
@ -42,9 +42,6 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p class="ds-subtitle">Creada el día {{ encuesta!.fechaCreacion | formatShortDatetime | lowercase }}</p>
|
<p class="ds-subtitle">Creada el día {{ encuesta!.fechaCreacion | formatShortDatetime | lowercase }}</p>
|
||||||
<button type="button" class="ds-btn ds-btn--danger" (click)="finalizar()" *ngIf="encuesta!.estado === 'ACTIVE'">
|
|
||||||
<fa-icon icon="sync" [icon]="faTimes"></fa-icon> <span>Finalizar</span>
|
|
||||||
</button>
|
|
||||||
|
|
||||||
<div class="d-flex justify-content-end">
|
<div class="d-flex justify-content-end">
|
||||||
<button type="button" class="ds-btn ds-btn--secondary" (click)="previousState()">
|
<button type="button" class="ds-btn ds-btn--secondary" (click)="previousState()">
|
||||||
|
@ -65,6 +62,10 @@
|
||||||
>
|
>
|
||||||
<fa-icon icon="sync" [icon]="faPlus"></fa-icon> <span>Crear pregunta</span>
|
<fa-icon icon="sync" [icon]="faPlus"></fa-icon> <span>Crear pregunta</span>
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
|
<button type="button" class="ds-btn ds-btn--danger" (click)="finalizar()" *ngIf="encuesta!.estado === 'ACTIVE'">
|
||||||
|
<fa-icon icon="sync" [icon]="faTimes"></fa-icon> <span>Finalizar</span>
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</h2>
|
</h2>
|
||||||
|
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
<p class="ds-subtitle text-center">Inicie creando preguntas y opciones para su plantilla.</p>
|
<p class="ds-subtitle text-center">Inicie creando preguntas y opciones para su plantilla.</p>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
|
|
||||||
<div class="ds-survey--question-wrapper card-plantilla lift" *ngFor="let pPregunta of pPreguntas; let i = index; trackBy: trackId">
|
<div class="ds-survey--question-wrapper card-plantilla" *ngFor="let pPregunta of pPreguntas; let i = index; trackBy: trackId">
|
||||||
<div
|
<div
|
||||||
[attr.data-index]="pPregunta.id"
|
[attr.data-index]="pPregunta.id"
|
||||||
[attr.data-tipo]="pPregunta.tipo"
|
[attr.data-tipo]="pPregunta.tipo"
|
||||||
|
|
|
@ -91,6 +91,15 @@
|
||||||
<td>{{ plantilla.categoria?.nombre }}</td>
|
<td>{{ plantilla.categoria?.nombre }}</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
|
<button
|
||||||
|
type="submit"
|
||||||
|
[routerLink]="['/plantilla', plantilla.id, 'view']"
|
||||||
|
class="ds-btn ds-btn--secondary btn-sm"
|
||||||
|
data-cy="entityDetailsButton"
|
||||||
|
>
|
||||||
|
<fa-icon icon="eye"></fa-icon>
|
||||||
|
<span class="d-none d-md-inline">Vista previa</span>
|
||||||
|
</button>
|
||||||
<button
|
<button
|
||||||
type="submit"
|
type="submit"
|
||||||
[routerLink]="['/plantilla', plantilla.id, 'edit']"
|
[routerLink]="['/plantilla', plantilla.id, 'edit']"
|
||||||
|
|
|
@ -33,8 +33,14 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
<div class="alert alert-warning" id="no-result" *ngIf="usuarioEncuestas?.length === 0">
|
|
||||||
<span jhiTranslate="dataSurveyApp.usuarioEncuesta.home.notFound">No usuarioEncuestas found</span>
|
<div class="ds-survey" id="entities" *ngIf="usuarioEncuestas?.length === 0">
|
||||||
|
<div class="ds-survey--all-question-wrapper">
|
||||||
|
<ng-container class="">
|
||||||
|
<p class="ds-title text-center">No posee colaboraciones</p>
|
||||||
|
<p class="ds-subtitle text-center">Inicie colaborando con otros usuarios mundialmente al recibir una invitación</p>
|
||||||
|
</ng-container>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="table-responsive" id="entities" *ngIf="usuarioEncuestas && usuarioEncuestas.length > 0">
|
<div class="table-responsive" id="entities" *ngIf="usuarioEncuestas && usuarioEncuestas.length > 0">
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<div *ngIf="usuarioExtra">
|
<div *ngIf="usuarioExtra">
|
||||||
<h2 id="page-heading" data-cy="UsuarioEncuestaHeading">
|
<h2 id="page-heading" data-cy="UsuarioEncuestaHeading">
|
||||||
<span class="ds-title" jhiTranslate="dataSurveyApp.usuarioExtra.plantillas.title">Mis Plantillas </span>
|
<span class="ds-title" jhiTranslate="dataSurveyApp.usuarioExtra.plantillas.title">Mis Plantillas </span>
|
||||||
<p class="ds-subtitle">Hola</p>
|
<p class="ds-subtitle">Cree encuestas a partir de las plantillas previamente compradas</p>
|
||||||
|
|
||||||
<div class="d-flex justify-content-end">
|
<div class="d-flex justify-content-end">
|
||||||
<button class="ds-btn ds-btn--secondary mr-2" (click)="loadAll()" [disabled]="isLoading">
|
<button class="ds-btn ds-btn--secondary mr-2" (click)="loadAll()" [disabled]="isLoading">
|
||||||
|
@ -14,8 +14,16 @@
|
||||||
|
|
||||||
<jhi-alert></jhi-alert>
|
<jhi-alert></jhi-alert>
|
||||||
|
|
||||||
<div class="alert alert-warning" id="no-result" *ngIf="misPlantillas?.length === 0">
|
<!-- <div class="alert alert-warning" id="no-result" *ngIf="misPlantillas?.length === 0">
|
||||||
<span jhiTranslate="dataSurveyApp.usuarioExtra.plantillas.notFound">No usuarioEncuestas found</span>
|
<span jhiTranslate="dataSurveyApp.usuarioExtra.plantillas.notFound">No usuarioEncuestas found</span>
|
||||||
|
</div> -->
|
||||||
|
<div class="ds-survey" id="entities" *ngIf="misPlantillas?.length === 0">
|
||||||
|
<div class="ds-survey--all-question-wrapper">
|
||||||
|
<ng-container class="">
|
||||||
|
<p class="ds-title text-center">No posee plantillas</p>
|
||||||
|
<p class="ds-subtitle text-center">Adquiera y compre diferentes plantillas disponibles en nuestra tienda</p>
|
||||||
|
</ng-container>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="table-responsive" id="entities" *ngIf="misPlantillas && misPlantillas.length > 0">
|
<div class="table-responsive" id="entities" *ngIf="misPlantillas && misPlantillas.length > 0">
|
||||||
|
@ -45,7 +53,12 @@
|
||||||
<span class="d-none d-md-inline">Vista previa</span>
|
<span class="d-none d-md-inline">Vista previa</span>
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<button type="submit" class="ds-btn ds-btn--primary btn-sm" data-cy="entityCreateButton">
|
<button
|
||||||
|
type="submit"
|
||||||
|
class="ds-btn ds-btn--primary btn-sm"
|
||||||
|
data-cy="entityCreateButton"
|
||||||
|
(click)="crearEncuesta(miPlantilla.id)"
|
||||||
|
>
|
||||||
<span class="d-none d-md-inline" jhiTranslate="dataSurveyApp.usuarioExtra.plantillas.crearEncuesta">Crear Encuesta</span>
|
<span class="d-none d-md-inline" jhiTranslate="dataSurveyApp.usuarioExtra.plantillas.crearEncuesta">Crear Encuesta</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -11,7 +11,12 @@ import { ActivatedRoute, Router } from '@angular/router';
|
||||||
import { FormBuilder } from '@angular/forms';
|
import { FormBuilder } from '@angular/forms';
|
||||||
import { AccountService } from '../../../core/auth/account.service';
|
import { AccountService } from '../../../core/auth/account.service';
|
||||||
import * as dayjs from 'dayjs';
|
import * as dayjs from 'dayjs';
|
||||||
|
import { DATE_TIME_FORMAT } from 'app/config/input.constants';
|
||||||
import { Account } from '../../../core/auth/account.model';
|
import { Account } from '../../../core/auth/account.model';
|
||||||
|
import { IEncuesta, Encuesta } from './../../encuesta/encuesta.model';
|
||||||
|
import { EncuestaService } from 'app/entities/encuesta/service/encuesta.service';
|
||||||
|
import { AccesoEncuesta } from 'app/entities/enumerations/acceso-encuesta.model';
|
||||||
|
import { EstadoEncuesta } from 'app/entities/enumerations/estado-encuesta.model';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'jhi-usuario-plantillas',
|
selector: 'jhi-usuario-plantillas',
|
||||||
|
@ -32,6 +37,7 @@ export class UsuarioPlantillasComponent implements OnInit {
|
||||||
protected activatedRoute: ActivatedRoute,
|
protected activatedRoute: ActivatedRoute,
|
||||||
protected fb: FormBuilder,
|
protected fb: FormBuilder,
|
||||||
protected accountService: AccountService,
|
protected accountService: AccountService,
|
||||||
|
protected encuestaService: EncuestaService,
|
||||||
protected router: Router
|
protected router: Router
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
|
@ -65,4 +71,28 @@ export class UsuarioPlantillasComponent implements OnInit {
|
||||||
trackId(index: number, item: IPlantilla): number {
|
trackId(index: number, item: IPlantilla): number {
|
||||||
return item.id!;
|
return item.id!;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
crearEncuesta(plantillaId: any): void {
|
||||||
|
const now = dayjs();
|
||||||
|
|
||||||
|
const newSurvey = {
|
||||||
|
...new Encuesta(),
|
||||||
|
id: undefined,
|
||||||
|
nombre: 'This is a survey',
|
||||||
|
descripcion: 'This is a survey',
|
||||||
|
fechaCreacion: dayjs(now, DATE_TIME_FORMAT),
|
||||||
|
calificacion: 5,
|
||||||
|
acceso: AccesoEncuesta.PUBLIC,
|
||||||
|
contrasenna: undefined,
|
||||||
|
estado: EstadoEncuesta.DRAFT,
|
||||||
|
categoria: undefined,
|
||||||
|
usuarioExtra: this.usuarioExtra,
|
||||||
|
};
|
||||||
|
|
||||||
|
console.log(plantillaId, newSurvey);
|
||||||
|
|
||||||
|
this.encuestaService.createFromTemplate(newSurvey, plantillaId).subscribe(res => {
|
||||||
|
this.router.navigate(['/encuesta']);
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -102,3 +102,4 @@
|
||||||
@import 'paper-dashboard/datasurvey-home';
|
@import 'paper-dashboard/datasurvey-home';
|
||||||
@import 'paper-dashboard/datasurvey-filter';
|
@import 'paper-dashboard/datasurvey-filter';
|
||||||
@import 'paper-dashboard/datasurvey-survey';
|
@import 'paper-dashboard/datasurvey-survey';
|
||||||
|
@import 'paper-dashboard/datasurvey-switch';
|
||||||
|
|
|
@ -0,0 +1,30 @@
|
||||||
|
.ds-switch {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
|
||||||
|
& input {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
& label {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
color: #757d94;
|
||||||
|
margin: 0;
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
top: 2px !important;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
&::after {
|
||||||
|
top: 3.5px !important;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -35,6 +35,7 @@
|
||||||
"ePreguntaCerrada": "Pregunta Cerrada",
|
"ePreguntaCerrada": "Pregunta Cerrada",
|
||||||
"categoria": "Categoría",
|
"categoria": "Categoría",
|
||||||
"usuarioExtra": "Correo Usuario",
|
"usuarioExtra": "Correo Usuario",
|
||||||
|
"plantilla": "Plantilla",
|
||||||
"password": {
|
"password": {
|
||||||
"title": "Contraseña Requerida",
|
"title": "Contraseña Requerida",
|
||||||
"text": "Esta encuesta es privada, por lo que debe ingresar la contraseña"
|
"text": "Esta encuesta es privada, por lo que debe ingresar la contraseña"
|
||||||
|
|
Loading…
Reference in New Issue