class Detalle_mascota(QtGui.QWidget, detalle_mascota): def __init__(self,mascota,cliente,paseador , parent=None ): QtGui.QWidget.__init__(self, parent) self.setupUi(self) self.linea_nombre_mascota.setText(mascota.get_nombre()) self.linea_raza_mascota.setText(mascota.get_raza()) self.linea_peso_mascota.setText(str(mascota.get_peso())) self.linea_nombre_duenio.setText(cliente.get_nombre()) self.linea_apellido_duenio.setText(cliente.get_apellido()) self.linea_direccion_duenio.setText(cliente.get_direc()) self.linea_telefono_duenio.setText(str(cliente.get_telefono())) self.linea_dni_duenio.setText(str(cliente.get_DNI())) self.linea_nombre_paseador.setText(paseador.get_nombre()) self.linea_apellido_paseador.setText(paseador.get_apellido()) self.linea_direccion_paseador.setText(paseador.get_direc()) self.linea_telefono_paseador.setText(str(paseador.get_telefono())) self.linea_dni_paseador.setText(str(paseador.get_DNI())) self.boton_mapa_2.clicked.connect(self.mapa2) self.boton_mapa.clicked.connect(self.mapa) def mapa(self): self.vista_mapa = Mapa(self.linea_direccion_paseador.text()) self.vista_mapa.setVisible(True) def mapa2(self): self.vista_mapa = Mapa(self.linea_direccion_duenio.text()) self.vista_mapa.setVisible(True)
class Menu_gestion(QtGui.QWidget,Menu_ge): def __init__(self,lista,mascotas, parent=None ): QtGui.QWidget.__init__(self, parent) self.setupUi(self) self.tabla_mascota.close() self.texto_menu = lista.get_roll() #guardo el roll que poseen los objetos de la lista. self.lista = lista #La variable por referencia Self.lista va a apuntar al mismo objeto que la lista. self.lista_mascotas = mascotas self.titulo_submenu.setText('GESTION ' + self.texto_menu ) CargarTabla(self.tabla_persona ,self.lista) self.boton_detalles.clicked.connect(self.detalles) self.boton_mapa.clicked.connect(self.direccion) self.boton_nuevo.clicked.connect(self.nuevo) self.tabla_persona.doubleClicked.connect(self.modificar) def modificar(self): pos = self.tabla_persona.item(self.tabla_persona.currentRow(),0) #devuelve el documento de la tabla if (pos != None ): doc = int (QtGui.QTableWidgetItem.text(pos) ) # combierte el documento qtable gidget en entero self.nuevo = Submenu_alta_baja( self.lista,self.tabla_persona,self.lista_mascotas,self.lista.obtener_pos_dni(doc) ) self.nuevo.setVisible(True) def nuevo(self): #esto pide, la lista , una tabla y la persona si se quiere modificar. self.nuevo = Submenu_alta_baja( self.lista,self.tabla_persona ) self.nuevo.setVisible(True) def detalles(self): pos = self.tabla_persona.item(self.tabla_persona.currentRow(),0) if (pos != None ): doc = int (QtGui.QTableWidgetItem.text(pos) ) self.detallar = Detalles_persona(self.lista.obtener_por_dni(doc),self.lista.get_roll(),self.lista_mascotas) self.detallar.setVisible(True) def direccion(self): pos = self.tabla_persona.item(self.tabla_persona.currentRow(),4) if (pos != None ): direccion = str (QtGui.QTableWidgetItem.text(pos) ) self.mapa_persona = Mapa(direccion) self.mapa_persona.setVisible(True)
class Detalles_persona(QtGui.QDialog,info): def __init__(self,persona,roll,mascotas, parent=None): QtGui.QDialog.__init__(self, parent) self.setupUi(self) self.boton_mapa.clicked.connect(self.mapa) self.titulo.setText(roll) self.completar_campos(persona) if(roll == 'CLIENTE'): CargarTablaMascota(self.tabla_mascota,mascotas.mascotas_cliente(persona)) else: CargarTablaMascota(self.tabla_mascota,mascotas.mascotas(persona)) def completar_campos(self,persona): self.nombre.setText( persona.get_nombre() ) self.apellido.setText (persona.get_apellido() ) self.dni.setText (str (persona.get_DNI()) ) self.direccion.setText (persona.get_direc() ) self.telefono.setText(str(persona.get_telefono())) def mapa(self): self.vista_mapa = Mapa(self.direccion.text()) self.vista_mapa.setVisible(True)
def direccion(self): pos = self.tabla_persona.item(self.tabla_persona.currentRow(),4) if (pos != None ): direccion = str (QtGui.QTableWidgetItem.text(pos) ) self.mapa_persona = Mapa(direccion) self.mapa_persona.setVisible(True)
def mapa(self): self.vista_mapa = Mapa(self.direccion.text()) self.vista_mapa.setVisible(True)
def mapa2(self): self.vista_mapa = Mapa(self.linea_direccion_duenio.text()) self.vista_mapa.setVisible(True)
def mapa(self): self.vista_mapa = Mapa(self.linea_direccion_paseador.text()) self.vista_mapa.setVisible(True)
def verRecorrido(self): paseador = self.lista_paseos.obtener(self.tabla_paseos.currentRow()).get_paseador() direcciones = self.lista_clientes.direcciones(self.lista_mascotas.mascotas(paseador)) print(direcciones) self.mapa_recorrido = Mapa(direcciones) self.mapa_recorrido.setVisible(True)
class Menu(QtGui.QMainWindow,Menu): def __init__(self, parent=None): QtGui.QMainWindow.__init__(self, parent) self.setupUi(self) self.lista_mascotas = Control_mascota() self.lista_clientes = Control('CLIENTE') self.lista_paseadores = Control('PASEADOR') self.lista_paseos = Control_paseo() self.boton_cliente.clicked.connect(self.gestionCliente) self.boton_mascota.clicked.connect(self.gestionMascota) self.boton_paseador.clicked.connect(self.gestionPaseador) self.boton_nuevo_paseo.clicked.connect(self.gestionPaseo) self.llegada.clicked.connect(self.marcarLlegada) self.boton_mapa.clicked.connect(self.verRecorrido) self.tabla_paseos.clicked.connect(self.activar) def gestionCliente(self): self.menu_cliente = Menu_gestion(self.lista_clientes,self.lista_mascotas) self.menu_cliente.setVisible(True) def gestionMascota(self): self.menu_mascota = Menu_gestion_mascota(self.lista_clientes,self.lista_paseadores,self.lista_mascotas) self.menu_mascota.setVisible(True) def gestionPaseador(self): self.menu_paseador = Menu_gestion(self.lista_paseadores,self.lista_mascotas) self.menu_paseador.setVisible(True) def gestionPaseo(self): if(self.lista_paseadores.tamanio() > 0): self.menu_nuevo_paseo = Submenu_alta_baja_paseo(self.lista_paseos,self.lista_paseadores,self.tabla_paseos,self.lista_paseadores.cantidad_mascotas(self.lista_mascotas)) self.menu_nuevo_paseo.setVisible(True) else: self.mostra_error('No hay Paseadores.') def marcarLlegada(self): self.lista_paseos.obtener(self.tabla_paseos.currentRow()).set_hora_llegada(time.strftime('%H : %M : %S')) CargarTablaPaseo(self.tabla_paseos , self.lista_paseos) self.llegada.setEnabled(False) self.boton_mapa.setEnabled(True) def verRecorrido(self): paseador = self.lista_paseos.obtener(self.tabla_paseos.currentRow()).get_paseador() direcciones = self.lista_clientes.direcciones(self.lista_mascotas.mascotas(paseador)) print(direcciones) self.mapa_recorrido = Mapa(direcciones) self.mapa_recorrido.setVisible(True) def activar(self): if(self.lista_paseos.obtener(self.tabla_paseos.currentRow()).get_hora_llegada().find('-') > -1): self.llegada.setEnabled(True) else: self.llegada.setEnabled(False) self.boton_mapa.setEnabled(True) def mostra_error(self,detalles): self.error = Error_alta_baja() self.error.setVisible(True) self.error.mensaje_error.setText( detalles)