Exemple #1
0
def book():
    data = {}
    name = request.form['name']
    mobile = request.form['mobile']
    date_input = request.form['date']
    time = request.form['time']
    timestamp = date_input +  " " + time
    datetimeformat = dt.datetime.strptime(timestamp, '%d-%m-%Y %I:%M %p') 

    user = User.get_or_none(User.mobile_num == mobile)
    bookSlotValidate = Booking.select().where(Booking.booking_time == datetimeformat)
    if len(bookSlotValidate) > 0:
        slot_booked = check_slot_available(datetimeformat,[slot.booking_time for slot in bookSlotValidate])
        if slot_booked == 0:
            res = make_response(jsonify('Slot was Booked by Other user'),422)
            return res
        
    booking = Booking(booking_time = datetimeformat, user = user , slot =1 )
    booking.save()
       
    data['name'] = name
    data['mobile'] = mobile
    data['booking_time'] = datetimeformat
    # return redirect('users/new.html')
    res = make_response(jsonify(data),200)
    return res
Exemple #2
0
def booking_new():
    current_user = get_jwt_identity()
    if get_jwt_header()['type'] == "User":
        response = request.get_json()
        user = User.get_or_none(User.email == current_user)
        new_booking = Booking(user=user.id, chef=response['chef'], address=response['address'], service_type=response['service_type'], pax=response['pax'], meal_type=response['meal_type'], menu_type=response['menu_type'], hob_type=response['hob_type'], no_of_hob=response['no_of_hob'], oven=response['oven'], price=response['price'], diet_restrictions=response['diet_restrictions'], proposed_date=response['proposed_date'], message=response['message'], completed=False, payment_status=False, confirmed=False, active=True, cancelled=False)
        if new_booking.save():
            return jsonify({
                "message": "Successfully created new booking",
                "status": "success",
                "booking_id": new_booking.id,
                "chef_id": new_booking.chef_id,
                "user_id": new_booking.user_id,
                "completed":new_booking.completed,
                "payment_status":new_booking.payment_status,
                "confirmed":new_booking.confirmed,
                "active":new_booking.active,
                "cancelled":new_booking.cancelled
            }), 200
        else:
            return jsonify({
                "message": "failed to create new booking",
                "status": "failed"
            }), 400
    else:
        return jsonify(message="You are logged in as Chef, not User ", status="success"), 400
Exemple #3
0
def book():
    data = {}
    name = request.form['name']
    mobile = request.form['mobile']
    date_input = request.form['date']
    time = request.form['time']
    timestamp = date_input + " " + time
    datetimeformat = dt.datetime.strptime(timestamp, '%d-%m-%Y %I:%M %p')

    user = User.get_or_none(User.mobile_num == mobile)
    booking = Booking(booking_time=datetimeformat, user=user, slot=1)
    booking.save()

    data['name'] = name
    data['mobile'] = mobile
    data['booking_time'] = datetimeformat

    return redirect(url_for('users.new'))