checkLogs.py 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. import datetime
  2. from PyQt6.QtCore import Qt
  3. from PyQt6.QtWidgets import QWidget , QMessageBox , QTableWidgetItem
  4. from UI.checkLogs import Ui_checkLogs
  5. from .LogerinTxt import app_logger
  6. from Functions.apiFunction import api_fc
  7. class checkLogs(Ui_checkLogs, QWidget):
  8. def __init__(self, parent=None):
  9. super().__init__(parent)
  10. self.setupUi(self)
  11. self.ipinfo = None
  12. self.endtime = (datetime.date.today() + datetime.timedelta(days=1)).strftime("%Y-%m-%d %H:%M:%S")
  13. self.starttime = (datetime.date.today()).strftime("%Y-%m-%d %H:%M:%S")
  14. self.dateTimeEdit.setDateTime(datetime.datetime.strptime(self.starttime, "%Y-%m-%d %H:%M:%S"))
  15. self.dateTimeEdit_2.setDateTime(datetime.datetime.strptime(self.endtime, "%Y-%m-%d %H:%M:%S"))
  16. self.lineEdit.textChanged.connect(self.changed)
  17. self.peopleLabel = ["序号", "航班编号", "警告信息", "信息状态", "提示信息", "产生时间", "处理人", "处理时间", "变更字段", "显示对象", "提示内容"]
  18. self.tableWidgetFlight.setColumnCount(len(self.peopleLabel))
  19. self.tableWidgetFlight.verticalHeader().setVisible(False)
  20. self.tableWidgetFlight.setHorizontalHeaderLabels(self.peopleLabel)
  21. self.pushButton.clicked.connect(self.btn)
  22. def start(self):
  23. self.show()
  24. try:
  25. # ip = "http://" + str(self.ipinfo) + "/static/checkLogs/" + self.starttime + "/" + self.endtime
  26. # self.res = requests.get(url=ip, timeout=30).json()
  27. self.res = api_fc.request_post('/static/checkLogs',start=self.starttime,end=self.endtime)["data"]
  28. except Exception as e:
  29. # print('登录服务器失败')
  30. QMessageBox.warning(self, "提示", "服务器连接超时,请联系管理员检查服务器!")
  31. app_logger.log_error(e)
  32. self.res = {}
  33. col = len(self.peopleLabel)
  34. diplaylist = self.res
  35. self.tableWidgetFlight.setRowCount(len(diplaylist))
  36. rownum = 0
  37. for row in diplaylist:
  38. for colNum in range(0, col):
  39. if colNum == 0:
  40. self.tableWidgetFlight.setItem(rownum, colNum, QTableWidgetItem(str(rownum)))
  41. self.tableWidgetFlight.item(rownum, colNum).setTextAlignment(Qt.AlignmentFlag.AlignCenter)
  42. else:
  43. self.tableWidgetFlight.setItem(rownum, colNum, QTableWidgetItem(str(row[colNum])))
  44. self.tableWidgetFlight.item(rownum, colNum).setTextAlignment(Qt.AlignmentFlag.AlignLeft)
  45. rownum += 1
  46. self.tableWidgetFlight.resizeColumnsToContents()
  47. def changed(self):
  48. res = []
  49. for i in self.res:
  50. if str(self.lineEdit.text()) in str(i):
  51. res.append(i)
  52. col = len(self.peopleLabel)
  53. diplaylist = res
  54. self.tableWidgetFlight.setRowCount(len(diplaylist))
  55. rownum = 0
  56. for row in diplaylist:
  57. for colNum in range(0, col):
  58. if colNum == 0:
  59. self.tableWidgetFlight.setItem(rownum, colNum, QTableWidgetItem(str(rownum)))
  60. self.tableWidgetFlight.item(rownum, colNum).setTextAlignment(Qt.AlignmentFlag.AlignCenter)
  61. else:
  62. self.tableWidgetFlight.setItem(rownum, colNum, QTableWidgetItem(str(row[colNum])))
  63. self.tableWidgetFlight.item(rownum, colNum).setTextAlignment(Qt.AlignmentFlag.AlignLeft)
  64. rownum += 1
  65. self.tableWidgetFlight.resizeColumnsToContents()
  66. def btn(self):
  67. self.starttime = self.dateTimeEdit.text()
  68. self.endtime = self.dateTimeEdit_2.text()
  69. try:
  70. # ip = "http://" + str(self.ipinfo) + "/static/checkLogs/" + self.starttime + "/" + self.endtime
  71. # self.res = requests.get(url=ip, timeout=30).json()
  72. self.res = api_fc.request_post('/static/checkLogs',start=self.starttime,end=self.endtime)["data"]
  73. except Exception as e :
  74. # print('登录服务器失败')
  75. QMessageBox.warning(self, "提示", "服务器连接超时,请联系管理员检查服务器!")
  76. app_logger.log_error(e)
  77. self.res = {}
  78. col = len(self.peopleLabel)
  79. diplaylist = self.res
  80. self.tableWidgetFlight.setRowCount(len(diplaylist))
  81. rownum = 0
  82. for row in diplaylist:
  83. for colNum in range(0, col):
  84. if colNum == 0:
  85. self.tableWidgetFlight.setItem(rownum, colNum, QTableWidgetItem(str(rownum)))
  86. self.tableWidgetFlight.item(rownum, colNum).setTextAlignment(Qt.AlignmentFlag.AlignCenter)
  87. else:
  88. self.tableWidgetFlight.setItem(rownum, colNum, QTableWidgetItem(str(row[colNum])))
  89. self.tableWidgetFlight.item(rownum, colNum).setTextAlignment(Qt.AlignmentFlag.AlignLeft)
  90. rownum += 1
  91. self.tableWidgetFlight.resizeColumnsToContents()