From 8c4aec26fad06cbae5a3b5e6182bd6fe28c92987 Mon Sep 17 00:00:00 2001 From: Andrey Date: Tue, 20 Mar 2018 11:55:20 +0300 Subject: [PATCH] pay --- finance/views.py | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/finance/views.py b/finance/views.py index ea823cb..0020e53 100644 --- a/finance/views.py +++ b/finance/views.py @@ -257,28 +257,41 @@ class YandexCheckView(APIView): val = i.split('=')[1] data[key] = val - logger_yandex.info(data) + logger_yandex.info('Проверка платежа запрос', exc_info=True, extra={ + 'request': data, + }) + try: pay = Payment.objects.get(order_number=data['orderNumber']) except Payment.DoesNotExist: - logger_yandex.error("Payment with id=%s not found" % data['orderNumber']) + logger_yandex.error('Ошибка проверки платежа', exc_info=True, extra={ + 'request': "Payment with id=%s not found" % data['orderNumber'], + }) return Response(status=204) if not pay.status == Payment.STATUS.PROCESSED: - logger_yandex.error("Payment with id=%s have status %s" % (data['orderNumber'], pay.status)) + logger_yandex.error('Ошибка проверки платежа', exc_info=True, extra={ + 'request': "Payment with id=%s have status %s" % (data['orderNumber'], pay.status), + }) return Response(status=204) if not pay.shop_id == int(data['shopId']): - logger_yandex.error("ShopId=%s not match" % (data['shopId'],)) + logger_yandex.error('Ошибка проверки платежа', exc_info=True, extra={ + 'request': "ShopId=%s not match" % (data['shopId'],), + }) return Response(status=204) if not pay.scid == int(data['scid']): - logger_yandex.error("scid=%s not match" % (data['scid'],)) + logger_yandex.error('Ошибка проверки платежа', exc_info=True, extra={ + 'request': "scid=%s not match" % (data['scid'],) + }) return Response(status=204) if not pay.order_amount == float(data['orderSumAmount']): - logger_yandex.error("Expected amount is %s received amount is %s" - % (pay.order_amount, data['orderSumAmount'])) + logger_yandex.error('Ошибка проверки платежа', exc_info=True, extra={ + 'request': "Expected amount is %s received amount is %s" + % (pay.order_amount, data['orderSumAmount']), + }) return Response(status=204) now = timezone.now() @@ -288,7 +301,9 @@ class YandexCheckView(APIView): xml_res = """ """ % (pay.performed_datetime, str(data['invoiceId']), str(pay.shop_id)) - logger_yandex.info(xml_res) + logger_yandex.info('Проверка платежа ответ', exc_info=True, extra={ + 'request': xml_res, + }) return HttpResponse(xml_res, content_type='application/xml')