|
|
|
|
@ -801,26 +801,32 @@ class Payment(models.Model): |
|
|
|
|
payment = super(Payment, self).save(*args, **kwargs) |
|
|
|
|
return payment |
|
|
|
|
|
|
|
|
|
def confirmed_purchase(self, **kwargs): |
|
|
|
|
try: |
|
|
|
|
self.status = self.SUCCESS |
|
|
|
|
self.date = datetime.now().date() |
|
|
|
|
self.save() |
|
|
|
|
except Payment.DoesNotExist: |
|
|
|
|
log.info(f"payment with id={kwargs['InvId']} not found") |
|
|
|
|
|
|
|
|
|
def confirmed_purchase(**kwargs): |
|
|
|
|
try: |
|
|
|
|
payment = Payment.objects.get( |
|
|
|
|
pk=kwargs['InvId'], |
|
|
|
|
order_amount=kwargs['OutSum'] |
|
|
|
|
) |
|
|
|
|
payment.status = Payment.SUCCESS |
|
|
|
|
payment.date = datetime.now().date() |
|
|
|
|
payment.save() |
|
|
|
|
|
|
|
|
|
except Payment.DoesNotExist: |
|
|
|
|
log.info(f"payment with id={kwargs['InvId']} not found") |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Robokassa |
|
|
|
|
@receiver(result_received) |
|
|
|
|
def order_completed(sender, **kwargs): |
|
|
|
|
sender.confirmed_purchase(sender, **kwargs) |
|
|
|
|
confirmed_purchase(**kwargs) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Robokassa for local debugging |
|
|
|
|
@receiver(success_page_visited) |
|
|
|
|
def success_page_visited_completed(sender, **kwargs): |
|
|
|
|
if settings.DEBUG: |
|
|
|
|
sender.confirmed_purchase(sender, **kwargs) |
|
|
|
|
confirmed_purchase(**kwargs) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@receiver(post_save, sender=Payment) |
|
|
|
|
|