rework prof data using dataclass, change database code, fix bugs
This commit is contained in:
@@ -2,10 +2,12 @@ from .widget_sources.Ui_search_statistic_page import Ui_Dialog
|
||||
from PyQt6 import QtWidgets, QtGui
|
||||
from PyQt6.QtCore import pyqtSignal
|
||||
from src.backend import Database, generateSemesterByDate
|
||||
from src.logic import custom_sort
|
||||
from src.logic import custom_sort, Prof
|
||||
from src import MyLogger
|
||||
from src.ui import ApparatExtendDialog
|
||||
from src.ui.dialogs import Mail_Dialog
|
||||
from src.ui.widgets import DataGraph, StatusWidget
|
||||
|
||||
from natsort import natsorted
|
||||
from icecream import ic
|
||||
|
||||
@@ -20,7 +22,7 @@ class MyComboBox(QtWidgets.QComboBox):
|
||||
class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog):
|
||||
apparat_open = pyqtSignal(str)
|
||||
reloadSignal = pyqtSignal()
|
||||
|
||||
refreshSignal = pyqtSignal()
|
||||
def __init__(self):
|
||||
self.logger = MyLogger("SearchStatisticPage")
|
||||
self.logger.log_info("SearchStatisticPage started")
|
||||
@@ -65,10 +67,24 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog):
|
||||
def statistics_table_context_menu(self, position):
|
||||
menu = QtWidgets.QMenu()
|
||||
restore_action = menu.addAction("Wiederherstellen")
|
||||
extend_action = menu.addAction("Verlängern")
|
||||
menu.addAction(restore_action)
|
||||
restore_action.triggered.connect(self.restore_apparat)
|
||||
extend_action.triggered.connect(self.extend_apparat)
|
||||
menu.exec(self.tableWidget.mapToGlobal(position))
|
||||
|
||||
def extend_apparat(self):
|
||||
extend = ApparatExtendDialog()
|
||||
extend.exec()
|
||||
if extend.result() == QtWidgets.QDialog.DialogCode.Accepted:
|
||||
data = extend.get_data()
|
||||
ic(data)
|
||||
app_name = self.tableWidget.item(self.tableWidget.currentRow(), 1).text()
|
||||
app_id = self.db.getApparatId(app_name)
|
||||
self.db.setNewSemesterDate(app_id, data["semester"], data["dauerapp"])
|
||||
#remove the row
|
||||
self.tableWidget.removeRow(self.tableWidget.currentRow())
|
||||
self.refreshSignal.emit()
|
||||
def tabW2_changed(self):
|
||||
|
||||
if self.tabWidget_2.currentIndex() == 0:
|
||||
@@ -204,7 +220,7 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog):
|
||||
apparats = [str(apparat) for apparat in apparats]
|
||||
self.box_appnrs.addItems(apparats)
|
||||
persons = self.db.getProfs()
|
||||
self.box_person.addItems([f"{person[3]}, {person[2]}" for person in persons])
|
||||
self.box_person.addItems([f"{person.lastname}, {person.firstname}" for person in persons])
|
||||
self.box_fach.addItems(subject[1] for subject in self.db.getSubjects())
|
||||
semester = self.db.getSemersters()
|
||||
self.box_erstellsemester.addItems(semester)
|
||||
|
||||
Reference in New Issue
Block a user