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')
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']
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')