Remove hardcoded "A" and "I" #7

Closed
midgard wants to merge 4 commits from no-hardcoding into master
Showing only changes of commit 7e9b23d4a1 - Show all commits

View file

@ -6,11 +6,14 @@ from events.models import Event, EventRegistration
from users.models import CustomUser from users.models import CustomUser
def calc_score(user: CustomUser): def calc_score(user: CustomUser, for_date):
registrations_last_month = EventRegistration.objects.all().filter(user_id=user.id, registrations_last_month = EventRegistration.objects.filter(
event__date__gt=date.today() - timedelta(days=30), user_id=user.id,
event__date__lte=date.today(), event__date__gt=for_date - timedelta(days=30),
state__exact='A') event__date__lte=for_date,
state=EventRegistration.ADMITTED
)
score = 0 score = 0
for r in registrations_last_month: for r in registrations_last_month:
days_ago = (date.today() - r.event.date.date()).days days_ago = (date.today() - r.event.date.date()).days
@ -22,7 +25,7 @@ def calc_score(user: CustomUser):
@app.task(bind=True) @app.task(bind=True)
def assign_reservations(self): def assign_reservations(self):
""" """
Chech if there are any events the next day. Check if there are any events tomorrow.
If so, calculate the current score for every interested user and assign the ones with the lowest scores. If so, calculate the current score for every interested user and assign the ones with the lowest scores.
:param self: :param self:
:return: :return:
@ -33,9 +36,10 @@ def assign_reservations(self):
events = Event.objects.all().filter(date__date=date.today() + timedelta(days=1)) events = Event.objects.all().filter(date__date=date.today() + timedelta(days=1))
# Reservations # Reservations
registrations: List[EventRegistration] = EventRegistration.objects.all().filter( registrations: List[EventRegistration] = EventRegistration.objects.filter(
event_id__in=map(lambda event: event.id, events), event_id__in=map(lambda event: event.id, events),
state__exact='I') state=EventRegistration.INTERESTED)
if len(registrations) == 0: if len(registrations) == 0:
print("NO REGISTRATIONS?") print("NO REGISTRATIONS?")