This commit is contained in:
WorldTeacher
2024-07-30 16:10:02 +02:00
parent 27ec7c296a
commit c3ff3e93ee
8 changed files with 59 additions and 22 deletions

View File

@@ -9,7 +9,7 @@ from icecream import ic
TABLETOFIELDTRANSLATE = {
"Titel": "book.title",
"Signatur": "book.signature",
"Nutzer": "user_id",
"Nutzer": "user_name",
}
@@ -28,6 +28,7 @@ class LoanWindow(QtWidgets.QMainWindow, Ui_MainWindow):
# lineedits
self.searchbar.textChanged.connect(self.limitResults)
self.searchbar.returnPressed.connect(self.passThis)
# radio buttons
self.radio_all.clicked.connect(self.filterResults)
@@ -38,16 +39,40 @@ class LoanWindow(QtWidgets.QMainWindow, Ui_MainWindow):
self.loanTable.doubleClicked.connect(self.showUser)
self.show()
def passThis(self):
pass
def insertRow(self, data):
dbg(contents=data)
retdate = (
stringToDate(data.return_date).toString("dd.MM.yyyy")
if data.return_date != ""
else ""
)
self.loanTable.insertRow(0)
self.loanTable.setItem(0, 0, QtWidgets.QTableWidgetItem(data.book.isbn))
self.loanTable.setItem(0, 1, QtWidgets.QTableWidgetItem(data.book.signature))
self.loanTable.setItem(0, 2, QtWidgets.QTableWidgetItem(data.book.title))
self.loanTable.setItem(0, 3, QtWidgets.QTableWidgetItem(str(data.user_id)))
self.loanTable.setItem(0, 4, QtWidgets.QTableWidgetItem(data.loan_date))
self.loanTable.setItem(0, 5, QtWidgets.QTableWidgetItem(data.return_date))
self.loanTable.setItem(0, 6, QtWidgets.QTableWidgetItem(data.returned_date))
self.loanTable.setItem(
0,
3,
QtWidgets.QTableWidgetItem(str(self.db.getUser(data.user_id).username)),
)
self.loanTable.setItem(
0,
4,
QtWidgets.QTableWidgetItem(
stringToDate(data.loan_date).toString("dd.MM.yyyy")
),
)
self.loanTable.setItem(
0,
5,
QtWidgets.QTableWidgetItem(
stringToDate(data.return_date).toString("dd.MM.yyyy")
),
)
self.loanTable.setItem(0, 6, QtWidgets.QTableWidgetItem(retdate))
def loadLoans(self):
loans = self.db.getAllLoans()
@@ -83,9 +108,10 @@ class LoanWindow(QtWidgets.QMainWindow, Ui_MainWindow):
def limitResults(self):
limiter = self.searchbar.text().lower()
limiter = str(limiter)
searchfield = self.searchFields.currentText()
searchfield = TABLETOFIELDTRANSLATE[searchfield]
# dbg(limiter=limiter, search=searchfield)
dbg(limiter=limiter, search=searchfield)
self.loanTable.setRowCount(0)
for loan in self.loans:
fielddata = eval(f"loan.{searchfield}")
@@ -96,9 +122,8 @@ class LoanWindow(QtWidgets.QMainWindow, Ui_MainWindow):
def showUser(self):
row = self.loanTable.currentRow()
user_id = self.loanTable.item(row, 3).text()
user_id = int(user_id)
user = self.db.getUser(user_id)
user_name = self.loanTable.item(row, 3).text()
user = self.db.getUserId(user_name)
self.user = UserUI(user.username, user.id, user.email)
self.user.show()