Hi,
I'm writing project Parking meter in PyQt5,
I tried something like that:
- 1st hour 2 euro
- nexts hours 4 euro
- 24 hours 100 euro
- 48 hours 250 euro
- 1 week 1800 euro
- 1 month (4 weeks) 7500 euro
-Parking 8:00 to 8:01 -price like 1st hour
- Parking 8:00-9:01 -price for 2 hours(1rs+next hour)
- 25h (24h+1st)
-26h(24+next h+1st)
-72h(48h+24h)
-75h(48h+24h+next h+1st)
-8days =(1 week+24h)
etc.
How can i do it?
I'm writing project Parking meter in PyQt5,
I tried something like that:
# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'GUI-Design.ui' # # Created by: PyQt5 UI code generator 5.8.2 # # WARNING! All changes made in this file will be lost! from Checkout import * import sys from PyQt5.QtWidgets import QApplication _translate = QtCore.QCoreApplication.translate class DialogGUI(QtWidgets.QDialog): price = int def __init__(self,parent=None): super(DialogGUI,self).__init__(parent) self.setupUi(self) self.dialogCheckout = CheckoutGUI(self) def setupUi(self, Dialog): self.out=CheckoutGUI() Dialog.setObjectName("Dialog") Dialog.resize(600, 500) self.setWindowIcon(QIcon('parkingicon.png')) font = QtGui.QFont() font.setPointSize(10) font.setBold(False) font.setWeight(50) Dialog.setFont(font) Dialog.setFocusPolicy(QtCore.Qt.NoFocus) self.label = QtWidgets.QLabel(Dialog) self.label.setGeometry(QtCore.QRect(90, 40, 411, 31)) font = QtGui.QFont() font.setPointSize(15) self.label.setFont(font) self.label.setObjectName("label") self.label_2 = QtWidgets.QLabel(Dialog) self.label_2.setGeometry(QtCore.QRect(200, 230, 191, 21)) font = QtGui.QFont() font.setPointSize(13) self.label_2.setFont(font) self.label_2.setObjectName("label_2") self.lineEdit = QtWidgets.QLineEdit(Dialog) self.lineEdit.setGeometry(QtCore.QRect(190, 260, 211, 31)) font = QtGui.QFont() font.setPointSize(11) self.lineEdit.setFont(font) self.lineEdit.setMouseTracking(False) self.lineEdit.setText("") self.lineEdit.setDragEnabled(True) self.lineEdit.setObjectName("lineEdit") self.label_3 = QtWidgets.QLabel(Dialog) self.label_3.setGeometry(QtCore.QRect(210, 150, 181, 21)) font = QtGui.QFont() font.setPointSize(13) self.label_3.setFont(font) self.label_3.setObjectName("label_3") self.dateTimeEdit = QtWidgets.QDateTimeEdit(Dialog) self.dateTimeEdit.setGeometry(QtCore.QRect(190, 180, 211, 31)) font = QtGui.QFont() font.setPointSize(11) self.dateTimeEdit.setFont(font) self.dateTimeEdit.setMaximumDate(QtCore.QDate(7999, 12, 29)) self.dateTimeEdit.setMinimumDateTime(QtCore.QDateTime.currentDateTime()) self.dateTimeEdit.setDateTime(QtCore.QDateTime.currentDateTime())#.addSecs(3600)) self.dateTimeEdit.setCalendarPopup(False) self.dateTimeEdit.setObjectName("dateTimeEdit") self.pushButton = QtWidgets.QPushButton(Dialog) self.pushButton.setGeometry(QtCore.QRect(220, 400, 141, 41)) font = QtGui.QFont() font.setPointSize(10) self.pushButton.setFont(font) self.pushButton.setMouseTracking(False) self.pushButton.setDefault(False) self.pushButton.setObjectName("pushButton") self.pushButton.clicked.connect(self.enter) self.label_4 = QtWidgets.QLabel(Dialog) self.label_4.setGeometry(QtCore.QRect(150, 330, 291, 51)) font = QtGui.QFont() font.setPointSize(13) self.label_4.setFont(font) self.label_4.setObjectName("label_4") self.retranslateUi(Dialog) QtCore.QMetaObject.connectSlotsByName(Dialog) def retranslateUi(self, Dialog): self.price=0 Dialog.setWindowTitle(_translate("Dialog", "Parkomat")) currentTime = QtCore.QDateTime.toString(QtCore.QDateTime.currentDateTime(), format("dd.MM.yyyy hh:mm")) self.label.setText(_translate("Dialog", "Aktualna data:\t\t"+currentTime)) self.label_2.setText(_translate("Dialog", "Wprowadź nr. rejestracji")) self.label_3.setText(_translate("Dialog", "Wybierz date oraz czas")) self.pushButton.setText(_translate("Dialog", "Zapłać !")) self.label_4.setText(_translate("Dialog", "Cena do zapłaty: \t"+str(self.price))+"\t zł") def enter(self): numberPlate = self.lineEdit.text() datePlate = self.dateTimeEdit.text() print(numberPlate) print(datePlate) self.cost() self.dialogCheckout.exec_() def cost(self): if self.dateTimeEdit.dateTime().secsTo(QtCore.QDateTime.currentDateTime()) >= -3600: self.price = 2 self.label_4.setText(_translate("Dialog", "Cena do zapłaty: \t" + str(self.price)) + "\t zł") print(self.dateTimeEdit.dateTime().secsTo(QtCore.QDateTime.currentDateTime())) elif self.dateTimeEdit.dateTime().secsTo(QtCore.QDateTime.currentDateTime()) <-3600: self.price += 4 self.label_4.setText(_translate("Dialog", "Cena do zapłaty: \t" + str(self.price)) + "\t zł") print(self.dateTimeEdit.dateTime().secsTo(QtCore.QDateTime.currentDateTime())) elif self.dateTimeEdit.dateTime().secsTo(QtCore.QDateTime.currentDateTime()) <= -86340 and self.dateTimeEdit.dateTime().secsTo(QtCore.QDateTime.currentDateTime()) >= -84460: self.price = 100 self.label_4.setText(_translate("Dialog", "Cena do zapłaty: \t" + str(self.price)) + "\t zł") print(self.dateTimeEdit.dateTime().secsTo(QtCore.QDateTime.currentDateTime()))I must calculate parking price with this rulers:
- 1st hour 2 euro
- nexts hours 4 euro
- 24 hours 100 euro
- 48 hours 250 euro
- 1 week 1800 euro
- 1 month (4 weeks) 7500 euro
-Parking 8:00 to 8:01 -price like 1st hour
- Parking 8:00-9:01 -price for 2 hours(1rs+next hour)
- 25h (24h+1st)
-26h(24+next h+1st)
-72h(48h+24h)
-75h(48h+24h+next h+1st)
-8days =(1 week+24h)
etc.
How can i do it?