|
@@ -54,6 +54,28 @@ class MainWidget(QWidget, Ui_Form):
|
|
|
def __init__(self):
|
|
|
super().__init__()
|
|
|
try:
|
|
|
+ # 新增:防抖定时器
|
|
|
+ self.debounce_timer = QtCore.QTimer(self)
|
|
|
+ self.debounce_timer.setSingleShot(True)
|
|
|
+ self.debounce_timer.timeout.connect(self.debounced_search)
|
|
|
+ self.debounce_delay = 300 # 防抖延迟时间(毫秒)
|
|
|
+ # 新增:防抖定时器
|
|
|
+ self.debounce_timer_phone = QtCore.QTimer(self)
|
|
|
+ self.debounce_timer_phone.setSingleShot(True)
|
|
|
+ self.debounce_timer_phone.timeout.connect(self.debounced_search_phone)
|
|
|
+ # 新增:防抖定时器
|
|
|
+ self.debounce_timer_deal = QtCore.QTimer(self)
|
|
|
+ self.debounce_timer_deal.setSingleShot(True)
|
|
|
+ self.debounce_timer_deal.timeout.connect(self.debounced_search_deal)
|
|
|
+ # 新增:防抖定时器
|
|
|
+ self.debounce_timer_people = QtCore.QTimer(self)
|
|
|
+ self.debounce_timer_people.setSingleShot(True)
|
|
|
+ self.debounce_timer_people.timeout.connect(self.debounced_search_people)
|
|
|
+ # 新增:防抖定时器
|
|
|
+ self.debounce_timer_log= QtCore.QTimer(self)
|
|
|
+ self.debounce_timer_log.setSingleShot(True)
|
|
|
+ self.debounce_timer_log.timeout.connect(self.debounced_search_log)
|
|
|
+
|
|
|
self.displaySelectstr3 = "0"
|
|
|
self.displaySelect_mode = "1"
|
|
|
self.sum = 0
|
|
@@ -234,7 +256,6 @@ class MainWidget(QWidget, Ui_Form):
|
|
|
self.tableWidget_3.setColumnCount(len(phoneLabel))
|
|
|
self.tableWidget_3.verticalHeader().setVisible(False)
|
|
|
self.tableWidget_3.setHorizontalHeaderLabels(phoneLabel)
|
|
|
- self.lineEdit_phonenum.textChanged.connect(self.changeonPhone)
|
|
|
self.tableWidget_3.setContextMenuPolicy(Qt.ContextMenuPolicy.CustomContextMenu)
|
|
|
self.tableWidget_3.customContextMenuRequested.connect(self.generateMenu3)
|
|
|
|
|
@@ -291,28 +312,25 @@ class MainWidget(QWidget, Ui_Form):
|
|
|
|
|
|
self.checkBox_3.stateChanged.connect(self.displaySelect3)
|
|
|
self.checkBox_3.setChecked(False)
|
|
|
-
|
|
|
self.severpost_nomeassge("createWorkloadtablesFromPg", "/%s" % self.selectedtime, "", "", "")
|
|
|
-
|
|
|
self.pushbutton_searchflight.clicked.connect(self.FLIGHTonChangeman)
|
|
|
self.pushButton_searchpeople.clicked.connect(self.searchpeople)
|
|
|
self.pushButton_5.clicked.connect(self.disearchpeople)
|
|
|
self.pushButton_2.clicked.connect(self.call)
|
|
|
self.pushButton_3.clicked.connect(self.calldown)
|
|
|
self.pushButton_4.clicked.connect(self.relogin)
|
|
|
- self.pushButton_searchchange.clicked.connect(self.changeonChange)
|
|
|
- self.pushButton_searchlog.clicked.connect(self.logonChange)
|
|
|
-
|
|
|
+ self.pushButton_searchchange.clicked.connect(self.on_search_text_deal)
|
|
|
+ self.pushButton_searchlog.clicked.connect(self.on_search_text_log)
|
|
|
self.lineEdit_flight.textEdited[str].connect(lambda: self.changebackground())
|
|
|
self.lineEdit_people.textEdited[str].connect(lambda: self.changebackground())
|
|
|
self.lineEdit_change.textEdited[str].connect(lambda: self.changebackground())
|
|
|
self.lineEdit_log.textEdited[str].connect(lambda: self.changebackground())
|
|
|
|
|
|
- self.lineEdit_flight.textChanged.connect(self.FLIGHTonChange)
|
|
|
- self.lineEdit_flight.returnPressed.connect(self.on_enter_pressed)
|
|
|
- self.lineEdit_log.textChanged.connect(self.logonChange)
|
|
|
- self.lineEdit_people.textChanged.connect(self.peolpleonChange)
|
|
|
- self.lineEdit_change.textChanged.connect(self.changeonChange)
|
|
|
+ self.lineEdit_flight.textChanged.connect(self.on_search_text_changed)
|
|
|
+ self.lineEdit_log.textChanged.connect(self.on_search_text_log)
|
|
|
+ self.lineEdit_people.textChanged.connect(self.on_search_text_people)
|
|
|
+ self.lineEdit_change.textChanged.connect(self.on_search_text_deal)
|
|
|
+ self.lineEdit_phonenum.textChanged.connect(self.on_search_text_phone)
|
|
|
|
|
|
self.serchTimer = QTimer()
|
|
|
self.serchTimer.start(3 * 1000)
|
|
@@ -428,28 +446,37 @@ class MainWidget(QWidget, Ui_Form):
|
|
|
except Exception as e:
|
|
|
app_logger.log_error(e)
|
|
|
|
|
|
- def changeonPhone(self):
|
|
|
+ def debounced_search_phone(self):
|
|
|
try:
|
|
|
self.changeonPhone_text = self.lineEdit_phonenum.text()
|
|
|
self.QThreadSortNow("phone")
|
|
|
except Exception as e:
|
|
|
app_logger.log_error(e)
|
|
|
|
|
|
- def FLIGHTonChange(self):
|
|
|
- try:
|
|
|
- if self.lineEdit_flight.text() == "":
|
|
|
- self.FLIGHTonChange_text = self.lineEdit_flight.text()
|
|
|
- self.QThreadSortNow("search")
|
|
|
- except Exception as e:
|
|
|
- app_logger.log_error(e)
|
|
|
- def on_enter_pressed(self):
|
|
|
+ def on_search_text_changed(self):
|
|
|
+ """文本变化时重置定时器"""
|
|
|
+ self.debounce_timer.start(self.debounce_delay)
|
|
|
+ def on_search_text_deal(self):
|
|
|
+ """文本变化时重置定时器"""
|
|
|
+ self.debounce_timer_deal.start(self.debounce_delay)
|
|
|
+ def on_search_text_people(self):
|
|
|
+ """文本变化时重置定时器"""
|
|
|
+ self.debounce_timer_people.start(self.debounce_delay)
|
|
|
+ def on_search_text_log(self):
|
|
|
+ """文本变化时重置定时器"""
|
|
|
+ self.debounce_timer_log.start(self.debounce_delay)
|
|
|
+ def on_search_text_changed(self):
|
|
|
+ """文本变化时重置定时器"""
|
|
|
+ self.debounce_timer.start(self.debounce_delay)
|
|
|
+ def on_search_text_phone(self):
|
|
|
+ """文本变化时重置定时器"""
|
|
|
+ self.debounce_timer_phone.start(self.debounce_delay)
|
|
|
+ def debounced_search(self):
|
|
|
+ """实际触发搜索的方法"""
|
|
|
+ self.FLIGHTonChange_text = self.lineEdit_flight.text()
|
|
|
+ self.QThreadSortNow("search")
|
|
|
+
|
|
|
|
|
|
- try:
|
|
|
- self.FLIGHTonChange_text = self.lineEdit_flight.text()
|
|
|
- # print(self.FLIGHTonChange_text)
|
|
|
- self.QThreadSortNow("search")
|
|
|
- except Exception as e:
|
|
|
- app_logger.log_error(e)
|
|
|
def FLIGHTonChangeman(self):
|
|
|
try:
|
|
|
now=datetime.datetime.now()- datetime.timedelta(seconds=5)
|
|
@@ -463,21 +490,21 @@ class MainWidget(QWidget, Ui_Form):
|
|
|
except Exception as e:
|
|
|
app_logger.log_error(e)
|
|
|
|
|
|
- def peolpleonChange(self):
|
|
|
+ def debounced_search_people(self):
|
|
|
try:
|
|
|
self.peolpleonChange_text = self.lineEdit_people.text()
|
|
|
self.QThreadSortNow("people")
|
|
|
except Exception as e:
|
|
|
app_logger.log_error(e)
|
|
|
|
|
|
- def changeonChange(self):
|
|
|
+ def debounced_search_deal(self):
|
|
|
try:
|
|
|
self.changeonChange_text = self.lineEdit_change.text()
|
|
|
self.QThreadSortNow("change")
|
|
|
except Exception as e:
|
|
|
app_logger.log_error(e)
|
|
|
|
|
|
- def logonChange(self):
|
|
|
+ def debounced_search_log(self):
|
|
|
try:
|
|
|
self.logonChange_text = self.lineEdit_log.text()
|
|
|
self.QThreadSortNow("log")
|
|
@@ -768,16 +795,6 @@ class MainWidget(QWidget, Ui_Form):
|
|
|
except Exception as e:
|
|
|
app_logger.log_error(e)
|
|
|
|
|
|
- '''
|
|
|
- def showchangeFlight(self):
|
|
|
- try:
|
|
|
- self.changeFlight = changeFlight()
|
|
|
- self.changeFlight.ipinfo = self.ipinfo
|
|
|
- self.changeFlight.user = self.user
|
|
|
- self.changeFlight.start()
|
|
|
- except Exception as e:
|
|
|
- app_logger.log_error(e)
|
|
|
- '''
|
|
|
def openFile(self):
|
|
|
try:
|
|
|
fileName, _ = QFileDialog.getOpenFileName(self, '打开文件', '/')
|
|
@@ -2704,10 +2721,16 @@ class MainWidget(QWidget, Ui_Form):
|
|
|
item1 = menu.addAction("工作单确认检查")
|
|
|
if "√" in jjdq:
|
|
|
item2 = menu.addAction("查看接机电签")
|
|
|
- if "√" in hbdq:
|
|
|
+ else:
|
|
|
+ item2 = ""
|
|
|
+ if "√" in hbdq:
|
|
|
item3 = menu.addAction("查看航班电签")
|
|
|
- if "√" in esdq:
|
|
|
+ else:
|
|
|
+ item3 = ""
|
|
|
+ if "√" in esdq:
|
|
|
item4 = menu.addAction("查看送机电签")
|
|
|
+ else:
|
|
|
+ item4 = ""
|
|
|
screenPos = self.tableWidgetFlight.mapToGlobal(pos)
|
|
|
action = menu.exec(screenPos)
|
|
|
|
|
@@ -2750,6 +2773,8 @@ class MainWidget(QWidget, Ui_Form):
|
|
|
response = requests.get("http://" + str(self.ipinfo) + "/static/checkjobcard", params=params).content
|
|
|
open_with_system_viewer(response)
|
|
|
return
|
|
|
+ else:
|
|
|
+ return
|
|
|
|
|
|
else:
|
|
|
QMessageBox.warning(self, "提示", "权限不够,请联系管理员!")
|
|
@@ -2931,21 +2956,6 @@ class MainWidget(QWidget, Ui_Form):
|
|
|
|
|
|
elif 0 < colNum < 11:
|
|
|
self.tableWidgetFlight.setItem(int(row), colNum, QTableWidgetItem(str(tableWidgetDispalydata[row][str(colNum)])))
|
|
|
-
|
|
|
- if colNum == 5 and tableWidgetDispalydata[row][str(colNum)] in ["8182","8185","8186"] and tableWidgetDispalydata[row][str(19)] =="航前":
|
|
|
-
|
|
|
- if "【工具提示】无TPIS,带胎压表" not in tableWidgetDispalydata[row][str(61)] and self.displayMode == "A":
|
|
|
- flightid = tableWidgetDispalydata[row][str(53)]
|
|
|
- # print(flightid)
|
|
|
- flighttype = tableWidgetDispalydata[row]["19"]
|
|
|
- fjxx = "【工具提示】无TPIS,带胎压表;" + str(tableWidgetDispalydata[row][str(61)])
|
|
|
- ip = "http://" + str(self.ipinfo) + "/static/updateEidteItem/" + "%s/" % str(fjxx) + "%s/" % str(flightid) + "%s/" % str(self.displayMode) + "%s/" % str(flighttype) + "%s" % str(self.selectedtime)
|
|
|
- try:
|
|
|
- requests.get(url=ip, timeout=30).json()
|
|
|
- except Exception as e:
|
|
|
- QMessageBox.warning(self, "提示", "服务器连接超时,请联系管理员检查服务器!")
|
|
|
- app_logger.log_error(e)
|
|
|
-
|
|
|
elif colNum == 0:
|
|
|
self.tableWidgetFlight.setItem(int(row), colNum, QTableWidgetItem(str(int(row)+1)))
|
|
|
|