Пример #1
0
def index():

    if current_user.is_authenticated == False:
        form = rs.Demande_NonAuth()
    else:
        form = rs.Demande_Auth()

    # On vérifie que si l'utilisateur a un compte, qu'il n'essaye pas
    # de réserver un taxi en étant pas connecté.
    if current_user.is_authenticated == False:
        check_Utilisateur = modeles.Utilisateur.query.filter_by(
            telephone=form.telephone.data).first()
        if check_Utilisateur is not None:
            if check_Utilisateur.avoir_compte:
                message = Markup(
                    "Vous êtes déjà inscrit. Veuillez vous connecter <a href='/utilisateur/connexion'> ici <i class='sign in icon'></i></a>"
                )
                flash(message)
                return redirect(url_for('index'))

    if form.validate_on_submit():

        flash('Le formulaire de réservation a été validé.', 'positive')

        demande = form.data

        if current_user.is_authenticated:
            demande['prenom'] = current_user.prenom
            demande['nom'] = current_user.nom
            demande['telephone'] = current_user.telephone
            demande['mail'] = current_user.email

        # On regarde si l'adresse de départ se trouve dans un rayon proche de
        # la gare Matabiau ou de l'aéroport
        demande['gare'] = geographie.calculer_distance(
            demande['adresse_dep'], "68 Boulevard Pierre Semard", rayon=250)
        demande['aeroport'] = geographie.calculer_distance(
            demande['adresse_dep'],
            "Aéroport Toulouse-Blagnac, Blagnac",
            rayon=1000)

        print(demande['gare'], demande['aeroport'])

        demande['debut'] = datetime.datetime.strptime(demande['date_debut'],
                                                      '%d-%m-%Y %H:%M')

        # Convertir les valeurs
        for key in demande.keys():
            try:
                demande[key] = eval(demande[key])
            except:
                pass

        # Calcul de la tarification provisoire
        devis = tarif.estimation(demande)

        data = {'demande': demande, 'devis': devis}

        return render_template('devis.html', data=data, titre='Devis')
    return render_template('index.html', form=form, titre='Réserver un taxi')
Пример #2
0
def tarif_minimum():
    '''
    On vérifie qu'un trajet court a bien comme prix
    le tarif minimum.
    '''
    # Choisir une date le lendemain du jour actuel
    date_debut = datetime.now() + timedelta(days=1)
    demande = {
        'commentaire': '',
        'adresse_dep': '10 Rue Elvire Toulouse',
        'adresse_arr': '17 Rue Elvire Toulouse',
        'categorie': 'particulier',
        'nb_passagers': 3,
        'adresse_arr': 'Rue Elvire',
        'date_debut': date_debut.isoformat(),
        'heures': 10,
        'minutes': 40,
        'paiement': 'especes',
        'bagages': 0,
        'animaux': 0,
        'gare': False,
        'aeroport': False
    }
    estimation = tarif.estimation(demande)
    assert estimation['prix']['total'] == supplements['tarif_minimum']
Пример #3
0
def index():

    if current_user.is_authenticated == False:
        form = rs.Demande_NonAuth()
    else:
        form = rs.Demande_Auth()

    if form.validate_on_submit():


        flash('Le formulaire de réservation a été validé.', 'positive')

        demande = form.data

        if current_user.is_authenticated:
            demande['prenom'] = current_user.prenom
            demande['nom'] = current_user.nom
            demande['telephone'] = current_user.telephone
            demande['mail'] = current_user.email

        # Données de test
        demande['gare'] = True
        demande['aeroport'] = True

        demande['debut'] = datetime.datetime.strptime(demande['date_debut'], '%d-%m-%Y %H:%M')

        # Convertir les valeurs
        for key in demande.keys():
            try:
                demande[key] = eval(demande[key])
            except:
                pass

        print(demande)
        # Calcul de la tarification provisoire
        devis = tarif.estimation(demande)


        data = {
            'demande': demande,
            'devis': devis
        }


        return render_template('devis.html', data=data, titre='Devis')
    return render_template('index.html', form=form, titre='Réserver un taxi')