update code, switch to loguru

This commit is contained in:
2025-01-10 09:35:18 +01:00
parent e915b47dda
commit 0d7dc28876
17 changed files with 127 additions and 162 deletions

View File

@@ -2,10 +2,9 @@ import sys
import atexit
import datetime
import webbrowser
from src import config, __email__, docport
from src import config, __email__, docport, log
from src.logic import Database, Catalogue, Backup
from src.utils import stringToDate, Icon, Log
from src.utils import debugMessage as dbg
from src.utils import stringToDate, Icon
from src.utils.createReport import generate_report
from src.schemas import Book
from .sources.Ui_main_UserInterface import Ui_MainWindow
@@ -22,8 +21,6 @@ from omegaconf import OmegaConf
from src.logic.documentation_thread import DocumentationThread
backup = Backup()
cat = Catalogue()
log = Log("main")
dbg(backup=config.database.do_backup, catalogue=config.catalogue)
def getShortcut(shortcuts, name):
shortcut = [cut for cut in shortcuts if cut["name"] == name][0]
@@ -183,7 +180,7 @@ class MainUI(QtWidgets.QMainWindow, Ui_MainWindow):
def restart(self):
#log restart
dbg("Restarting Program")
log.info("Restarting Program")
import os
python_executable = sys.executable
args = sys.argv[:]
@@ -192,8 +189,7 @@ class MainUI(QtWidgets.QMainWindow, Ui_MainWindow):
def changeMode(self):
log.info("Changing Mode")
dbg(f"Current mode: {self.activeState}")
log.info("Changing Mode, current mode is {}", self.activeState)
self.input_username.clear()
stayReturn = False
if config.advanced_refresh and self.userdata.toPlainText() != "":
@@ -216,7 +212,7 @@ class MainUI(QtWidgets.QMainWindow, Ui_MainWindow):
self.activateReturnMode()
def activateLoanMode(self):
dbg("Activating Loan Mode")
log.info("Activating Loan Mode")
self.input_username.setEnabled(True)
self.input_userno.setEnabled(True)
self.duedate.setEnabled(True)
@@ -234,7 +230,7 @@ class MainUI(QtWidgets.QMainWindow, Ui_MainWindow):
self.input_file_ident.setEnabled(True)
def activateReturnMode(self):
dbg("Activating Return Mode")
log.info("Activating Return Mode")
self.input_username.setEnabled(False)
self.input_userno.setEnabled(False)
# set mode background color to orange
@@ -326,7 +322,7 @@ class MainUI(QtWidgets.QMainWindow, Ui_MainWindow):
self.mode.setText("Ausleihe")
#print(self.activeUser.__dict__)
loans = self.db.getActiveLoans(self.activeUser.id)
dbg(loans=loans)
log.debug("Active Loans", loans)
self.btn_show_lentmedia.setText(loans)
retdate = self.db.selectClosestReturnDate(self.activeUser.id)
if retdate:
@@ -375,16 +371,16 @@ class MainUI(QtWidgets.QMainWindow, Ui_MainWindow):
self.mediaAdd(value)
self.input_file_ident.setFocus()
def mediaAdd(self, identifier):
dbg("Adding Media", identifier = identifier)
log.info("Adding Media", identifier=identifier)
self.input_file_ident.clear()
self.input_file_ident.setEnabled(False)
user_id = self.activeUser.id
media = Book(signature=identifier)
book_id = self.db.checkMediaExists(media)
dbg(f"Book ID: {book_id}, User ID: {user_id}", media=media)
log.debug(f"Book ID: {book_id}, User ID: {user_id}", media=media)
if not book_id:
dbg("Book not found, searching catalogue")
log.info("Book not found, searching catalogue")
if config.catalogue == True:
media = cat.get_book(identifier)
if not media:
@@ -441,7 +437,7 @@ class MainUI(QtWidgets.QMainWindow, Ui_MainWindow):
for entry in newentries:
book = self.db.getMedia(entry)
self.loanMedia(user_id, [entry], book)
dbg("inserted duplicated book into database")
log.info("inserted duplicated book into database")
return
else:
#print("Book not loaned, loaning now")
@@ -506,7 +502,7 @@ class MainUI(QtWidgets.QMainWindow, Ui_MainWindow):
self.setStatusTipMessage("Buch nicht entliehen")
self.input_file_ident.clear()
else:
dbg("Book not found")
log.error("Book not found, identifier", identifier)
#print("Book not found")
#self.input_file_ident.setPlaceholderText(f"Buch {identifier} nicht gefunden")
@@ -520,13 +516,13 @@ class MainUI(QtWidgets.QMainWindow, Ui_MainWindow):
dialog.setText(message)
dialog.exec()
def exit_handler():
dbg("Exiting, creating backup")
log.info("Exiting, creating backup")
app = QtWidgets.QApplication(sys.argv)
#print(backup.backup)
# generate report if monday
if datetime.datetime.now().weekday() == config.report.report_day:
generate_report()
dbg("Generated Report")
log.info("Generated Report")
Database().renameInactiveUsers()
if config.database.do_backup:
state = backup.createBackup()
@@ -541,7 +537,7 @@ def exit_handler():
dialog.setText("Backup konnte nicht erstellt werden")
dialog.exec()
dbg("Exiting", backupstate=state)
log.info("Exiting, backup:", state)
else:
dialog = QtWidgets.QMessageBox()
# set icon