From 47fd0b3ec6716a40b2aa64534f61e9a85ad01ac9 Mon Sep 17 00:00:00 2001 From: rlacko <rlacko@rlacko.sch.bme.hu> Date: Fri, 9 Aug 2019 03:24:55 +0200 Subject: [PATCH] Score system --- src/account/models.py | 4 ++++ src/account/serializers.py | 2 ++ 2 files changed, 6 insertions(+) diff --git a/src/account/models.py b/src/account/models.py index 082a83c..84a4c47 100644 --- a/src/account/models.py +++ b/src/account/models.py @@ -41,6 +41,10 @@ class Profile(models.Model): groups = models.ManyToManyField(GroupChoice, related_name='profiles', blank=True) role = models.CharField(max_length=10, choices=ROLES, default='Applicant') + @property + def score(self): + return self.events_visitor.all().count()*10 + self.solution.filter(accepted=True).count()*50 + @property def full_name(self): return self.user.get_full_name() diff --git a/src/account/serializers.py b/src/account/serializers.py index 8a91ba9..52ce77f 100644 --- a/src/account/serializers.py +++ b/src/account/serializers.py @@ -30,6 +30,7 @@ class ProfileSerializer_User(serializers.ModelSerializer): 'motivation_exercise', 'full_name', 'role', + 'score', ) def validate_updated_at(self, value): @@ -82,6 +83,7 @@ class ProfileSerializer_Staff(serializers.ModelSerializer): 'motivation_exercise', 'full_name', 'role', + 'score', ) def validate_updated_at(self, value): -- GitLab