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: firstL.py Progetto: eumsys/app
 def impCabecera(self):
     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
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
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)