Merge pull request #97 from Quantum-P3/feature/US-42
Add modificar pregunta
This commit is contained in:
		
						commit
						7fab6ed892
					
				| 
						 | 
				
			
			@ -533,7 +533,6 @@ export class EncuestaComponent implements OnInit, AfterViewInit {
 | 
			
		|||
    survey.categoria = this.surveyEditForm.get(['categoria'])!.value;
 | 
			
		||||
    // Prevent user update by setting to null
 | 
			
		||||
    survey.usuarioExtra!.user = null;
 | 
			
		||||
    console.log(survey);
 | 
			
		||||
 | 
			
		||||
    this.encuestaService.updateSurvey(survey).subscribe(res => {
 | 
			
		||||
      this.loadAll();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
<div>
 | 
			
		||||
  <h2 id="page-heading" data-cy="EPreguntaCerradaHeading">
 | 
			
		||||
    <div class="d-flex align-items-center">
 | 
			
		||||
      <p class="ds-title ds-title--interactive" contenteditable="true" spellcheck="false" (blur)="updateSurveyName($event)">
 | 
			
		||||
      <p class="ds-title ds-contenteditable" contenteditable="true" spellcheck="false" (blur)="updateSurveyName($event)">
 | 
			
		||||
        {{ encuesta!.nombre }}
 | 
			
		||||
      </p>
 | 
			
		||||
        <fa-icon
 | 
			
		||||
| 
						 | 
				
			
			@ -87,7 +87,18 @@
 | 
			
		|||
            class="ds-survey--question"
 | 
			
		||||
          >
 | 
			
		||||
            <div class="ds-survey--titulo">
 | 
			
		||||
              <span class="ds-survey--titulo--name">{{ i + 1 }}. {{ ePregunta.nombre }}</span>
 | 
			
		||||
              <span class="ds-survey--titulo--name">
 | 
			
		||||
                <span>{{ i + 1 }}.</span> 
 | 
			
		||||
                <span
 | 
			
		||||
                  class="ds-contenteditable"
 | 
			
		||||
                  [attr.data-id]="ePregunta.id"
 | 
			
		||||
                  [attr.data-tipo]="ePregunta.tipo"
 | 
			
		||||
                  contenteditable="true"
 | 
			
		||||
                  spellcheck="false"
 | 
			
		||||
                  (blur)="updateQuestionName($event)"
 | 
			
		||||
                  >{{ ePregunta.nombre }}</span
 | 
			
		||||
                >
 | 
			
		||||
              </span>
 | 
			
		||||
              <fa-icon
 | 
			
		||||
                *ngIf="encuesta!.estado === 'DRAFT'"
 | 
			
		||||
                class="ds-survey--titulo--icon"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
import { IEPreguntaAbierta } from './../../e-pregunta-abierta/e-pregunta-abierta.model';
 | 
			
		||||
import { EPreguntaAbierta, IEPreguntaAbierta } from './../../e-pregunta-abierta/e-pregunta-abierta.model';
 | 
			
		||||
import { EPreguntaCerrada } from './../../e-pregunta-cerrada/e-pregunta-cerrada.model';
 | 
			
		||||
import { EPreguntaCerradaOpcion, IEPreguntaCerradaOpcion } from './../../e-pregunta-cerrada-opcion/e-pregunta-cerrada-opcion.model';
 | 
			
		||||
import { EPreguntaAbiertaService } from './../../e-pregunta-abierta/service/e-pregunta-abierta.service';
 | 
			
		||||
| 
						 | 
				
			
			@ -120,7 +120,6 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
 | 
			
		|||
      (res: any) => {
 | 
			
		||||
        this.isLoading = false;
 | 
			
		||||
        this.ePreguntas = res.body ?? [];
 | 
			
		||||
        console.log(this.ePreguntas);
 | 
			
		||||
      },
 | 
			
		||||
      () => {
 | 
			
		||||
        this.isLoading = false;
 | 
			
		||||
| 
						 | 
				
			
			@ -141,7 +140,6 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
 | 
			
		|||
      (res: any) => {
 | 
			
		||||
        this.isLoading = false;
 | 
			
		||||
        this.usuariosColaboradores = res.body ?? [];
 | 
			
		||||
        console.log(this.usuariosColaboradores);
 | 
			
		||||
      },
 | 
			
		||||
      () => {
 | 
			
		||||
        this.isLoading = false;
 | 
			
		||||
| 
						 | 
				
			
			@ -152,7 +150,6 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
 | 
			
		|||
  async loadAplicationParameters(): Promise<void> {
 | 
			
		||||
    const params = await this.parametroAplicacionService.find(1).toPromise();
 | 
			
		||||
    this.parametrosAplicacion = params.body;
 | 
			
		||||
    //console.log(this.parametrosAplicacion);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  ngOnInit(): void {
 | 
			
		||||
| 
						 | 
				
			
			@ -348,7 +345,6 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
 | 
			
		|||
 | 
			
		||||
  createQuestion(): void {
 | 
			
		||||
    const surveyId = this.encuesta?.id;
 | 
			
		||||
    console.log(surveyId);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  protected createFromFormClosedQuestion(): IEPreguntaCerrada {
 | 
			
		||||
| 
						 | 
				
			
			@ -444,6 +440,45 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
 | 
			
		|||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  updateQuestionName(event: any): void {
 | 
			
		||||
    const questionType = event.target.dataset.tipo;
 | 
			
		||||
    const questionId = event.target.dataset.id;
 | 
			
		||||
    const questionName = event.target.innerText;
 | 
			
		||||
    if (questionType) {
 | 
			
		||||
      // Closed question
 | 
			
		||||
      this.ePreguntaCerradaService.find(questionId).subscribe(res => {
 | 
			
		||||
        const ePreguntaCerrada: EPreguntaCerrada | null = res.body ?? null;
 | 
			
		||||
        const updatedEPreguntaCerrada = { ...ePreguntaCerrada };
 | 
			
		||||
        if (questionName !== ePreguntaCerrada?.nombre && ePreguntaCerrada !== null) {
 | 
			
		||||
          updatedEPreguntaCerrada.nombre = questionName;
 | 
			
		||||
          this.ePreguntaCerradaService.update(updatedEPreguntaCerrada).subscribe(updatedQuestion => {
 | 
			
		||||
            console.log(updatedQuestion);
 | 
			
		||||
          });
 | 
			
		||||
        }
 | 
			
		||||
      });
 | 
			
		||||
    } else {
 | 
			
		||||
      // Open question
 | 
			
		||||
      // Closed question
 | 
			
		||||
      this.ePreguntaAbiertaService.find(questionId).subscribe(res => {
 | 
			
		||||
        const ePreguntaAbierta: EPreguntaAbierta | null = res.body ?? null;
 | 
			
		||||
        const updatedEPreguntaAbierta = { ...ePreguntaAbierta };
 | 
			
		||||
        if (questionName !== ePreguntaAbierta?.nombre && ePreguntaAbierta !== null) {
 | 
			
		||||
          updatedEPreguntaAbierta.nombre = questionName;
 | 
			
		||||
          this.ePreguntaAbiertaService.update(updatedEPreguntaAbierta).subscribe(updatedQuestion => {
 | 
			
		||||
            console.log(updatedQuestion);
 | 
			
		||||
          });
 | 
			
		||||
        }
 | 
			
		||||
      });
 | 
			
		||||
    }
 | 
			
		||||
    // const questionId = event.target.dataset.id;
 | 
			
		||||
    // const survey = { ...this.encuesta };
 | 
			
		||||
    // survey.nombre = updatedQuestionName;
 | 
			
		||||
    // // Prevent user update by setting to null
 | 
			
		||||
    // survey.usuarioExtra!.user = null;
 | 
			
		||||
 | 
			
		||||
    // this.encuestaService.updateSurvey(survey).subscribe(res => {});
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // previousState(): void {
 | 
			
		||||
  //   window.history.back();
 | 
			
		||||
  // }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,20 +9,20 @@
 | 
			
		|||
  letter-spacing: 0.025rem;
 | 
			
		||||
  text-transform: uppercase;
 | 
			
		||||
  font-size: 1.2rem;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
  &--interactive {
 | 
			
		||||
    border: 2.25px solid transparent;
 | 
			
		||||
    border-radius: 3px;
 | 
			
		||||
    outline: 0;
 | 
			
		||||
    text-transform: none;
 | 
			
		||||
.ds-contenteditable {
 | 
			
		||||
  border: 2.25px solid transparent;
 | 
			
		||||
  border-radius: 3px;
 | 
			
		||||
  outline: 0;
 | 
			
		||||
  text-transform: none;
 | 
			
		||||
 | 
			
		||||
    &:hover {
 | 
			
		||||
      border: 2.25px solid #e5e5e5;
 | 
			
		||||
    }
 | 
			
		||||
  &:hover {
 | 
			
		||||
    border: 2.25px solid #e5e5e5;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
    &:focus {
 | 
			
		||||
      border: 2.25px solid #2962ff;
 | 
			
		||||
    }
 | 
			
		||||
  &:focus {
 | 
			
		||||
    border: 2.25px solid #2962ff;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue