校验未填地址

FFIB 3 年之前
父節點
當前提交
dd39f43953
共有 2 個文件被更改,包括 5 次插入0 次删除
  1. 4 0
      api/member_views.py
  2. 1 0
      utils/error/errno_utils.py

+ 4 - 0
api/member_views.py

@@ -209,6 +209,10 @@ def good_exchange(request):
209 209
         # 校验重复兑换
210 210
         if good.only_once and GoodsOrderInfo.objects.filter(user_id=user_id, good_id=good_id, status=True).exists():
211 211
             return response(MemberGoodStatusCode.GOOD_EXCHANGE_ONLY_ONCE)
212
+        
213
+        if good.good_type == GoodsInfo.PHYSICAL and address == '':
214
+            return response(MemberGoodStatusCode.GOOD_NO_ADDRESS)
215
+
212 216
 
213 217
         user.integral -= good.integral
214 218
         user.save()

+ 1 - 0
utils/error/errno_utils.py

@@ -82,6 +82,7 @@ class MemberGoodStatusCode(BaseStatusCode):
82 82
     GOOD_INTEGRAL_NOT_ENOUGH = StatusCodeField(503503, 'Good Integral Not Enough', description=u'商品兑换积分不足')
83 83
     GOOD_STOCK_NOT_ENOUGH = StatusCodeField(503504, 'Good Integral Not Enough', description=u'商品库存不足')
84 84
     GOOD_EXCHANGE_ONLY_ONCE = StatusCodeField(503505, 'Good Exchange Only Once', description=u'商品仅可兑换一次')
85
+    GOOD_NO_ADDRESS = StatusCodeField(503506, 'Good Exchange No Address', description=u'实物商品需填写地址')
85 86
 
86 87
 
87 88
 class MemberRightStatusCode(BaseStatusCode):