sort imports

This commit is contained in:
2025-11-24 12:40:32 +01:00
parent 6c6d140c2f
commit 2d54d64a46

View File

@@ -5,14 +5,14 @@ from PySide6.QtCore import QDate
from PySide6.QtGui import QRegularExpressionValidator from PySide6.QtGui import QRegularExpressionValidator
from src import Icon from src import Icon
from src.database import Database
from src.utils.files import recreateElsaFile
from src.core.models import Prof, Semester from src.core.models import Prof, Semester
from src.database import Database
from src.logic import elsa_word_to_csv from src.logic import elsa_word_to_csv
from src.shared.logging import log from src.shared.logging import log
from src.ui.dialogs import ElsaAddEntry, popus_confirm from src.ui.dialogs import ElsaAddEntry, popus_confirm
from src.ui.widgets.filepicker import FilePicker from src.ui.widgets.filepicker import FilePicker
from src.ui.widgets.graph import DataQtGraph from src.ui.widgets.graph import DataQtGraph
from src.utils.files import recreateElsaFile
from .widget_sources.elsa_maindialog_ui import Ui_Dialog from .widget_sources.elsa_maindialog_ui import Ui_Dialog
@@ -22,7 +22,7 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
super().__init__() super().__init__()
self.setupUi(self) self.setupUi(self)
self.table_elsa_list.setContextMenuPolicy( self.table_elsa_list.setContextMenuPolicy(
QtCore.Qt.ContextMenuPolicy.CustomContextMenu QtCore.Qt.ContextMenuPolicy.CustomContextMenu,
) )
self.table_elsa_list.customContextMenuRequested.connect(self.elsa_context_menu) self.table_elsa_list.customContextMenuRequested.connect(self.elsa_context_menu)
# elsa buttons # elsa buttons
@@ -52,11 +52,11 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
# set header to occupy the whole width and auto scale based on table width # set header to occupy the whole width and auto scale based on table width
self.elsa_statistics_table.horizontalHeader().setStretchLastSection(True) self.elsa_statistics_table.horizontalHeader().setStretchLastSection(True)
self.elsa_statistics_table.horizontalHeader().setSectionResizeMode( self.elsa_statistics_table.horizontalHeader().setSectionResizeMode(
QtWidgets.QHeaderView.ResizeMode.Stretch QtWidgets.QHeaderView.ResizeMode.Stretch,
) )
# if table size gets smaller, set horitzontal headers text to be left aligned # if table size gets smaller, set horitzontal headers text to be left aligned
self.elsa_statistics_table.horizontalHeader().setDefaultAlignment( self.elsa_statistics_table.horizontalHeader().setDefaultAlignment(
QtCore.Qt.AlignmentFlag.AlignLeft QtCore.Qt.AlignmentFlag.AlignLeft,
) )
# self.table_elsa_list. # self.table_elsa_list.
Icon("person", self.prof_icon) Icon("person", self.prof_icon)
@@ -65,13 +65,13 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
self.newProf_mail.setValidator( self.newProf_mail.setValidator(
QRegularExpressionValidator( QRegularExpressionValidator(
QtCore.QRegularExpression( QtCore.QRegularExpression(
r"[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}" r"[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}",
) ),
) ),
) )
self.newProf_telnr.setValidator(QtGui.QIntValidator()) self.newProf_telnr.setValidator(QtGui.QIntValidator())
self.newProf_telnr.setValidator( self.newProf_telnr.setValidator(
QtGui.QRegularExpressionValidator(QtCore.QRegularExpression(r"^\d{3,14}")) QtGui.QRegularExpressionValidator(QtCore.QRegularExpression(r"^\d{3,14}")),
) )
##Variables ##Variables
@@ -111,7 +111,7 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
self.elsa_save.setToolTip("Bitte erst Daten eingeben") self.elsa_save.setToolTip("Bitte erst Daten eingeben")
self.newProf_mail.setToolTip("Bitte geben Sie eine gültige E-Mail ein") self.newProf_mail.setToolTip("Bitte geben Sie eine gültige E-Mail ein")
self.newProf_telnr.setToolTip( self.newProf_telnr.setToolTip(
"Bitte geben Sie eine gültige Telefonnummer ein" "Bitte geben Sie eine gültige Telefonnummer ein",
) )
def checkProf(self): def checkProf(self):
@@ -131,9 +131,7 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
def getProfs(self): def getProfs(self):
profs = self.db.getProfs() profs = self.db.getProfs()
profs = [ profs = [(f"{prof.lastname}, {prof.firstname}", prof.id) for prof in profs]
("{}, {}".format(prof.lastname, prof.firstname), prof.id) for prof in profs
]
profs = list(set(profs)) profs = list(set(profs))
profs.sort() profs.sort()
@@ -142,7 +140,6 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
def elsa_context_menu(self, position): def elsa_context_menu(self, position):
QtWidgets.QMenu() QtWidgets.QMenu()
# TODO: add functions # TODO: add functions
pass
def elsa_table_entry(self): def elsa_table_entry(self):
data = ElsaAddEntry() data = ElsaAddEntry()
@@ -240,7 +237,8 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
self.db.createProf(profdata) self.db.createProf(profdata)
prof_id = self.db.getProfId(profdata) prof_id = self.db.getProfId(profdata)
self.profs.append( self.profs.append(
"f{}, {}".format(profdata.lastname, profdata.firstname), prof_id f"f{profdata.lastname}, {profdata.firstname}",
prof_id,
) )
elsa_id = self.db.createElsaApparat( elsa_id = self.db.createElsaApparat(
date, date,
@@ -318,14 +316,20 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
for document in documents: for document in documents:
self.dokument_list_elsa.insertRow(0) self.dokument_list_elsa.insertRow(0)
self.dokument_list_elsa.setItem( self.dokument_list_elsa.setItem(
0, 0, QtWidgets.QTableWidgetItem(document[0]) 0,
0,
QtWidgets.QTableWidgetItem(document[0]),
) )
self.dokument_list_elsa.setItem( self.dokument_list_elsa.setItem(
0, 1, QtWidgets.QTableWidgetItem(document[1]) 0,
1,
QtWidgets.QTableWidgetItem(document[1]),
) )
self.dokument_list_elsa.setItem(0, 2, QtWidgets.QTableWidgetItem("")) self.dokument_list_elsa.setItem(0, 2, QtWidgets.QTableWidgetItem(""))
self.dokument_list_elsa.setItem( self.dokument_list_elsa.setItem(
0, 3, QtWidgets.QTableWidgetItem("Database") 0,
3,
QtWidgets.QTableWidgetItem("Database"),
) )
scans = self.db.getElsaMedia(elsa_id) scans = self.db.getElsaMedia(elsa_id)
if scans == []: if scans == []:
@@ -340,19 +344,27 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
def setElsaRow(self, scan): def setElsaRow(self, scan):
self.table_elsa_list.insertRow(0) self.table_elsa_list.insertRow(0)
self.table_elsa_list.setItem( self.table_elsa_list.setItem(
0, 0, QtWidgets.QTableWidgetItem(scan["work_author"]) 0,
0,
QtWidgets.QTableWidgetItem(scan["work_author"]),
) )
self.table_elsa_list.setItem( self.table_elsa_list.setItem(
0, 1, QtWidgets.QTableWidgetItem(scan["section_author"]) 0,
1,
QtWidgets.QTableWidgetItem(scan["section_author"]),
) )
self.table_elsa_list.setItem(0, 2, QtWidgets.QTableWidgetItem(scan["year"])) self.table_elsa_list.setItem(0, 2, QtWidgets.QTableWidgetItem(scan["year"]))
self.table_elsa_list.setItem(0, 3, QtWidgets.QTableWidgetItem(scan["issue"])) self.table_elsa_list.setItem(0, 3, QtWidgets.QTableWidgetItem(scan["issue"]))
self.table_elsa_list.setItem(0, 4, QtWidgets.QTableWidgetItem(scan["edition"])) self.table_elsa_list.setItem(0, 4, QtWidgets.QTableWidgetItem(scan["edition"]))
self.table_elsa_list.setItem( self.table_elsa_list.setItem(
0, 5, QtWidgets.QTableWidgetItem(scan["work_title"]) 0,
5,
QtWidgets.QTableWidgetItem(scan["work_title"]),
) )
self.table_elsa_list.setItem( self.table_elsa_list.setItem(
0, 6, QtWidgets.QTableWidgetItem(scan["chapter_title"]) 0,
6,
QtWidgets.QTableWidgetItem(scan["chapter_title"]),
) )
self.table_elsa_list.setItem( self.table_elsa_list.setItem(
0, 0,
@@ -361,10 +373,14 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
) )
self.table_elsa_list.setItem(0, 8, QtWidgets.QTableWidgetItem(scan["location"])) self.table_elsa_list.setItem(0, 8, QtWidgets.QTableWidgetItem(scan["location"]))
self.table_elsa_list.setItem( self.table_elsa_list.setItem(
0, 9, QtWidgets.QTableWidgetItem(scan["publisher"]) 0,
9,
QtWidgets.QTableWidgetItem(scan["publisher"]),
) )
self.table_elsa_list.setItem( self.table_elsa_list.setItem(
0, 10, QtWidgets.QTableWidgetItem(scan["signature"]) 0,
10,
QtWidgets.QTableWidgetItem(scan["signature"]),
) )
self.table_elsa_list.setItem(0, 11, QtWidgets.QTableWidgetItem(scan["type"])) self.table_elsa_list.setItem(0, 11, QtWidgets.QTableWidgetItem(scan["type"]))
@@ -391,7 +407,6 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
def parseDokumentElsa(self): def parseDokumentElsa(self):
if self.dokument_list_elsa.rowCount() == 0: if self.dokument_list_elsa.rowCount() == 0:
return return
else:
# get the file path of the selected file based on it's row # get the file path of the selected file based on it's row
row = self.dokument_list_elsa.currentRow() row = self.dokument_list_elsa.currentRow()
file = self.dokument_list_elsa.item(row, 3).text() file = self.dokument_list_elsa.item(row, 3).text()
@@ -401,7 +416,9 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
filetype = self.dokument_list_elsa.item(row, 1).text() filetype = self.dokument_list_elsa.item(row, 1).text()
file = recreateElsaFile( file = recreateElsaFile(
filename=filename, filetype=filetype, open=False filename=filename,
filetype=filetype,
open=False,
) )
data, _ = elsa_word_to_csv(file) data, _ = elsa_word_to_csv(file)
elsa_id = self.db.getElsaId( elsa_id = self.db.getElsaId(
@@ -410,7 +427,7 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
self.elsa_date.text(), self.elsa_date.text(),
) )
log.debug( log.debug(
f"elsa_id: {elsa_id}, prof: {self.elsa_prof.currentText()}, semester: {self.elsa_semester.text()}, date: {self.elsa_date.text()}" f"elsa_id: {elsa_id}, prof: {self.elsa_prof.currentText()}, semester: {self.elsa_semester.text()}, date: {self.elsa_date.text()}",
) )
if file_location != "Database": if file_location != "Database":
self.db.insertElsaFile( self.db.insertElsaFile(
@@ -419,7 +436,7 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
"name": file.split("/")[-1], "name": file.split("/")[-1],
"path": file, "path": file,
"type": file.split(".")[-1], "type": file.split(".")[-1],
} },
], ],
elsa_id, elsa_id,
) )
@@ -454,7 +471,7 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
self.elsa_cancel_create.click() self.elsa_cancel_create.click()
try: try:
self.elsa_statistics.removeTab(1) self.elsa_statistics.removeTab(1)
except: except IndexError:
log.debug("No tab to remove") log.debug("No tab to remove")
self.elsa_table.setRowCount(0) self.elsa_table.setRowCount(0)
elsa_apparats = self.db.getElsaApparats() elsa_apparats = self.db.getElsaApparats()
@@ -486,10 +503,14 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
for i in range(len(self.graph_data["x"])): for i in range(len(self.graph_data["x"])):
self.elsa_statistics_table.insertRow(0) self.elsa_statistics_table.insertRow(0)
self.elsa_statistics_table.setItem( self.elsa_statistics_table.setItem(
0, 0, QtWidgets.QTableWidgetItem(self.graph_data["x"][i]) 0,
0,
QtWidgets.QTableWidgetItem(self.graph_data["x"][i]),
) )
self.elsa_statistics_table.setItem( self.elsa_statistics_table.setItem(
0, 1, QtWidgets.QTableWidgetItem(str(self.graph_data["y"][i])) 0,
1,
QtWidgets.QTableWidgetItem(str(self.graph_data["y"][i])),
) )
self.elsa_statistics.addTab(graph, "Graph") self.elsa_statistics.addTab(graph, "Graph")