diff --git a/odevzdavatko/models.py b/odevzdavatko/models.py index e387a374..67903d2a 100644 --- a/odevzdavatko/models.py +++ b/odevzdavatko/models.py @@ -135,7 +135,7 @@ class Hodnoceni(SeminarModelBase): def body_neprepocitane(self): if self.body is None: return None - from seminar.utils import inverze_vzorecku_na_prepocet + from odevzdavatko.utils import inverze_vzorecku_na_prepocet return inverze_vzorecku_na_prepocet(self.body, self.reseni.resitele.count()) @body_neprepocitane.setter @@ -143,14 +143,14 @@ class Hodnoceni(SeminarModelBase): if value is None: self.body = None else: - from seminar.utils import vzorecek_na_prepocet + from odevzdavatko.utils import vzorecek_na_prepocet self.body = vzorecek_na_prepocet(value, self.reseni.resitele.count()) @property def body_neprepocitane_celkem(self): if self.body_celkem is None: return None - from seminar.utils import inverze_vzorecku_na_prepocet + from odevzdavatko.utils import inverze_vzorecku_na_prepocet return inverze_vzorecku_na_prepocet(self.body_celkem, self.reseni.resitele.count()) @body_neprepocitane_celkem.setter @@ -158,14 +158,14 @@ class Hodnoceni(SeminarModelBase): if value is None: self.body = None else: - from seminar.utils import vzorecek_na_prepocet + from odevzdavatko.utils import vzorecek_na_prepocet self.body_celkem = vzorecek_na_prepocet(value, self.reseni.resitele.count()) @property def body_max(self): if self.body_neprepocitane_max is None: return None - from seminar.utils import vzorecek_na_prepocet + from odevzdavatko.utils import vzorecek_na_prepocet return vzorecek_na_prepocet(self.body_neprepocitane_max, self.reseni.resitele.count()) @property diff --git a/odevzdavatko/utils.py b/odevzdavatko/utils.py new file mode 100644 index 00000000..4157de4b --- /dev/null +++ b/odevzdavatko/utils.py @@ -0,0 +1,11 @@ +import decimal + + +def vzorecek_na_prepocet(body, resitelu): + """ Vzoreček na přepočet plných bodů na parciálni, když má řešení více řešitelů. """ + return body * 3 / (resitelu + 2) + + +def inverze_vzorecku_na_prepocet(body: decimal.Decimal, resitelu) -> decimal.Decimal: + """ Vzoreček na přepočet parciálních bodů na plné, když má řešení více řešitelů. """ + return round(body * (resitelu + 2) / 3, 1) diff --git a/seminar/utils.py b/seminar/utils.py index 869cac09..20612a70 100644 --- a/seminar/utils.py +++ b/seminar/utils.py @@ -1,6 +1,5 @@ import datetime -import decimal from html.parser import HTMLParser from django import views as DjangoViews @@ -16,16 +15,6 @@ import treenode.treelib as t logger = logging.getLogger(__name__) -def vzorecek_na_prepocet(body, resitelu): - """ Vzoreček na přepočet plných bodů na parciálni, když má řešení více řešitelů. """ - return body * 3 / (resitelu + 2) - - -def inverze_vzorecku_na_prepocet(body: decimal.Decimal, resitelu) -> decimal.Decimal: - """ Vzoreček na přepočet parciálních bodů na plné, když má řešení více řešitelů. """ - return round(body * (resitelu + 2) / 3, 1) - - class FirstTagParser(HTMLParser): def __init__(self, *args, **kwargs): self.firstTag = None