Esempio n. 1
0
    def create(self, request, object_ptr, *args, **kwargs):
        if request.data is None:
            return rc.BAD_REQUEST

        order = getOrNone(SaleOrder, pk=object_ptr)
        if not order:
            return rc.NOT_FOUND

        if not request.user.get_profile().has_permission(order, mode='x'):
            return rc.FORBIDDEN

        ordered_product = OrderedProduct()
        ordered_product.order = order
        form = OrderedProductForm(request.user.get_profile(),
                                  order,
                                  request.data,
                                  instance=ordered_product)
        if form.is_valid():
            ordered_product = form.save(commit=False)
            convert(ordered_product,
                    'rate',
                    currency=ordered_product.order.currency)
            ordered_product.set_user_from_request(request)
            ordered_product.order.update_total()
            return ordered_product
        else:
            self.status = 400
            return form.errors
Esempio n. 2
0
    def create(self, request, object_ptr, *args, **kwargs):
        if request.data is None:
            return rc.BAD_REQUEST

        order = getOrNone(SaleOrder, pk=object_ptr)
        if not order:
            return rc.NOT_FOUND

        if not request.user.get_profile().has_permission(order, mode='x'):
            return rc.FORBIDDEN

        ordered_product = OrderedProduct()
        ordered_product.order = order
        form = OrderedProductForm(
            request.user.get_profile(), order, request.data, instance=ordered_product)
        if form.is_valid():
            ordered_product = form.save(commit=False)
            convert(
                ordered_product, 'rate', currency=ordered_product.order.currency)
            ordered_product.set_user_from_request(request)
            ordered_product.order.update_total()
            return ordered_product
        else:
            self.status = 400
            return form.errors