Esempio n. 1
0
def order():

    # 创建订单模型
    # 1.获取开始和结束时间
    begin_date = request.form.get('begin_date')
    end_date = request.form.get('end_date')

    begin_date = datetime.strptime(begin_date, '%Y-%m-%d')
    end_date = datetime.strptime(end_date, '%Y-%m-%d')
    # 2.获取当前用户和房屋id
    user_id = session['user_id']
    house_id = request.form.get('house_id')
    house = House.query.get(house_id)

    order = Order()
    order.user_id = user_id
    order.house_id = house_id
    order.begin_date = begin_date
    order.end_date = end_date
    order.days = (end_date - begin_date).days + 1
    order.house_price = house.price
    order.amount = order.days * house.price
    order.add_update()

    return jsonify(code=200)
Esempio n. 2
0
def create_order():
    #获取参数
    dict = request.form
    house_id = int(dict.get('hosue_id'))

    start_date = datetime.strptime(dict.get('begin_date'), '%Y-%m-%d')
    end_date = datetime.strptime(dict.get('end_date'), '%Y-%m-%d')
    # 验证有效性
    if not all([house_id, start_date, end_date]):
        return jsonify(status_code.PARAMS_ERROR)
    if start_date > end_date:
        return jsonify(status_code.ORDER_START_END_TIME_ERROR)
    #获取房屋对象
    house = House.query.get(house_id)

    #创建订单对象
    order = Order()
    order.user_id = session['user_id']
    order.house_id = house_id
    order.begin_date = start_date
    order.end_date = end_date
    order.days = (end_date - start_date).days + 1
    order.house_price = house.price
    order.amount = order.house_price * order.days

    try:
        order.add_update()
    except:
        return jsonify(status_code.DATABASE_ERROR)
    return jsonify(code=200, msg='请求成功')
Esempio n. 3
0
def check_in():
    uid = session.get('user_id')
    hid = request.form.get('hid')
    begin = request.form.get('begin')
    end = request.form.get('end')
    days = request.form.get('days')
    price = request.form.get('price')
    amount = request.form.get('amount')

    if not all([hid, begin, end, days, price, amount]):
        return jsonify(status_code.ORDER_PARAMS_NOT_COMPLETE)

    if begin > end:
        return jsonify(status_code.ORDER_TIME_PARAMS_ERROR)

    try:
        order = Order()
        order.user_id = uid
        order.house_id = hid
        order.begin_date = begin
        order.end_date = end
        order.days = days
        order.house_price = price
        order.amount = amount

        order.add_update()
        return jsonify(status_code.SUCCESS)
    except BaseException as e:
        print(e)
        db.session.rollback()
        return jsonify(status_code.DATABASE_ERROR)
Esempio n. 4
0
def orders():
    if request.method == 'GET':
        return render_template('orders.html')

    if request.method == 'POST':
        order = Order()
        house_id = request.form.get('id')
        house = House.query.filter(House.id == house_id).first()
        user_id = session['user_id']
        start = request.form.get('start')
        end = request.form.get('end')
        start_date = datetime.datetime.strptime(start, '%Y-%m-%d')
        end_date = datetime.datetime.strptime(end, '%Y-%m-%d')
        days = (end_date - start_date).days
        totle_days = days + 1
        house_price = house.price
        money = totle_days * house_price
        order.user_id = user_id
        order.house_id = house_id
        order.begin_date = start_date
        order.end_date = end_date
        order.days = totle_days
        order.house_price = house_price
        order.amount = money
        db.session.add(order)
        db.session.commit()
        return jsonify({'code': 200, 'msg': '上传订单成功'})
Esempio n. 5
0
def my_orders():

    if session:
        start = request.form.get('start')
        end = request.form.get('end')
        # span = request.form.get('span')
        house_id = request.form.get('house_id')

        starttime = datetime.strptime(start, '%Y-%m-%d')
        endtime = datetime.strptime(end, '%Y-%m-%d')

        house = House.query.get(house_id)
        order = Order()
        order.user_id = session['user_id']
        order.house_id = house_id
        order.begin_date = starttime
        order.end_date = endtime
        order.days = (endtime - starttime).days + 1
        order.house_price = house.price
        order.amount = order.days * order.house_price
        order.add_update()

        return jsonify({'code':200, 'msg':'ok'})
    else:
        return jsonify({ 'code':1122, 'msg':'未登录' })
Esempio n. 6
0
def create_order():

    begin_date = datetime.strptime(request.form.get('begin_date'), '%Y-%m-%d')
    end_date = datetime.strptime(request.form.get('end_date'), '%Y-%m-%d')
    house_id = request.form.get('house_id')
    user_id = session['user_id']

    if not all([begin_date, end_date]):
        return jsonify(status_code.ORDER_BEGIN_END_DATA_NOT_NULL)

    if begin_date > end_date:
        return jsonify(status_code.ORDER_BEGIN_DATA_GT_END_DATE_ERROR)

    house = House.query.get(house_id)

    order = Order()
    order.user_id = user_id
    order.house_id = house_id
    order.begin_date = begin_date
    order.end_date = end_date
    order.days = (end_date - begin_date).days + 1
    order.house_price = house.price
    order.amount = order.days * order.house_price

    order.add_update()

    return jsonify(status_code.SUCCESS)
Esempio n. 7
0
def booking_post():
    house_id = request.form.get('house_id')
    house = House.query.get(house_id)
    if session['user_id'] == house.user_id:
        return jsonify(status_code.ORDER_HOUSE_USER_ID_IS_SESSION_ID)

    start_date = request.form.get('start_date')
    start_time = datetime.datetime.strptime(start_date, '%Y-%m-%d')
    end_date = request.form.get('end_date')
    end_time = datetime.datetime.strptime(end_date, '%Y-%m-%d')
    days = (end_time-start_time).days + 1
    price = House.query.get(house_id).price
    amount = days * price

    order = Order()
    order.user_id = session['user_id']
    order.house_id = request.form.get('house_id')
    order.begin_date = start_time
    order.end_date = end_time
    order.days = days
    order.house_price = price
    order.amount = amount
    order.add_update()

    return jsonify(code=status_code.OK)
Esempio n. 8
0
def order():

    order_dict = request.form

    house_id = order_dict.get('house_id')
    start_time = datetime.strptime(order_dict.get('start_time'), '%Y-%m-%d')
    end_time = datetime.strptime(order_dict.get('end_time'), '%Y-%m-%d')

    if not all([house_id, start_time, end_time]):
        return jsonify(status_code.PARAMS_ERROR)

    if start_time > end_time:
        return jsonify(status_code.ORDER_START_TIME_GT_END_TIME)

    house = House.query.get(house_id)

    order = Order()
    order.user_id = session['user_id']
    order.house_id = house_id
    order.begin_date = start_time
    order.end_date = end_time
    order.house_price = house.price
    order.days = (end_time - start_time).days + 1
    order.amount = order.days * order.house_price

    try:
        order.add_update()
        return jsonify(code=status_code.OK)
    except:
        return jsonify(status_code.DATABASE_ERROR)
Esempio n. 9
0
def create_order():
    try:
        user_id = session['user_id']
    except:
        user_id = None
    if not user_id:
        return jsonify(status_code.LOGIN_STATUS_NOT_LOGIN)
    house_id = request.form.get('house_id')
    house = House.query.filter(House.id == house_id).first()
    price = house.price
    max_days = house.max_days
    sd = request.form.get('sd')
    ed = request.form.get('ed')
    sd = datetime.datetime.strptime(sd, '%Y-%m-%d')
    ed = datetime.datetime.strptime(ed, '%Y-%m-%d')
    if ed <= sd:
        return jsonify(status_code.BOOKING_STATUS_DATE_ERROR)
    days = (ed - sd).days
    if max_days != 0 and days > max_days:
        return jsonify(status_code.BOOKING_STATUS_MAX_DAYS_ERROR)
    amount = price * days
    order = Order()
    order.house_id = house_id
    order.user_id = user_id
    order.begin_date = sd
    order.end_date = ed
    order.days = days
    order.house_price = price
    order.amount = amount
    order.status = 'WAIT_ACCEPT'
    order.add_update()
    return jsonify(status_code.SUCCESS)
Esempio n. 10
0
def booking():
    if request.method == 'GET':
        return render_template('booking.html')
    if request.method == 'POST':
        house_id = int(request.form.get('house_id'))
        house = House.query.filter(House.id == house_id).first()
        days = request.form.get('days')
        max_days = house.max_days
        begin_date = request.form.get('begin_date')
        end_date = request.form.get('end_date')
        begin_date = datetime.strptime(begin_date, '%Y-%m-%d')
        end_date = datetime.strptime(end_date, '%Y-%m-%d')
        amount = request.form.get('amount')
        user_id = session.get('user_id')
        order = Order()
        if house.max_days == 0 or days <= max_days:
            order.days = days
            order.house_id = house_id
            order.user_id = user_id
            order.begin_date = begin_date
            order.end_date = end_date
            order.house_price = house.price
            order.amount = amount
            order.add_update()
            return jsonify({'code': 200, 'msg': '请求成功'})
        return jsonify({'code': 10000, 'msg': '请求成功'})
Esempio n. 11
0
def order():
    # 接收参数
    house_id = int(request.form.get('house_id'))
    start_date = datetime.strptime(request.form.get('start_date'), '%Y-%m-%d')
    end_date = datetime.strptime(request.form.get('end_date'), '%Y-%m-%d')
    # 验证有效性
    if not all([house_id, start_date, end_date]):
        return jsonify(status_code.PARAMS_ERROR)
    if start_date > end_date:
        return jsonify(status_code.ORDER_START_END_TIME_ERROR)
    # 查询房屋对象
    try:
        house = House.query.get(house_id)
    except:
        return jsonify(status_code.DATABASE_ERROR)
    # 创建订单对象
    order = Order()
    order.user_id = session['user_id']
    order.house_id = house_id
    order.begin_date = start_date
    order.end_date = end_date
    order.days = (end_date - start_date).days + 1
    order.house_price = house.price
    order.amount = order.days * order.house_price

    try:
        order.add_update()
    except:
        return jsonify(status_code.DATABASE_ERROR)

    # 返回信息
    return jsonify(code=status_code.OK)
Esempio n. 12
0
def add_orders():
    """
    添加订单
    :return:
    """
    s_date = request.form.get('start_date')
    e_date = request.form.get('end_date')
    h_id = request.form.get('house_id')
    days = request.form.get('days')

    # 不在选择区间的已完成或者待接单的订单
    order1 = Order.query.filter(Order.end_date > s_date,
                                Order.begin_date <= s_date,
                                Order.status != 'REJECTED').all()
    order2 = Order.query.filter(Order.end_date >= e_date,
                                Order.begin_date <= e_date,
                                Order.status != 'REJECTED').all()

    # 在选择区间内的待接单和已完成的订单
    # 所有的订单 和 房屋
    house1 = House.query.all()

    # 不能预订的房源id
    f_house_id = []
    for order in order1:
        f_house_id.append(order.house_id)
    for order in order2:
        f_house_id.append(order.house_id)

    house_id = []
    for house in house1:
        if house.id not in f_house_id:
            house_id.append(house.id)

    # 获取到有效的房屋id值 并去重
    houses_id = list(set(house_id))
    # 获取
    #  =======================================================================
    if int(h_id) in houses_id:
        order = Order()

        order.begin_date = s_date
        order.end_date = e_date
        order.house_id = h_id
        order.days = days

        house = House.query.get(order.house_id)
        house.order_count += 1
        order.house_price = house.price
        order.amount = request.form.get('amount')
        order.user_id = session['user_id']
        order.add_update()
        house.add_update()
        return jsonify({'code': 200, 'msg': '请求成功!'})

    already_order = Order.query.filter(Order.house_id == h_id,
                                       Order.status != 'REJECTED').first()
    data = already_order.to_dict()
    return jsonify({'code': 1001, 'msg': '该时间段已被预订', 'data': data})
Esempio n. 13
0
def order_booking():
    order = Order()
    order.house_id = session['house_id']
    order.user_id = session['id']
    order.begin_date = request.form.get('sd')
    order.end_date = request.form.get('ed')
    order.house_price = request.form.get('price')
    order.amount = request.form.get('amount')
    order.days = request.form.get('days')
    order.save()
    return jsonify({'code': 200, 'msg': '请求成功'})
Esempio n. 14
0
def submit_order(id):
    order = Order()
    order.user_id = session.get('user_id')
    order.house_id = id
    order.begin_date = request.form.get('startDate')
    order.end_date = request.form.get('endDate')
    order.days = request.form.get('days')
    order.house_price = request.form.get('price')
    order.amount = request.form.get('amount')
    order.add_update()
    return jsonify({'code': 200, 'msg': '请求成功'})
Esempio n. 15
0
def stay():
    if request.method == 'POST':
        order = Order()
        order.amount = request.form.get('t')[1:].split('.')[0]
        order.days = request.form.get('d')
        order.begin_date = request.form.get('st')
        order.end_date = request.form.get('et')
        order.house_price = int(order.amount) / int(order.days)
        order.user_id = session['user_id']
        order.house_id = request.form.get('h_id')

        order.add_update()

        return jsonify({'code': 200, 'msg': '请求成功'})
Esempio n. 16
0
def orders_post():
    house_id = request.form.get('house_id')
    begin_date = datetime.strptime(request.form.get('begin_date'), '%Y-%m-%d')
    end_date = datetime.strptime(request.form.get('end_date'), '%Y-%m-%d')
    house = House.query.get(house_id)
    order = Order()
    order.house_id = house_id
    order.user_id = session['user_id']
    order.begin_date = begin_date
    order.end_date = end_date
    order.days = (end_date - begin_date).days + 1
    order.house_price = house.price
    order.amount = order.house_price * order.days
    order.add_update()
    return jsonify(status_code.SUCCESS)
Esempio n. 17
0
def order():
    house_id = request.form.get('house_id')
    start_date = datetime.strptime(request.form.get('begin_date'), '%Y-%m-%d')
    end_date = datetime.strptime(request.form.get('end_date'), '%Y-%m-%d')
    house = House.query.filter(House.id == house_id).first()

    order = Order()
    order.user_id = session['user_id']
    order.house_id = house_id
    order.begin_date = start_date
    order.end_date = end_date
    order.days = (end_date - start_date).days
    order.house_price = house.price
    order.amount = order.days * order.house_price
    order.add_update()
    return jsonify(code=200, msg='ok', data=order.to_dict())
Esempio n. 18
0
def my_orders():
    order_dict = request.form
    house_id = order_dict.get('house_id')
    start_date = datetime.strptime(order_dict.get('start_date'), '%Y-%m-%d')
    end_date = datetime.strptime(order_dict.get('end_date'), '%Y-%m-%d')
    if not all([start_date,end_date]):
        return jsonify({'code':1001,'msg':'请选择日期'})

    house = House.query.get(house_id)
    order = Order()
    order.user_id = current_user.id
    order.house_id = house_id
    order.begin_date = start_date
    order.end_date = end_date
    order.days = (end_date - start_date).days + 1
    order.house_price = house.price
    order.amount = order.days * order.house_price
    order.add_update()
    return jsonify({'code':200})
Esempio n. 19
0
def orders_info():
    if request.method == 'POST':
        start_date = request.form.get('start_date')
        end_date = request.form.get('end_date')
        # order_amount = request.form.get('order_amount')
        days_amount = request.form.get('days_amount')

        house_id = session.get('house_id')
        user_id = session.get('user_id')
        house = House.query.get(house_id)

        order = Order()
        order.user_id = user_id
        order.house_id = house_id
        order.begin_date = start_date
        order.end_date = end_date
        days = int(float(days_amount) / house.price)
        # 判断days是否大于规定的
        if days > house.max_days or days < house.min_days:
            return jsonify({'code': 1111, 'msg': '日期有误,请重新选择!'})

        order.days = days
        order.house_price = house.price
        order.amount = days_amount
        order.add_update()
        session['order_id'] = order.id
        return jsonify({'code': 200, 'msg': '接收数据成功'})

    if request.method == 'GET':
        # 生成订单号
        seed = "1234567890abcdefghijklmnopqrstuvwxyz"
        sa = []
        for i in range(11):
            sa.append(random.choice(seed))
        order_num = ''.join(sa)
        order_id = session.get('order_id')
        order = Order.query.get(order_id)
        return jsonify({
            'code': 200,
            'msg': '接收数据成功',
            'order': order.to_dict(),
            'order_num': order_num
        })
Esempio n. 20
0
def my_order():
    house_id = request.form.get('house_id')
    begin_date = datetime.strptime(request.form.get('begin_date'), '%Y-%m-%d')
    end_date = datetime.strptime(request.form.get('end_date'), '%Y-%m-%d')

    house = House.query.get(house_id)

    order = Order()
    order.user_id = session['user_id']
    order.house_id = house_id
    order.begin_date = begin_date
    order.end_date = end_date
    order.days = (end_date - begin_date).days + 1
    order.house_price = house.price
    order.amount = order.days * order.house_price

    order.add_update()

    return jsonify({'code': 200, 'msg': '请求成功'})
Esempio n. 21
0
def submit_order():
    """提交订单"""
    # 获取数据
    user_id = session.get('user_id')
    if not user_id:
        return jsonify(status.NOT_LOGIN)
    house_id = session.get('house_id')
    sd = request.form.get('sd')
    ed = request.form.get('ed')

    house = House.query.filter(House.id == house_id).first()
    price = house.price
    days = int(request.form.get('days'))
    if not days >= house.min_days:
        return jsonify(status.SORT_TIME)
    max_days = house.max_days if house.max_days else 99999
    if not days <= max_days:
        return jsonify(status.LONG_TIME)
    sd = datetime.strptime(sd, '%Y-%m-%d')
    ed = datetime.strptime(ed, '%Y-%m-%d')

    # 拿到所有订单判断时间段
    orders = Order.query.filter(
        and_(Order.house_id == house_id,
             Order.status.in_(['WAIT_PAYMENT', 'PAID', 'WAIT_COMMENT'])))
    for order in orders:
        if ((order.begin_date <= sd) and (sd < order.end_date)) or \
                ((order.begin_date < ed) and (ed < order.end_date)):
            return jsonify({'code': 990, 'msg': '此时间段已被预订'})

    amount = price * days

    order = Order()
    order.user_id = user_id
    order.house_id = house_id
    order.begin_date = sd
    order.end_date = ed
    order.days = days
    order.house_price = price
    order.amount = amount
    order.add_update()
    return jsonify(status.SUCCESS)
Esempio n. 22
0
def my_order():
    # 获取用户id, 开始时间, 结束时间
    order_dict = request.form
    house_id = order_dict.get('house_id')
    begin_date = datetime.strptime(order_dict.get('begin_date'), '%Y-%m-%d')
    end_date = datetime.strptime(order_dict.get('end_date'), '%Y-%m-%d')

    house = House.query.get(house_id)

    order = Order()
    order.user_id = session['user_id']
    order.house_id = house_id
    order.begin_date = begin_date
    order.end_date = end_date
    order.days = (end_date - begin_date).days + 1
    order.house_price = house.price
    order.amount = order.days * order.house_price
    order.add_update()

    return jsonify(status_code.SUCCESS)
Esempio n. 23
0
def booking_data():
    house_id = int(request.form.get('house_id'))
    start_time = request.form.get('start_time')
    end_time = request.form.get('end_time')
    days = request.form.get('days')
    house_price = request.form.get('house_price')
    amount = request.form.get('amount')
    user_id = session.get('user_id')
    user_order = Order()
    user_order.user_id = user_id
    user_order.house_id = house_id
    user_order.begin_date = start_time
    user_order.end_date = end_time
    user_order.days = days
    user_order.house_price = house_price
    user_order.amount = amount
    user_order.add_update()
    house = House.query.filter_by(id=house_id).first()
    house.order_count += 1
    house.add_update()
    return jsonify({'code': 200, 'msg': '请求成功'})
Esempio n. 24
0
def orders_post():
    house_id = request.form.get('house_id')
    start_date = request.form.get('start_date')
    start_time = datetime.datetime.strptime(start_date, '%Y-%m-%d')
    end_date = request.form.get('end_date')
    end_time = datetime.datetime.strptime(end_date, '%Y-%m-%d')
    days = (end_time-start_time).days + 1
    price = House.query.get(house_id).price
    amount = days * price

    order = Order()
    order.user_id = session['user_id']
    order.house_id = request.form.get('house_id')
    order.begin_date = start_time
    order.end_date = end_time
    order.days = days
    order.house_price = price
    order.amount = amount
    order.add_update()

    return jsonify(status_code.OK)
Esempio n. 25
0
def my_booking():
    data = request.form
    user_id = session['user_id']

    if 'house_id' in data:
        order = Order()
        order.house_id = data.get('house_id')
        order.user_id = user_id
        order.begin_date = data.get('sd')
        order.end_date = data.get('ed')
        order.days = data.get('days')
        order.house_price = data.get('price')
        order.amount = data.get('amount')
        order.add_update()

        return jsonify({
            'code': 200,
            'msg': '订单信息提交成功',
        })

    return jsonify({'code': 1000})
Esempio n. 26
0
def add_order():
    if request.method == 'POST':
        startdate = request.form.get('startdate')
        enddate = request.form.get('enddate')
        house_id = request.form.get('house_id')
        days = int(request.form.get('days'))
        house = House.query.filter(House.id == house_id).first()
        if int(house.max_days) == 0:
            max_day = 100000
        else:
            max_day = int(house.max_days)
        # 判断输入入住时间是否合法
        if all([startdate, enddate, house_id]):
            # 判断入住时间是否在范围内
            if (int(house.min_days) <= days <= max_day):
                # 判断下单房源是不是自己发布的房源
                user_id = session.get('user_id')
                if house.user_id == user_id:
                    return jsonify({'code': 702, 'msg': '不能对自己的房源下单!'})
                else:
                    # 确定不是自己房源之后,执行下单操作
                    house_price = house.price
                    amount = house_price * days
                    status = "WAIT_ACCEPT"
                    # 创建订单
                    order = Order()
                    order.user_id = user_id
                    order.house_id = house_id
                    order.begin_date = startdate
                    order.end_date = enddate
                    order.days = days
                    order.house_price = house_price
                    order.amount = amount
                    order.status = status
                    order.add_update()
                    return jsonify({'code': 200, 'msg': '提交订单成功!'})
            else:
                return jsonify({'code': 701, 'msg': '请输入在可入住范围内选择入住时间!'})
        else:
            return jsonify({'code': 700, 'msg': '请选择正确的入住时间!'})
Esempio n. 27
0
def my_booking():
    # 获取数据
    house_id = request.form.get('house_id')
    start_date = request.form.get('start_date')
    end_date = request.form.get('end_date')
    order_price = request.form.get('order_price')
    one_price = request.form.get('one_price')
    all_price = order_price.split('(')[0]
    day = order_price.split('共')[1].split('晚')[0]

    # 存入数据库
    order = Order()
    order.user_id = session['user_id']
    order.house_id = house_id
    order.begin_date = start_date
    order.end_date = end_date
    order.days = day
    order.house_price = one_price
    order.amount = all_price
    order.add_update()

    return jsonify({'code': 200, 'msg': '请求成功'})
Esempio n. 28
0
def my_order():
    begin_date = datetime.strptime(request.form.get('begin_date'), '%Y-%m-%d')
    end_date = datetime.strptime(request.form.get('end_date'), '%Y-%m-%d')

    # 获取当前用户和房屋id
    user_id = current_user.id
    house_id = request.form.get('house_id')
    # 获取房屋对象
    house = House.query.get(house_id)

    if house.user_id == user_id:
        return jsonify(status_code.USER_HOUSE_IS_NOT_SAME)
    order = Order()
    order.user_id = user_id
    order.house_id = house_id
    order.begin_date = begin_date
    order.end_date = end_date
    order.days = (end_date - begin_date).days + 1
    order.amount = order.days * house.price
    order.house_price = house.price
    order.add_update()
    return jsonify(status_code.SUCCESS)
Esempio n. 29
0
def create_order():
    id = request.form.get('id')
    sd = request.form.get('sd')
    ed = request.form.get('ed')
    user_id = session.get('user_id')
    sd = datetime.datetime.strptime(sd, '%Y-%m-%d')
    ed = datetime.datetime.strptime(ed, '%Y-%m-%d')
    days = (ed - sd).days
    house = House.query.filter(House.id == id).first()
    price = house.price
    amount = days * price
    order = Order()
    order.user_id = user_id
    order.house_id = id
    order.begin_date = sd
    order.end_date = ed
    order.days = days
    order.house_price = price
    order.amount = amount
    order.status = 'WAIT_ACCEPT'
    order.add_update()
    return jsonify({'code': 200})
Esempio n. 30
0
def my_booking(id):

    if request.method == 'POST':

        day = session.get('day')
        if not day:
            REQUEST_FAIL['msg'] = '请选择居住时间!'
            return jsonify(REQUEST_FAIL)

        # 获取时间
        min_day = session.get('begin_date')
        max_day = session.get('end_date')

        min_day = datetime.strptime(min_day, '%Y-%m-%d').date()
        max_day = datetime.strptime(max_day, '%Y-%m-%d').date()

        house = House.query.filter(House.id == id).first()

        if not house:
            REQUEST_FAIL['msg'] = '预定失败!'
            return jsonify(REQUEST_FAIL)

        amount = house.price * int(day)

        # 获取一个order对象列表
        order = Order()

        order.user_id = session.get('user_id')
        order.house_id = house.id
        order.begin_date = min_day
        order.end_date = max_day
        order.days = day
        order.house_price = house.price
        order.amount = amount

        order.save()

        return jsonify(REQUEST_SUCCESS)