def population(): ''' Retourne les informations pour un certain conducteur. ''' requete = db.session.execute( "select c.telephone, round((extract('epoch' from (CURRENT_TIMESTAMP - c.station_entree)))/60) temps from stations s, conducteurs c where c.station = s.nom and s.nom='<nom_station>'" ) json = outils.transformer_json(requete) return json
def getall(): ''' Retourne les informations pour un certain conducteur. ''' requete = db.session.execute( "select s.adresse, count(telephone) population from stations s, conducteurs c where c.station = s.nom group by s.nom" ) json = outils.transformer_json(requete) return json
def conducteur_propositions(telephone): ''' Retourne les propositions pour un certain conducteur. ''' # Selection d'une course disponible pour le conducteur requete = db.session.execute( "SELECT course FROM propositions WHERE conducteur = '{0}' AND statut IS NULL " .format(telephone)) # Selection de la première course de la liste first_course_liste = requete.first() if not first_course_liste: return jsonify({'status': 'echec'}) else: first_course_var = first_course_liste[0] # Création d'une variable "nombre" pour savoir si le conducteur est prioritaire sur la course requete_2 = db.session.execute( "SELECT COUNT(statut) FROM propositions WHERE statut IS NULL AND ordre < (SELECT ordre FROM propositions WHERE conducteur = '{0}' AND course = '{1}') AND course = '{1}'" .format(telephone, first_course_var)) # Transformation de la requete en variable exploitable nombre_liste = requete_2.first() nombre = nombre_liste[0] if nombre == 0: detail_course = db.session.execute( "SELECT * FROM courses WHERE numero = {}".format( first_course_var)) return outils.transformer_json(detail_course) else: return jsonify({'status': 'echec'})
def conducteur_propositions(telephone): ''' Retourne les propositions pour un certain conducteur. ''' # Selection d'une course disponible pour le conducteur requete = db.session.execute("SELECT course FROM propositions WHERE conducteur = '{0}' AND statut IS NULL ".format(telephone)) # Selection de la première course de la liste first_course_liste = requete.first() if not first_course_liste: return jsonify({'status': 'echec'}) else: first_course_var = first_course_liste[0] # Création d'une variable "nombre" pour savoir si le conducteur est prioritaire sur la course requete_2 = db.session.execute("SELECT COUNT(statut) FROM propositions WHERE statut IS NULL AND ordre < (SELECT ordre FROM propositions WHERE conducteur = '{0}' AND course = '{1}') AND course = '{1}'".format(telephone, first_course_var)) # Transformation de la requete en variable exploitable nombre_liste = requete_2.first() nombre = nombre_liste[0] if nombre == 0: detail_course = db.session.execute("SELECT * FROM courses WHERE numero = {}".format(first_course_var)) return outils.transformer_json(detail_course) else: return jsonify({'status': 'echec'})
def conducteur(telephone): ''' Retourne les informations pour un certain conducteur. ''' requete = db.session.execute("SELECT * FROM conducteurs WHERE telephone='{}'".format(telephone)) return outils.transformer_json(requete)
def adresse(identifiant): ''' Retourne les informations pour une certaine adresse. ''' requete = db.session.execute( "SELECT * FROM adresses WHERE identifiant='{}'".format(identifiant)) return outils.transformer_json(requete)
def adresse(identifiant): ''' Retourne les informations pour une certaine adresse. ''' requete = db.session.execute("SELECT * FROM adresses WHERE identifiant='{}'".format(identifiant)) return outils.transformer_json(requete)
def derniers_messages(): ''' Retourne les messages des dernières 24h. ''' requete = db.session.execute("SELECT * FROM messages WHERE moment > CURRENT_TIMESTAMP - interval '1 day'") return outils.transformer_json(requete)
def api_table(table): ''' Retourne n'importe quelle table dans la BD en format JSON. ''' requete = db.session.execute("SELECT * FROM {}".format(table)) return outils.transformer_json(requete)
def conducteur(telephone): ''' Retourne les informations pour un certain conducteur. ''' requete = db.session.execute( "SELECT * FROM conducteurs WHERE telephone='{}'".format(telephone)) return outils.transformer_json(requete)
def derniers_messages(): ''' Retourne les messages des dernières 24h. ''' requete = db.session.execute( "SELECT * FROM messages WHERE moment > CURRENT_TIMESTAMP - interval '1 day'" ) return outils.transformer_json(requete)
def population(): ''' Retourne les informations pour un certain conducteur. ''' requete = db.session.execute("select c.telephone, round((extract('epoch' from (CURRENT_TIMESTAMP - c.station_entree)))/60) temps from stations s, conducteurs c where c.station = s.nom and s.nom='<nom_station>'") json = outils.transformer_json(requete) return json
def getall(): ''' Retourne les informations pour un certain conducteur. ''' requete = db.session.execute("select s.adresse, count(telephone) population from stations s, conducteurs c where c.station = s.nom group by s.nom") json = outils.transformer_json(requete) return json
def adresse(identifiant): ''' Retourne les informations pour une certaine adresse. ''' requete = db.session.execute("SELECT identifiant,nom_rue,numero,cp,ville,ST_X(position) as lat, ST_Y(position) as lon FROM adresses WHERE identifiant='{}'".format(identifiant)) return outils.transformer_json(requete)
def imei_telephone(imei): ''' Retourne le numéro de téléphone du conducteur avec pour paramètre le numéro imei. ''' requete = db.session.execute("SELECT telephone FROM conducteurs WHERE numero_imei='{}'".format(imei)) return outils.transformer_json(requete)
def conducteur_messages(): ''' Affiche les messages des dernières 24h. ''' requete = db.session.execute("SELECT conducteur, TO_CHAR(moment,'DD/MM/YYYY HH:MI:SS') as date, sujet FROM messages WHERE moment > CURRENT_TIMESTAMP - interval '1 day' ORDER BY date DESC") return outils.transformer_json(requete)