| @@ -212,16 +212,19 @@ def good_exchange(request): | ||
| 212 | 212 | good.left_num -= 1 | 
| 213 | 213 | good.save() | 
| 214 | 214 |  | 
| 215 | - GoodsOrderInfo.objects.create( | |
| 216 | - user_id=user_id, | |
| 217 | - good_id=good_id, | |
| 218 | - good_type=good.good_type, | |
| 219 | - title=good.title, | |
| 220 | - name=name, | |
| 221 | - phone=phone, | |
| 222 | - address=address, | |
| 223 | - integral=good.integral, | |
| 224 | - ) | |
| 215 | + # 校验重复兑换 | |
| 216 | + is_exists = GoodsOrderInfo.objects.filter(user_id=user_id, good_id=good_id, status=True).exists() | |
| 217 | + if not is_exists: | |
| 218 | + GoodsOrderInfo.objects.create( | |
| 219 | + user_id=user_id, | |
| 220 | + good_id=good_id, | |
| 221 | + good_type=good.good_type, | |
| 222 | + title=good.title, | |
| 223 | + name=name, | |
| 224 | + phone=phone, | |
| 225 | + address=address, | |
| 226 | + integral=good.integral, | |
| 227 | + ) | |
| 225 | 228 |  | 
| 226 | 229 | if good.good_type == GoodsInfo.PHYSICAL: | 
| 227 | 230 | # TODO: 通知客服发快递 |