Exemple #1
0
 def on_botonBackupVentana_clicked(self, widget):
     '''
     Realiza la copia de seguridad de la base de datos seleccionada.
         :return: void
     '''
     try:
         conexion.Conexion().cerrarbbdd()
         backup = 'backup.zip'
         destino = str(variables.ventana_backup.get_filename())
         if os.path.exists(destino):
             pass
         else:
             os.system('mkdir ' + destino)
             os.system('chmod 0777 ' + destino)
         copia = zipfile.ZipFile(backup, 'w')
         copia.write('empresa.sqlite', compress_type=zipfile.ZIP_DEFLATED)
         copia.close()
         neobackup = str(datetime.now()) + str(backup)
         os.rename(backup, neobackup)
         shutil.move(neobackup, destino)
         Conexion().abrirbbdd()
     except Exception as e:
         Conexion().abrirbbdd()
         print(e)
         print("Error en on_botonBackupVentana_clicked")
Exemple #2
0
	def vLogin(self):
		f = -1
		user = self.l.lineEdit.text()
		password = self.l.lineEdit_2.text()
		q = str("SELECT rol_usu FROM \"Usuario\" WHERE usu_usu = '"+user+"' AND pwd_usu = '"+password+"'")
		conexion = Conexion()
		try:
			f = conexion.doQuery(q)[0][0];
		except:
			print("El usuario no se encuentra en la base de datos")
		print(f)
		print "El nuimero anterior esde la funcion de vLoging"
		if(f==1 or f==2 or f==3):
			self.login.setHidden(True)
			if(f==3):
				self.RolRoot=True
				self.groupBox.setEnabled(True)
			if(f==1):
				self.groupBox.setEnabled(True)
			t = RecurringTimer(1.0, self.updateTime)
			t.start_timer() 
			q = str("SELECT nom_usu, app_usu, apm_usu, id_usu FROM \"Usuario\" WHERE usu_usu = '"+user+"' AND pwd_usu = '"+password+"'")
			self.query = conexion.doQuery(q);
			self.labelVendedor.setText(""+str(self.query[0][0])+" "+str(self.query[0][1])+" "+str(self.query[0][2]))
			self.labelOutput.setText(OUTPUT_TERMINAL)
			print "Rol"+str(self.RolRoot)
			self.Form.show()
		elif(f<0):
			self.l.elabel.setText("Error: Datos incorrectos")
		return f
Exemple #3
0
	def showDestar(self):
		index = self.dTar.comboBox.currentIndex()
		q = "SELECT pol_tar FROM \"CTarifas\" where id_tar = "+str(index+1)+""
		conexion = Conexion()
		q = conexion.doQuery(q)
		self.dTar.txtDestar.clear()
		self.dTar.txtDestar.insertPlainText(str(q[0][0]))
Exemple #4
0
    def guardarmysql(self, sensor):
        id = sensor[0]
        vsensor = sensor[2]
        tipo = sensor[3]
        now = datetime.now()
        self._HyM = now.strftime("%y/%m/%d, %H:%M:%S")
        conexion = Conexion()
        self.cursor = conexion.conexionmysql().cursor()
        print(
            '--------------------------------------------\nConexion establecida\n--------------------------------------------'
        )
        if tipo == 1:
            sql = 'insert into valores(SensorID,1,`Fecha y hora`) values(%s,%s,%s)'
            val = int(id), int(vsensor), self._HyM
        if tipo == 2:
            sql = 'insert into valores(SensorID,2,`Fecha y hora`) values(%s,%s,%s)'
            val = int(id), float(vsensor), self._HyM
        if tipo == 3:
            sql = 'insert into valores(SensorID,3,`Fecha y hora`) values(%s,%s,%s)'
            val = int(id), str(vsensor), self._HyM

        self.cursor.execute(sql, val)
        conexion.conexionmysql().commit()

        print(
            "--------------------------------------------\nDato insertado correctamente en MySQL\n--------------------------------------------"
        )
Exemple #5
0
 def registrar(self):
     resultado = {
         "estado": "error",
         "error": "No se pudo crear la cuenta del usuario"
     }
     con = Conexion()
     hayConexion = con.getConexion()
     if hayConexion:
         try:
             codigo = self.usuario + self.contrasena + str(time.time())
             codigo = codigo.encode('utf-8')
             codigo = hashlib.md5(codigo)
             self.codigoActivacion = codigo.hexdigest()
             query = "INSERT INTO usuarios(usuario, nombres, apellidos, correo, contrasena, activo, codigo_activacion) VALUES(%s, %s, %s, %s, %s, %s, %s)"
             params = (self.usuario, self.nombres, self.apellidos,
                       self.correo, self.contrasena, 0,
                       self.codigoActivacion)
             resultadoQuery = con.ejecutar(query, params, False)
             if resultadoQuery:
                 resultado["estado"] = "ok"
                 resultado["error"] = con.error
                 self.enviarCorreoActivacion()
             else:
                 resultado["error"] = con.error
         except Exception as e:
             resultado["error"] = ("Error: %s" % (e))
         except:
             resultado["error"] = "Error desconocido"
     else:
         resultado['error'] = "No hay conexión: " + con.error
     return resultado
Exemple #6
0
    def insert(self, nombre):
        con = Conexion()
        sql = "INSERT INTO usuarios (id, nombre) VALUES (null,%s)"
        val = (nombre, )

        print(sql + nombre)
        return con.insert(sql, val)
 def crearProvincia(self):
     nuevoProvincia = NewProvincia(self.vista).show()
     con = Conexion()
     con.getClima(city=nuevoProvincia.getNombre())
     if nuevoProvincia:
         provincia = self.repo.agregarProvincia(nuevoProvincia)
         self.provincias.append(provincia)
         self.vista.agregarProvincia(provincia)
Exemple #8
0
 def on_botonRestaurarBackup_clicked(self, widget):
     '''
     Restaura la copia de seguridad de la base de datos.
         :return: void
     '''
     try:
         Conexion().cerrarbbdd()
         fichero = variables.ventana_restaurar_backup.get_filename()
         copia = zipfile.ZipFile(fichero, 'r')
         os.system("rm empresa.sqlite")
         copia.extract("empresa.sqlite")
         copia.close()
         Conexion().abrirbbdd()
     except Exception as e:
         Conexion().abrirbbdd()
         print(e)
         print("Error en on_botonRestaurarBackup_clicked")
Exemple #9
0
def init(top, gui, *args, **kwargs):
    global w, top_level, root, conexion
    w = gui
    top_level = top
    root = top
    conexion = Conexion(gui=w)

    w.conectarBtn.config(state=NORMAL)
    w.desconectarBtn.config(state=DISABLED)
Exemple #10
0
    def __init__(self, gui):

        self.gui = gui
        self.conexion = Conexion(controlador=self)

        self.tipo_conexion_seleccionada = IntVar()
        self.list_box_error_index = 1

        self.direccion_inicial_elegida = 0
Exemple #11
0
 def select(self, nombre):
     con = Conexion()
     sql = "SELECT * FROM usuarios where usuarios.nombre ='" + nombre + "'"
     #print(sql)
     val = con.select(sql)
     if val:
         return usuario(val[0][0], val[0][1])
     else:
         return False
 def cargarPuntos(self, idai, ai):
     conexion = Conexion(self.config)
     cursor = conexion.getCursor()
     puntos = []
     cursor.execute("SELECT id,x,y,h from puntos where idai=" + str(idai) +
                    " ORDER BY id")
     for id, x, y, h in cursor.fetchall():
         puntos.append(Punto(x, y, h, ai, id))
     conexion.cerrar()
     return puntos
Exemple #13
0
    def select(self, idl):
        con = Conexion()
        sql = "SELECT * FROM cancion WHERE lista_id=" + idl
        val = con.select(sql)
        resul = []

        for x in val:
            resul.append(cancion(x[0], x[1], x[2], x[3]))

        return resul
Exemple #14
0
 def salir(self):
     '''
     Cierra la ventana principal del programa.
         :return: void
     '''
     try:
         Conexion().cerrarbbdd()
         Gtk.main_quit()
     except Exception as e:
         print(e)
         print('Error en salir')
Exemple #15
0
 def mostrarEstadoProvinciaEnFormulario(self, provincia):
     # a partir de un Provincia, obtiene el estado
     # y establece en los valores en el formulario de entrada
     con = Conexion()
     nombre = provincia.getNombre()
     con = Conexion.getClima(self=con, city=nombre)
     values = (provincia.getNombre(), provincia.getCapital(),
               provincia.getHabitantes(), provincia.getDepartamentos(),
               *con)
     for entry, value in zip(self.entries, values):
         entry.delete(0, tk.END)
         entry.insert(0, value)
 def cargarAreas(self, idrec):
     conexion = Conexion(self.config)
     cursor = conexion.getCursor()
     areasinteres = []
     cursor.execute(
         "SELECT id, tipo, idpexacto from areainteres where idrec=" +
         str(idrec) + " ORDER BY id")
     for id, tipo, idpexacto in cursor.fetchall():
         ai = AreaInteres(tipo, id)
         ai.setPuntos(self.cargarPuntos(id, ai))
         areasinteres.append(ai)
     conexion.cerrar()
     return areasinteres
Exemple #17
0
	def lostTicket(self):
		self.lt = QtGui.QDialog(self.Form)
		self.dlt = dBoletoPerdido(self.lt)
		self.dlt.labelFechout.setText(self.labelFechout.text())
		self.dlt.labelHoraout.setText(self.labelHoraout.text())
		#Cuando esto deje de ser local dejara de funcionar
		q = "SELECT MAX(id_bol) FROM \"Boleto\";"
		conexion = Conexion()
		q = conexion.doQuery(q)
		self.dlt.labelTicket.setText(str(q[0][0]+1))
		self.Total = (calTar.calcularMonto(0,3,0))
		self.dlt.labelTotal.setText("$"+str(calTar.calcularMonto(0,3,0)))
		self.dlt.pushButton.clicked.connect(self.botonregLostTicket)
		self.dlt.pushButton_2.clicked.connect(self.cancelLt)
		self.lt.show()
 def cargarFotos(self, idm, r):
     ##Para la carga de datos se abren otras conexiones que solo se usan para eso
     conexion = Conexion(self.config)
     cursor = conexion.getCursor()
     fotos = []
     cursor.execute(
         "SELECT id,x,y,h,url,fecha, idp, rdetect, sdetect from foto where idm="
         + str(idm) + " ORDER BY id")
     for id, x, y, h, url, fecha, idp, rdetect, sdetect in cursor.fetchall(
     ):
         fotos.append(
             Foto(x, y, h, r.obtenerPunto(idp), id, None, fecha, url,
                  rdetect, sdetect, self))
     conexion.cerrar()
     return fotos
 def cargarMisiones(self, idrec, r):
     conexion = Conexion(self.config)
     cursor = conexion.getCursor()
     misiones = []
     cursor.execute(
         "SELECT id, fecha, umbral, resolucion, bateriaini, bateriafin, tiempo, disttotal, demora, movfotos from mision WHERE idrec="
         + str(idrec) + " ORDER BY id")
     for id, fecha, umbral, resolucion, bateriaini, bateriafin, tiempo, disttotal, demora, movfotos in cursor.fetchall(
     ):
         misiones.append(
             Mision(r, id, fecha, umbral, resolucion, bateriaini,
                    bateriafin, tiempo, disttotal, demora, movfotos, 0,
                    self.cargarFotos(id, r)))
     conexion.cerrar()
     return misiones
 def cargarMisionesRecorridos(self):
     conexion = Conexion(self.config)
     cursor = conexion.getCursor()
     recorridos = []
     misiones = []
     cursor.execute(
         "SELECT id, tipo, velocidad, altura, padron, fotosxestaca, calculodist, umbral, solapamiento from recorrido ORDER BY id"
     )
     for id, tipo, velocidad, altura, padron, fotosxestaca, calculodist, umbral, solapamiento in cursor.fetchall(
     ):
         r = Recorrido(padron, altura, velocidad, tipo, id, fotosxestaca,
                       calculodist, umbral, solapamiento,
                       self.cargarAreas(id))
         misiones += self.cargarMisiones(id, r)
         recorridos.append(r)
     conexion.cerrar()
     return [recorridos, misiones]
Exemple #21
0
 def run(ip):
     conn = Conexion(ip, "oscsalga", "Ximena8.")
     tunnel = conn.conectar()
     if tunnel == None:
         pass
     else:
         com = Ejecutar(tunnel)
         try:
             hostname = com.hostname()
             texto = com.ejecutar_comando(["show ver"])
             #texto = com.ejecutar_comando("show ver")
             Genericos.save_to_file("output", hostname, "")
             print(texto)
         except:
             pass
         finally:
             com.desconectar()
Exemple #22
0
	def regLostTicket(self):
		marca = self.dlt.txtMarca.text()
		placa= self.dlt.txtPlacas.text()
		modelo= self.dlt.txtModelo.text()
		licencia= self.dlt.txtLicencia.text()
		nombre= self.dlt.txtNombre.text()
		telefono= self.dlt.txtTelefono.text()
		vFlag = vForm.validarBolPer(marca,placa,modelo,licencia,nombre,telefono)
		if vFlag != True:
			self.registroVenta()
			q = "INSERT INTO \"BoletoPerdido\" (mar_car_bol_per, pla_bol_per, mod_bol_per, lic_num_bol_per, nom_usu_bol_per, tel_usu_bol_per, id_bol) values ('"+marca+"','"+placa+"','"+modelo+"','"+licencia+"','"+nombre+"', '"+telefono+"', "+str(int(self.dlt.labelTicket.text()))+");"
			print(q)
			conexion = Conexion()
			f = conexion.execQuery(q)
			if(f<0):
				print("Error: El registro del boleto perdido no ha sido guardado")
			else:
				self.limparDespuesDeCancelarBoletoPerdido()
				self.lt.setHidden(True)
Exemple #23
0
	def registroVenta(self):
		folio = self.txtFolio.text()
		inputTerminal = self.txtInput.text()
		outputTerminal = self.labelOutput.text()
		dateIn = self.txtFechin.text()
		dateOut = self.labelFechout.text()
		horIn = self.txtHorain.text()
		horOut = self.labelHoraout.text()
		idUsu = self.query[0][3]
		idTar = self.itarifa
		tipReg = self.treg
		#REGISTRO DE BOLETOS SIN SELLO / CON SELLO (SUBURBIA O BANCO)
		if tipReg==1 or tipReg==4 or tipReg==5 or tipReg==6 or tipReg==2.1 :					##BOTON DE ACEPTAR CON REGISTRO AUTOMATICO
			totBol = self.Total
			if tipReg==4 : #REGISTRO DE BOLETOS DE BANCO
				idTar = 4
			if tipReg==5 :#REGISTRO DE BOLETOS DE SUBUIRBIA
				idTar = 5
			if tipReg==6 :#REGISTRO DE BOLETOS DE TAXI
				idTar = 6
			if tipReg==2.1 :#REGISTRO DE BOLETOS DE SUBUIRBIA
				idTar = 2
				tipReg=1
				folio ="674715"
				inputTerminal = ""
				dateIn = "01/01/2000"
				horIn = "00:00:00"
			print "CHECATE LA TARIFA "+str(idTar)
			vFlag = vForm.registroSalida(folio, inputTerminal, dateIn, horIn, idTar)
			#VALIDACION DE BOLETO
			q = "SELECT id_bol FROM \"Boleto\" WHERE fol_bol='"+folio+"' and in_fec_bol='"+dateIn+"' and in_ter_bol='"+inputTerminal+"' and in_hor_bol='"+horIn+"';"
			conexion = Conexion()
			registros = conexion.doQuery(q)
			if len(registros)!=0:
				vForm.ventana("Error de Registro","BOLETO YA REGISTRADO> \n"+str(registros))
			else:#FIN DE VALIDACION DE BOLETO
				if vFlag != True:
					q = "INSERT INTO \"Boleto\" (fol_bol, in_ter_bol, out_ter_bol, in_fec_bol, out_fec_bol, id_tar_bol, id_usu_bol, tip_reg, tot_bol, in_hor_bol, out_hor_bol) values ('"+folio+"','"+inputTerminal+"','"+outputTerminal+"','"+dateIn+"','"+dateOut+"', "+str(idTar)+", "+str(idUsu)+", "+str(tipReg)+", "+str(totBol)+", '"+horIn+"', '"+horOut+"');"
					conexion = Conexion()
					f = conexion.execQuery(q)
					if(f<0):
						print("Error: El registro no ha sido guardado")
					else:
						self.pushButton_5.setEnabled(True)		#LEER BOLETO
						self.clearScreen()
				else:
					vForm.ventana("Error de Registro","Verifica los campos incorrectos")
				#RESTABLECEMOS LA TARIFA
			self.treg=1
		if tipReg==2:	#BOTON DE ACEPTAR CON REGISTRO MANUAL
			self.calcularMinutos()
			totBol = self.Total
			q = "INSERT INTO \"Boleto\" (fol_bol, in_ter_bol, out_ter_bol, in_fec_bol, out_fec_bol, id_tar_bol, id_usu_bol, tip_reg, tot_bol, in_hor_bol, out_hor_bol) values ('"+folio+"','"+inputTerminal+"','"+outputTerminal+"','"+dateIn+"','"+dateOut+"', "+str(idTar)+", "+str(idUsu)+", "+str(tipReg)+", "+str(totBol)+", '"+horIn+"', '"+horOut+"');"
			conexion = Conexion()
			vFlag = vForm.registroSalida(folio, inputTerminal, dateIn, horIn, idTar)
			if vFlag != True:
				f = conexion.execQuery(q)
				if(f<0):
					print("Error: El registro no ha sido guardado")
				else:
					vForm.ventana("REGISTRAR VENTA","TOTAL A COBRAR--------------------------------------------------\n-------------------------COBRA:$"+str(totBol)+"-------------------------\n--------------------------------------------------\n")
					self.pushButton_5.setEnabled(True)		#LEER BOLETO
					self.clearScreen()
			else:
				vForm.ventana("Error de Registro","Verifica los campos incorrectos")
		
		if tipReg==3:		#Boton de REGISTRO DE BOLETO PERDIDO
			print "Boleto Perido"
			folio="801370"
			idTar=3
			horIn = "00:00:00"
			dateIn ="01/01/2000"
			vFlag = vForm.registroSalida(folio, inputTerminal, dateIn, horIn, idTar)
			if vFlag != True:
				totBol = COSTO_BOLETO_PERDIDO
				q = "INSERT INTO \"Boleto\" (fol_bol, in_ter_bol, out_ter_bol, in_fec_bol, out_fec_bol, id_tar_bol, id_usu_bol, tip_reg, tot_bol, in_hor_bol, out_hor_bol) values ('"+folio+"','"+inputTerminal+"','"+outputTerminal+"','"+dateIn+"','"+dateOut+"', "+str(idTar)+", "+str(idUsu)+", "+str(tipReg)+", "+str(totBol)+", '"+horIn+"', '"+horOut+"');"
				conexion = Conexion()
				f = conexion.execQuery(q)
				if(f<0):
					print("Error: El registro no ha sido guardado")
				else:
					vForm.ventana("REGISTRAR VENTA","TOTAL A COBRAR--------------------------------------------------\n-------------------------COBRA:$"+str(totBol)+"-------------------------\n--------------------------------------------------\n")
					self.clearScreen()
					self.pushButton_5.setEnabled(True)		#LEER BOLETO
					self.limparDespuesDeCancelarBoletoPerdido()
			else:
				vForm.ventana("Error de Registro","Verifica los campos incorrectos")
		self.pushButton_3.setEnabled(True)		#habilitamos el boton de boleto perdido para que forzosamente cobren lo que se leyo
		self.pushButton_2.setEnabled(True)		#Boton de cancelar
		self.pushButton_6.setEnabled(True)		#Boton de Abrir barrera
Exemple #24
0
	def btnRegUsu(self):
		print self.currentTabIndex
		conexion = Conexion()
		if self.RolRoot==True:
			print "Soy Root"
			if self.currentTabIndex==0:
				nom = self.regUsu.txtNombre.text()
				app= self.regUsu.txtApp.text()
				apm= self.regUsu.txtApm.text()
				usu= self.regUsu.txtUsuario.text()
				pwd= self.regUsu.txtPassword.text()
				hor= self.regUsu.cbxHorario.currentIndex() + 1
				rol = self.regUsu.cbxRol.currentIndex() + 1
				pst = self.regUsu.txtPuesto.text()
				#Query de validacion
				q = "SELECT id_usu   FROM \"Usuario\" WHERE usu_usu='"+usu+"' ;"
				print q
				f = conexion.doQuery(q)
				print len(f)
				if len(f)<=0 and nom!='' and app!='':
					#Logica para query de registrar usuariio
					q = "INSERT INTO \"Usuario\" (nom_usu, app_usu, apm_usu, usu_usu, rol_usu, pwd_usu, id_hor, pst_usu) values ('"+nom+"','"+app+"','"+apm+"','"+usu+"', "+str(rol)+", '"+pwd+"', "+str(hor)+", '"+pst+"');"
					print(q)
					f = conexion.execQuery(q)
					if(f<0):
						print("Error: El registro del usuario perdido no ha sido guardado")
					else:
						#self.registroUsuario.setHidden(True)
						self.cleanUsu()
				else:
					print("Error:USUARIO EXISTENTE o faltan datos")
					print "	EL Id usu existente es:"+str(f)
					vForm.ventana("***********Error al registrar*********","Error:USUARIO EXISTENTE o faltan datos")
			elif self.currentTabIndex==1:
				usu = self.regUsu.txtCUsuario.text()
				q = "SELECT * FROM \"Usuario\" WHERE usu_usu = '"+usu+"';"
				f = conexion.doQuery(q)
				if(f<0):
					print("Error: El usuario no se encuentra en el registro")
				else:
					self.regUsu.txtCNombre.setText(str(f[0][1]))
					self.regUsu.txtCApp.setText(str(f[0][2]))
					self.regUsu.txtCApm.setText(str(f[0][3]))
					self.regUsu.txtCPuesto.setText(str(f[0][8]))
					self.regUsu.cbxCRol.setCurrentIndex(int(f[0][5])-1)
					self.regUsu.cbxCHorario.setCurrentIndex(int(f[0][7])-1)
			elif self.currentTabIndex==2:
				if self.mflag == False:
					self.regUsu.pushButton.setText("Modificar")
					usu = self.regUsu.txtMUsuario.text()
					q = "SELECT * FROM \"Usuario\" WHERE usu_usu = '"+usu+"';"
					f = conexion.doQuery(q)
					if(f<0):
						print("Error: El usuario no se encuentra en el registro")
					else:
						print f
						self.regUsu.txtMNombre.setText(str(f[0][1]))
						self.regUsu.txtMApp.setText(str(f[0][2]))
						self.regUsu.txtMApm.setText(str(f[0][3]))
						self.regUsu.txtMPassword.setText(str(f[0][6]))
						self.regUsu.txtMPuesto.setText(str(f[0][8]))
						self.regUsu.cbxMRol.setCurrentIndex(int(f[0][5])-1)
						self.regUsu.cbxMHorario.setCurrentIndex(int(f[0][7])-1)
						self.regUsu.txtMNombre.setEnabled(True)
						self.regUsu.txtMApp.setEnabled(True)
						self.regUsu.txtMApm.setEnabled(True)
						self.regUsu.txtMPassword.setEnabled(True)
						self.regUsu.txtMPuesto.setEnabled(True)
						self.regUsu.cbxMRol.setEnabled(True)
						self.regUsu.cbxMHorario.setEnabled(True)
						self.regUsu.txtMUsuario.setEnabled(False)
					self.mflag=True
				else:
					nom = self.regUsu.txtMNombre.text()
					app= self.regUsu.txtMApp.text()
					apm= self.regUsu.txtMApm.text()
					usu= self.regUsu.txtMUsuario.text()
					pwd= self.regUsu.txtMPassword.text()
					hor= self.regUsu.cbxMHorario.currentIndex() + 1
					rol = self.regUsu.cbxMRol.currentIndex() + 1
					pst = self.regUsu.txtMPuesto.text()
					#q = "UPDATE \"Usuario\" SET (nom_usu = '"+nom+"', app_usu = '"+app+"', apm_usu = '"+apm+"', usu_usu = '"+usu+"', rol_usu = "+str(rol)+", pwd_usu = '"+pwd+"', id_hor = "+str(hor)+", pst_usu = '"+pst+"') WHERE usu_usu = '"+usu+"';"
					q = "UPDATE \"Usuario\" SET nom_usu = '"+nom+"', app_usu = '"+app+"', apm_usu = '"+apm+"', rol_usu = "+str(rol)+", pwd_usu = '"+pwd+"', id_hor = "+str(hor)+", pst_usu = '"+pst+"' WHERE usu_usu = '"+usu+"';"
					print(q)
					f = conexion.execQuery(q)
					if(f<0):
						print("Error: Los datos del usuario no han sido actualizados")
					self.regUsu.pushButton.setText("Buscar")
					self.mflag=False
			elif self.currentTabIndex==3:
				if self.eflag == False:
					self.eflag = True
					self.regUsu.pushButton.setText("Eliminar")
					usu = self.regUsu.txtEUsuario.text()
					q = "SELECT * FROM \"Usuario\" WHERE usu_usu = '"+usu+"';"
					f = conexion.doQuery(q)
					if(f<0):
						print("Error: El usuario no se encuentra en el registro")
					else:
						self.regUsu.txtENombre.setText(str(f[0][1]))
						self.regUsu.txtEApp.setText(str(f[0][2]))
						self.regUsu.txtEApm.setText(str(f[0][3]))
						self.regUsu.txtEPuesto.setText(str(f[0][8]))
						self.regUsu.cbxERol.setCurrentIndex(int(f[0][5])-1)
						self.regUsu.cbxEHorario.setCurrentIndex(int(f[0][7])-1)
				else:
					usu = self.regUsu.txtEUsuario.text()
					self.regUsu.pushButton.setText("Buscar")
					self.eflag = False
					q = "DELETE FROM \"Usuario\" WHERE usu_usu = '"+usu+"';"
					f = conexion.execQuery(q)
					if(f<0):
						print("Error: Los datos del usuario no fueron eliminados")
					else:
						self.cleanUsu()
		if self.RolRoot==False:
			print "Soy Administrador"		#*********************************************************************ADMINISTRADOR
			if self.currentTabIndex==0:
				nom = self.regUsu.txtNombre.text()
				app= self.regUsu.txtApp.text()
				apm= self.regUsu.txtApm.text()
				usu= self.regUsu.txtUsuario.text()
				pwd= self.regUsu.txtPassword.text()
				hor= self.regUsu.cbxHorario.currentIndex() + 1
				rol = 2
				pst = self.regUsu.txtPuesto.text()
				#Query de validacion
				q = "SELECT id_usu   FROM \"Usuario\" WHERE usu_usu='"+usu+"' ;"
				f = conexion.doQuery(q)
				if len(f)<=0 and nom!='' and app!='':
					#Logica para query de registrar usuariio
					q = "INSERT INTO \"Usuario\" (nom_usu, app_usu, apm_usu, usu_usu, rol_usu, pwd_usu, id_hor, pst_usu) values ('"+nom+"','"+app+"','"+apm+"','"+usu+"', "+str(rol)+", '"+pwd+"', "+str(hor)+", '"+pst+"');"
					print(q)
					f = conexion.execQuery(q)
					if(f<0):
						print("Error: El registro del usuario perdido no ha sido guardado")
					else:
						#self.registroUsuario.setHidden(True)
						self.cleanUsu()
				else:
					print("Error:USUARIO EXISTENTE o faltan datos")
					print "	EL Id usu existente es:"+str(f)
					vForm.ventana("***********Error al registrar*********","Error:USUARIO EXISTENTE o faltan datos")
			#TERMINA AGREGAR USUARIO
			elif self.currentTabIndex==1:
				usu = self.regUsu.txtCUsuario.text()
				q = "SELECT * FROM \"Usuario\" WHERE usu_usu = '"+usu+"';"
				f = conexion.doQuery(q)
				if(f<0):
					print("Error: El usuario no se encuentra en el registro")
				else:
					self.regUsu.txtCNombre.setText(str(f[0][1]))
					self.regUsu.txtCApp.setText(str(f[0][2]))
					self.regUsu.txtCApm.setText(str(f[0][3]))
					self.regUsu.txtCPuesto.setText(str(f[0][8]))
					self.regUsu.cbxCRol.setCurrentIndex(int(f[0][5])-1)
					self.regUsu.cbxCHorario.setCurrentIndex(int(f[0][7])-1)
			#TERMINA BUSCAR USUARIO
			elif self.currentTabIndex==2:
				if self.mflag == False:
					self.regUsu.pushButton.setText("Modificar")
					usu = self.regUsu.txtMUsuario.text()
					q = "SELECT * FROM \"Usuario\" WHERE usu_usu = '"+usu+"'  and rol_usu!='1' and rol_usu!='3' ;"
					f = conexion.doQuery(q)
					if(f<0):
						print("Error: El usuario no se encuentra en el registro")
					else:
						print f
						self.regUsu.txtMNombre.setText(str(f[0][1]))
						self.regUsu.txtMApp.setText(str(f[0][2]))
						self.regUsu.txtMApm.setText(str(f[0][3]))
						self.regUsu.txtMPassword.setText(str(f[0][6]))
						self.regUsu.txtMPuesto.setText(str(f[0][8]))
						self.regUsu.cbxMRol.setCurrentIndex(int(f[0][5])-1)
						self.regUsu.cbxMHorario.setCurrentIndex(int(f[0][7])-1)
						self.regUsu.txtMNombre.setEnabled(False)
						self.regUsu.txtMApp.setEnabled(False)
						self.regUsu.txtMApm.setEnabled(False)
						self.regUsu.txtMPassword.setEnabled(True)		#SOLO HABILITAMOS EL CAMBIAR PASSWORD
						self.regUsu.txtMPuesto.setEnabled(False)
						self.regUsu.cbxMRol.setEnabled(False)
						self.regUsu.cbxMHorario.setEnabled(False)
						self.regUsu.txtMUsuario.setEnabled(False)
					self.mflag=True
				else:
					nom = self.regUsu.txtMNombre.text()
					app= self.regUsu.txtMApp.text()
					apm= self.regUsu.txtMApm.text()
					usu= self.regUsu.txtMUsuario.text()
					pwd= self.regUsu.txtMPassword.text()
					hor= self.regUsu.cbxMHorario.currentIndex() + 1
					rol = self.regUsu.cbxMRol.currentIndex() + 1
					pst = self.regUsu.txtMPuesto.text()
					#q = "UPDATE \"Usuario\" SET (nom_usu = '"+nom+"', app_usu = '"+app+"', apm_usu = '"+apm+"', usu_usu = '"+usu+"', rol_usu = "+str(rol)+", pwd_usu = '"+pwd+"', id_hor = "+str(hor)+", pst_usu = '"+pst+"') WHERE usu_usu = '"+usu+"';"
					q = "UPDATE \"Usuario\" SET nom_usu = '"+nom+"', app_usu = '"+app+"', apm_usu = '"+apm+"', rol_usu = "+str(rol)+", pwd_usu = '"+pwd+"', id_hor = "+str(hor)+", pst_usu = '"+pst+"' WHERE usu_usu = '"+usu+"' and rol_usu!='1' ;"
					print(q)
					f = conexion.execQuery(q)
					if(f<0):
						print("Error: Los datos del usuario no han sido actualizados")
					self.regUsu.pushButton.setText("Buscar")
					self.cleanUsu()
					self.mflag=False
			elif self.currentTabIndex==3:
				vForm.ventana("***********No Puedes eliminar*********","Error: solo el gerente  puede eliminar")
Exemple #25
0
	def getTarifa(self, index):
		q = "SELECT des_tar FROM \"CTarifas\" where id_tar = "+str(index)+""
		conexion = Conexion()
		q = conexion.doQuery(q)
		return str(q[0][0])
Exemple #26
0
 def __init__(self):
     global conexion
     conexion = Conexion()
     self.conn = None
     self.cur=None
Exemple #27
0
 def __init__(self):
     global conexion
     conexion = Conexion()
Exemple #28
0
import pymysql
from conexion import Conexion
from sqlalchemy import create_engine
from json import dumps
cx = Conexion()


class Usuario:
    idusuario = 0
    nomuser = ""
    clave = ""
    estado = ""

    def readAll(self):
        try:
            conexion = cx.conecta()
            cursor = conexion.cursor(pymysql.cursors.DictCursor)
            cursor.callproc('listar_usuario')
            rows = cursor.fetchall()
            return rows
        except Exception as e:
            print(e)
        finally:
            conexion.close()

    def delete(self):
        try:
            conexion = cx.conecta()
            cursor = conexion.cursor(pymysql.cursors.DictCursor)
            cursor.callproc('delete_usuario', [self.idusuario])
            conexion.commit()
Exemple #29
0
    def __init__(self):
        '''
        Carga los widgets con algún evento asociado o que son referenciados.
            :return: void
        '''
        builder = Gtk.Builder()
        builder.add_from_file('ventana.glade')

        ventana_principal = builder.get_object('ventanaPrincipal')
        variables.ventana_precios = builder.get_object('ventanaPrecios')
        variables.ventana_dialog_salir = builder.get_object(
            'ventanaDialogSalir')
        variables.ventana_acerca_de = builder.get_object('ventanaAcercaDe')
        variables.panel = builder.get_object('panel')
        variables.ventana_backup = builder.get_object('ventanaBackup')
        variables.ventana_restaurar_backup = builder.get_object(
            'ventanaRestaurarBackup')
        variables.ventana_calendario = builder.get_object('ventanaCalendario')
        variables.ventana_importar_clientes = builder.get_object(
            'ventanaImportarClientes')
        variables.ventana_exportar_clientes = builder.get_object(
            'ventanaExportarClientes')
        variables.ventana_aviso = builder.get_object('ventanaAviso')
        variables.label_ventana_aviso = builder.get_object('labelVentanaAviso')
        variables.calendario = builder.get_object('calendario')
        menu_bar = builder.get_object('menuBar').get_style_context()

        entry_dni = builder.get_object('entryDni')
        entry_apellidos = builder.get_object('entryApellidos')
        entry_nombre = builder.get_object('entryNome')
        entry_fecha_cliente = builder.get_object('entryFechaCliente')
        label_error_dni = builder.get_object('labelErrorDni')
        label_codigo_cliente = builder.get_object('labelCodigoCliente')
        label_numero_noches = builder.get_object('labelNumeroNoches')
        label_directorio_backup = builder.get_object('lblFolderbackup')
        label_dni_reserva = builder.get_object('labelDniReserva')
        label_apellidos_reserva = builder.get_object('labelApellidosReserva')
        variables.entries_cliente = (entry_dni, entry_apellidos, entry_nombre,
                                     entry_fecha_cliente)
        variables.lista_clientes = builder.get_object('listaClientes')
        variables.tree_clientes = builder.get_object('treeClientes')
        variables.mensajes_label = (label_error_dni, label_codigo_cliente,
                                    label_numero_noches,
                                    label_directorio_backup, label_dni_reserva,
                                    label_apellidos_reserva)

        entry_numero_habitacion = builder.get_object('entryNumeroHabitacion')
        entry_precio_habitacion = builder.get_object('entryPrecioHabitacion')
        radiobutton_simple = builder.get_object('radioButtonSimple')
        radiobutton_doble = builder.get_object('radioButtonDoble')
        radiobutton_familiar = builder.get_object('radioButtonFamiliar')
        variables.tree_habitaciones = builder.get_object('treeHabitaciones')
        variables.lista_habitaciones = builder.get_object('listaHabitaciones')
        variables.entries_habitacion = (entry_numero_habitacion,
                                        entry_precio_habitacion)
        variables.radiobuttons_tipo_habitacion = (radiobutton_simple,
                                                  radiobutton_doble,
                                                  radiobutton_familiar)
        variables.lista_combo_habitaciones = builder.get_object(
            'listaComboHabitaciones')
        variables.combo_habitaciones = builder.get_object(
            'comboBoxHabitacionesReserva')
        variables.switch_habitaciones = builder.get_object(
            'switchHabitaciones')

        entry_fecha_check_in = builder.get_object('entryCheckIn')
        entry_fecha_check_out = builder.get_object('entryCheckOut')
        variables.switch_reservas = builder.get_object('switchReservas')
        variables.tree_reservas = builder.get_object('treeReservas')
        variables.lista_reservas = builder.get_object('listaReservas')
        variables.entries_reserva = (entry_fecha_check_in,
                                     entry_fecha_check_out)

        label_dni_factura = builder.get_object('labelDniFactura')
        label_apelidos_factura = builder.get_object('labelApelidosFactura')
        label_nome_factura = builder.get_object('labelNomeFactura')
        label_codigo_reserva_factura = builder.get_object(
            'labelCodigoReservaFactura')
        label_habitacion_factura = builder.get_object('labelHabitacionFactura')
        label_fecha_factura = builder.get_object('labelFechaFactura')
        label_subtotal_factura = builder.get_object('labelSubtotal')
        label_iva_factura = builder.get_object('labelIva')
        label_total_factura = builder.get_object('labelTotal')
        variables.labels_factura = (label_dni_factura, label_apelidos_factura,
                                    label_nome_factura,
                                    label_codigo_reserva_factura,
                                    label_habitacion_factura,
                                    label_fecha_factura,
                                    label_subtotal_factura, label_iva_factura,
                                    label_total_factura)

        label_codigo_reserva_servicios = builder.get_object(
            'labelCodigoReservaServicios')
        label_habitacion_servicios = builder.get_object(
            'labelHabitacionServicios')
        variables.labels_servicios = (label_codigo_reserva_servicios,
                                      label_habitacion_servicios)
        radiobutton_solo_alojamiento = builder.get_object(
            'radioButtonSoloAlojamiento')
        radiobutton_desayuno = builder.get_object('radioButtonDesayuno')
        radiobutton_comida = builder.get_object('radioButtonComida')
        variables.radiobuttons_servicios_basicos = (
            radiobutton_solo_alojamiento, radiobutton_desayuno,
            radiobutton_comida)
        variables.checkbox_parking = builder.get_object('checkBoxParking')
        entry_tipo_servicio = builder.get_object('entryTipoServicio')
        entry_precio_servicio = builder.get_object('entryPrecioServicio')
        variables.entries_servicios_adicionales = (entry_tipo_servicio,
                                                   entry_precio_servicio)
        variables.tree_servicios = builder.get_object('treeServicios')
        variables.lista_servicios = builder.get_object('listaServicios')
        variables.tree_previsualizar_servicios = builder.get_object(
            'treePrevisualizarServicios')
        variables.lista_previsualizar_servicios = builder.get_object(
            'listaPrevisualizarServicios')

        entry_precio_parking = builder.get_object('entryPrecioParking')
        entry_precio_desayuno = builder.get_object('entryPrecioDesayuno')
        entry_precio_pension_completa = builder.get_object(
            'entryPrecioPensionCompleta')
        variables.entries_precios_servicios_basicos = (
            entry_precio_parking, entry_precio_desayuno,
            entry_precio_pension_completa)

        builder.connect_signals(eventos.Eventos())

        self.set_style()
        menu_bar.add_class('menuBar')

        pantalla = Gdk.Screen.get_default()
        anchura = pantalla.get_width()
        altura = pantalla.get_height()
        ventana_principal.show_all()
        ventana_principal.resize(anchura, altura)
        Conexion().abrirbbdd()
        funciones_habitacion.actualizar_numeros_habitacion()
        funciones_clientes.actualizar_lista_clientes(variables.lista_clientes)
        funciones_habitacion.actualizar_lista_habitaciones(
            variables.lista_habitaciones)
        funciones_reserva.actualizar_lista_reservas()
Exemple #30
0
 def set_conexiones(self, conexiones):
     for direccion, destino in conexiones.items():
         con = Conexion(direccion, destino)
         self.__conexiones.set_elemento(direccion, con)