[WIP] improve logic into routine suggestion.
This commit is contained in:
parent
b7668ad992
commit
dae1c8648d
|
@ -20,6 +20,7 @@ from people.models import Gymnast, CanDoRelation
|
|||
from datetime import datetime
|
||||
import random
|
||||
|
||||
import math
|
||||
|
||||
def __lookup(lookup_class, lookup_value):
|
||||
"""
|
||||
|
@ -362,7 +363,7 @@ def suggest_routine(request, difficulty_score, routine_length, max_difficulty_sc
|
|||
current_routine = []
|
||||
|
||||
if last_jump:
|
||||
skill_list = Skill.objects.filter(departure = last_jump.landing)
|
||||
skill_list = Skill.objects.filter(departure = last_jump.landing, difficulty__lte = difficulty_score)
|
||||
if logic and last_jump.landing == "Debout":
|
||||
skill_list = skill_list.exclude(rotationType = last_jump.rotationType)
|
||||
else:
|
||||
|
@ -372,11 +373,19 @@ def suggest_routine(request, difficulty_score, routine_length, max_difficulty_sc
|
|||
skill_list = skill_list.filter(is_competitive = True)
|
||||
|
||||
if logic and max_difficulty_score:
|
||||
min_difficulty_score = difficulty_score / 10
|
||||
min_difficulty_score -= (min_difficulty_score / 3)
|
||||
max_difficulty_score = difficulty_score / 10
|
||||
max_difficulty_score += (max_difficulty_score / 2)
|
||||
# logique à terminer d'implémenter...
|
||||
min_difficulty_score = math.ceil(max(0, ((difficulty_score / 10) - 5)))
|
||||
|
||||
if difficulty_score <= 6:
|
||||
max_difficulty_score = math.ceil(difficulty_score / 5) + 1
|
||||
elif difficulty_score <= 12:
|
||||
max_difficulty_score = math.ceil(difficulty_score / 10) + 7
|
||||
else:
|
||||
max_difficulty_score = math.ceil(difficulty_score / 15) + 11
|
||||
|
||||
skill_list = skill_list.filter(
|
||||
difficulty__gte = min_difficulty_score,
|
||||
difficulty__lte = max_difficulty_score
|
||||
)
|
||||
|
||||
for skill in skill_list:
|
||||
current_routine.append(skill)
|
||||
|
|
Loading…
Reference in New Issue