Big Update

This commit is contained in:
Vyacheslav Anzhiganov 2016-10-17 03:35:52 +03:00
parent bb88a18336
commit db0a7a47e7
9 changed files with 41 additions and 72 deletions

View file

@ -61,5 +61,5 @@ class ControllerBilling:
).count() ).count()
transactions['items'] = models.UsersBalanceTransactions.select().where( transactions['items'] = models.UsersBalanceTransactions.select().where(
models.UsersBalanceTransactions.user == user_id models.UsersBalanceTransactions.user == user_id
) ).order_by(models.UsersBalanceTransactions.created.desc())
return transactions return transactions

View file

@ -13,9 +13,9 @@ class ControllerPayments:
balance.balance += float(amount) balance.balance += float(amount)
balance.save() balance.save()
def transaction_create(self, user_id, amount, status='process'): def transaction_create(self, user_id, amount, method, status='process'):
# create transaction data to database # create transaction data to database
transaction = models.UsersBalanceTransactions(user=user_id, amount=amount, status=status) transaction = models.UsersBalanceTransactions(user=user_id, amount=amount, status=status, method=method)
transaction.save() transaction.save()
return transaction.id return transaction.id

View file

@ -175,6 +175,7 @@ class UsersBalanceTransactions(PgSQLModel):
notified = IntegerField(null=False, default=0) notified = IntegerField(null=False, default=0)
# success, process, fail # success, process, fail
status = TextField(null=False) status = TextField(null=False)
paid = DateTimeField()
# robokassa, webmoney, yandex_money, rbk_money, alfaclick, sberbank_online, paypal, invoice # robokassa, webmoney, yandex_money, rbk_money, alfaclick, sberbank_online, paypal, invoice
method = CharField(null=False, default=0) method = CharField(null=False, default=0)
details = JSONField(default='{}') details = JSONField(default='{}')

View file

@ -1,6 +1,6 @@
<footer> <footer>
<div class="row"> <div class="row">
<div class="large-4 medium-4 columns"> <div class="large-6 medium-6 columns">
<b>{{ _('Поддержка') }}</b> <b>{{ _('Поддержка') }}</b>
<ul> <ul>
{% if g.settings.get('SUPPORT_TEL', None) %} {% if g.settings.get('SUPPORT_TEL', None) %}
@ -12,18 +12,8 @@
<li><a href="{{ url_for('support.index') }}">{{ _('Форма обратной связи') }}</a></li> <li><a href="{{ url_for('support.index') }}">{{ _('Форма обратной связи') }}</a></li>
</ul> </ul>
</div> </div>
<div class="large-4 medium-4 columns"><b>{{ _('Сообщество') }}</b> <div class="large-6 medium-6 columns">
<ul>
<li><a href="/blog">{{ _('Блог') }}</a></li>
<li><a href="/blog">{{ _('Facebook') }}</a></li>
<li><a href="/blog">{{ _('Twitter') }}</a></li>
</ul>
</div>
<div class="large-4 medium-4 columns">
<p>2009&minus;2016 &copy; GoCloud.ru</p> <p>2009&minus;2016 &copy; GoCloud.ru</p>
<script type="text/javascript" src="//yastatic.net/es5-shims/0.0.2/es5-shims.min.js" charset="utf-8"></script>
<script type="text/javascript" src="//yastatic.net/share2/share.js" charset="utf-8"></script>
<div class="ya-share2" data-services="vkontakte,facebook,gplus,twitter,blogger,linkedin" data-counter=""></div>
</div> </div>
</div> </div>
</footer> </footer>

View file

@ -12,7 +12,7 @@
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="large-6 columns"> <div class="large-12 columns">
<h4>История платежей</h4> <h4>История платежей</h4>
<table width="100%"> <table width="100%">
<thead> <thead>
@ -32,55 +32,16 @@
{% else %} {% else %}
{% for record in history['items'] %} {% for record in history['items'] %}
<tr> <tr>
<td>{{ record['amount'] }}</td> <td>{{ record['id'] }}</td>
<td>{{ record['created'] }}</td>
<td>
{% if record['status'] == "process" %}
<span class="label attention">{{ record['status'] }}</span>
{% elif record['status'] == "fail" %}
<span class="label error">{{ record['status'] }}</span>
{% elif record['status'] == "success" %}
<span class="label success">{{ record['status'] }}</span>
{% else %}
{{ record['status'] }}
{% endif %}
</td>
</tr>
{% endfor %}
{% endif %}
</tbody>
</table>
</div>
<div class="large-6 columns">
<h4>Выставленные счета</h4>
<table width="100%">
<thead>
<tr>
<th>Сумма</th>
<th>Дата</th>
<th>Статус</th>
</tr>
</thead>
<tbody>
<tr>
<td style="border-left: 3px orange solid">590.0 рублей</td>
<td><a href="">2016-03-21</a></td>
<td>Неоплачен</td>
</tr>
<tr>
<td style="border-left: 3px green solid">590.0 рублей</td>
<td><a href="">2016-03-21</a></td>
<td>Оплачен</td>
</tr>
{% if history['total'] == 0 %}
<!-- tr>
<td colspan="3">Нет записей.</td>
</tr-->
{% else %}
{% for record in history['items'] %}
<tr>
<td>{{ record['amount'] }}</td>
<td>{{ record['created'] }}</td> <td>{{ record['created'] }}</td>
<td>{{ record['amount'] }}руб.</td>
<td>
{% if record['details']['description'] %}
{{ record['details']['description'] }}
{% else %}
Засчисление на лицевой счёт
{% endif %}
</td>
<td> <td>
{% if record['status'] == "process" %} {% if record['status'] == "process" %}
<span class="label attention">{{ record['status'] }}</span> <span class="label attention">{{ record['status'] }}</span>
@ -92,6 +53,7 @@
{{ record['status'] }} {{ record['status'] }}
{% endif %} {% endif %}
</td> </td>
<td>{{record['method']}}</td>
</tr> </tr>
{% endfor %} {% endfor %}
{% endif %} {% endif %}

View file

@ -8,7 +8,7 @@
<h2>Спасибо!</h2> <h2>Спасибо!</h2>
</div> </div>
<div class="large-12 columns"> <div class="large-12 columns">
<p>Спасибо за обращение в поддержку. Мы ответим вам в кротчайшее время.</p> <p>Спасибо за обращение в техническую поддержку. Мы ответим вам в кратчайшее время.</p>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -80,8 +80,11 @@
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="large-12 columns"> <div class="large-12 columns text-center">
<p class="copyright">2009-2016 © GoCloud.ru</p> <p class="copyright">2009-2016 © GoCloud.ru</p>
<script type="text/javascript" src="//yastatic.net/es5-shims/0.0.2/es5-shims.min.js" charset="utf-8"></script>
<script type="text/javascript" src="//yastatic.net/share2/share.js" charset="utf-8"></script>
<div class="ya-share2" data-services="vkontakte,facebook,gplus,twitter,blogger,linkedin" data-counter=""></div>
</div> </div>
</div> </div>
</footer> </footer>

View file

@ -48,7 +48,7 @@ def robokassa(action):
amount = request.form['amount'] amount = request.form['amount']
# create transaction data to database # create transaction data to database
transaction_id = controller_robokassa.transaction_create(user_id, amount, 'process') transaction_id = controller_robokassa.transaction_create(user_id, amount, 'robokassa', 'process')
payment_details = { payment_details = {
"payment_id": transaction_id, "payment_id": transaction_id,

View file

@ -4,7 +4,7 @@ from setuptools import setup
setup( setup(
name='SWSCloudCore', name='SWSCloudCore',
version='2.6.0', version='2.7.0',
author='Vyacheslav Anzhiganov', author='Vyacheslav Anzhiganov',
author_email='hello@anzhiganov.com', author_email='hello@anzhiganov.com',
packages=[ packages=[
@ -36,17 +36,20 @@ setup(
'SWSCloudWeb', 'SWSCloudWeb',
'SWSCloudWeb.views', 'SWSCloudWeb.views',
'SWSCloudWeb.views.account', 'SWSCloudWeb.views.account',
'SWSCloudWeb.views.containers', 'SWSCloudWeb.views.bills',
'SWSCloudWeb.views.compute.containers',
'SWSCloudWeb.views.compute.vms',
'SWSCloudWeb.views.documents', 'SWSCloudWeb.views.documents',
'SWSCloudWeb.views.kb', 'SWSCloudWeb.views.kb',
'SWSCloudWeb.views.payments', 'SWSCloudWeb.views.payments',
'SWSCloudWeb.views.settings', 'SWSCloudWeb.views.settings',
'SWSCloudWeb.views.support', 'SWSCloudWeb.views.support',
'SWSCloudWeb.views.tasks', 'SWSCloudWeb.views.tasks',
'SWSCloudWeb.views.vms',
# Administrator # Administrator
'SWSCloudAdministrator', 'SWSCloudAdministrator',
'SWSCloudAdministrator.Administrator', 'SWSCloudAdministrator.Administrator',
# StatisticsClient
'SWSStatisticsClient',
], ],
package_data={ package_data={
'SWSCloudWeb': [ 'SWSCloudWeb': [
@ -61,10 +64,17 @@ setup(
'static/js/*.js', 'static/js/*.js',
'static/js/foundation/*.js', 'static/js/foundation/*.js',
'static/js/vendor/*.js', 'static/js/vendor/*.js',
# New homepage
'static/assets/css/*.css',
'static/assets/img/*.png',
'static/assets/img/testimonials*.png',
'static/assets/js/*.js',
# Templates # Templates
'templates/*.html', 'templates/*.html',
'templates/default/*.html', 'templates/default/*.html',
'templates/default/containers/*.html', 'templates/default/billing/*.html',
'templates/default/compute/containers/*.html',
'templates/default/compute/vms/*.html',
'templates/default/documents/*.html', 'templates/default/documents/*.html',
'templates/default/homepage/*.html', 'templates/default/homepage/*.html',
'templates/default/id/*.html', 'templates/default/id/*.html',
@ -73,9 +83,12 @@ setup(
'templates/default/payment/robokassa/*.html', 'templates/default/payment/robokassa/*.html',
'templates/default/support/*.html', 'templates/default/support/*.html',
'templates/default/tasks/*.html', 'templates/default/tasks/*.html',
'templates/default/vms/*.html',
'templates/email/simple/*.html', 'templates/email/simple/*.html',
'templates/email/simple/*.css', 'templates/email/simple/*.css',
# GoCloud2016
'templates/gocloud2016/layouts/*.html',
'templates/gocloud2016/macros/*.html',
'templates/gocloud2016/pages/*.html',
# Errors # Errors
'templates/errors/*.html', 'templates/errors/*.html',
], ],