mirror of
https://git.roussel.pro/telecom-paris/pact.git
synced 2026-02-09 10:30:17 +01:00
intégration de l'analyse des avis dans l'interface admin
This commit is contained in:
@@ -7,11 +7,14 @@ import conn from '../database.js';
|
||||
*/
|
||||
const getLastReviews = (limit = 10) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
let sql = `SELECT borne_avis.id,date,note_principale,commentaire,sources.nom as nom_source, borne_auteurs.sexe as sexe_auteur, borne_auteurs.age as age_auteur
|
||||
FROM borne_avis
|
||||
JOIN sources ON sources.id = source_id
|
||||
JOIN borne_auteurs ON borne_auteurs.id = id_auteur
|
||||
ORDER BY borne_avis.id DESC LIMIT ?`;
|
||||
let sql = `SELECT borne_avis.id,borne_avis.date as date,note_principale,commentaire,sources.nom as nom_source, borne_auteurs.sexe as sexe_auteur, borne_auteurs.age as age_auteur, borne_notes_autre.note as analyse
|
||||
FROM borne_avis
|
||||
JOIN sources ON sources.id = source_id
|
||||
JOIN borne_auteurs ON borne_auteurs.id = id_auteur
|
||||
LEFT JOIN borne_notes_autre ON borne_notes_autre.avis_id = borne_avis.id
|
||||
LEFT JOIN borne_criteres ON borne_criteres.id = borne_notes_autre.critere_id
|
||||
WHERE borne_criteres.nom = "analyse" OR borne_criteres.nom IS NULL
|
||||
ORDER BY borne_avis.id DESC LIMIT ?;`;
|
||||
conn.query(sql, [limit], (err, res) => {
|
||||
if (err) {
|
||||
reject(err);
|
||||
|
||||
@@ -71,9 +71,11 @@ export const addReviewFromRequest = async (req,res) => {
|
||||
|
||||
const author = new Auteur(req.body.auteur_age,req.body.auteur_sexe);
|
||||
const review = new Review(author, req.body.note, req.body.source, req.body.commentaire, notes_autre)
|
||||
await review.analyzeComment();
|
||||
let authorId = await addAuteur(author);
|
||||
let sourceId = await getSourceId(review.source);
|
||||
let reviewId = await addReview(review, authorId, sourceId );
|
||||
console.log(review.notesAutre)
|
||||
for(let label in review.notesAutre) {
|
||||
await addSpecificRating(reviewId, label, review.notesAutre[label]);
|
||||
}
|
||||
|
||||
@@ -28,6 +28,16 @@ export class Review {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Appelle l'API de traitement du langage pour attribuer une note au commentaire
|
||||
async analyzeComment() {
|
||||
let res = await fetch("http://"+process.env.ANALYZER_HOST + ":" + process.env.ANALYZER_PORT, {
|
||||
method: "POST",
|
||||
body: this.commentaire
|
||||
})
|
||||
let grade = await res.text();
|
||||
this.notesAutre["analyse"] =grade;
|
||||
}
|
||||
}
|
||||
|
||||
//Classe qui représente l'auteur d'un avis
|
||||
|
||||
Reference in New Issue
Block a user