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?
