Closed JoanZapata closed 12 years ago
Mieux : pour chaque critère, le serveur décide de le prendre en compte ou pas en fonction du nombre de résultat. Ca permet plus tard de faire un check plus intelligent (du genre doubler la zone de recherche si pas de résultat pour s'assurer qu'on a vraiment pas de données, etc...)
Dans le retour du serveur, je vais minimiser les changements à faire côté client en mettant une phrase adaptée en description du critère.
J'ajoute dans le modèle (sur chaque critere ET sur chaque theme) un attribut "relevant" qui vaut true ou false en fonction de si il a été pris en compte dans la notation.
(Pas encore fait côté serveur, j'ai des soucis pour configurer le adhoc wifi avec mon tel, je verrai ça demain)
Est-ce qu'il ne faudrait pas déjà créer une solution simple pour ne pas afficher les notes < 3 pour le moment ? On effectue uniquement la modif côté client et on voit pour améliorer la chose côté client/serveur et opter pour ta solution ?
Arrête de cacher des coeurs dans tes messages @a-thomas tu sais bien que c'est un amour impossible entre nous.
Plus sérieusement, deux choses : 1- Ca doit être côté serveur parce que c'est là qu'on calcule les moyennes, et qu'il faut ignorer les notes trop basses dans les calculs. 2- Je pense que les seules notes à ignorer sont les 0, puisqu'ils témoignent de l'absence totale de quelque chose. Un 2 par exemple, c'est souvent justifié. Au pire, la règle peut évoluer.
Côté client y'a 2 choses à régler : 1- (peu important) griser les notes (détails ou thème complet) qui ne sont pas prises en compte 2- Traiter le cas où aucune note n'est prise en compte, et dans ce cas ne pas afficher les notes et retourner sur la map.
Fait côté serveur, et en prod.
Ça ne casse l'ancien client que quand aucune donnée est dispo, dans quel cas il a une erreur... Ce qui est pas très grave.
Alex's on it côté client !
I'm on it guys !!!!!
Works well on Small Screen :)
globalRating.setMark(Weighted.getWeightedMark(rating, preferences));
if (rating.getTheme(ThemeName.CULTURE).isRelevant()) {
cultureRating.setMark(rating.getThemeMark(ThemeName.CULTURE));
} else {
cultureRating.setDisabled();
}
natureRating.setMark(rating.getThemeMark(ThemeName.NATURE));
transitRating.setMark(rating.getThemeMark(ThemeName.TRANSIT));
if (rating.getTheme(ThemeName.SECURITY).isRelevant()) {
securityRating.setMark(rating.getThemeMark(ThemeName.SECURITY));
} else {
securityRating.setDisabled();
}
shopsRating.setMark(rating.getThemeMark(ThemeName.SHOPS));
leisureRating.setMark(rating.getThemeMark(ThemeName.LEISURE));
Et tu oses répondre "non" quand je te dis "flemmard" ? xD
Ouh putain le con xD tu t'en occupes ou je le fais en arrivant ?
Tu peux le faire mais ça presse pas, de toute façon je suis pas versionné là-bas (protocoles fermés, flemme de chercher), donc je l'ai corrigé en local mais ça sera jamais pushé.
Pour toute note inférieure à 3, le serveur retourne une réponse spécifique, interprétée par le client qui indique à l'utilisateur (boîte de dialogue) qu'il existe trop peu de données pour noter cet endroit.