def order(request): if request.method == 'POST': # 1.获取收货地址id值 ad_id = request.POST.get('ad_id') # 2.创建订单 user_id = request.session.get('user_id') # 获取订单号 order_sn = get_order_sn() shop_cart = ShoppingCart.objects.filter(user_id=user_id, is_select=True) # 获取总金额 order_mount = 0 for cart in shop_cart: order_mount += cart.goods.shop_price * cart.nums # 收货信息 user_address = UserAddress.objects.filter(pk=ad_id).first() order = OrderInfo.objects.create(user_id=user_id, order_sn=order_sn, order_mount=order_mount, address=user_address.address, signer_name=user_address.signer_name, signer_mobile=user_address.signer_mobile) # 3.创建订单详情 for cart in shop_cart: OrderGoods.objects.create(order=order, goods=cart.goods, goods_nums=cart.nums) # 4.删除购物车 shop_cart.delete() session_goods = request.session.get('goods') for se_goods in session_goods[:]: # se_goods结构[goods_id,nums,is_select] if se_goods[2]: session_goods.remove(se_goods) request.session['goods'] = session_goods return JsonResponse({'code': 200, 'msg': 'success'})
def order(request): if request.method == 'POST': # 获取用户id user_id = request.session.get('user_id') # 1.获取收货地址id值 ad_id = request.POST.get('ad_id') print(ad_id) # 获取地址详情 i = UserAddress.objects.filter(pk=ad_id).first() # 获取购物车详情 shop_cart = ShoppingCart.objects.filter(user_id=user_id, is_select=True) # 总金额 order_mount = 0 for cart in shop_cart: order_mount += cart.goods.shop_price * cart.nums # 获取订单号 order_sn = get_order_sn() # 2.创建订单 order = OrderInfo.objects.create(user_id=user_id, order_sn=order_sn, order_mount=order_mount, address=i.address, signer_name=i.signer_name, signer_mobile=i.signer_mobile) # 3.生成订单详情 for cart in shop_cart: OrderGoods.objects.create(order=order, goods=cart.goods, goods_nums=cart.nums) # 4.删除购物车信息 shop_cart.delete() session_goods = request.session.get('goods') for se_goods in session_goods[:]: if se_goods[2]: session_goods.remove(se_goods) request.session['goods'] = session_goods return JsonResponse({'code': 200, 'msg': '请求成功'})
def order(request): if request.method == 'POST': # 1 接收收货地址的id值 ad_id = request.POST.get('ad_id') # 2 创建订单 user_id = request.session.get('user_id') order_sn = get_order_sn() # 调入函数,产生订单号 shop_cart = ShoppingCart.objects.filter(user_id=user_id, is_select=True) # 订单金额 order_mount = 0 # 便利所有的购物车物品 for cart in shop_cart: order_mount += cart.goods.shop_price * cart.nums # 所有价格 # 收货地址 user_address = UserAddress.objects.filter(pk=ad_id).first() order = OrderInfo.objects.create( user_id=user_id, order_sn=order_sn, order_mount=order_mount, address=user_address, signer_name=user_address.signer_name, signer_mobile=user_address.signer_mobile) # 3 创建订单详情 for cart in shop_cart: OrderGoods.objects.create(order=order, goods=cart.goods, goods_nums=cart.nums) # 4 删除购物车 ( 数据库 和 session 都要考虑。) shop_cart.delete() session_goods = request.session.get('goods') for se_goods in session_goods[:]: # se_goods 结构: [goods_id, num ,is_select] if se_goods[2]: session_goods.remove(se_goods) request.session['goods'] = session_goods return JsonResponse({'code': 200, 'msg': '请求成功'})