rework logging, add more dataclasses, reworked config

This commit is contained in:
2024-12-17 10:02:56 +01:00
parent ccb4df10bb
commit eda556b5ea
41 changed files with 1624 additions and 865 deletions

View File

@@ -1,5 +1,5 @@
from .log import MyLogger
from .dataclass import ApparatData, BookData, Prof
from .log import MyLogger, logger
from .dataclass import ApparatData, BookData, Prof, Apparat, ELSA
from .thread_bookgrabber import BookGrabber
from .threads_autoadder import AutoAdder
from .threads_availchecker import AvailChecker

View File

@@ -5,7 +5,7 @@ from enum import Enum
@dataclass
class Prof:
id: int = None
title: str= None
_title: str = None
firstname: str= None
lastname: str= None
fullname: str= None
@@ -18,11 +18,20 @@ class Prof:
if hasattr(self, key):
setattr(self, key, value)
return self
@property
def title(self):
if self._title is None or self._title == "None":
return ""
return self._title
@title.setter
def title(self, value):
self._title = value
#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])
setattr(self, "_title", data[1])
setattr(self, "firstname", data[2])
setattr(self, "lastname", data[3])
setattr(self, "fullname", data[4])
@@ -154,3 +163,51 @@ class Subjects(Enum):
if i.name == name:
return i.id - 1
@dataclass
class Apparat:
id: int | None = None
name: str | None = None
prof_id: int | None = None
subject: str | None = None
appnr: int | None = None
created_semester: str | None = None
extended_at: str | None = None
eternal: bool = False
extend_until: str | None = None
deleted: int | None = None
deleted_date: str | None = None
apparat_id_adis: str | None = None
prof_id_adis: str | None = None
konto: int | None = None
def from_tuple(self, data: tuple):
setattr(self, "id", data[0])
setattr(self, "name", data[1])
setattr(self, "prof_id", data[2])
setattr(self, "subject", data[3])
setattr(self, "appnr", data[4])
setattr(self, "created_semester", data[5])
setattr(self, "extended_at", data[6])
setattr(self, "eternal", data[7])
setattr(self, "extend_until", data[8])
setattr(self, "deleted", data[9])
setattr(self, "deleted_date", data[10])
setattr(self, "apparat_id_adis", data[11])
setattr(self, "prof_id_adis", data[12])
setattr(self, "konto", data[13])
return self
@dataclass
class ELSA:
id: int | None = None
date: str | None = None
semester: str | None = None
prof_id: int | None = None
def from_tuple(self, data):
setattr(self, "id", data[0])
setattr(self, "date", data[1])
setattr(self, "semester", data[2])
setattr(self, "prof_id", data[3])
return self

View File

@@ -2,11 +2,24 @@ import logging
import logging.handlers
import os
from loguru import logger as log
import sys
if not os.path.exists("logs"):
os.mkdir("logs")
# open and close the file to create it
with open("logs/application.log", "w") as f:
pass
logger = log
logger.remove()
logger.add("logs/application.log", rotation="50MB")
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
logger.add(
sys.stdout,
colorize=True,
format="<green>{time}</green> <level>{message}</level>",
level="WARNING",
)
log_filesize = 10 * 1024**2 # 10MB
backups = 5