Merge branch 'dev' into 'master'

Dev

See merge request !398
master
Andrey 8 years ago
commit 246db4d134
  1. 13
      Envoy.blade.php
  2. 3
      finance/models.py
  3. 35
      finance/tasks.py

@ -29,6 +29,7 @@ echo '{{ $new_release_dir }}'
@task('create_symlinks', ['on' => 'localhost'])
echo '>> Создание симлинков'
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
@ -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

@ -173,7 +173,8 @@ class InvoiceRebilling(Invoice):
is_open=self.is_open,
price=self.price,
rebilling_on=False,
expected_date=(timezone.now() + relativedelta(months=idx+1)),
key=self.key,
expected_date=(timezone.now() + relativedelta(minutes=idx+1)),
)
class Meta:

@ -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').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
})

Loading…
Cancel
Save