ajout de fonction db

pull/83/head
Baptiste MARCEL 1 year ago
parent 64e6a188e6
commit 97357e24b1

@ -12,6 +12,8 @@ import { ColorToHexa } from "../model/EnumExtender";
import Bot from "../model/Bot"; import Bot from "../model/Bot";
import NodePerson from "../model/Graph/NodePerson"; import NodePerson from "../model/Graph/NodePerson";
import { useAuth } from "../Contexts/AuthContext"; import { useAuth } from "../Contexts/AuthContext";
// @ts-ignore
import DatabaseService from "../server/services/DatabaseService";
interface MyGraphComponentProps { interface MyGraphComponentProps {
@ -44,8 +46,7 @@ let lastNodes: NodePerson[] = []
const MyGraphComponent: React.FC<MyGraphComponentProps> = ({onNodeClick, handleShowTurnBar, handleTurnBarTextChange, playerTouched, setPlayerTouched, changecptTour, solo, addToHistory, showLast, setNetwork}) => { const MyGraphComponent: React.FC<MyGraphComponentProps> = ({onNodeClick, handleShowTurnBar, handleTurnBarTextChange, playerTouched, setPlayerTouched, changecptTour, solo, addToHistory, showLast, setNetwork}) => {
let cptTour: number = 0 let cptTour: number = 0
const {isLoggedIn, user} = useAuth() const {isLoggedIn, user} = useAuth();
console.log('isLoggedIn : ' + isLoggedIn);
const { indices, indice, person, personNetwork, setNodeIdData, players, askedPersons, setActualPlayerIndexData, room, actualPlayerIndex, turnPlayerIndex, setTurnPlayerIndexData, setWinnerData } = useGame(); const { indices, indice, person, personNetwork, setNodeIdData, players, askedPersons, setActualPlayerIndexData, room, actualPlayerIndex, turnPlayerIndex, setTurnPlayerIndexData, setWinnerData } = useGame();
const params = new URLSearchParams(window.location.search); const params = new URLSearchParams(window.location.search);
@ -458,20 +459,23 @@ let cptTour: number = 0
setPlayerTouched(-1) setPlayerTouched(-1)
setWinnerData(players[winnerIndex]) setWinnerData(players[winnerIndex])
console.log('isLoggedIn : ' + isLoggedIn); try{
if(isLoggedIn){ if(isLoggedIn){
if(solo){ if(solo){
}
else{
if(winner.id === currentPlayer.id){
console.log("Vous avez gagné !");
} }
else{ else{
console.log("Vous avez perdu !"); if(winner.id === currentPlayer.id){
// TODO: Ajouter une victoire
}
// TODO: Update les stats
} }
} }
} }
catch(e){
console.log(e);
}
first = true first = true
cptHistory = 0 cptHistory = 0

@ -106,6 +106,33 @@ class DatabaseService {
}); });
} }
// Mettre à jour les stats solo de l'utilisateur
async updateSoloStats(userId, nbGames, bestScore, avgNbTry){
return new Promise((resolve, reject) => {
this.client.run('UPDATE solo_stats SET nbGames = ?, bestScore = ?, avgNbTry = ? WHERE idUser = ?', [nbGames, bestScore, avgNbTry, userId], (err, result) => {
if(err){
reject(err);
}
else{
resolve(result);
}
});
});
}
// Mettre à jour les stats online de l'utilisateur
async updateOnlineStats(userId, nbGames, nbWins, ratio){
return new Promise((resolve, reject) => {
this.client.run('UPDATE online_stats SET nbGames = ?, nbWins = ?, ratio = ? WHERE idUser = ?', [nbGames, nbWins, ratio, userId], (err, result) => {
if(err){
reject(err);
}
else{
resolve(result);
}
});
});
}
async initSoloStats(userId) { async initSoloStats(userId) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {

Loading…
Cancel
Save