예제 #1
0
 def __init__(self):
     """
         Sobre escribe el constructor de la clase __init_
     """
     FloatLayout.__init__(self)
     try:
         self.__sql = SqlData('data/db.sqlite3')
         self.__sql.conectar()
         self.__destinos = self.__sql.get_sectores_zonas()
         self.dropdesde.datasource = self.__destinos
         self.drophasta.datasource = self.__destinos
     except Exception as ex:
         showmessagebox('TAXIMETRO', ex.message, 2)
예제 #2
0
class MainWindow(FloatLayout):
    """
        Ventana Principal de la Aplicacion derivada de un objeto FloatLayout
    """
    dropdesde = ObjectProperty(None)
    drophasta = ObjectProperty(None)

    def __init__(self):
        """
            Sobre escribe el constructor de la clase __init_
        """
        FloatLayout.__init__(self)
        try:
            self.__sql = SqlData('data/db.sqlite3')
            self.__sql.conectar()
            self.__destinos = self.__sql.get_sectores_zonas()
            self.dropdesde.datasource = self.__destinos
            self.drophasta.datasource = self.__destinos
        except Exception as ex:
            showmessagebox('TAXIMETRO', ex.message, 2)

    def buscar_tarifa(self, desde, desdesector, hasta, hastasector):
        """
            Funcion que busca la tarifa en la tabla de tarifas
        """
        result = ()
        if desde != '' and hasta != '':
            if desdesector != hastasector:
                if re.match('Z[1-7]', desde):
                    result = self.__sql.get_tarifa(desde, hasta, '')
                elif re.match('Z[1-7]', hasta):
                    result = self.__sql.get_tarifa(hasta, desde, '')
                if len(result) < 1:
                    showmessagebox('TAXIMETRO', 'No se puede calcular tarifa', 2)
            else:
                result = self.__sql.get_tarifa(desde, hasta, desdesector)

            if len(result) > 0:
                showmessagebox('TAXIMETRO', 'La tarifa desde {0} hasta {1} es de {2}'.format(self.dropdesde.text,
                                                                                             self.drophasta.text,
                                                                                             result[0]), 1)
        else:
            showmessagebox('TAXIMETRO', 'Debe seleccionar Origen y Destino para calcular la tarifa', 2)