diff --git a/microservices/frontend/src/app/affichage-creation-qcm/creation/creation.component.ts b/microservices/frontend/src/app/affichage-creation-qcm/creation/creation.component.ts index 6607a272364ae7b363421f9a38639f7d7da05138..abbbcf8af653d491426713b238ebdb371c9b5fa4 100644 --- a/microservices/frontend/src/app/affichage-creation-qcm/creation/creation.component.ts +++ b/microservices/frontend/src/app/affichage-creation-qcm/creation/creation.component.ts @@ -35,7 +35,7 @@ export class CreationComponent { console.error('ID param is null'); } Fetch.getInfosQcm(this.idQcm ? this.idQcm : 0) - .then(data => {this.qcm = data; this.qcm.tempsMax /= 60}) + .then(data => {this.qcm = data}) .catch(error => console.error('Erreur lors de la requête pour Contact:', error)) } this.auth = inject(AuthConfigService) @@ -81,10 +81,8 @@ export class CreationComponent { }); } update(): void{ - //Envoie à la base de donnée + // Envoie à la base de donnée console.log(this.qcm) - this.qcm.tempsMax *= 60; Fetch.putQcm(this.qcm).then(() => this.router.navigate(['/qcmCree'])); } - } diff --git a/microservices/frontend/src/app/classes/Fetch.ts b/microservices/frontend/src/app/classes/Fetch.ts index c10380ad025441df825cb3217b2ae312adde0908..f28c3e377ea72026cc6f58366cd3798a799d84b4 100644 --- a/microservices/frontend/src/app/classes/Fetch.ts +++ b/microservices/frontend/src/app/classes/Fetch.ts @@ -436,12 +436,12 @@ export class Fetch{ method: 'POST', headers: this.headersObject, body: JSON.stringify({ - qcm: qcmData, + qcm: JSON.stringify(qcmData), idUser: idUser, }) }) .then(response => { - console.log("response de la creation qcm:") + console.log("response de la creation qcm:") console.log(response) if (!response.ok) { reject(`HTTP error! status: ${response.status}`); @@ -511,13 +511,11 @@ export class Fetch{ } static putQcm(qcmData: QcmData): Promise<Response> { return new Promise<Response>((resolve, reject) => { - - fetch(Fetch.address+'/QCM', { method: 'PUT', headers: this.headersObject, body: JSON.stringify({ - qcm: qcmData, + qcm: JSON.stringify(qcmData), }) }) .then(response => { diff --git a/microservices/frontend/src/app/classes/qcm/QcmData.ts b/microservices/frontend/src/app/classes/qcm/QcmData.ts index 58a947b0e2e08a29b84d36fe142fa780eca91f05..90e9ef3b68fbffae076e84ae726f595b5abc3f9a 100644 --- a/microservices/frontend/src/app/classes/qcm/QcmData.ts +++ b/microservices/frontend/src/app/classes/qcm/QcmData.ts @@ -3,22 +3,31 @@ import { Question } from "./Question" export class QcmData{ idQcm: number nomQcm: string - tempsMax: number + private _tempsMax: number tempsStart: number randomQuestion: boolean questions : Question[] constructor(nomQcm: string, tempsMax: number, randomQuestion: boolean, questions : Question[], tempsStart: number, idQcm?: number) { - this.idQcm = idQcm ?? 0; - this.nomQcm = nomQcm - this.questions = questions - this.randomQuestion = randomQuestion - this.tempsMax = tempsMax - this.tempsStart = tempsStart + this.idQcm = idQcm ?? 0; + this.nomQcm = nomQcm + this.questions = questions + this.randomQuestion = randomQuestion + this._tempsMax = tempsMax + this.tempsStart = tempsStart } + + get tempsMax(): number { + return this._tempsMax / 60 + } + + set tempsMax(value: number) { + this._tempsMax = value * 60 + } + public delQuestion(q: Question): void{ if (this.questions) { - this.questions = this.questions.filter(choice => choice !== q); + this.questions = this.questions.filter(choice => choice !== q); } - } + } } \ No newline at end of file