|  |  | @@ -552,18 +552,22 @@ def consumer_shot_unbinding(request): | 
            
            
              | 552 | 552 |      except UserInfo.DoesNotExist: | 
            
            
              | 553 | 553 |          return response(UserStatusCode.USER_NOT_FOUND) | 
            
            
              | 554 | 554 |   | 
            
            
              | 555 |  | -    ConsumeInfoSubmitLogInfo.objects.filter(model_id=model_id, serialNo=sn).update(delete_type=ConsumeInfoSubmitLogInfo.UNBINDING, status=False) | 
            
            
              |  | 555 | +    exist = ConsumeInfoSubmitLogInfo.objects.filter(user_id=user_id, model_id=model_id, serialNo=sn, dupload=False, test_user=False).exists() | 
            
            
              | 556 | 556 |   | 
            
            
              | 557 |  | -    if user.shots_num <= 5: | 
            
            
              | 558 |  | -        user.level -= 1 | 
            
            
              | 559 |  | -    user.shots_num -= 1 | 
            
            
              | 560 |  | -    user.save() | 
            
            
              |  | 557 | +    if exist: | 
            
            
              |  | 558 | +        ConsumeInfoSubmitLogInfo.objects.filter(model_id=model_id, serialNo=sn).update(delete_type=ConsumeInfoSubmitLogInfo.UNBINDING, status=False) | 
            
            
              |  | 559 | +        if user.shots_num <= 5: | 
            
            
              |  | 560 | +            user.level -= 1 | 
            
            
              |  | 561 | +        user.shots_num -= 1 | 
            
            
              |  | 562 | +        user.save() | 
            
            
              | 561 | 563 |   | 
            
            
              | 562 |  | -    ConsumeShotUnbindingInfo.objects.update_or_create(user_id=user_id, submit_pk=submit_pk, defaults={ | 
            
            
              | 563 |  | -        'model_id': model_id, | 
            
            
              | 564 |  | -        'sn': sn, | 
            
            
              | 565 |  | -        'submit_at': submit_at, | 
            
            
              | 566 |  | -        'reason': reason, | 
            
            
              | 567 |  | -    }) | 
            
            
              |  | 564 | +        ConsumeShotUnbindingInfo.objects.update_or_create(user_id=user_id, submit_pk=submit_pk, defaults={ | 
            
            
              |  | 565 | +            'model_id': model_id, | 
            
            
              |  | 566 | +            'sn': sn, | 
            
            
              |  | 567 | +            'submit_at': submit_at, | 
            
            
              |  | 568 | +            'reason': reason, | 
            
            
              |  | 569 | +        }) | 
            
            
              |  | 570 | +    else: | 
            
            
              |  | 571 | +        ConsumeInfoSubmitLogInfo.objects.filter(user_id=user_id, model_id=model_id, serialNo=sn).update(delete_type=ConsumeInfoSubmitLogInfo.UNBINDING, status=False) | 
            
            
              | 568 | 572 |   | 
            
            
              | 569 | 573 |      return response(200, 'Consume Shot Unbinding Success', u'消费者镜头解绑成功') |