|
@@ -205,8 +205,14 @@ class ProductOrderViewSet(generics.ListAPIView):
|
|
|
|
|
|
|
|
|
class ProductOrderSaveViewSet(generics.CreateAPIView):
|
|
|
+ permission_classes = [IsCustomerUser, ]
|
|
|
+ serializer_class = ProductOrderSerializer
|
|
|
+
|
|
|
def create(self, request, *args, **kwargs):
|
|
|
with transaction.atomic():
|
|
|
+ wechat_customer = CustomerWechat.objects.filter(customer=request.customer).first()
|
|
|
+ if not wechat_customer or not wechat_customer.openid:
|
|
|
+ raise CustomError(u'获取到用户!')
|
|
|
serializer = self.get_serializer(data=request.data)
|
|
|
serializer.is_valid(raise_exception=True)
|
|
|
serializer.save()
|
|
@@ -217,17 +223,14 @@ class ProductOrderSaveViewSet(generics.CreateAPIView):
|
|
|
instance.save()
|
|
|
tenant_log(instance.customer.user, BizLog.INSERT, u'添加商品订单,no=%s' % instance.no, validated_data)
|
|
|
else:
|
|
|
- openid = request.POST.get('openid', None)
|
|
|
- if not openid:
|
|
|
- raise CustomError(u'未获取openid!')
|
|
|
- pay_package, query_string = PayProduct.addnew(instance, openid)
|
|
|
+ pay_package, query_string = PayProduct.addnew(instance, wechat_customer.openid)
|
|
|
tenant_log(instance.customer.user, BizLog.INSERT, u'添加商品订单,no=%s' % instance.no, validated_data)
|
|
|
if query_string:
|
|
|
return response_ok(query_string)
|
|
|
return response_ok()
|
|
|
|
|
|
|
|
|
-class CustomerVehicleViewSet(generics.ListCreateAPIView):
|
|
|
+class CustomerVehicleViewSet(CustomModelViewSet):
|
|
|
permission_classes = [IsCustomerUser, ]
|
|
|
queryset = CustomerVehicle.objects.filter()
|
|
|
serializer_class = CustomerVehicleSerializer
|
|
@@ -371,17 +374,22 @@ class PlanProductOrderView(APIView):
|
|
|
|
|
|
product_item = {}
|
|
|
if product_order:
|
|
|
+ cover = {}
|
|
|
+ if product_order.cover_id:
|
|
|
+ cover = {'width': product_order.cover.width, 'height': product_order.cover.height, 'url': product_order.cover.get_path()}
|
|
|
product_item = {
|
|
|
+ 'id':product_order.id,
|
|
|
'name': product_order.name,
|
|
|
'describe': product_order.describe,
|
|
|
'notes': product_order.notes,
|
|
|
- 'cover': product_order.cover_id and '{}{}'.format(settings.MEDIA_URL, product_order.cover.picture) or '',
|
|
|
+ 'cover':cover,
|
|
|
'price': Formater.formatPriceShow(product_order.price),
|
|
|
}
|
|
|
|
|
|
address_item = {}
|
|
|
if address_order:
|
|
|
address_item = {
|
|
|
+ 'id': address_order.id,
|
|
|
'name': address_order.name,
|
|
|
'tel': address_order.tel,
|
|
|
'area': address_order.area,
|