class LifeReminder(MySearchWidget): def __init__(self): super(LifeReminder, self).__init__() self.select_conditions = "ProductName" def setupUi(self, Form): Form.setObjectName("Form") Form.resize(1009, 696) font = QtGui.QFont() font.setFamily("微软雅黑 Light") font.setPointSize(10) Form.setFont(font) self.verticalLayout = QtWidgets.QVBoxLayout(Form) self.verticalLayout.setObjectName("verticalLayout") self.label = QtWidgets.QLabel(Form) font = QtGui.QFont() font.setFamily("Agency FB") font.setPointSize(16) self.label.setFont(font) self.label.setAlignment(QtCore.Qt.AlignCenter) self.label.setObjectName("label") self.verticalLayout.addWidget(self.label) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") self.label_4 = QtWidgets.QLabel(Form) self.label_4.setObjectName("label_4") self.pushButton_2 = QtWidgets.QPushButton(Form) self.pushButton_2.setObjectName("pushButton_2") self.horizontalLayout.addWidget(self.pushButton_2) self.label_6 = QtWidgets.QLabel(Form) self.label_6.setObjectName("label_6") self.horizontalLayout.addWidget(self.label_6) spacerItem = QtWidgets.QSpacerItem(188, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) self.label_4 = QtWidgets.QLabel(Form) self.label_4.setObjectName("label_4") self.horizontalLayout.addWidget(self.label_4) self.searchEdit = QtWidgets.QLineEdit(Form) self.searchEdit.setMaximumSize(QtCore.QSize(400, 16777215)) self.searchEdit.setObjectName("lineEdit_2") self.horizontalLayout.addWidget(self.searchEdit) self.pushButton_4 = QtWidgets.QPushButton(Form) self.pushButton_4.setObjectName("pushButton_4") self.horizontalLayout.addWidget(self.pushButton_4) self.verticalLayout.addLayout(self.horizontalLayout) # 中间手动代码部分 表格UI构建 self.db = openDB() self.tableView = QTableView() # hsj 自动义的tableModel slt = "ProductID,ProductName,ProductNO,ReceiverDate,LifeTime,ToLifeDays" headerRow = ["产品编号", "产品名称", "产品代号", "寿命到期时间", "寿命", "据到期提醒"] self.queryModel = MySearchTableModelPIM("T_Product_New", headerRow, slt) self.tableView.setModel(self.queryModel) self.header = CheckBoxHeader() self.tableView.setHorizontalHeader(self.header) self.header.clicked.connect(self.queryModel.headerClick) self.tableView.horizontalHeader().setStretchLastSection(True) self.tableView.horizontalHeader().setSectionResizeMode( QHeaderView.Stretch) self.tableView.setModel(self.queryModel) self.verticalLayout.addWidget(self.tableView) self.verticalLayout.addWidget(self.tableView) self.horizontalLayout_4 = QtWidgets.QHBoxLayout() self.horizontalLayout_4.setObjectName("horizontalLayout_4") spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_4.addItem(spacerItem1) self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.label_2 = QtWidgets.QLabel(Form) self.label_2.setObjectName("label_2") self.horizontalLayout_2.addWidget(self.label_2) self.jumpEdit = QtWidgets.QLineEdit(Form) self.jumpEdit.setMaximumSize(QtCore.QSize(50, 50)) self.jumpEdit.setMaxLength(9999) self.jumpEdit.setAlignment(QtCore.Qt.AlignCenter) self.jumpEdit.setObjectName("jumpEdit") self.horizontalLayout_2.addWidget(self.jumpEdit) self.totalPageLabel = QtWidgets.QLabel(Form) self.totalPageLabel.setObjectName("totalPageLabel") self.horizontalLayout_2.addWidget(self.totalPageLabel) self.jumpButton = QtWidgets.QPushButton(Form) self.jumpButton.setObjectName("jumpButton") self.horizontalLayout_2.addWidget(self.jumpButton) self.previousButton = QtWidgets.QPushButton(Form) self.previousButton.setObjectName("previousButton") self.horizontalLayout_2.addWidget(self.previousButton) self.nextButton = QtWidgets.QPushButton(Form) self.nextButton.setObjectName("nextButton") self.horizontalLayout_2.addWidget(self.nextButton) self.horizontalLayout_4.addLayout(self.horizontalLayout_2) spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_4.addItem(spacerItem2) self.verticalLayout.addLayout(self.horizontalLayout_4) self.retranslateUi(Form) self.bindButton() QtCore.QMetaObject.connectSlotsByName(Form) def retranslateUi(self, Form): _translate = QtCore.QCoreApplication.translate Form.setWindowTitle(_translate("Form", "Form")) self.label_6.setText(_translate("Form", "寿命类型默认为时间")) #self.comboBox.setItemText(0, _translate("Form", "时间")) #self.comboBox.setItemText(1, _translate("Form", "次数")) self.label.setText(_translate("Form", "进入寿命提醒期的产品")) self.pushButton_2.setText(_translate("Form", "按寿命类型为次数查询")) self.label_4.setText(_translate("Form", "产品名称")) self.pushButton_4.setText(_translate("Form", "查询")) self.label_2.setText(_translate("Form", "跳转至第")) self.jumpEdit.setText(_translate("Form", "1")) self.totalPageLabel.setText( _translate("Form", "/ " + str(self.queryModel.totalPage) + " 页")) self.jumpButton.setText(_translate("Form", "跳转")) self.previousButton.setText(_translate("Form", "上一页")) self.nextButton.setText(_translate("Form", "下一页")) def bindButton(self): """ hsj 绑定按钮 :return: """ # 把需要使用的窗体传进去 # 上一页 self.previousButton.clicked.connect(self.preButtonEvent) # 下一页 self.nextButton.clicked.connect(self.nextButtonEvent) # 跳转按钮 self.jumpButton.clicked.connect(self.jumpButtonEvent) # 添加查询 self.pushButton_4.clicked.connect(self.searchButtonEventF) self.pushButton_2.clicked.connect(self.ButtonEventF) def ButtonEventF(self): widget = LifeReminder2() dialog = QDialog() widget.setupUi(dialog) dialog.show() dialog.exec_() def searchButtonEventF(self): """ hsj 输入查询条件查询按钮事件 没有日期的查询 :return: """ content = self.searchEdit.text() if content == "": sql = "WHERE T_Product_New.ProductID = T_Out_Detail.ProductID and LifeType = '时间'" self.queryModel.searchTableF(sql) self.updateUI() else: sql = "WHERE T_Product_New.ProductID = T_Out_Detail.ProductID and LifeType = '时间' and %s = '%s'" % ( self.select_conditions, content) self.queryModel.searchTableF(sql) self.updateUI()
class MaintenanceReminder(MySearchWidget): def __init__(self): super(MaintenanceReminder, self).__init__() self.select_conditions = "ProductID" def setupUi(self, Form): Form.setObjectName("Form") Form.resize(1009, 696) font = QtGui.QFont() font.setFamily("微软雅黑 Light") font.setPointSize(10) Form.setFont(font) self.verticalLayout = QtWidgets.QVBoxLayout(Form) self.verticalLayout.setObjectName("verticalLayout") self.label = QtWidgets.QLabel(Form) font = QtGui.QFont() font.setFamily("Agency FB") font.setPointSize(16) self.label.setFont(font) self.label.setAlignment(QtCore.Qt.AlignCenter) self.label.setObjectName("label") self.verticalLayout.addWidget(self.label) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") self.label_4 = QtWidgets.QLabel(Form) self.label_4.setObjectName("label_4") spacerItem = QtWidgets.QSpacerItem(188, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) self.label_4 = QtWidgets.QLabel(Form) self.label_4.setObjectName("label_4") self.horizontalLayout.addWidget(self.label_4) self.searchEdit = QtWidgets.QLineEdit(Form) self.searchEdit.setMaximumSize(QtCore.QSize(400, 16777215)) self.searchEdit.setObjectName("lineEdit_2") self.horizontalLayout.addWidget(self.searchEdit) self.pushButton_4 = QtWidgets.QPushButton(Form) self.pushButton_4.setObjectName("pushButton_4") self.horizontalLayout.addWidget(self.pushButton_4) self.verticalLayout.addLayout(self.horizontalLayout) # 中间手动代码部分 表格UI构建 self.db = openDB() self.tableView = QTableView() # hsj 自动义的tableModel slt = "ProductNO,ProductName,ProductID,RecentTime,Interva,AlterRule,MaintenanceWayID,MaintenanceWayName" headerRow = [ "产品代号", "产品名称", "产品编号", "维保到期时间", "维保周期", "据到期提醒", "维保方式ID", "维保方式名称" ] self.queryModel = MySearchTableModelPIM("MaintenanceWay", headerRow, slt) self.tableView.setModel(self.queryModel) self.header = CheckBoxHeader() self.tableView.setHorizontalHeader(self.header) self.header.clicked.connect(self.queryModel.headerClick) self.tableView.horizontalHeader().setStretchLastSection(True) self.tableView.horizontalHeader().setSectionResizeMode( QHeaderView.Stretch) self.tableView.setModel(self.queryModel) self.verticalLayout.addWidget(self.tableView) self.verticalLayout.addWidget(self.tableView) self.horizontalLayout_4 = QtWidgets.QHBoxLayout() self.horizontalLayout_4.setObjectName("horizontalLayout_4") spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_4.addItem(spacerItem1) self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.label_2 = QtWidgets.QLabel(Form) self.label_2.setObjectName("label_2") self.horizontalLayout_2.addWidget(self.label_2) self.jumpEdit = QtWidgets.QLineEdit(Form) self.jumpEdit.setMaximumSize(QtCore.QSize(50, 50)) self.jumpEdit.setMaxLength(9999) self.jumpEdit.setAlignment(QtCore.Qt.AlignCenter) self.jumpEdit.setObjectName("jumpEdit") self.horizontalLayout_2.addWidget(self.jumpEdit) self.totalPageLabel = QtWidgets.QLabel(Form) self.totalPageLabel.setObjectName("totalPageLabel") self.horizontalLayout_2.addWidget(self.totalPageLabel) self.jumpButton = QtWidgets.QPushButton(Form) self.jumpButton.setObjectName("jumpButton") self.horizontalLayout_2.addWidget(self.jumpButton) self.previousButton = QtWidgets.QPushButton(Form) self.previousButton.setObjectName("previousButton") self.horizontalLayout_2.addWidget(self.previousButton) self.nextButton = QtWidgets.QPushButton(Form) self.nextButton.setObjectName("nextButton") self.horizontalLayout_2.addWidget(self.nextButton) self.horizontalLayout_4.addLayout(self.horizontalLayout_2) spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_4.addItem(spacerItem2) self.verticalLayout.addLayout(self.horizontalLayout_4) self.retranslateUi(Form) self.bindButton() QtCore.QMetaObject.connectSlotsByName(Form) def retranslateUi(self, Form): _translate = QtCore.QCoreApplication.translate Form.setWindowTitle(_translate("Form", "Form")) self.label.setText(_translate("Form", "进入维修保养提醒期的产品")) self.label_4.setText(_translate("Form", "产品编号")) self.pushButton_4.setText(_translate("Form", "查询")) self.label_2.setText(_translate("Form", "跳转至第")) self.jumpEdit.setText(_translate("Form", "1")) self.totalPageLabel.setText( _translate("Form", "/ " + str(self.queryModel.totalPage) + " 页")) self.jumpButton.setText(_translate("Form", "跳转")) self.previousButton.setText(_translate("Form", "上一页")) self.nextButton.setText(_translate("Form", "下一页")) def bindButton(self): """ hsj 绑定按钮 :return: """ # 把需要使用的窗体传进去 # 上一页 self.previousButton.clicked.connect(self.preButtonEvent) # 下一页 self.nextButton.clicked.connect(self.nextButtonEvent) # 跳转按钮 self.jumpButton.clicked.connect(self.jumpButtonEvent) # 添加查询 self.pushButton_4.clicked.connect(self.searchButtonEventL) def searchButtonEventL(self): """ hsj 输入查询条件查询按钮事件 没有日期的查询 :return: """ content = self.searchEdit.text() if content == "": sql = "" self.queryModel.searchTableF(sql) self.updateUI() else: sql = "WHERE %s = '%s'" % (self.select_conditions, content) self.queryModel.searchTableF(sql) self.updateUI()