fix broken files after faulty update

This commit is contained in:
2025-01-14 08:51:58 +01:00
parent 598da9bfac
commit 997d618ff1
102 changed files with 2499 additions and 548 deletions

View File

@@ -1,18 +1,20 @@
import re
from dataclasses import dataclass, field
from enum import Enum
@dataclass
class Prof:
id: int = None
_title: str = None
firstname: str= None
lastname: str= None
fullname: str= None
mail: str= None
telnr: str= None
#add function that sets the data based on a dict
firstname: str = None
lastname: str = None
fullname: str = None
mail: str = None
telnr: str = None
# add function that sets the data based on a dict
def from_dict(self, data: dict):
for key, value in data.items():
if hasattr(self, key):
@@ -28,7 +30,8 @@ class Prof:
@title.setter
def title(self, value):
self._title = value
#add function that sets the data from a tuple
# add function that sets the data from a tuple
def from_tuple(self, data: tuple):
setattr(self, "id", data[0])
setattr(self, "_title", data[1])
@@ -40,40 +43,18 @@ class Prof:
return self
def name(self, comma=False):
if self.firstname is None and self.lastname is None:
if "," in self.fullname:
self.firstname = self.fullname.split(",")[1].strip()
self.lastname = self.fullname.split(",")[0].strip()
else:
return self.fullname
if comma:
return f"{self.lastname}, {self.firstname}"
return f"{self.lastname} {self.firstname}"
@dataclass
class ApparatData:
prof_title: str | None = None
profname: str | None = None
dauerapp: bool = False
appnr: int | None = None
appname: str | None = None
app_fach: str | None = None
semester: str | None = None
erstellsemester: str | None = None
prof_mail: str | None = None
prof_tel: int | None = None
deleted: int = 0
prof_adis_id: int | None = None
apparat_adis_id: int | None = None
@property
def prof_details(self) -> Prof:
return Prof().from_dict({
"title": self.prof_title,
"firstname": self.profname.split(',')[1].strip(),
"lastname": self.profname.split(',')[0].strip(),
"mail": self.prof_mail,
"telnr": self.prof_tel,
"fullname": f"{self.profname.split(',')[0].strip()} {self.profname.split(',')[1].strip()}",
})
def translateToFullname(self):
return f"{self.profname.split(',')[0].strip()} {self.profname.split(',')[1].strip()}"
@dataclass
class BookData:
ppn: str | None = None
@@ -132,7 +113,7 @@ class Subjects(Enum):
FRENCH = (6, "Französisch")
GEOGRAPHY = (7, "Geographie")
HISTORY = (8, "Geschichte")
HEALT_EDUCATION = (9, "Gesundheitspädagogik")
HEALTH_EDUCATION = (9, "Gesundheitspädagogik")
HTW = (10, "Haushalt / Textil")
ART = (11, "Kunst")
MATH_IT = (12, "Mathematik / Informatik")
@@ -197,6 +178,13 @@ class Apparat:
setattr(self, "konto", data[13])
return self
@property
def get_semester(self):
if self.extend_until is not None:
return self.extend_until
else:
return self.created_semester
@dataclass
class ELSA:
@@ -211,3 +199,7 @@ class ELSA:
setattr(self, "semester", data[2])
setattr(self, "prof_id", data[3])
return self
@dataclass
class ApparatData:
prof: Prof = field(default_factory=Prof)
apparat: Apparat = field(default_factory=Apparat)