Esempio n. 1
0
File: first.py Progetto: eumsys/eum
 def leerBotones(self):
     re.setReset()
     botones.configurarPinesGPIO()
     botones.configurarPinesGPIOBobina()
     global boleto_previo
     print("------Preguntar Botones --------")
     b1, b2 = botones.leerBotonesEntrada()
     f1 = botones.validarBotones(b1, b2)
     f2 = f3 = f4 = f5 = False
     f6 = botones.leerBobina2Subida(
     )  #PREGUNTAR POR LA BOBINA EN EL PIN CORRECTO
     if boleto_previo == True:  #IMprimir cabecera()
         print "Imprimo la cabecera para tener listo el boleto..."
         imprimir.imprimirHeader()
         boleto_previo = False
     else:
         if f1 == True and f2 == False and f3 == False and f4 == False and f5 == False:
             noBolF = folio.saberFolio()
             folioBD = noBolF
             print "Folio:" + noBolF
             noBol = noBolF.replace('GM:', '')
             fechaIn = fechaUTC.fechaConFormato()
             horaEnt = fechaUTC.tiempoConFormato()
             #imprimir.imprimirQR(noBol,str(terminalEnt),str(fechaIn),str(horaEnt))
             imprimir.imprimirQR2(noBol, str(terminalEnt), str(fechaIn),
                                  str(horaEnt))
             print "Bandera f2=True se termino de imprimir"
             print "Se agrega Boleto a la base de datos de la expedidora"
             fechatimestamp = str(fechaIn) + " " + str(horaEnt)
             conectionBD.insertarBoleto(PATH_NOMBRE_PLAZA, terminalEnt,
                                        str(folioBD), fechatimestamp,
                                        'DEFAULT-ESCOM')
             boleto_previo = True  #Se completa la primera face y se puede volver a imprimir unas cabecera.
             f2 = True
         if f2 == True and f3 == False and f4 == False and f5 == False:
             botones.abrir()
             while (f2 == True and f3 == False):
                 f3 = botones.leerBobina2Subida()
             f2 = False
         if f2 == False and f3 == True and f4 == False and f5 == False:
             while (f3 == True and f4 == False):
                 time.sleep(0.5)
                 print "Barrera Abierta"
                 f4 = botones.abrirBarrera()
             f3 = False
         if f2 == False and f3 == False and f4 == True and f5 == False:
             while (f5 == False):
                 time.sleep(0.5)
                 f5 = botones.CerrarBarrera()
             f4 = False
         if f2 == False and f3 == False and f4 == False and f5 == True:
             print "Ya cerre barrera restablesco fs"
             f1 = f2 = f3 = f4 = f5 = False
         if f6 == True:
             print "Abrir barrera por que se echaron pa tràs"
             while (f5 == False):
                 f5 = botones.CerrarBarrera()
     QtCore.QTimer.singleShot(200, self.leerBotones)
Esempio n. 2
0
File: first.py Progetto: eumsys/eum
	def leerBotones(self):
		global regreso,boleto_previo, espera, limite_impresiones,teclaF3,ser,panelConf,avanza,errImpresora,segundos,comienzaConteo,sensor,leido
		##HABILITAR DESHAB ANCHO PAPEL
		
		if(self.cimpresora2.currentIndex()==1):
			self.cpapel2.setEnabled(False)
		else:
			self.cpapel2.setEnabled(True)
		print("PAPEL:",self.cpapel2.currentIndex())
		#botonTicket (MASA) DESHABILITADO
		self.botonTicket.setEnabled(False)
		re.setReset()
		self.mostrarFechayHora()
		if self.pantalla == 0:
			pass
		elif self.pantalla == 1:
			if espera == 0:
				#mixer.init()
				#mixer.music.load('/home/pi/Documents/eum/app/expedidora/sonidos/mensaje2.mp3')
				#mixer.music.play()
				pass
			pass
			espera = espera + 1
			if espera == 25:
				espera = 0
				self.pantalla = 0
		else:
			pass
			espera = espera + 1
			if espera == 25:
				espera = 0
				self.pantalla = 0
		if self.inicio == 0:
			self.error = 0
			self.inicio = 1
			#self.checarFecha()
			#self.limpiarBD()
			#self.inicioImpresion()
			respuesta = imprimir.footer()
			#self.finImpresion()
			if respuesta == "No esta conectada la impresora":
				mensaje = str(terminalEnt) + "," + str(4) + "," + str("iniciada")
				#####validacion = clientes.configSocket("log expedidora")
				#####clientes.logExpedidora(validacion,"log expedidora",mensaje)
				self.error = 3
				self.pantalla = 1
		if botones.leerAyuda() == 1:
			self.pantalla = 2
		if self.error == 0:
			if boleto_previo == True and self.f1 == False:
				#self.inicioImpresion()
				respuesta = imprimir.imprimirHeader()
				#self.finImpresion()
				if respuesta == "No esta conectada la impresora":
					mensaje = str(terminalEnt) + "," + str(4) + "," + str("iniciada")
					#####validacion = clientes.configSocket("log expedidora")
					#####clientes.logExpedidora(validacion,"log expedidora",mensaje)
					self.error = 3
					self.pantalla = 1
				else:
					boleto_previo = False
			else:
				if botones.leerMasa() == 1:
				# -------------Puente sensor de masa
				#if 1:
					if self.f1 == False:
						print("------ PRESENCIA AUTOMOVIL --------")	
						
						#Habilitando icono presencia
						self.f1 = botones.leerBotonesEntrada()
						# -------------Puente boton ticket
						#self.f1 = 1
						#self.botonTicket.setEnabled(True)
							
						#self.f1 = teclaF3
						if(not panelConf):
							self.cambia(1)
							self.F3.setEnabled(True)
							if(errImpresora==1):
								self.lpress.setText("Disculpe la molestia\nPresione Nuevamente")
							else:
								self.lpress.setText("Presione")
						print("aaaaa",teclaF3)
					if self.f1 == True and self.f2 == False and regreso == False and self.f4 == False and self.f5 == False:
						if boleto_previo == False:
							self.cambia(7)
							self.F3.setEnabled(False)
							teclaF3 = 0
							noBolF = folio.saberFolio()
							folioBD = noBolF
							fechaIn	= fechaUTC.fechaConFormato()
							horaEnt = fechaUTC.tiempoConFormato()
							fechatimestamp = str(fechaIn)+" "+str(horaEnt)
							#self.insertarBoleto(plaza,terminalEnt,noBolF,fechatimestamp,'DEFAULT-ESCOM')
							''' Operacion 1.- Registro de boleto'''
							#mensaje = (idBoleto,idExpedidora,FechaExpedicion, idestado, idtipodescuento, idSalida)
							mensaje = noBolF + "," + str(terminalEnt) + "," + fechatimestamp + "," + str(1) + "," + str(1) + "," + str(0)
							#####validacion = clientes.configSocket("registro boleto")
							validacion = 1
							if validacion == "error":
								self.f1 = self.f2 = regreso = self.f4 = self.f5 = False
								self.pantalla = 1
							else:
								#####valor = clientes.enviarMensaje(validacion,mensaje)
								valor = 1
								if valor == "error":
									self.f1 = self.f2 = regreso = self.f4 = self.f5 = False
									self.pantalla = 1
								else:
									#self.insertarBoleto(plaza,terminalEnt,noBolF,fechatimestamp,'DEFAULT-ESCOM')
									
									#self.inicioImpresion()
									#respuesta = imprimir.imprimirQR22(noBolF,str(terminalEnt),str(fechaIn),str(horaEnt),plaza,localidad,costo)
									self.cambia(7)
									respuesta = imprimir.imprimirQR22(noBolF,str(terminalEnt),str(fechaIn),str(horaEnt),plaza,localidad,pol)
									print("respuesta= ",respuesta)
									#self.finImpresion()
									if respuesta != "ack":
										errImpresora=1
										print("ERRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR")
										print("ERRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR")
										print("ERRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR")
										print("ERRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR")
										print("ERRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR")
										boleto_previo = True
										self.cambia(1)
										self.F3.setEnabled(True)
										self.lpress.setText("Disculpe la molestia\nPresione Nuevamente")
										errImpresora=1
										self.f1 = self.f2 = regreso = self.f4 = self.f5 = self.f6 = False
									else:
										#papel_cont = self.conteoBoletos()
										try:
											self.registrarBoleto(mensaje)
										except:
											print("Error al registrar en servidor")
											self.lpress.setText("Sin Comunicacion",validacion,valor)
										folio.escribirArchivoFolios(noBolF)
										papel_cont = 1
										errImpresora=0
										if papel_cont == limite_impresiones:
											#MANDAR MENSAJE AL SERVIDOR DE PAPEL CASI AGOTADO
											mensaje = str(terminalEnt) + "," + str(3) + "," + str("iniciada")
											#####validacion = clientes.configSocket("log expedidora")
											#####clientes.logExpedidora(validacion,"log expedidora",mensaje)
										papel_cont = papel_cont + 1
										##self.aumentoConteo(papel_cont)
										#mixer.init()
										#mixer.music.load('/home/pi/Documents/eum/app/expedidora/sonidos/mensaje1.mp3')
										#mixer.music.play()
										boleto_previo = True
										self.f2 = True
										self.lpress.setText("Presione")
										print("f2,regreso,f4,f5.f6= ",self.f2 ,regreso ,self.f4, self.f5,self.f6)
				if self.f2 == True and regreso == False and self.f4 == False  and self.f5 == False:
					if self.f6 == False:
						avanza=1
						print("Avance")
						
						time.sleep(1.5)
						botones.abrir()
						print("Abriendo")
						self.cambia(8)
						#self.lcabezal.setText("ESPERE")
						self.f6 = True
						
					if(comienzaConteo==0):
						#segundos=0
						
						comienzaConteo=1
						
						if(int(sensor)==2):
							print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM",sensor)
							print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM",sensor)
							print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM",sensor)
							comienzaConteo=1
							print("NOTTTTTTTTTTTTTTTTTTTTT",regreso)
								
						else:
							comienzaConteo=0
							regreso = botones.leerBobina2Subida()
							print("ERRERERERERERERERE",regreso)
					#else:
					print("regresooooooo",regreso)	
					if regreso == True:
						print("F3=TRUEEEEEEEEEEEEE")
						print("F3=TRUEEEEEEEEEEEEE")
						print("F3=TRUEEEEEEEEEEEEE")
						print("F3=TRUEEEEEEEEEEEEE")
						print("F3=TRUEEEEEEEEEEEEE")
						print("F3=TRUEEEEEEEEEEEEE")
						print("F3=TRUEEEEEEEEEEEEE")
						print("F3=TRUEEEEEEEEEEEEE")
						print("F3=TRUEEEEEEEEEEEEE")
						print("F3=TRUEEEEEEEEEEEEE")
						print("F3=TRUEEEEEEEEEEEEE")
						self.F3.setEnabled(True)
						self.cambia(1)
						#self.lcabezal.setText("BIENVENIDO")
						self.f2 = False
				if self.f2 == False and regreso == True and self.f5 == False:
					self.f4 = botones.abrirBarrera()
					if self.f4 == True:
						regreso = False
				if self.f2 == False and regreso == False and self.f4 == True:
					self.f5 = botones.CerrarBarrera()
					if self.f5 == True:
						teclaF3 = 0
						self.f4 = False
				if self.f2 == False and regreso == False and self.f4 == False  and self.f5 == True:
					teclaF3 = 0
					self.f1 = self.f2 = regreso = self.f4 = self.f5 = self.f6 = False
		elif self.error == 2:
			respuesta = imprimir.imprimirHeader()
			if respuesta == "ack":
				boleto_previo = False
				self.error = 0
		elif self.error == 3:
			respuesta = imprimir.instanciarImpresora()
			if respuesta != "No esta conectada la impresora":
				self.error = 0
		QtCore.QTimer.singleShot(100, self.leerBotones)
Esempio n. 3
0
	def leerBotones(self):
		global boleto_previo, espera, limite_impresiones
		re.setReset()
		self.mostrarFechayHora()
		if self.pantalla == 0:
			self.stackedWidget.setCurrentIndex(0)
		elif self.pantalla == 1:
			if espera == 0:
				mixer.init()
				mixer.music.load('/home/pi/Documents/eum/app/expedidora/sonidos/mensaje2.mp3')
				mixer.music.play()
			self.stackedWidget.setCurrentIndex(1)
			espera = espera + 1
			if espera == 25:
				espera = 0
				self.pantalla = 0
		else:
			self.stackedWidget.setCurrentIndex(2)
			espera = espera + 1
			if espera == 25:
				espera = 0
				self.pantalla = 0
		if self.inicio == 0:
			self.error = 0
			self.inicio = 1
			self.checarFecha()
			self.limpiarBD()
			self.inicioImpresion()
			respuesta = imprimir.footer()
			self.finImpresion()
			if respuesta == "No esta conectada la impresora":
				mensaje = str(terminalEnt) + "," + str(4) + "," + str("iniciada")
				#####validacion = clientes.configSocket("log expedidora")
				#####clientes.logExpedidora(validacion,"log expedidora",mensaje)
				self.error = 3
				self.pantalla = 1
		if botones.leerAyuda() == 1:
			self.pantalla = 2
		if self.error == 0:
			if boleto_previo == True and self.f1 == False:
				self.inicioImpresion()
				respuesta = imprimir.imprimirHeader()
				self.finImpresion()
				if respuesta == "No esta conectada la impresora":
					mensaje = str(terminalEnt) + "," + str(4) + "," + str("iniciada")
					#####validacion = clientes.configSocket("log expedidora")
					#####clientes.logExpedidora(validacion,"log expedidora",mensaje)
					self.error = 3
					self.pantalla = 1
				else:
					boleto_previo = False
			else:
				if botones.leerMasa() == 1:
					if self.f1 == False:
						print("------Preguntar Botones --------")
						self.f1 = botones.leerBotonesEntrada()
					if self.f1 == True and self.f2 == False and self.f3 == False and self.f4 == False and self.f5 == False:
						if boleto_previo == False:
							noBolF = folio.saberFolio()
							folioBD = noBolF
							fechaIn	= fechaUTC.fechaConFormato()
							horaEnt = fechaUTC.tiempoConFormato()
							fechatimestamp = str(fechaIn)+" "+str(horaEnt)
							#self.insertarBoleto(plaza,terminalEnt,noBolF,fechatimestamp,'DEFAULT-ESCOM')
							''' Operacion 1.- Registro de boleto'''
							#mensaje = (idBoleto,idExpedidora,FechaExpedicion, idestado, idtipodescuento, idSalida)
							mensaje = noBolF + "," + str(terminalEnt) + "," + fechatimestamp + "," + str(1) + "," + str(1) + "," + str(0)
							#####validacion = clientes.configSocket("registro boleto")
							validacion = 1
							if validacion == "error":
								self.f1 = self.f2 = self.f3 = self.f4 = self.f5 = False
								self.pantalla = 1
							else:
								#####valor = clientes.enviarMensaje(validacion,mensaje)
								valor = 1
								if valor == "error":
									self.f1 = self.f2 = self.f3 = self.f4 = self.f5 = False
									self.pantalla = 1
								else:
									self.insertarBoleto(plaza,terminalEnt,noBolF,fechatimestamp,'DEFAULT-ESCOM')
									folio.escribirArchivoFolios(noBolF)
									self.inicioImpresion()
									respuesta = imprimir.imprimirQR22(noBolF,str(terminalEnt),str(fechaIn),str(horaEnt))
									
									self.finImpresion()
									if respuesta == -1:
										imprimir.cutter()
										#####validacion = clientes.configSocket("log expedidora")
										#####clientes.logExpedidora(validacion,"log expedidora",mensaje)
										self.error = 3
										self.pantalla = 1
									else:
										papel_cont = self.conteoBoletos()
										if papel_cont == limite_impresiones:
											#MANDAR MENSAJE AL SERVIDOR DE PAPEL CASI AGOTADO
											mensaje = str(terminalEnt) + "," + str(3) + "," + str("iniciada")
											#####validacion = clientes.configSocket("log expedidora")
											#####clientes.logExpedidora(validacion,"log expedidora",mensaje)
										papel_cont = papel_cont + 1
										self.aumentoConteo(papel_cont)
										mixer.init()
										mixer.music.load('/home/pi/Documents/eum/app/expedidora/sonidos/mensaje1.mp3')
										mixer.music.play()
										boleto_previo = True
										self.f2 = True
				if self.f2 == True and self.f3 == False and self.f4 == False  and self.f5 == False:
					if self.f6 == False:
						time.sleep(0.5)
						botones.abrir()
						self.f6 = True
					self.f3 = botones.leerBobina2Subida()
					if self.f3 == True:
						self.f2 = False
				if self.f2 == False and self.f3 == True and self.f5 == False:
					self.f4 = botones.abrirBarrera()
					if self.f4 == True:
						self.f3 = False
				if self.f2 == False and self.f3 == False and self.f4 == True:
					self.f5 = botones.CerrarBarrera()
					if self.f5 == True:
						self.f4 = False
				if self.f2 == False and self.f3 == False and self.f4 == False  and self.f5 == True:
					self.f1 = self.f2 = self.f3 = self.f4 = self.f5 = self.f6 = False
		elif self.error == 2:
			respuesta = imprimir.imprimirHeader()
			if respuesta == "ack":
				boleto_previo = False
				self.error = 0
		elif self.error == 3:
			respuesta = imprimir.instanciarImpresora()
			if respuesta != "No esta conectada la impresora":
				self.error = 0
		QtCore.QTimer.singleShot(200, self.leerBotones)
Esempio n. 4
0
    def leerBotones(self):

        global boleto_previo, espera, limite_impresiones, red, green, blue, rrr, cont
        if (red < 50):
            rrr = 1
        if (red > 150):
            rrr = 0
        if (rrr == 0):
            red = red - 20
            green = green - 20
            blue = blue - 20
        else:
            red = red + 20
            green = green + 20
            blue = blue + 20

        self.lboleto.setStyleSheet("color:rgb(" + str(red) + ", " +
                                   str(green) + ", " + str(blue) +
                                   ");background-color:transparent;")
        #re.setReset()
        self.mostrarFechayHora()
        if self.pantalla == 0:
            #self.stackedWidget.setCurrentIndex(0)
            pass
        elif self.pantalla == 1:
            if espera == 0:
                mixer.init()
                mixer.music.load(
                    '/home/pi/Documents/eum/app/expedidora/sonidos/mensaje2.mp3'
                )
                mixer.music.play()
            self.stackedWidget.setCurrentIndex(0)
            espera = espera + 1
            if espera == 25:
                espera = 0
                self.pantalla = 0
        else:
            self.stackedWidget.setCurrentIndex(0)
            espera = espera + 1
            if espera == 25:
                espera = 0
                self.pantalla = 0
        if self.inicio == 0:
            self.error = 0
            self.inicio = 1
            #self.checarFecha()
            self.limpiarBD()
            self.inicioImpresion()
            respuesta = imprimir.footer()
            self.finImpresion()
            if respuesta == "No esta conectada la impresora":
                mensaje = str(noEquipo) + "," + str(4) + "," + str("iniciada")
                #####validacion = clientes.configSocket("log expedidora")
                #####clientes.logExpedidora(validacion,"log expedidora",mensaje)
                self.error = 3
                self.pantalla = 1
        if botones.leerAyuda() == 1:
            self.pantalla = 2
        if self.error == 0:
            if boleto_previo == True and self.f1 == False:
                #self.inicioImpresion()
                #respuesta = imprimir.imprimirHeader()
                #self.finImpresion()
                respuesta = 1
                if respuesta == "No esta conectada la impresora":
                    mensaje = str(noEquipo) + "," + str(4) + "," + str(
                        "iniciada")
                    #####validacion = clientes.configSocket("log expedidora")
                    #####clientes.logExpedidora(validacion,"log expedidora",mensaje)
                    self.error = 3
                    self.pantalla = 1
                else:
                    boleto_previo = False
            else:
                if botones.leerMasa() == 1:
                    if self.f1 == False:
                        print("------Preguntar Botones --------")
                        self.f1 = botones.leerBotonesEntrada()
                    if self.f1 == True and self.f2 == False and self.f3 == False and self.f4 == False and self.f5 == False:
                        if boleto_previo == False:
                            noBolF = folio.saberFolio()
                            folioBD = noBolF
                            fechaIn = fechaUTC.fechaConFormato()
                            horaEnt = fechaUTC.tiempoConFormato()
                            fechatimestamp = str(fechaIn) + " " + str(horaEnt)
                            #self.insertarBoleto(plaza,noEquipo,noBolF,fechatimestamp,'DEFAULT-ESCOM')
                            ''' Operacion 1.- Registro de boleto'''
                            #mensaje = (idBoleto,idExpedidora,FechaExpedicion, idestado, idtipodescuento, idSalida)
                            mensaje = noBolF + "," + str(
                                noEquipo) + "," + fechatimestamp + "," + str(
                                    1) + "," + str(1) + "," + str(0)
                            #####validacion = clientes.configSocket("registro boleto")
                            validacion = 1
                            if validacion == "error":
                                self.f1 = self.f2 = self.f3 = self.f4 = self.f5 = False
                                self.pantalla = 1
                            else:
                                #####valor = clientes.enviarMensaje(validacion,mensaje)
                                valor = 1
                                if valor == "error":
                                    self.f1 = self.f2 = self.f3 = self.f4 = self.f5 = False
                                    self.pantalla = 1
                                else:
                                    self.insertarBoleto(
                                        plaza, noEquipo, noBolF,
                                        fechatimestamp, 'DEFAULT-ESCOM')
                                    folio.escribirArchivoFolios(noBolF)
                                    self.inicioImpresion()
                                    #respuesta = imprimir.imprimirHeader()
                                    respuesta = imprimir.imprimirQR2(
                                        noBolF, str(noEquipo), str(fechaIn),
                                        str(horaEnt))
                                    self.finImpresion()
                                    if respuesta == "No esta conectada la impresora":
                                        mensaje = str(noEquipo) + "," + str(
                                            4) + "," + str("iniciada")
                                        #####validacion = clientes.configSocket("log expedidora")
                                        #####clientes.logExpedidora(validacion,"log expedidora",mensaje)
                                        self.error = 3
                                        self.pantalla = 1
                                    else:
                                        if (respuesta == "ack"):
                                            papel_cont = self.conteoBoletos()
                                            if papel_cont == limite_impresiones:
                                                #MANDAR MENSAJE AL SERVIDOR DE PAPEL CASI AGOTADO
                                                mensaje = str(
                                                    noEquipo) + "," + str(
                                                        3) + "," + str(
                                                            "iniciada")
                                                #####validacion = clientes.configSocket("log expedidora")
                                                #####clientes.logExpedidora(validacion,"log expedidora",mensaje)
                                            papel_cont = papel_cont + 1
                                            self.aumentoConteo(papel_cont)
                                            mixer.init()
                                            mixer.music.load(
                                                '/home/pi/Documents/eum/app/expedidora/sonidos/mensaje1.mp3'
                                            )
                                            mixer.music.play()
                                            boleto_previo = True
                                            self.f2 = True
                                        else:
                                            print("PRESIONE NUEVAMENTE")
                if self.f2 == True and self.f3 == False and self.f4 == False and self.f5 == False:
                    if self.f6 == False:
                        time.sleep(0.5)
                        botones.abrir()
                        print("ABRIENDO....................")
                        cont = cont + 1
                        print("////////Boletos: ", cont)
                        self.f6 = True
                    self.f3 = botones.leerBobina2Subida()
                    #self.f3 = True;
                    if self.f3 == True:
                        self.f2 = False
                if self.f2 == False and self.f3 == True and self.f5 == False:
                    self.f4 = botones.abrirBarrera()
                    if self.f4 == True:
                        self.f3 = False
                if self.f2 == False and self.f3 == False and self.f4 == True:
                    self.f5 = botones.CerrarBarrera()
                    if self.f5 == True:
                        self.f4 = False
                if self.f2 == False and self.f3 == False and self.f4 == False and self.f5 == True:
                    self.f1 = self.f2 = self.f3 = self.f4 = self.f5 = self.f6 = False
        elif self.error == 2:
            #respuesta = imprimir.imprimirHeader()
            if respuesta == "ack":
                boleto_previo = False
                self.error = 0
        elif self.error == 3:
            respuesta = imprimir.instanciarImpresora()
            if respuesta != "No esta conectada la impresora":
                self.error = 0
        QtCore.QTimer.singleShot(100, self.leerBotones)