def eliminaDatosGrupo(self): psd_auth = self.password_input_gru.text() psd_bdd = getCredencialesAdmin() current_gru = self.grupos_box_gru.currentText() # Valiamos que el input no esta vacio if not psd_auth == "": if psd_bdd != RespBDD.ERROR_GET and psd_bdd != RespBDD.ERROR_CON: # Validamos credenciales psd = PasswordEncrypt() if psd.validatepassword(psd_auth, psd_bdd[1]): # Eliminanos grupo o alumnos del grupo grupo = ModelGrupos(current_gru) if self.radio_grupo.isChecked(): # Eliminamos grupo completo response = eliminaDatosGrupoManager(grupo, False) if response == RespBDD.SUCCESS: self.countGrupos() self.getGrupos(self.grupos_box_gru) self.getGrupos(self.grupos_box) self.password_input_gru.clear() QMessageBox.information( self, 'Estado de la petición', '¡Grupo eliminado exitosamente!', QMessageBox.Ok) else: QMessageBox.information( self, 'Estado de la petición', '¡Error al eliminar el grupo!', QMessageBox.Ok) # Eliminamos sólo alumnos del grupo else: response = eliminaDatosGrupoManager(grupo, True) if response == RespBDD.SUCCESS: self.getGrupos(self.grupos_box) self.countAlumnos() self.filtraGrupos() QMessageBox.information( self, 'Estado de la petición', '¡Alumnos dados de baja exitosamente!', QMessageBox.Ok) else: QMessageBox.information( self, 'Estado de la petición', '¡Error al dar de baja alumnos!', QMessageBox.Ok) else: QMessageBox.warning(self, 'Estado de la petición', 'La contraseña no es válida', QMessageBox.Ok) else: QMessageBox.critical( self, 'Estado de la petición', 'Hubo un error al tratar de validar las credenciales', QMessageBox.Ok) else: self.alert_auth.setStyleSheet('color: rgb(164,0,0);') self.alert_auth.setText("¡Es necesario autorizar la modificación!")
def actualizaDatosAdmin(self): if not self.__enableInputs: if self.nombre_admin_input.text( ) != "" and self.appa_admin_input.text( ) != "" and self.apma_admin_input.text( ) != "" and self.username_input.text( ) != "" and self.correo_input.text() != "": # Vaerificamos campos vacios de autorización if self.password_input_admin.text() != "": psd_out = self.password_input_admin.text() psd_bdd = getCredencialesAdmin() if psd_bdd != RespBDD.ERROR_CON and psd_bdd != RespBDD.ERROR_GET: psd_valid = PasswordEncrypt() if psd_valid.validatepassword(psd_out, psd_bdd[1]): # Creaos instancia de profesor profesor = ModelProfesor( self.nombre_admin_input.text(), self.appa_admin_input.text(), self.apma_admin_input.text(), self.username_input.text(), self.correo_input.text()) # Capturamos la respuesta de actualización response = actualizaDatosAdminManager(profesor) if response == RespBDD.SUCCESS: QMessageBox.information( self, 'Estado de la petición', '¡Datos actualizados exitosamente!', QMessageBox.Ok) self.cargaDatosAdmin() self.__enableInputs = False self.setEnableInputs() self.password_input_admin.clear() self.alert_auth_perfil.setText("") else: QMessageBox.critical( self, 'Estado de la petición', '¡Error al actualizar datos!', QMessageBox.Ok) else: QMessageBox.critical(self, 'Estado de la petición', 'La contraseña no es válida', QMessageBox.Ok) else: QMessageBox.critical( self, 'Estado de la petición', 'Hubo un error al tratar de validar las credenciales', QMessageBox.Ok) else: self.alert_auth_perfil.setStyleSheet( 'color: rgb(164,0,0);') self.alert_auth_perfil.setText( "¡Es necesario autorizar la modificación!") else: self.alert_auth_perfil.setStyleSheet('color: rgb(164,0,0);') self.alert_auth_perfil.setText("¡Hay campos vacios!")
def actualizaPassword(self): new_psd = self.new_psd_admin.text() if new_psd != "": if self.password_input_admin.text() != "": psd_out = self.password_input_admin.text() psd_bdd = getCredencialesAdmin() if psd_bdd != RespBDD.ERROR_CON and psd_bdd != RespBDD.ERROR_GET: psd_valid = PasswordEncrypt() if psd_valid.validatepassword(psd_out, psd_bdd[1]): # Capturamos la respuesta de actualización new_psd = psd_valid.encrypt(new_psd) response = actualizaPasswordAdminManager(new_psd) if response == RespBDD.SUCCESS: QMessageBox.information( self, 'Estado de la petición', '¡Datos actualizados exitosamente!', QMessageBox.Ok) self.cargaDatosAdmin() self.__enableInputs = False self.setEnableInputs() self.password_input_admin.clear() self.alert_auth_perfil.setText("") self.new_psd_admin.clear() else: QMessageBox.critical( self, 'Estado de la petición', '¡Error al actualizar datos!', QMessageBox.Ok) else: QMessageBox.critical(self, 'Estado de la petición', 'La contraseña no es válida', QMessageBox.Ok) else: QMessageBox.critical( self, 'Estado de la petición', 'Hubo un error al tratar de validar las credenciales', QMessageBox.Ok) else: self.alert_auth_perfil.setStyleSheet('color: rgb(164,0,0);') self.alert_auth_perfil.setText( "¡Es necesario autorizar la modificación!") else: self.alert_auth_perfil.setStyleSheet('color: rgb(164,0,0);') self.alert_auth_perfil.setText( "¡No ha colocado el nuevo password!")
def cambiaNombreGrupo(self): new_nombre = self.nuevo_nombre.text() psd_auth = self.password_input_gru.text() old_nombre = self.grupos_box_gru.currentText() if new_nombre == "": self.alert_auth.setStyleSheet('color: rgb(164,0,0);') self.alert_auth.setText("¡No ha colocado el nuevo nombre!") elif psd_auth == "": self.alert_auth.setStyleSheet('color: rgb(164,0,0);') self.alert_auth.setText("¡Es necesario autorizar la modificación!") else: # traemos datos del adminstrador psd_bdd = getCredencialesAdmin() psd = PasswordEncrypt() # Validamos el exito de la petcion de los datos del admin if psd_bdd != RespBDD.ERROR_GET and psd_bdd != RespBDD.ERROR_CON: # Validamos credenciales if psd.validatepassword(psd_auth, psd_bdd[1]): response = actualizaGrupoManager(ModelGrupos(old_nombre), new_nombre) if response == RespBDD.SUCCESS: self.getGrupos(self.grupos_box) self.getGrupos(self.grupos_box_gru) self.filtraGrupos() self.password_input_gru.clear() QMessageBox.information( self, 'Estado de la petición', '¡Grupo actualizado exitosamente!', QMessageBox.Ok) else: QMessageBox.critical(self, 'Estado de la petición', '¡Error al actualizar datos!', QMessageBox.Ok) else: QMessageBox.warning(self, 'Estado de la petición', 'La contraseña no es válida', QMessageBox.Ok) else: QMessageBox.critical( self, 'Estado de la petición', 'Hubo un error al tratar de validar las credenciales', QMessageBox.Ok)
def validaCredenciales(self): # Credenciaes del front user = self.user_input.text() password = self.password_input.text() # hasheamos el psd del front psd = PasswordEncrypt() password = psd.encrypt(password) self.label_alert.setStyleSheet('color: rgb(164,0,0);') self.label_alert.setStyleSheet('background-color:none;') if (user == "" or password == ""): self.label_alert.setText("¡Hay campos vacios!") else: # Credenciales de la BDD credenciales = getCredencialesAdmin() self.__user = credenciales[0] self.__password = credenciales[1] if (user == self.__user) and (password == self.__password): # Se da acceso a la ventana del panel de control _panelcontrol = PanelControlWindow(self) _panelcontrol.show() self.hide() #Ocultamos la ventana principal else: self.label_alert.setText("¡Credenciales incorrectas!")
def eliminaAlumno(self): # Validamos campos vacios if not (self.boleta_input.text() == "" and self.password_input.text() == ""): # Traemos los datos del admin datosAdmin = getCredencialesAdmin() if not datosAdmin == RespBDD.ERROR_GET: psd = PasswordEncrypt() # Validamos password if psd.validatepassword(self.password_input.text(), datosAdmin[1]): # Relizamos la petcion de eliminacion al manager response = eliminaAlumnobyBoleta(self.boleta_input.text()) # Verifiamos la respuetsa de psdeliminación de los datos if not response == RespBDD.ERROR_ON_DELETE: QMessageBox.information( self, 'Estado de la petición', 'Alumno eliminado exitosamente', QMessageBox.Ok) self.boleta_input.clear() self.password_input.clear() self.countAlumnos() self.filtraGrupos() else: QMessageBox.critical( self, 'Estado de la petición', 'No se pudo borrar la infromacion', QMessageBox.Ok) else: self.alert_alumno.setStyleSheet('color: rgb(164,0,0);') self.alert_alumno.setText("El password no es correcto") else: QMessageBox.warning(self, 'Estado de la petición', 'Error al comporbar credenciales', QMessageBox.Ok) else: self.alert_alumno.setStyleSheet('color: rgb(164,0,0);') self.alert_alumno.setText("¡Hay campos vacios!")
def setUserName(self): username = getCredencialesAdmin() self.label_username.setText(str(username[0]))
def getCorreoAdmin(self): data = getCredencialesAdmin() if data != RespBDD.ERROR_GET and data != RespBDD.ERROR_CON: return {'success':True, 'msg':data[2]} else: return {'success':False, 'msg':'Error al traer email'}