def local_shipping_cost(self): from apps.seller.views.shipping import calculateShippingCost if self.is_commission and not self.id: #unsaved temp product shipping_option = self.commission.base_product.shipping_options.first() return calculateShippingCost(self.weight, shipping_option, 'MA') elif self.weight and self.shipping_options.count(): return calculateShippingCost(self.weight, self.shipping_options.first(), 'MA') else: return 0
def getShippingCost(request): from apps.seller.views.shipping import calculateShippingCost if request.method == "GET": if request.GET.get('product_id', None): try: shipping_cost = Product.objects.get(id=request.GET['product_id']).shipping_cost except: pass elif request.GET.get('weight') and request.GET.get('shipping_option'): try: shipping_option = ShippingOption.objects.get(name=request.GET['shipping_option']) shipping_cost = calculateShippingCost(request.GET['weight'], shipping_option, 'US') except: pass try: response = {'shipping_cost': shipping_cost} return HttpResponse(json.dumps(response), content_type='application/json') except: return HttpResponse(status=400)#bad request