chore: restructured project, updated readme

This commit is contained in:
2025-10-29 09:31:40 +01:00
parent a4460ec17b
commit ee62c65ae7
70 changed files with 8518 additions and 100 deletions

View File

@@ -8,7 +8,7 @@
from PySide6 import QtCore, QtGui, QtWidgets
from src.logic.dataclass import BookData
from src.core.models import BookData
class Ui_Dialog(object):

View File

@@ -8,7 +8,7 @@
from PySide6 import QtCore, QtGui, QtWidgets
from src.logic.webrequest import BibTextTransformer, WebRequest
from src.services.webrequest import BibTextTransformer, WebRequest
class Ui_Dialog(object):

View File

@@ -10,8 +10,8 @@ import hashlib
from PySide6 import QtCore, QtWidgets
from src.backend.admin_console import AdminCommands
from src.backend.database import Database
from src.admin import AdminCommands
from src.database import Database
class Ui_Dialog(object):

View File

@@ -1,6 +1,6 @@
from PySide6 import QtWidgets
from src.logic.dataclass import BookData
from src.core.models import BookData
from .dialog_sources.edit_bookdata_ui import Ui_Dialog

View File

@@ -3,7 +3,7 @@ from typing import Any
from PySide6 import QtCore, QtWidgets
from src import Icon
from src.backend.database import Database
from src.database import Database
from .dialog_sources.deletedialog_ui import Ui_Dialog

View File

@@ -2,8 +2,8 @@ from natsort import natsorted
from PySide6 import QtWidgets
from src import Icon
from src.backend import Database
from src.logic import Semester
from src.database import Database
from src.core.models import Semester
from src.utils.richtext import SemapSchilder, SemesterDocument
from .dialog_sources.documentprint_ui import Ui_Dialog

View File

@@ -1,8 +1,8 @@
from PySide6 import QtWidgets
from src import Icon
from src.logic.webrequest import BibTextTransformer, WebRequest
from src.logic.zotero import ZoteroController
from src.services.webrequest import BibTextTransformer, WebRequest
from src.services.zotero import ZoteroController
from src.shared.logging import log
from src.transformers.transformers import DictToTable

View File

@@ -1,6 +1,6 @@
from PySide6 import QtWidgets
from src.logic.webrequest import BibTextTransformer, WebRequest
from src.services.webrequest import BibTextTransformer, WebRequest
from .dialog_sources.Ui_fileparser import Ui_Dialog

View File

@@ -5,7 +5,7 @@ import loguru
from PySide6 import QtCore, QtWidgets
from src import LOG_DIR, Icon
from src.backend.database import Database
from src.database import Database
from .dialog_sources.login_ui import Ui_Dialog
@@ -75,7 +75,7 @@ class LoginDialog(Ui_Dialog):
hashed_password = hashlib.sha256(password.encode()).hexdigest()
if len(self.db.getUsers()) == 0:
from src.backend.admin_console import AdminCommands
from src.admin import AdminCommands
AdminCommands().create_admin()
self.lresult = 1 # Indicate successful login

View File

@@ -1,7 +1,7 @@
from PySide6 import QtCore, QtWidgets
from src.backend.catalogue import Catalogue
from src.backend.database import Database
from src.services.catalogue import Catalogue
from src.database import Database
from src.ui.dialogs.mail import Mail_Dialog
from .dialog_sources.order_neweditions_ui import Ui_Dialog

View File

@@ -4,7 +4,7 @@ import loguru
from PySide6 import QtWidgets
from src import LOG_DIR
from src.backend import AutoAdder
from src.background import AutoAdder
from .dialog_sources.parsed_titles_ui import Ui_Form

View File

@@ -5,9 +5,9 @@ from PySide6 import QtCore
from PySide6.QtWidgets import QDialog, QPushButton, QVBoxLayout
from qtqdm import Qtqdm, QtqdmProgressBar
from src.logic import BookData
from src.logic.lehmannsapi import LehmannsClient
from src.logic.SRU import SWB
from src.core.models import BookData
from src.services.lehmanns import LehmannsClient
from src.services.sru import SWB
class CheckThread(QtCore.QThread):

View File

@@ -15,24 +15,27 @@ from PySide6.QtGui import QRegularExpressionValidator
from PySide6.QtMultimedia import QAudioOutput, QMediaPlayer
from src import Icon
from src.backend import (
from src.database import Database
from src.background import (
AvailChecker,
BookGrabber,
Database,
DocumentationThread,
NewEditionCheckerThread,
)
from src.backend.create_file import recreateFile
from src.backend.delete_temp_contents import delete_temp_contents as tempdelete
from src.logic import (
APP_NRS,
from src.utils.files import recreateFile, delete_temp_contents as tempdelete
from src.core.models import (
Apparat,
ApparatData,
BookData,
Prof,
SemapDocument,
Semester,
)
from src.core.constants import APP_NRS
from src.parsers import (
csv_to_list,
)
from src.logic import (
eml_to_semap,
pdf_to_semap,
word_to_semap,

View File

@@ -5,7 +5,7 @@ from PySide6 import QtCore, QtWidgets
from PySide6.QtCore import QDate
from PySide6.QtGui import QColor, QPen
from src.backend import Database
from src.database import Database
from src.shared.logging import log
color = "#ddfb00" if darkdetect.isDark() else "#2204ff"

View File

@@ -1,7 +1,8 @@
from PySide6 import QtWidgets
from PySide6.QtCore import Signal
from .widget_sources.admin_create_user_ui import Ui_Dialog
from src.backend import AdminCommands, Database
from src.admin import AdminCommands
from src.database import Database
class UserCreate(QtWidgets.QDialog, Ui_Dialog):

View File

@@ -4,8 +4,8 @@ import loguru
from PySide6 import QtWidgets
from src import LOG_DIR
from src.backend import Database
from src.logic import Prof
from src.database import Database
from src.core.models import Prof
from .widget_sources.admin_edit_prof_ui import Ui_Dialog #

View File

@@ -1,6 +1,7 @@
from PySide6 import QtWidgets
from src.backend import AdminCommands, Database
from src.admin import AdminCommands
from src.database import Database
from .widget_sources.admin_edit_user_ui import Ui_Dialog

View File

@@ -1,7 +1,7 @@
from PySide6 import QtCore, QtWidgets
from src import Icon
from src.backend import Database
from src.database import Database
from .widget_sources. import Ui_Form

View File

@@ -2,7 +2,7 @@ from PySide6 import QtWidgets
from PySide6.QtCore import Signal
from src import Icon
from src.backend.database import Database
from src.database import Database
from .widget_sources.calendar_entry_ui import Ui_Dialog

View File

@@ -5,8 +5,10 @@ from PySide6.QtCore import QDate
from PySide6.QtGui import QRegularExpressionValidator
from src import Icon
from src.backend import Database, recreateElsaFile
from src.logic import Prof, Semester, elsa_word_to_csv
from src.database import Database
from src.utils.files import recreateElsaFile
from src.core.models import Prof, Semester
from src.logic import elsa_word_to_csv
from src.shared.logging import log
from src.ui.dialogs import ElsaAddEntry, popus_confirm
from src.ui.widgets.filepicker import FilePicker

View File

@@ -5,7 +5,7 @@ from PySide6 import QtCore, QtGui, QtWidgets
from PySide6.QtCharts import QCategoryAxis, QChart, QChartView, QLineSeries, QValueAxis
from PySide6.QtGui import QColor, QPainter, QPen
from src.logic.semester import Semester
from src.core.models import Semester
def mergedicts(d1: dict[str, Any], d2: dict[str, Any]):
@@ -101,7 +101,7 @@ class DataQtGraph(QtWidgets.QWidget):
self.chart.createDefaultAxes()
for entry in lst:
# print("entry:", entry)
print("entry:", entry)
entryseries = QLineSeries()
for x_val, y_val in zip(entry["x"], entry["y"]):
#

View File

@@ -4,8 +4,8 @@ from PySide6 import QtWidgets
from PySide6.QtCore import Qt
from src import Icon
from src.backend.catalogue import Catalogue
from src.logic import BookData
from src.services.catalogue import Catalogue
from src.core.models import BookData
from .widget_sources.new_edition_check_book_ui import (
Ui_Dialog as Ui_NewEditionCheckBook,

View File

@@ -4,9 +4,9 @@ from natsort import natsorted
from PySide6 import QtCore, QtGui, QtWidgets
from PySide6.QtCore import Signal
from src.backend import Database
from src.logic import BookData, Prof, Semester, custom_sort, sort_semesters_list
from src.logic.dataclass import Apparat
from src.core.models import Apparat, BookData, Prof, Semester
from src.database import Database
from src.logic import custom_sort, sort_semesters_list
from src.shared.logging import log
from src.ui.dialogs import ApparatExtendDialog, Mail_Dialog, ReminderDialog
from src.ui.widgets import DataQtGraph, StatusWidget
@@ -374,6 +374,7 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog):
"x": [i[0] for i in data],
"y": {"Erstellt": [i[1] for i in data], "Gelöscht": [i[2] for i in data]},
}
log.debug(graph_data)
graph = DataQtGraph(
title="Erstellte und gelöschte Apparate",
data=graph_data,

View File

@@ -6,10 +6,10 @@ from queue import Empty, Queue
from PySide6 import QtCore, QtWidgets
from PySide6.QtMultimedia import QAudioOutput, QMediaPlayer
from src.backend.catalogue import Catalogue
from src.backend.database import Database
from src.backend.webadis import get_book_medianr
from src.logic.SRU import SWB
from src.services.catalogue import Catalogue
from src.database import Database
from src.services.webadis import get_book_medianr
from src.services.sru import SWB
from src.shared.logging import log
from .widget_sources.admin_update_signatures_ui import Ui_Dialog

View File

@@ -5,7 +5,7 @@ from appdirs import AppDirs
from PySide6 import QtCore, QtWidgets
from src import settings
from src.backend import Database
from src.database import Database
from src.shared.logging import log
from .widget_sources.welcome_wizard_ui import Ui_Wizard
@@ -80,7 +80,7 @@ class WelcomeWizard(QtWidgets.QWizard, Ui_Wizard):
self.settings_database_name.setText("semesterapparate.db")
def test_login_data(self):
from src.backend import AdminCommands
from src.admin import AdminCommands
log.info("Testing login data for SAM user")
db_path = (
@@ -109,7 +109,7 @@ class WelcomeWizard(QtWidgets.QWizard, Ui_Wizard):
def create_sam_user(self):
"""Create a SAM user in the database."""
from src.backend import AdminCommands
from src.admin import AdminCommands
db_path = (
self.settings_database.text() + "/" + self.settings_database_name.text()