Example #1
0
def checarFecha():
	query="select max(fec_bol_exp) from boletoExpedidora;"
	objetoConexion = con.Conexion()
	f = objetoConexion.doQuery(query)
	r = f[0][0].strftime("%d-%m-%Y")
	print(r)
	print(tiempo.fechaConFormato())
	if r != tiempo.fechaConFormato():
		escribeArch = open("/home/pi/Documents/eum/app/expedidora/archivos_config/UltimoFolio.txt","w")
		res = 0
		escribeArch.write(str(res)+"\n")
		escribeArch.close()	
Example #2
0
	def limpiarBD(self):
		try:
			connection = psycopg2.connect(user=usuario, password=contrasenia, database=bd, host='localhost')
			with connection.cursor() as cursor:
				fecAct = fechaUTC.fechaConFormato()
				salto = 0
				dAct = ""
				mAct = ""
				aAct = ""
				for linea in fecAct:
					if salto == 0 and linea != "-":
						dAct = dAct + linea
					if salto == 1 and linea != "-":
						mAct = mAct + linea
					if salto == 2 and linea != "-":
						aAct = aAct + linea
					if linea == "-":
						salto = salto + 1
				mAct = int(mAct)
				aAct = int(aAct)
				if mAct > 4:
					mReg = mAct-4
					aReg = aAct
				else:
					mReg = 8 + mAct
					aReg = aReg - 1
				if mReg > 9:
					fechaReg = str(aReg) +"-"+str(mReg)+"-" + dAct +" 01:00:00"
				else:
					fechaReg = str(aReg) +"-0"+str(mReg)+"-" + dAct +" 01:00:00"
				cursor.execute("DELETE FROM boletos WHERE fecha < '{}';".format(fechaReg))
				connection.commit()
				connection.close()
		except (Exception, psycopg2.DatabaseError) as error:
			print(error)
Example #3
0
 def checarFecha(self):
     try:
         connection = psycopg2.connect(user=usuario,
                                       password=contrasenia,
                                       database=bd,
                                       host='localhost')
         with connection.cursor() as cursor:
             cursor.execute("SELECT max(fecha) FROM boletos;")
             row2 = cursor.fetchone()
             if row2[0] is not None:
                 fec = row2[0].strftime("%d-%m-%Y")
                 if fec != fechaUTC.fechaConFormato():
                     escribeArch = open(
                         "/home/pi/Documents/eum/app/expedidora/archivos_config/UltimoFolio.txt",
                         "w")
                     res = 0
                     escribeArch.write(str(res) + "\n")
                     escribeArch.close()
             else:
                 escribeArch = open(
                     "/home/pi/Documents/eum/app/expedidora/archivos_config/UltimoFolio.txt",
                     "w")
                 res = 0
                 escribeArch.write(str(res) + "\n")
                 escribeArch.close()
             connection.commit()
             connection.close()
     except (Exception, psycopg2.DatabaseError) as error:
         print(error)
Example #4
0
File: first.py Project: 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)
Example #5
0
	def mostrarFechayHora(self):
		fecha = fechaUTC.fechaConFormato()
		self.label_7.setText(fecha)
		self.label_9.setText(fecha)
		self.label_21.setText(fecha)
		hora = fechaUTC.tiempoConFormato()
		self.label.setText(hora)
		self.label_2.setText(hora)
		self.label_3.setText(hora)
Example #6
0
	def inicioImpresion(self):
		try:
			connection = psycopg2.connect(user=usuario, password=contrasenia, database=bd, host='localhost')
			with connection.cursor() as cursor:
				cursor.execute(" UPDATE estado_impresora SET estado = 1,fecha = '"+ str(fechaUTC.fechaConFormato() + " " + fechaUTC.tiempoConFormato()) +"' WHERE idestadoimpresora = 1")
				connection.commit()
				connection.close()
		except (Exception, psycopg2.DatabaseError) as error:
			print(error)
Example #7
0
	def btnAdmin(self):
		index = self.comboBox.currentIndex()
		if(index == 0):
			self.regUsu.pushButton.setText("Agregar")
			self.registroUsuario.show()
		elif(index == 1):
			self.corteCaja = QtGui.QDialog(self.Form)
			self.corCaj = dcorteCaja(self.corteCaja)
			self.corCaj.lineEdit.setText(OUTPUT_TERMINAL)
			self.corCaj.dateEdit.date = fecha.fechaConFormato()
			self.corCaj.pushButton.clicked.connect(self.btnCorteCaja)
			self.corCaj.pushButton_2.clicked.connect(self.cancelCorCaj)			
			self.corteCaja.show()
					
		elif(index==2):
			self.dialogoTarifa = QtGui.QDialog(self.Form)
			self.dTar = dTarifa(self.dialogoTarifa)
			self.dTar.comboBox.activated.connect(self.showDestar)
			self.dTar.pushButton_2.clicked.connect(self.closeDialog)
			self.dTar.pushButton.clicked.connect(self.changeTarifa)
			self.showDestar()
			self.dialogoTarifa.show()
			
		elif(index==3):
			if(self.FEDITABLE==True):
				self.treg = 2
				self.txtFechin.setEnabled(True)
				self.txtFolio.setEnabled(True)
				self.txtInput.setEnabled(True)
				self.txtHorain.setEnabled(True)
				self.pushButton_5.setEnabled(False)
				self.comboBox.setItemText(3,"Registro Automatico")
				self.FEDITABLE = False
			else:
				self.treg = 1
				self.txtFechin.setEnabled(False)
				self.txtFolio.setEnabled(False)
				self.txtInput.setEnabled(False)
				self.txtHorain.setEnabled(False)
				self.pushButton_5.setEnabled(True)
				self.comboBox.setItemText(3,"Registro Manual")
				self.FEDITABLE = True
Example #8
0
def imprimirCorte(expedidos, folioInicial, folioFinal, turno, encendidos,
                  apagados, num):
    print("emp")
    try:
        Generic = instanciarImpresora()
        if Generic == "No esta conectada la impresora":
            return Generic
        a = fechaUTC.fechaConFormato()
        c = fechaUTC.tiempoConFormato()
        b = a + ' ' + c
        #a=dateTime()
        #b=textFromDateTime(a)
        #Generic.text('Bienvenido \n'+str(nom_plaza)+'\n')
        Generic.set(align=u'center',
                    font=u'A',
                    text_type=u'B',
                    width=1,
                    height=1)
        Generic.image("/home/pi/Documents/eum/app/expedidora/logo.png")
        Generic.text("\n\nREPORTE EXPEDIDORA " + num + "\n")
        Generic.text('\nFecha: ' + str(b))
        #Generic.text(str(pol))
        Generic.text('\n\nExpedidos:' + str(expedidos) + '   ' +
                     "\n\nFolio Inicial: " + folioInicial + ' ' +
                     "\n\nFolio Final: " + folioFinal + '\n\nTurno: ' + turno +
                     "--" + encendidos + "--" + apagados + "\n\n\n")
        content = "Estacionamientos unicos de Mexico\n" + expedidos + "\n" + folioInicial + "\n" + folioFinal + "\n" + turno
        Generic.qr(content, ec=0, size=4)
        Generic.cut()
        #codQR=imagen.cambiarTamQR(PATH_CODIGOS_QR)
        #Generic.image(codQR)
        print("QR bien impresa")
        return "ack"
    except Exception as error:
        print("ERROR AL IMPRIMIR QR", error)
        return "No se pudo imprimir"
Example #9
0
File: first.py Project: eumsys/eum
import sys
import commands, os
from escposprinter import *

GPIO.setmode(GPIO.BCM)

from PyQt4 import QtCore, QtGui

PATH_NOMBRE_PLAZA = str(archivoConfiguracion.getName())
DIRECCION_PLAZA = str(archivoConfiguracion.getDireccion())
terminalEnt = int(archivoConfiguracion.getNumTer())

boleto_previo = True

fechaIn = fechaUTC.fechaConFormato()
horaEnt = fechaUTC.tiempoConFormato()

horaDeApagado = confFH.getHora()

try:
    _fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:

    def _fromUtf8(s):
        return s


try:
    _encoding = QtGui.QApplication.UnicodeUTF8
Example #10
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)
Example #11
0
	def updateTime(self):
		self.labelFechout.setText(""+str(fecha.fechaConFormato()))
		self.labelHoraout.setText(""+str(fecha.tiempoConFormato()))
		H=time.strftime("%H:%M:%S")
		self.apagarExp(H)
Example #12
0
File: first.py Project: 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)
Example #13
0
    def fechaLabel(self):
        fecha = fechaUTC.fechaConFormato()
        self.ldate2.setText(fecha)

        hora = fechaUTC.tiempoConFormato()
        self.ltime2.setText(hora)
Example #14
0
 def mostrarFechayHora(self):
     fecha = fechaUTC.fechaConFormato()
     hora = fechaUTC.tiempoConFormato()
     self.ldate.setText(fecha)
     self.ltime.setText(hora)
Example #15
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)