LoginWidget_display.py 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. from PyQt6 import QtCore
  2. from UI.login import Ui_login
  3. from PyQt6.QtWidgets import QWidget, QMessageBox
  4. from .LogerinTxt import app_logger
  5. import requests
  6. class LoginWidget(Ui_login, QWidget):
  7. login_signal = QtCore.pyqtSignal(bool)
  8. login_user = QtCore.pyqtSignal(list)
  9. def __init__(self, parent=None):
  10. super().__init__(parent)
  11. try:
  12. self.setupUi(self)
  13. # print('login widget')
  14. self.pushButton.clicked.connect(self.btn)
  15. # self.setipinfo()
  16. self.ipinfo = None
  17. except Exception as e:
  18. app_logger.log_error(e)
  19. def severpost_meassge(self, postname, postdata, postdata2):
  20. try:
  21. ip = "http://" + str(self.ipinfo) + "/static/" + str(postname) + str(postdata) + str(postdata2)
  22. try:
  23. res = requests.get(url=ip, timeout=30).json()
  24. # print(res)
  25. except Exception as e:
  26. # print('登录服务器失败')
  27. app_logger.log_error('登录服务器失败')
  28. res = ""
  29. QMessageBox.warning(self, "提示", "服务器连接超时,请联系管理员检查服务器!")
  30. app_logger.log_error(e)
  31. return res
  32. except Exception as e:
  33. app_logger.log_error(e)
  34. def btn(self):
  35. try:
  36. username = self.lineEditUser.text()
  37. password = self.lineEditPassword.text()
  38. try:
  39. res = self.severpost_meassge("loginTable", "/%s" % username, "/%s" % password)["返回值"]
  40. # print(res)
  41. except Exception as e:
  42. res = ""
  43. app_logger.log_error(e)
  44. # print(res)
  45. if res != "" and int(res[3]) <= 4:
  46. self.login_signal.emit(True)
  47. self.login_user.emit(res)
  48. else:
  49. self.show_message()
  50. except Exception as e:
  51. app_logger.log_error(e)
  52. def show_message(self):
  53. try:
  54. QMessageBox.warning(self, "警告", "无此用户或密码错误或账号无权限访问办公平台")
  55. except Exception as e:
  56. app_logger.log_error(e)