update logging, update docuprint add new ui for generating documents
This commit is contained in:
@@ -1,5 +1,4 @@
|
||||
import os
|
||||
from natsort import natsorted
|
||||
from .widget_sources.Ui_elsa_maindialog import Ui_Dialog
|
||||
from PyQt6 import QtCore, QtWidgets, QtGui
|
||||
from PyQt6.QtGui import QRegularExpressionValidator
|
||||
@@ -9,9 +8,11 @@ from src.backend import Semester, Database
|
||||
from src.logic import elsa_word_to_csv, Prof
|
||||
from src.ui.dialogs import ElsaAddEntry, popus_confirm
|
||||
from src.ui.widgets import FilePicker, DataGraph
|
||||
from src.backend import recreateElsaFile
|
||||
import sys
|
||||
from loguru import logger as log
|
||||
|
||||
|
||||
logger = log
|
||||
logger.remove()
|
||||
logger.add("logs/application.log", rotation="1 week", enqueue=True)
|
||||
@@ -232,11 +233,11 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
|
||||
lastname=prof.split(", ")[0],
|
||||
mail=self.newProf_mail.text(),
|
||||
telnr=self.newProf_telnr.text(),
|
||||
title=self.newProf_title.text(),
|
||||
_title=self.newProf_title.text(),
|
||||
fullname=f"{prof.split(', ')[0]} {prof.split(', ')[1]}",
|
||||
)
|
||||
prof_id = self.db.getProfId(profdata)
|
||||
logger.debug(profdata, prof_id)
|
||||
logger.debug(f"ProfData: {profdata}, id:{prof_id}")
|
||||
|
||||
if prof_id is None:
|
||||
self.db.createProf(profdata)
|
||||
@@ -411,10 +412,7 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
|
||||
self.elsa_date.text(),
|
||||
)
|
||||
logger.debug(
|
||||
elsa_id,
|
||||
self.elsa_prof.currentText(),
|
||||
self.elsa_semester.text(),
|
||||
self.elsa_date.text(),
|
||||
f"elsa_id: {elsa_id}, prof: {self.elsa_prof.currentText()}, semester: {self.elsa_semester.text()}, date: {self.elsa_date.text()}"
|
||||
)
|
||||
for row in data:
|
||||
if self.seperateEntries.isChecked():
|
||||
@@ -450,7 +448,7 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
|
||||
logger.debug("No tab to remove")
|
||||
self.elsa_table.setRowCount(0)
|
||||
elsa_apparats = self.db.getElsaApparats()
|
||||
elsa_apparats = natsorted(elsa_apparats, key=lambda x: x[2], reverse=True)
|
||||
# elsa_apparats = natsorted(elsa_apparats, key=lambda x: x[2], reverse=True)
|
||||
# x = semester, y = number of apparats
|
||||
|
||||
for apparat in elsa_apparats:
|
||||
@@ -463,13 +461,13 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
|
||||
else:
|
||||
index = self.graph_data["x"].index(semester)
|
||||
self.graph_data["y"][index] += number
|
||||
|
||||
generateMissing = True if len(self.graph_data["x"]) > 1 else False
|
||||
self.graph_data["x"].pop(0)
|
||||
self.graph_data["y"].pop(0)
|
||||
# generateMissing = True if len(self.graph_data["x"]) > 2 else False
|
||||
graph = DataGraph(
|
||||
"ELSA Apparate pro Semester",
|
||||
self.graph_data,
|
||||
generateMissing,
|
||||
"Anzahl der Apparate",
|
||||
title="ELSA Apparate pro Semester",
|
||||
data=self.graph_data,
|
||||
label="Anzahl der Apparate",
|
||||
)
|
||||
logger.debug(self.graph_data)
|
||||
self.elsa_statistics_table.setRowCount(0)
|
||||
|
||||
@@ -3,6 +3,18 @@ from typing import Union
|
||||
|
||||
import pyqtgraph as pg
|
||||
from PyQt6 import QtWidgets
|
||||
import sys
|
||||
from loguru import logger as log
|
||||
|
||||
logger = log
|
||||
logger.remove()
|
||||
logger.add("logs/application.log", rotation="1 week", enqueue=True)
|
||||
log.add(
|
||||
"logs/graph.log",
|
||||
)
|
||||
|
||||
# logger.add(sys.stderr, format="{time} {level} {message}", level="INFO")
|
||||
logger.add(sys.stdout)
|
||||
|
||||
|
||||
def mergedicts(d1, d2):
|
||||
@@ -31,7 +43,11 @@ class DataGraph(QtWidgets.QWidget):
|
||||
label=None,
|
||||
):
|
||||
super().__init__()
|
||||
|
||||
logger.debug(
|
||||
"Initialized with options: {}, {}, {}, {}".format(
|
||||
title, data, generateMissing, label
|
||||
)
|
||||
)
|
||||
lst = []
|
||||
if generateMissing:
|
||||
x_data = data["x"]
|
||||
@@ -142,20 +158,10 @@ if __name__ == "__main__":
|
||||
import sys
|
||||
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
data_1 = {
|
||||
"x": ["SoSe 10", "WiSe 10/11", "SoSe 11", "SoSe 14"],
|
||||
"y": {
|
||||
"Added": [1, 2, 3, 4],
|
||||
"Deleted": [4, 3, 2, 1],
|
||||
},
|
||||
}
|
||||
data_2 = {
|
||||
"x": ["SoSe 10"],
|
||||
"y": [2],
|
||||
}
|
||||
graph_data = {"x": ["SoSe 24"], "y": [1]}
|
||||
|
||||
graph_data = {"x": ["WiSe 25/26", "WiSe 24/25", "SoSe 25"], "y": [1, 2, 1]}
|
||||
widget = DataGraph(
|
||||
"ELSA Apparate pro Semester", data_2, True, "Anzahl der Apparate"
|
||||
"ELSA Apparate pro Semester", graph_data, True, "Anzahl der Apparate"
|
||||
)
|
||||
widget.show()
|
||||
sys.exit(app.exec())
|
||||
|
||||
@@ -493,7 +493,7 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog):
|
||||
checkbox.setChecked(False)
|
||||
self.tableWidget.setCellWidget(0, 0, checkbox)
|
||||
# if i[9] is 1, set the background of the row to red
|
||||
if int(app[9]) == 1:
|
||||
if int(app.deleted) == 1:
|
||||
for j in range(5):
|
||||
self.tableWidget.item(0, j).setBackground(
|
||||
QtGui.QColor(235, 74, 71)
|
||||
|
||||
Reference in New Issue
Block a user