def order_submit(request): if request.method != 'POST': return HttpResponseNotAllowed(['POST']) market_abbrev = request.POST['market'] amount = float(request.POST['amount']) market_order = ('market_order' in request.POST.keys) price = float(request.POST['price']) order_type = request.POST['type'] market = Market.objects.get(abbrev=market_abbrev) order = Order() order.market = market order.amount = amount order.type = order_type if market_order: order.market_order = True else: order.market_order = False order.price = price order.save() market.market_api.api_execute_order(order) return render_to_response('trader/json/success_plain.json', content_type="application/json", context_instance=RequestContext(request))
def add_order_item(): data = request.get_json() products = data['products'] total_price = 0 new_order_public_id = str(uuid.uuid4()) new_order = Order( public_id=new_order_public_id, customer_id=data['customer_id'], store_id=data['store_id'], date=datetime.datetime.utcnow(), payment_method=data['payment_method'], payment_confirmation_id=data['payment_confirmation_id'] ) print(new_order) db.session.add(new_order) db.session.commit() for product in products: new_product = OrderItem( public_id=str(uuid.uuid4()), product_id=product['product_id'], quantity=product['quantity'], price=product['price'], order_obj=new_order ) total_price = total_price + (product['quantity']*product['price']) db.session.add(new_product) db.session.commit() new_order = Order.query.filter_by(public_id=new_order_public_id).first() new_order.amount = total_price db.session.commit() return jsonify({'message': 'order created'})
def booking(): #接收参数 dict=request.form house_id=int(dict.get('house_id')) start_date=datetime.strptime(dict.get('start_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(code=RET.PARAMERR,msg=ret_map[RET.PARAMERR]) if start_date>end_date: return jsonify(code=RET.PARAMERR,msg=ret_map[RET.PARAMERR]) #查询房屋对象 try: house=House.query.get(house_id) except: logging.error(u'下订单-查询房屋出错,房屋编号%d'%house_id) return jsonify(code=RET.DBERR,msg=ret_map[RET.DBERR]) #创建订单对象 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: logging.error(u'下订单-出错') return jsonify(code=RET.DBERR,msg=ret_map[RET.DBERR]) #返回信息 return jsonify(code=RET.OK)
def write_order_in_bd(form): order = Order() order.email = form.email.data order.adress = form.adress.data order.phone = form.phone.data order.status = "в работе" order.amount = session["amount_order"] order.time = datetime.datetime.now() db.session.add(order) for meal in session["cart"]: meal = db.session.query(Meal).get(meal["id"]) order.meals.append(meal) user = db.session.query(User).get(session["user"]["id"]) user.orders.append(order) db.session.add(user) db.session.commit()
def cart(): deleted = session['deleted'] session['deleted'] = False form = OrderForm() if form.validate_on_submit(): order = Order() user = db.session.query(User).get(session['user_id']) order.user_id = user.id order.amount = sum(list(map(int, session.get('cart_price')))) order.name = flask.request.form.get('name') order.phone = flask.request.form.get('phone') order.address = flask.request.form.get('address') order.mail = flask.request.form.get('mail') order.date = datetime.now() order.status = 'Принят' meals = list(map(int, session.get('cart_id'))) for meal in meals: meal = db.session.query(Meal).get(meal) order.meals.append(meal) db.session.add(order) db.session.commit() session['cart_id'] = [] session['cart_price'] = [] return redirect('/ordered/') else: meals = [] for meal in session.get('cart_id'): meal = db.session.query(Meal).get(meal) meals.append(meal) # Проверяем прошел ли пользователь аутентификацию if session.get('user_id'): user = db.session.query(User).get(session['user_id']) form.mail.data = user.mail return render_template('cart.html', meals=meals, form=form, deleted=deleted)