예제 #1
0
 def update_ride(ride_id, ride, driver_id, departuretime, numberplate,
                 maximum):
     """Updates ride information"""
     try:
         db_cursor = db.con()
         db_cursor.execute("UPDATE rides SET ride=%s, driver_id=%s, departuretime=%s, numberplate=%s, maximum=%s WHERE ride_id=%s",
                               (ride, driver_id, departuretime, numberplate, maximum, ride_id))
         db.commit()
         return make_response(jsonify({"message" : "user has been successfully updated"}), 200)
     except:
         return make_response(jsonify({"message" : "user does not exist"}), 404)
예제 #2
0
 def __init__(self, ride, driver_id, departuretime, numberplate, maximum, status):
     self.ride = ride
     self.driver_id = driver_id
     self.departuretime = departuretime
     self.numberplate = numberplate
     self.maximum = maximum
     self.status = status
     new_ride = "INSERT INTO rides (ride, driver_id, departuretime, numberplate, maximum, status) VALUES " \
                 "('" + self.ride + "', '" + self.driver_id + "', '" + self.departuretime + "', '" + self.numberplate + "','" + self.maximum + "','" + self.status + "' )"
     db_cursor = db.con()
     db_cursor.execute(new_ride)
     db.commit()
예제 #3
0
    def delete_request(request_id):
        """Deletes a request"""

        try:

            db_cursor = db.con()
            db_cursor.execute("DELETE FROM request WHERE request_id=%s", (request_id,))
            db.commit()

            return make_response(jsonify({"message" : "ride has been successfully deleted"}), 200)
        except:
            return make_response(jsonify({"message" : "the specified request does not exist in requests"}), 404)
예제 #4
0
    def delete_ride(ride_id):
        """Deletes a ride"""
        db_cursor = db.con()
        db_cursor.execute("SELECT * FROM rides")
        rides = db_cursor.fetchall()

        for ride in rides:
            if ride[0] == ride_id:
                db_cursor.execute("DELETE FROM rides WHERE ride_id=%s", (ride_id,))
                db.commit()

                return make_response(jsonify({"message" : "ride has been successfully deleted"}), 200)
        return make_response(jsonify({"message" : "user does not exists"}), 404)
예제 #5
0
    def __init__(self, username, email, password, admin):
        self.username = username
        self.email = email
        self.password = generate_password_hash(password, method='sha256')
        if admin == True:
            self.admin = '1'
        else:
            self.admin = '0'

        new_user = "******" \
                    "('" + self.username + "', '" + self.email + "', '" + self.password + "', '" + self.admin + "')"
        db_cursor = db.con()
        db_cursor.execute(new_user)
        db.commit()
예제 #6
0
    def start_ride(ride_id, driver_id):
        """starts a ride"""
        db_cursor = db.con()
        db_cursor.execute("SELECT * FROM rides WHERE ride_id=%s", (ride_id,))
        ride = db_cursor.fetchall()
        if ride != []:
            ride = ride[0]
            if int(ride[2]) == driver_id:
                db_cursor.execute("UPDATE rides SET status=%s WHERE ride_id=%s", ("given", ride_id,))
                db_cursor.execute("UPDATE request SET status=%s WHERE ride_id=%s and accepted=%s", ("taken", ride_id, True,))
                db_cursor.execute("UPDATE request SET status=%s WHERE ride_id=%s and accepted=%s", ("rejected", ride_id, False,))
                db.commit()

                return {"message" : "ride has started"}

            return {"message" : "The ride you want to start is not your ride."}

        return {"message" : "ride does not exist"}
예제 #7
0
    def put(self, request_id, user_id):
        """accept/reject a particular request"""
        db_cursor = db.con()
        db_cursor.execute("SELECT * FROM request WHERE request_id=%s",
                          (request_id, ))
        requesti = db_cursor.fetchall()

        if requesti == []:
            return make_response(
                jsonify({"message": "request does not exist"}), 404)

        driver_id = models.Relation.get_driver_id(request_id)
        if type(driver_id) == int and driver_id == int(user_id):
            requesti = requesti[0]
            ride_id = requesti[2]
            if requesti[4] == True:
                db_cursor = db.con()
                db_cursor.execute(
                    "UPDATE request SET accepted=%s WHERE request_id=%s",
                    (False, request_id))
                db.commit()
                return make_response(
                    jsonify({"message": "request has been rejected"}), 200)

            db_cursor.execute(
                "SELECT * FROM request WHERE ride_id=%s and accepted=%s", (
                    ride_id,
                    True,
                ))
            accepted = db_cursor.fetchall()
            total = len(accepted)
            maximum = models.Relation.get_maximum(request_id)

            if int(total) < int(maximum):
                update = models.Request.accept_request(request_id)
                return update
            return make_response(
                jsonify({"message": "maximum requests have been accepted"}),
                400)
        return make_response(
            jsonify({"message": "the request is not of your ride"}), 400)