def detailsDia(self): indexes = self.tableView.selectionModel().selectedRows(0) for ind in sorted(indexes): maint = select_maintenance_by_code(ind.data()) from uiview.ui_maintenanceDetails import Ui_maintenanceDetailsDialog self.md = Ui_maintenanceDetailsDialog(maint) self.md.exec_()
class Ui_finishMaintenanceDialog(QDialog): def __init__(self, parent=None): super(Ui_finishMaintenanceDialog, self).__init__() self.setupUi(self) def setupUi(self, finishMaintenanceDialog): self.setWindowFlags(self.windowFlags() & ~QtCore.Qt.WindowCloseButtonHint) finishMaintenanceDialog.setObjectName("finishMaintenanceDialog") finishMaintenanceDialog.resize(832, 508) self.label = QtWidgets.QLabel(finishMaintenanceDialog) self.label.setGeometry(QtCore.QRect(14, 3, 47, 20)) self.label.setObjectName("label") self.loggeduser = QtWidgets.QLabel(finishMaintenanceDialog) self.loggeduser.setGeometry(QtCore.QRect(65, 3, 180, 20)) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.loggeduser.setFont(font) self.loggeduser.setText("") self.loggeduser.setObjectName("loggeduser") self.loggeduser.setText(getLoginDataPKL()['name']) self.line = QtWidgets.QFrame(finishMaintenanceDialog) self.line.setGeometry(QtCore.QRect(3, 28, 820, 3)) self.line.setFrameShape(QtWidgets.QFrame.HLine) self.line.setFrameShadow(QtWidgets.QFrame.Sunken) self.line.setObjectName("line") self.label_3 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_3.setGeometry(QtCore.QRect(14, 31, 150, 20)) self.label_3.setObjectName("label_3") self.tableView = QtWidgets.QTableView(finishMaintenanceDialog) self.tableView.setGeometry(QtCore.QRect(10, 50, 390, 411)) self.tableView.setObjectName("tableView") self.tableView.setEditTriggers( QtWidgets.QAbstractItemView.NoEditTriggers) self.tableView.setTabKeyNavigation(False) self.tableView.setProperty("showDropIndicator", False) self.tableView.setDragDropOverwriteMode(False) self.tableView.setSelectionMode( QtWidgets.QAbstractItemView.SingleSelection) self.tableView.setSelectionBehavior( QtWidgets.QAbstractItemView.SelectRows) self.tableView.horizontalHeader().setCascadingSectionResizes(True) self.tableData = MaintenanceTableModel() self.tableView.setModel(self.tableData) self.tableView.setColumnWidth(0, 100) self.tableView.setColumnWidth(1, 191) self.tableView.setColumnWidth(2, 82) for idx, val in enumerate(getMaintenanceUnderProccessing()): self.tableData.addCustomer( Customers( getMaintenanceUnderProccessing()[idx].customers.name, getMaintenanceUnderProccessing() [idx].customers.mobile_number, None, None, None, None, getMaintenanceUnderProccessing()[idx].m_code, None, None)) self.tableView.clicked.connect(self.Clicked) self.line_2 = QtWidgets.QFrame(finishMaintenanceDialog) self.line_2.setGeometry(QtCore.QRect(410, 35, 3, 470)) self.line_2.setFrameShape(QtWidgets.QFrame.VLine) self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_2.setObjectName("line_2") self.label_4 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_4.setGeometry(QtCore.QRect(420, 83, 100, 13)) self.label_4.setObjectName("label_4") self.label_5 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_5.setGeometry(QtCore.QRect(420, 103, 110, 20)) self.label_5.setObjectName("label_5") self.label_6 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_6.setGeometry(QtCore.QRect(420, 124, 130, 20)) self.label_6.setObjectName("label_6") self.label_7 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_7.setGeometry(QtCore.QRect(421, 34, 90, 20)) self.label_7.setObjectName("label_7") self.label_8 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_8.setGeometry(QtCore.QRect(420, 56, 120, 20)) self.label_8.setObjectName("label_8") self.maintCodelbl = QtWidgets.QLineEdit(finishMaintenanceDialog) self.maintCodelbl.setEnabled(False) self.maintCodelbl.setGeometry(QtCore.QRect(519, 81, 120, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.maintCodelbl.setFont(font) self.maintCodelbl.setStyleSheet("color: rgb(255, 0, 0);") self.maintCodelbl.setObjectName("maintCodelbl") self.maintProductlbl = QtWidgets.QLineEdit(finishMaintenanceDialog) self.maintProductlbl.setEnabled(False) self.maintProductlbl.setGeometry(QtCore.QRect(532, 104, 280, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.maintProductlbl.setFont(font) self.maintProductlbl.setStyleSheet("color: rgb(255, 0, 0);") self.maintProductlbl.setObjectName("maintProductlbl") self.maintDesclbl = QtWidgets.QTextBrowser(finishMaintenanceDialog) self.maintDesclbl.setEnabled(False) self.maintDesclbl.setGeometry(QtCore.QRect(549, 128, 270, 80)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.maintDesclbl.setFont(font) self.maintDesclbl.setStyleSheet("color: rgb(255, 0, 0);") self.maintDesclbl.setLineWidth(1) self.maintDesclbl.setObjectName("maintDesclbl") self.custNamelbl = QtWidgets.QLineEdit(finishMaintenanceDialog) self.custNamelbl.setEnabled(False) self.custNamelbl.setGeometry(QtCore.QRect(508, 35, 280, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.custNamelbl.setFont(font) self.custNamelbl.setStyleSheet("color: rgb(255, 0, 0);") self.custNamelbl.setObjectName("custNamelbl") self.custMobilePhonelbl = QtWidgets.QLineEdit(finishMaintenanceDialog) self.custMobilePhonelbl.setEnabled(False) self.custMobilePhonelbl.setGeometry(QtCore.QRect(543, 58, 240, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.custMobilePhonelbl.setFont(font) self.custMobilePhonelbl.setStyleSheet("color: rgb(255, 0, 0);") self.custMobilePhonelbl.setObjectName("custMobilePhonelbl") self.line_3 = QtWidgets.QFrame(finishMaintenanceDialog) self.line_3.setGeometry(QtCore.QRect(416, 211, 410, 3)) self.line_3.setFrameShape(QtWidgets.QFrame.HLine) self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_3.setObjectName("line_3") self.deletebtn = QtWidgets.QPushButton(finishMaintenanceDialog) self.deletebtn.setGeometry(QtCore.QRect(473, 462, 90, 40)) font = QtGui.QFont() font.setPointSize(12) font.setBold(True) font.setWeight(75) self.deletebtn.setFont(font) self.deletebtn.setStyleSheet("background-color: rgb(255, 0, 0);\n" "color: rgb(255, 255, 255);") self.deletebtn.setObjectName("deletebtn") self.closebtn = QtWidgets.QPushButton(finishMaintenanceDialog) self.closebtn.setGeometry(QtCore.QRect(687, 462, 90, 40)) self.closebtn.setObjectName("closebtn") self.closebtn.clicked.connect(self.close) self.detailsbtn = QtWidgets.QPushButton(finishMaintenanceDialog) self.detailsbtn.setGeometry(QtCore.QRect(430, 413, 90, 40)) self.detailsbtn.setObjectName("detailsbtn") self.detailsbtn.setEnabled(False) self.line_4 = QtWidgets.QFrame(finishMaintenanceDialog) self.line_4.setGeometry(QtCore.QRect(416, 448, 410, 20)) self.line_4.setFrameShape(QtWidgets.QFrame.HLine) self.line_4.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_4.setObjectName("line_4") self.label_2 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_2.setGeometry(QtCore.QRect(421, 301, 100, 13)) self.label_2.setObjectName("label_2") self.label_9 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_9.setGeometry(QtCore.QRect(421, 338, 90, 13)) self.label_9.setObjectName("label_9") self.label_10 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_10.setGeometry(QtCore.QRect(421, 380, 100, 13)) self.label_10.setObjectName("label_10") self.label_11 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_11.setGeometry(QtCore.QRect(638, 297, 60, 20)) self.label_11.setAlignment(QtCore.Qt.AlignCenter) self.label_11.setObjectName("label_11") self.rowCostlbl = QtWidgets.QLineEdit(finishMaintenanceDialog) self.rowCostlbl.setEnabled(False) self.rowCostlbl.setGeometry(QtCore.QRect(520, 292, 100, 30)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setItalic(True) font.setWeight(75) self.rowCostlbl.setFont(font) self.rowCostlbl.setStyleSheet("color: rgb(255, 0, 0);") self.rowCostlbl.setObjectName("rowCostlbl") self.spCostlbl = QtWidgets.QLineEdit(finishMaintenanceDialog) self.spCostlbl.setEnabled(False) self.spCostlbl.setGeometry(QtCore.QRect(520, 330, 100, 30)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setItalic(True) font.setWeight(75) self.spCostlbl.setFont(font) self.spCostlbl.setStyleSheet("color: rgb(255, 0, 0);") self.spCostlbl.setObjectName("spCostlbl") self.matTotalCostlbl = QtWidgets.QLineEdit(finishMaintenanceDialog) self.matTotalCostlbl.setEnabled(False) self.matTotalCostlbl.setGeometry(QtCore.QRect(520, 372, 100, 30)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setItalic(True) font.setWeight(75) self.matTotalCostlbl.setFont(font) self.matTotalCostlbl.setStyleSheet("color: rgb(255, 0, 0);") self.matTotalCostlbl.setObjectName("matTotalCostlbl") self.line_5 = QtWidgets.QFrame(finishMaintenanceDialog) self.line_5.setGeometry(QtCore.QRect(629, 293, 3, 110)) self.line_5.setFrameShape(QtWidgets.QFrame.VLine) self.line_5.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_5.setObjectName("line_5") self.label_12 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_12.setGeometry(QtCore.QRect(635, 377, 60, 20)) self.label_12.setAlignment(QtCore.Qt.AlignCenter) self.label_12.setObjectName("label_12") self.laborled = QtWidgets.QLineEdit(finishMaintenanceDialog) self.laborled.setEnabled(False) self.laborled.setGeometry(QtCore.QRect(700, 294, 100, 30)) self.laborled.setObjectName("laborled") self.line_6 = QtWidgets.QFrame(finishMaintenanceDialog) self.line_6.setGeometry(QtCore.QRect(418, 408, 410, 3)) self.line_6.setFrameShape(QtWidgets.QFrame.HLine) self.line_6.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_6.setObjectName("line_6") self.line_7 = QtWidgets.QFrame(finishMaintenanceDialog) self.line_7.setGeometry(QtCore.QRect(420, 365, 200, 3)) self.line_7.setFrameShape(QtWidgets.QFrame.HLine) self.line_7.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_7.setObjectName("line_7") self.totalCostlbl = QtWidgets.QLineEdit(finishMaintenanceDialog) self.totalCostlbl.setEnabled(False) self.totalCostlbl.setGeometry(QtCore.QRect(702, 372, 100, 30)) font = QtGui.QFont() font.setPointSize(10) font.setBold(True) font.setItalic(True) font.setWeight(75) self.totalCostlbl.setFont(font) self.totalCostlbl.setStyleSheet("color: rgb(255, 0, 0);") self.totalCostlbl.setObjectName("totalCostlbl") self.line_8 = QtWidgets.QFrame(finishMaintenanceDialog) self.line_8.setGeometry(QtCore.QRect(630, 462, 3, 40)) self.line_8.setFrameShape(QtWidgets.QFrame.VLine) self.line_8.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_8.setObjectName("line_8") self.line_9 = QtWidgets.QFrame(finishMaintenanceDialog) self.line_9.setGeometry(QtCore.QRect(635, 365, 190, 3)) self.line_9.setFrameShape(QtWidgets.QFrame.HLine) self.line_9.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_9.setObjectName("line_9") self.finishbtn = QtWidgets.QPushButton(finishMaintenanceDialog) self.finishbtn.setGeometry(QtCore.QRect(670, 413, 130, 40)) font = QtGui.QFont() font.setPointSize(11) font.setBold(True) font.setWeight(75) self.finishbtn.setFont(font) self.finishbtn.setStyleSheet("color: rgb(255, 255, 255);\n" "background-color: rgb(0, 203, 0);") self.finishbtn.setObjectName("finishbtn") self.line_10 = QtWidgets.QFrame(finishMaintenanceDialog) self.line_10.setGeometry(QtCore.QRect(415, 287, 410, 3)) self.line_10.setFrameShape(QtWidgets.QFrame.HLine) self.line_10.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_10.setObjectName("line_10") self.label_13 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_13.setGeometry(QtCore.QRect(422, 219, 80, 13)) self.label_13.setObjectName("label_13") self.label_14 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_14.setGeometry(QtCore.QRect(423, 243, 80, 13)) self.label_14.setObjectName("label_14") self.label_15 = QtWidgets.QLabel(finishMaintenanceDialog) self.label_15.setGeometry(QtCore.QRect(423, 265, 80, 13)) self.label_15.setObjectName("label_15") self.createdlbl = QtWidgets.QLineEdit(finishMaintenanceDialog) self.createdlbl.setEnabled(False) self.createdlbl.setGeometry(QtCore.QRect(498, 216, 180, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.createdlbl.setFont(font) self.createdlbl.setStyleSheet("color: rgb(255, 0, 0);") self.createdlbl.setObjectName("createdlbl") self.startlbl = QtWidgets.QLineEdit(finishMaintenanceDialog) self.startlbl.setEnabled(False) self.startlbl.setGeometry(QtCore.QRect(483, 240, 191, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.startlbl.setFont(font) self.startlbl.setStyleSheet("color: rgb(255, 0, 0);") self.startlbl.setObjectName("startlbl") self.finishlbl = QtWidgets.QLineEdit(finishMaintenanceDialog) self.finishlbl.setEnabled(False) self.finishlbl.setGeometry(QtCore.QRect(486, 263, 190, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.finishlbl.setFont(font) self.finishlbl.setStyleSheet("color: rgb(255, 0, 0);") self.finishlbl.setObjectName("finishlbl") self.finishlbl.setVisible(False) self.label_15.setVisible(False) self.finishbtn.setEnabled(False) self.finishbtn.clicked.connect(self.do_finish) self.deletebtn.clicked.connect(self.do_delete) self.detailsbtn.clicked.connect(self.detailsDia) self.retranslateUi(finishMaintenanceDialog) QtCore.QMetaObject.connectSlotsByName(finishMaintenanceDialog) role = getLoginDataPKL()['role'] if int(role) == 2 or int(role) == 3: self.label_11.setVisible(False) self.label_12.setVisible(False) self.laborled.setVisible(False) self.totalCostlbl.setVisible(False) self.deletebtn.setEnabled(False) def retranslateUi(self, finishMaintenanceDialog): _translate = QtCore.QCoreApplication.translate finishMaintenanceDialog.setWindowTitle( _translate("finishMaintenanceDialog", "Finish Maintenance")) self.label.setText(_translate("finishMaintenanceDialog", "Welcome,")) self.label_3.setText( _translate("finishMaintenanceDialog", "Select Maintenance from table :")) self.label_4.setText( _translate("finishMaintenanceDialog", "Maintenance Code :")) self.label_5.setText( _translate("finishMaintenanceDialog", "Maintenance Product :")) self.label_6.setText( _translate("finishMaintenanceDialog", "Maintenance Descreption :")) self.label_7.setText( _translate("finishMaintenanceDialog", "Customer Name :")) self.label_8.setText( _translate("finishMaintenanceDialog", "Customer Mobile Phone :")) self.deletebtn.setText(_translate("finishMaintenanceDialog", "Delete")) self.closebtn.setText(_translate("finishMaintenanceDialog", "Close")) self.label_2.setText( _translate("finishMaintenanceDialog", "Raw Material Cost :")) self.label_9.setText( _translate("finishMaintenanceDialog", "Spare Parts Cost :")) self.label_10.setText( _translate("finishMaintenanceDialog", "Total Material Cost :")) self.label_11.setText( _translate("finishMaintenanceDialog", "Labor Cost :")) self.label_12.setText( _translate("finishMaintenanceDialog", "Total Cost :")) self.finishbtn.setText(_translate("finishMaintenanceDialog", "Finish")) self.label_13.setText( _translate("finishMaintenanceDialog", "Created Date :")) self.label_14.setText( _translate("finishMaintenanceDialog", "Start Date :")) self.label_15.setText( _translate("finishMaintenanceDialog", "Finish Date :")) self.detailsbtn.setText( _translate("finishMaintenanceDialog", "Details")) def Clicked(self, item): indexes = self.tableView.selectionModel().selectedRows(0) for ind in sorted(indexes): maint = select_maintenance_by_code(ind.data()) self.custNamelbl.setText(maint.customers.name) self.custMobilePhonelbl.setText(maint.customers.mobile_number) self.maintCodelbl.setText(maint.m_code) self.maintProductlbl.setText(maint.product_of_maintenance) self.maintDesclbl.setText(maint.maintenance_description) self.createdlbl.setText(str(maint.created_at)) self.laborled.setText(str(maint.cost_of_labor)) self.startlbl.setText(str(maint.start_date)) bom = select_bill_of_material_for_maintenance(maint.id) self.rowCostlbl.setText(str(bom.cost_of_raw_material)) self.spCostlbl.setText(str(bom.cost_of_spare_parts)) self.matTotalCostlbl.setText(str(maint.cost_of_bill_of_material)) self.totalCostlbl.setText( str(maint.cost_of_bill_of_material + maint.cost_of_labor)) self.finishbtn.setEnabled(True) self.detailsbtn.setEnabled(True) def do_finish(self): datetimestr = datetime.now() timestampstr = datetimestr.strftime('%Y-%m-%d %H:%M:%S') indexes = self.tableView.selectionModel().selectedRows(0) for ind in sorted(indexes): maint = select_maintenance_by_code(ind.data()) update_maintenance_finish(maint.id, timestampstr) self.tableData = MaintenanceTableModel() self.tableView.setModel(self.tableData) for idx, val in enumerate(getMaintenanceUnderProccessing()): self.tableData.addCustomer( Customers( getMaintenanceUnderProccessing()[idx].customers.name, getMaintenanceUnderProccessing() [idx].customers.mobile_number, None, None, None, None, getMaintenanceUnderProccessing()[idx].m_code, None, None)) def do_delete(self): indexes = self.tableView.selectionModel().selectedRows(0) for ind in sorted(indexes): maint = select_maintenance_by_code(ind.data()) reply = QMessageBox.question( QMessageBox(), "OOP'S", 'Are you sure to delete ?\n Maintenance \n Code : {}'.format( maint.m_code) + '\n Customer Name : {}'.format(maint.customers.name) + '\n This Action Cant Undo', QMessageBox.Yes | QMessageBox.No) if reply == QMessageBox.Yes: delete_maintenance(maint.id) self.tableData = MaintenanceTableModel() self.tableView.setModel(self.tableData) for idx, val in enumerate(getMaintenanceUnderProccessing()): self.tableData.addCustomer( Customers( getMaintenanceUnderProccessing()[idx].customers.name, getMaintenanceUnderProccessing() [idx].customers.mobile_number, None, None, None, None, getMaintenanceUnderProccessing()[idx].m_code, None, None)) def detailsDia(self): indexes = self.tableView.selectionModel().selectedRows(0) for ind in sorted(indexes): maint = select_maintenance_by_code(ind.data()) from uiview.ui_maintenanceDetails import Ui_maintenanceDetailsDialog self.md = Ui_maintenanceDetailsDialog(maint) self.md.exec_()
class Ui_historyDialog(QDialog): def __init__(self, customer, parent=None): super(Ui_historyDialog, self).__init__() self.customer = customer self.setupUi(self) def setupUi(self, historyDialog): self.setWindowFlags(self.windowFlags() & ~QtCore.Qt.WindowCloseButtonHint) historyDialog.setObjectName("historyDialog") historyDialog.resize(348, 569) self.label = QtWidgets.QLabel(historyDialog) self.label.setGeometry(QtCore.QRect(10, 10, 90, 13)) self.label.setObjectName("label") self.label_2 = QtWidgets.QLabel(historyDialog) self.label_2.setGeometry(QtCore.QRect(9, 37, 130, 13)) self.label_2.setObjectName("label_2") self.label_3 = QtWidgets.QLabel(historyDialog) self.label_3.setGeometry(QtCore.QRect(11, 63, 90, 13)) self.label_3.setObjectName("label_3") self.label_4 = QtWidgets.QLabel(historyDialog) self.label_4.setGeometry(QtCore.QRect(167, 63, 80, 13)) self.label_4.setObjectName("label_4") self.customerNamelbl = QtWidgets.QLineEdit(historyDialog) self.customerNamelbl.setEnabled(False) self.customerNamelbl.setGeometry(QtCore.QRect(95, 8, 241, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.customerNamelbl.setFont(font) self.customerNamelbl.setStyleSheet("color: rgb(255, 0, 0);") self.customerNamelbl.setObjectName("customerNamelbl") self.customerAgelbl = QtWidgets.QLineEdit(historyDialog) self.customerAgelbl.setEnabled(False) self.customerAgelbl.setGeometry(QtCore.QRect(88, 60, 70, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.customerAgelbl.setFont(font) self.customerAgelbl.setStyleSheet("color: rgb(255, 0, 0);") self.customerAgelbl.setObjectName("customerAgelbl") self.CustomerCitylbl = QtWidgets.QLineEdit(historyDialog) self.CustomerCitylbl.setEnabled(False) self.CustomerCitylbl.setGeometry(QtCore.QRect(244, 60, 90, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.CustomerCitylbl.setFont(font) self.CustomerCitylbl.setStyleSheet("color: rgb(255, 0, 0);") self.CustomerCitylbl.setObjectName("CustomerCitylbl") self.customerMobilelbl = QtWidgets.QLineEdit(historyDialog) self.customerMobilelbl.setEnabled(False) self.customerMobilelbl.setGeometry(QtCore.QRect(135, 34, 200, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.customerMobilelbl.setFont(font) self.customerMobilelbl.setStyleSheet("color: rgb(255, 0, 0);") self.customerMobilelbl.setObjectName("customerMobilelbl") self.line = QtWidgets.QFrame(historyDialog) self.line.setGeometry(QtCore.QRect(3, 87, 340, 3)) self.line.setFrameShape(QtWidgets.QFrame.HLine) self.line.setFrameShadow(QtWidgets.QFrame.Sunken) self.line.setObjectName("line") self.tableView = QtWidgets.QTableView(historyDialog) self.tableView.setGeometry(QtCore.QRect(8, 109, 330, 311)) self.tableView.setObjectName("tableView") self.tableView.setEditTriggers( QtWidgets.QAbstractItemView.NoEditTriggers) self.tableView.setTabKeyNavigation(False) self.tableView.setProperty("showDropIndicator", False) self.tableView.setDragDropOverwriteMode(False) self.tableView.setSelectionMode( QtWidgets.QAbstractItemView.SingleSelection) self.tableView.setSelectionBehavior( QtWidgets.QAbstractItemView.SelectRows) self.tableView.horizontalHeader().setCascadingSectionResizes(True) self.label_5 = QtWidgets.QLabel(historyDialog) self.label_5.setGeometry(QtCore.QRect(12, 92, 140, 13)) self.label_5.setObjectName("label_5") self.line_2 = QtWidgets.QFrame(historyDialog) self.line_2.setGeometry(QtCore.QRect(4, 426, 340, 3)) self.line_2.setFrameShape(QtWidgets.QFrame.HLine) self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_2.setObjectName("line_2") self.detailsbtn = QtWidgets.QPushButton(historyDialog) self.detailsbtn.setGeometry(QtCore.QRect(20, 524, 75, 40)) self.detailsbtn.setObjectName("detailsbtn") self.detailsbtn.setEnabled(False) self.closebtn = QtWidgets.QPushButton(historyDialog) self.closebtn.setGeometry(QtCore.QRect(250, 524, 75, 40)) self.closebtn.setObjectName("closebtn") self.line_3 = QtWidgets.QFrame(historyDialog) self.line_3.setGeometry(QtCore.QRect(3, 520, 340, 3)) self.line_3.setFrameShape(QtWidgets.QFrame.HLine) self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_3.setObjectName("line_3") self.label_6 = QtWidgets.QLabel(historyDialog) self.label_6.setGeometry(QtCore.QRect(6, 433, 100, 13)) self.label_6.setObjectName("label_6") self.mainteCode = QtWidgets.QLineEdit(historyDialog) self.mainteCode.setEnabled(False) self.mainteCode.setGeometry(QtCore.QRect(105, 431, 120, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.mainteCode.setFont(font) self.mainteCode.setStyleSheet("color: rgb(255, 0, 0);") self.mainteCode.setObjectName("mainteCode") self.label_7 = QtWidgets.QLabel(historyDialog) self.label_7.setGeometry(QtCore.QRect(6, 459, 110, 13)) self.label_7.setObjectName("label_7") self.mainteProductlbl = QtWidgets.QLineEdit(historyDialog) self.mainteProductlbl.setEnabled(False) self.mainteProductlbl.setGeometry(QtCore.QRect(116, 457, 220, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.mainteProductlbl.setFont(font) self.mainteProductlbl.setStyleSheet("color: rgb(255, 0, 0);") self.mainteProductlbl.setObjectName("mainteProductlbl") self.mainteStatuslbl = QtWidgets.QLineEdit(historyDialog) self.mainteStatuslbl.setEnabled(False) self.mainteStatuslbl.setGeometry(QtCore.QRect(109, 483, 230, 20)) font = QtGui.QFont() font.setPointSize(9) font.setBold(True) font.setWeight(75) self.mainteStatuslbl.setFont(font) self.mainteStatuslbl.setStyleSheet("color: rgb(255, 0, 0);") self.mainteStatuslbl.setObjectName("mainteStatuslbl") self.label_8 = QtWidgets.QLabel(historyDialog) self.label_8.setGeometry(QtCore.QRect(6, 485, 110, 13)) self.label_8.setObjectName("label_8") self.retranslateUi(historyDialog) QtCore.QMetaObject.connectSlotsByName(historyDialog) # self.customer = select_customer_by_id(21) self.customerNamelbl.setText(self.customer.name) self.customerMobilelbl.setText(self.customer.mobile_number) self.customerAgelbl.setText(str(self.customer.age)) city = select_city_by_id(self.customer.city_id) self.CustomerCitylbl.setText(city.name) self.tableData = CustomerMaintenanceTableModel() self.tableView.setModel(self.tableData) for idx, val in enumerate(getMaintenanceForCustomer(self.customer)): self.tableData.addMaintenance( Maintenance( getMaintenanceForCustomer(self.customer)[idx].m_code, None, None, None, None, None, None, None, getMaintenanceForCustomer( self.customer)[idx].product_of_maintenance, None, None, None, None)) self.tableView.setColumnWidth(0, 102) self.tableView.setColumnWidth(1, 210) self.tableView.clicked.connect(self.Clicked) self.detailsbtn.clicked.connect(self.detailsDia) self.closebtn.clicked.connect(self.close) def retranslateUi(self, historyDialog): _translate = QtCore.QCoreApplication.translate historyDialog.setWindowTitle( _translate("historyDialog", "Customer History")) self.label.setText(_translate("historyDialog", "Customer Name :")) self.label_2.setText( _translate("historyDialog", "Customer Mobile Number :")) self.label_3.setText(_translate("historyDialog", "Customer Age :")) self.label_4.setText(_translate("historyDialog", "Customer City :")) self.label_5.setText( _translate("historyDialog", "Maintenance of Customer :")) self.detailsbtn.setText(_translate("historyDialog", "Detalis")) self.closebtn.setText(_translate("historyDialog", "Close")) self.label_6.setText(_translate("historyDialog", "Maintenance Code :")) self.label_7.setText( _translate("historyDialog", "Maintenance Product :")) self.label_8.setText( _translate("historyDialog", "Maintenance Status :")) def Clicked(self, item): indexes = self.tableView.selectionModel().selectedRows(0) for ind in sorted(indexes): maint = select_maintenance_by_code(ind.data()) self.mainteCode.setText(maint.m_code) self.mainteProductlbl.setText(maint.product_of_maintenance) self.mainteStatuslbl.setText(str(getMaintenanceStatus(maint))) self.detailsbtn.setEnabled(True) def detailsDia(self): indexes = self.tableView.selectionModel().selectedRows(0) for ind in sorted(indexes): maint = select_maintenance_by_code(ind.data()) from uiview.ui_maintenanceDetails import Ui_maintenanceDetailsDialog self.md = Ui_maintenanceDetailsDialog(maint) self.md.exec_()