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)
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)
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)
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)