sort imports
This commit is contained in:
@@ -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")
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user