From 9db3582b83b007eab4ae6646e3c83d0f8423e845 Mon Sep 17 00:00:00 2001 From: Andrey Date: Mon, 16 Apr 2018 15:04:06 +0300 Subject: [PATCH 1/5] finance logging --- finance/tasks.py | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/finance/tasks.py b/finance/tasks.py index a034701..b0f8889 100644 --- a/finance/tasks.py +++ b/finance/tasks.py @@ -2,11 +2,13 @@ import logging import os import requests +from dateutil.relativedelta import relativedelta from yandex_money.models import Payment from finance.models import InvoiceRebilling from lms import celery_app from django.conf import settings +from django.utils import timezone logger_yandex = logging.getLogger('yandex_money') @@ -15,19 +17,22 @@ logger_yandex = logging.getLogger('yandex_money') def periodic_billing(): logger_yandex.info("start periodic billing task") - # for invoice in InvoiceRebilling.objects.filter(method='Y').exclude(status='F'): - # - # user = invoice.bill.user - # yandex_pay = Payment.objects.create( - # order_amount=invoice.price, - # customer_number=user.id, - # user=user, - # cps_email=user.email - # ) - # invoice.yandex_pay = yandex_pay - # invoice.save() - # - # repeat_card_payment(invoice) + invoices = InvoiceRebilling.objects.filter(method='Y', rebilling_on=True).exclude(status='F') + + for invoice in invoices.filter( + expected_date__gt=timezone.now(), expected_date__lt=timezone.now() + relativedelta(days=1)): + + user = invoice.bill.user + yandex_pay = Payment.objects.create( + order_amount=invoice.price, + customer_number=user.id, + user=user, + cps_email=user.email + ) + invoice.yandex_pay = yandex_pay + invoice.save() + + repeat_card_payment(invoice) def repeat_card_payment(invoice): @@ -44,4 +49,6 @@ def repeat_card_payment(invoice): ), verify=os.path.join(settings.SSL_ROOT, 'yamoney_chain.cer')) - logger_yandex.info(resp.text) + logger_yandex.info('periodic billing finish', exc_info=True, extra={ + 'response': resp.text + }) From 422b98f2d7e5ca380b8fac4520face53740d0759 Mon Sep 17 00:00:00 2001 From: Andrey Date: Mon, 16 Apr 2018 15:06:22 +0300 Subject: [PATCH 2/5] finance logging --- finance/models.py | 1 + finance/tasks.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/finance/models.py b/finance/models.py index f2d50b9..d50d1dc 100755 --- a/finance/models.py +++ b/finance/models.py @@ -173,6 +173,7 @@ class InvoiceRebilling(Invoice): is_open=self.is_open, price=self.price, rebilling_on=False, + key=self.key, expected_date=(timezone.now() + relativedelta(months=idx+1)), ) diff --git a/finance/tasks.py b/finance/tasks.py index b0f8889..5d87f30 100644 --- a/finance/tasks.py +++ b/finance/tasks.py @@ -17,7 +17,7 @@ logger_yandex = logging.getLogger('yandex_money') def periodic_billing(): logger_yandex.info("start periodic billing task") - invoices = InvoiceRebilling.objects.filter(method='Y', rebilling_on=True).exclude(status='F') + invoices = InvoiceRebilling.objects.filter(method='Y').exclude(status='F') for invoice in invoices.filter( expected_date__gt=timezone.now(), expected_date__lt=timezone.now() + relativedelta(days=1)): From e238a72eedcc01c931e1af614d526f6ee0fb6ae2 Mon Sep 17 00:00:00 2001 From: Andrey Date: Mon, 16 Apr 2018 15:12:59 +0300 Subject: [PATCH 3/5] finance logging --- finance/models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/finance/models.py b/finance/models.py index d50d1dc..befc344 100755 --- a/finance/models.py +++ b/finance/models.py @@ -174,7 +174,7 @@ class InvoiceRebilling(Invoice): price=self.price, rebilling_on=False, key=self.key, - expected_date=(timezone.now() + relativedelta(months=idx+1)), + expected_date=(timezone.now() + relativedelta(minutes=idx+1)), ) class Meta: From 370de428f3372775f484ff3aa2c2a7cb842782f2 Mon Sep 17 00:00:00 2001 From: Andrey Date: Mon, 16 Apr 2018 15:29:49 +0300 Subject: [PATCH 4/5] finance logging --- Envoy.blade.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/Envoy.blade.php b/Envoy.blade.php index 0564a73..a50cf71 100644 --- a/Envoy.blade.php +++ b/Envoy.blade.php @@ -29,6 +29,7 @@ echo '{{ $new_release_dir }}' @task('create_symlinks', ['on' => 'localhost']) echo '>> Создание симлинков' +ln -nfs -R {{ $app_dir }}/configs/master/ssl {{ $new_release_dir }}/ssl @if ($branch == 'master') ln -nfs {{ $app_dir }}/configs/master/prod.env {{ $new_release_dir }}/config_app/settings/local.env ln -nfs {{ $app_dir }}/media/master {{ $new_release_dir }}/media @@ -48,10 +49,18 @@ echo '>> Подтягиваем зависимости' @endtask @task('run_tests', ['on' => 'localhost']) -echo '>> Запускаем миграции тесты' +echo '>> Запускаем тесты' @if ($branch) cd {{ $new_release_dir }} - source /env/bin/activate && python manage.py migrate && python manage.py test + source /env/bin/activate && python manage.py test +@endif +@endtask + +@task('run_migrate', ['on' => 'localhost']) +echo '>> Запускаем миграции' +@if ($branch) + cd {{ $new_release_dir }} + source /env/bin/activate && python manage.py migrate @endif @endtask From 68e7aa02570a7ec97bc0cad9adbc4f27da4a2581 Mon Sep 17 00:00:00 2001 From: Andrey Date: Mon, 16 Apr 2018 15:34:49 +0300 Subject: [PATCH 5/5] finance logging --- Envoy.blade.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Envoy.blade.php b/Envoy.blade.php index a50cf71..e2e9aca 100644 --- a/Envoy.blade.php +++ b/Envoy.blade.php @@ -29,7 +29,7 @@ echo '{{ $new_release_dir }}' @task('create_symlinks', ['on' => 'localhost']) echo '>> Создание симлинков' -ln -nfs -R {{ $app_dir }}/configs/master/ssl {{ $new_release_dir }}/ssl +ln -s {{ $app_dir }}/configs/master/ssl {{ $new_release_dir }}/ssl @if ($branch == 'master') ln -nfs {{ $app_dir }}/configs/master/prod.env {{ $new_release_dir }}/config_app/settings/local.env ln -nfs {{ $app_dir }}/media/master {{ $new_release_dir }}/media