예제 #1
0
 def __init__(self, parent=None):
     super(mainWindow, self).__init__()
     #初始化opener
     self.opener = getOpener(mainWindow.header)
     self.setupUi(self)
     self.center()
     self.retranslateUi(self)
     self.__initConnectAndOtherOperation__()
     self.hasInitQKThread = False
예제 #2
0
 def __init__(self, password, userName, lessonsToGrab, id):
     super(QKThread, self).__init__()
     #线程编号
     self.lessonsToGrab = lessonsToGrab
     self.id = id
     self.password = password
     self.userName = userName
     #初始化opener
     self.openner = login.getOpener(QKThread.header)
     self.goOn = True
     self.exitCode = 0
     #抢课成功的数目
     self.successNum = 0
예제 #3
0
    def finishQK(self, id):
        if self.QKThreadList[id].exitCode == 1:
            # 处理超时错误
            self.opener = getOpener(mainWindow.header)
            lessons = self.treeWidgetQKInfo.findItems(str("连接服务器超时,重新发送请求"),
                                                      Qt.MatchExactly, 4)
            if len(lessons) > 50:
                self.treeWidgetQKInfo.clear()

            item = QTreeWidgetItem(self.treeWidgetQKInfo)
            item.setText(0, str(id))
            timeArray = time.localtime(time.time())
            postTime = time.strftime('%Y-%m-%d %H:%M:%S', timeArray)
            item.setText(3, postTime)
            item.setText(4, "连接服务器超时,重新发送请求")
            #重新开始异常退出的线程
            if self.goOnQK == True:
                self.restartQKThread(id)
예제 #4
0
 def endLogin(self, userDic):
     if self.loginThread.exitcode == 1:
         #线程异常退出
         timeArray = time.localtime(time.time())
         postTime = time.strftime('%Y-%m-%d %H:%M:%S', timeArray)
         self.labelTip.setText("登录超时,尝试重新登陆中(远程服务器响应过慢)\n处理时间:" + postTime)
         self.isLogin(False)
         #重新开一个opener
         self.opener = getOpener(mainWindow.header)
         #重新登陆
         self.OnbtnLogin()
         return
     #登录完成,处理登录线程发回的数据
     if "userName" not in userDic.keys():
         return
     else:
         if (len(userDic["userName"]) == 0):
             #登录失败
             QMessageBox.warning(self, "error", "用户名或者密码有误!")
             self.isLogin(False)
             return
         # 登录成功
         self.isLoginTag = True
         self.UserName = self.lineEditNumber.text()
         self.UserPassWord = self.lineEditPassword.text()
         self.isLogin(True)
         self.labelName.setText(userDic["userName"][4:])
         self.labelIP.setText("IP地址:" + userDic["ipAddress"])
         self.labelPhone.setText("电话号码:" + userDic["phoneNumber"])
         self.labelLoginTime.setText("登录时间:" + userDic["loginTime"])
         # 判断用户是否选择记住密码
         if self.checkBoxRememberMe.isChecked() == True:
             # 将用户信息写入数据库
             userNumber = self.lineEditNumber.text()
             userPassword = self.lineEditPassword.text()
             try:
                 user.creatUser(userNumber, userPassword)
                 # 更新显示
                 self.getUsers()
             except:
                 print("写入失败!")