Browse Source

Перенёс пополнение счёта, долги и историю платежей на общую вкладку с финансами

devel
bashmak 9 years ago
parent
commit
ab8f1a75af
  1. 38
      abonapp/templates/abonapp/abonamount.html
  2. 14
      abonapp/templates/abonapp/ext.htm
  3. 117
      abonapp/templates/abonapp/invoiceForPayment.html
  4. 31
      abonapp/templates/abonapp/modal_abonamount.html
  5. 18
      abonapp/templates/abonapp/payHistory.html
  6. 2
      abonapp/urls_abon.py
  7. 5
      abonapp/views.py

38
abonapp/templates/abonapp/abonamount.html

@ -1,38 +0,0 @@
{% extends request.is_ajax|yesno:'nullcont.htm,abonapp/ext.htm' %}
{% load i18n %}
{% block content %}
<legend>{% trans 'Additional sum' %}</legend>
<div class="row">
<div class="col-sm-4">
<form role="form" action="{% url 'abonapp:abon_amount' abon_group.id abon.id %}"
method="post"> {% csrf_token %}
<div class="form-group-sm">
<label for="amount">{% trans 'Amount of money' %}</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-ruble"></span></span>
<input id="amount" type="text" name="amount" placeholder="0.0" class="form-control" required
pattern="\d+">
</div>
</div>
<input type="hidden" name="abonid" value="{{ abon.id }}"><br>
<div class="btn-group">
<button type="submit" class="btn btn-sm btn-primary">
<span class="glyphicon glyphicon-save"></span> {% trans 'Refill' %}
</button>
<button type="reset" class="btn btn-sm btn-default">
<span class="glyphicon glyphicon-remove-circle"></span> {% trans 'Reset' %}
</button>
</div>
</form>
</div>
</div>
{% endblock %}

14
abonapp/templates/abonapp/ext.htm

@ -38,21 +38,9 @@
</li> </li>
{% endif %} {% endif %}
{% if perms.abonapp.can_add_ballance %}
{% url 'abonapp:abon_amount' abon_group.id abon.id as abamount %}
<li{% if abamount == request.path %} class="active"{% endif %}>
<a href="{{ abamount }}">{% trans 'Fill account' %}</a>
</li>
{% endif %}
{% url 'abonapp:abon_debts' abon_group.id abon.id as abondebts %}
<li{% if abondebts == request.path %} class="active"{% endif %}>
<a href="{{ abondebts }}">{% trans 'Debts' %}</a>
</li>
{% url 'abonapp:abon_phistory' abon_group.id abon.id as abphist %} {% url 'abonapp:abon_phistory' abon_group.id abon.id as abphist %}
<li{% if abphist == request.path %} class="active"{% endif %}> <li{% if abphist == request.path %} class="active"{% endif %}>
<a href="{{ abphist }}">{% trans 'Payment history' %}</a>
<a href="{{ abphist }}">{% trans 'Payments' %}</a>
</li> </li>
{% url 'abonapp:task_log' abon_group.id abon.id as abtasklog %} {% url 'abonapp:task_log' abon_group.id abon.id as abtasklog %}

117
abonapp/templates/abonapp/invoiceForPayment.html

@ -1,57 +1,72 @@
{% extends request.is_ajax|yesno:'nullcont.htm,abonapp/ext.htm' %}
{% extends 'base.html' %}
{% load i18n %} {% load i18n %}
{% block content %}
{% block main %}
<table class="table table-striped table-bordered">
<thead>
<tr>
<th>{% trans 'Pay status' %}</th>
<th>{% trans 'Month' %}</th>
<th>{% trans 'Sum' %}</th>
<th>{% trans 'Comment' %}</th>
<th>{% trans 'Date of make' %}</th>
<th>{% trans 'Date of payment' %}</th>
<th>{% trans 'Author of payment' %}</th>
</tr>
</thead>
<tbody>
{% for inv in invoices %}
<tr>
<td>{% if inv.status %}
<span class="glyphicon glyphicon-ok"></span>
{% else %}
<span class="glyphicon glyphicon-time"></span>
{% endif %}</td>
<td>{{ inv.date_create|date:"F" }}</td>
<td>{{ inv.amount }}</td>
<td>{{ inv.comment }}</td>
<td>{{ inv.date_create|date:"D d E Y H:i:s" }}</td>
<td>
{% if inv.date_pay %}
{{ inv.date_pay|date:"D d M Y H:i:s" }}
{% else %}
{{ inv.status|yesno:_('Created paid,Not yet paid') }}
{% endif %}
</td>
<td><a href="{% url 'acc_app:other_profile' inv.author.id %}" target="_blank">{{ inv.author.username }}</a></td>
</tr>
{% empty %}
<tr>
<td colspan="7">{% trans 'Receipts not found' %}</td>
</tr>
{% endfor %}
</tbody>
{% if perms.abonapp.add_invoiceforpayment %}
<tfoot>
<ol class="breadcrumb">
<li><span class="glyphicon glyphicon-home"></span></li>
<li><a href="{% url 'abonapp:group_list' %}">{% trans 'User groups' %}</a></li>
<li><a href="{% url 'abonapp:people_list' abon_group.pk %}">{{ abon_group.title }}</a></li>
<li><a href="{% url 'abonapp:abon_phistory' abon_group.pk abon.pk %}">{{ abon.fio }}</a></li>
<li class="active">{% trans 'Debts' %}</li>
</ol>
{% include 'message_block.html' %}
<h3>{% trans 'Debtor' %} {{ abon.fio }}</h3>
<div class="table-responsive">
<table class="table table-striped table-bordered">
<thead>
<tr> <tr>
<th colspan="7">
<a href="{% url 'abonapp:add_invoice' abon_group.id abon.id %}" class="btn btn-success btn-sm">
<span class="glyphicon glyphicon-plus"></span> {% trans 'Add debt' %}
</a>
</th>
<th>{% trans 'Pay status' %}</th>
<th>{% trans 'Month' %}</th>
<th>{% trans 'Sum' %}</th>
<th>{% trans 'Comment' %}</th>
<th>{% trans 'Date of make' %}</th>
<th>{% trans 'Date of payment' %}</th>
<th>{% trans 'Author of payment' %}</th>
</tr> </tr>
</tfoot>
{% endif %}
</table>
</thead>
<tbody>
{% for inv in invoices %}
<tr>
<td>{% if inv.status %}
<span class="glyphicon glyphicon-ok"></span>
{% else %}
<span class="glyphicon glyphicon-time"></span>
{% endif %}</td>
<td>{{ inv.date_create|date:"F" }}</td>
<td>{{ inv.amount }}</td>
<td>{{ inv.comment }}</td>
<td>{{ inv.date_create|date:"D d E Y H:i:s" }}</td>
<td>
{% if inv.date_pay %}
{{ inv.date_pay|date:"D d M Y H:i:s" }}
{% else %}
{{ inv.status|yesno:_('Created paid,Not yet paid') }}
{% endif %}
</td>
<td><a href="{% url 'acc_app:other_profile' inv.author.id %}" target="_blank">{{ inv.author.username }}</a></td>
</tr>
{% empty %}
<tr>
<td colspan="7">{% trans 'Receipts not found' %}</td>
</tr>
{% endfor %}
</tbody>
{% if perms.abonapp.add_invoiceforpayment %}
<tfoot>
<tr>
<th colspan="7">
<a href="{% url 'abonapp:add_invoice' abon_group.id abon.id %}" class="btn btn-success btn-sm">
<span class="glyphicon glyphicon-plus"></span> {% trans 'Add debt' %}
</a>
</th>
</tr>
</tfoot>
{% endif %}
</table>
</div>
{% include 'toolbar_page.html' with pag=invoices %}
{% endblock %} {% endblock %}

31
abonapp/templates/abonapp/modal_abonamount.html

@ -0,0 +1,31 @@
{% load i18n %}
<form role="form" action="{% url 'abonapp:abon_amount' abon_group.id abon.id %}" method="post"> {% csrf_token %}
<div class="modal-header primary">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title"><span class="glyphicon glyphicon-shopping-cart"></span>{% trans 'Additional sum' %}</h4>
</div>
<div class="modal-body">
<div class="form-group-sm">
<label for="amount">{% trans 'Amount of money' %}</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-ruble"></span></span>
<input id="amount" type="text" name="amount" placeholder="0.0" class="form-control" required
pattern="\d+">
</div>
</div>
<input type="hidden" name="abonid" value="{{ abon.id }}"><br>
<div class="btn-group">
<button type="submit" class="btn btn-sm btn-primary">
<span class="glyphicon glyphicon-save"></span> {% trans 'Refill' %}
</button>
<button type="reset" class="btn btn-sm btn-default">
<span class="glyphicon glyphicon-remove-circle"></span> {% trans 'Reset' %}
</button>
</div>
</div>
</form>

18
abonapp/templates/abonapp/payHistory.html

@ -15,10 +15,10 @@
<tbody> <tbody>
{% for ph in pay_history %} {% for ph in pay_history %}
<tr> <tr>
<td><a href="{% url 'abonapp:abon_home' abon_group.id abon.id %}">{{ ph.abon.username }}</a></td>
<td><a href="{% url 'abonapp:abon_home' abon_group.pk abon.pk %}">{{ ph.abon.username }}</a></td>
<td>{{ ph.amount }}</td> <td>{{ ph.amount }}</td>
<td>{{ ph.date|date:'d F Y, H:i:s' }}</td> <td>{{ ph.date|date:'d F Y, H:i:s' }}</td>
<td><a target="_blank" href="{% url 'acc_app:other_profile' ph.author.id %}">{{ ph.author.username }}</a></td>
<td><a target="_blank" href="{% url 'acc_app:other_profile' ph.author.pk %}">{{ ph.author.username }}</a></td>
<td>{{ ph.comment }}</td> <td>{{ ph.comment }}</td>
</tr> </tr>
{% empty %} {% empty %}
@ -27,6 +27,20 @@
</tr> </tr>
{% endfor %} {% endfor %}
</tbody> </tbody>
<tfoot>
<tr>
<td colspan="5" class="btn-group btn-group-sm">
{% if perms.abonapp.can_add_ballance %}
<a href="{% url 'abonapp:abon_amount' abon_group.pk abon.pk %}" class="btn btn-default btn-modal">
<span class="glyphicon glyphicon-credit-card"></span> {% trans 'Fill account' %}
</a>
{% endif %}
<a href="{% url 'abonapp:abon_debts' abon_group.pk abon.pk %}"class="btn btn-default">
<span class="glyphicon glyphicon-gbp"></span> {% trans 'Debts' %}
</a>
</td>
</tr>
</tfoot>
</table> </table>

2
abonapp/urls_abon.py

@ -10,7 +10,7 @@ urlpatterns = [
url(r'^(?P<uid>\d+)/services$', views.abon_services, name='abon_services'), url(r'^(?P<uid>\d+)/services$', views.abon_services, name='abon_services'),
url(r'^(?P<uid>\d+)/amount', views.abonamount, name='abon_amount'), url(r'^(?P<uid>\d+)/amount', views.abonamount, name='abon_amount'),
url(r'^(?P<uid>\d+)/debts', views.invoice_for_payment, name='abon_debts'), url(r'^(?P<uid>\d+)/debts', views.invoice_for_payment, name='abon_debts'),
url(r'^(?P<uid>\d+)/pay_history', views.pay_history, name='abon_phistory'),
url(r'^(?P<uid>\d+)/pay', views.pay_history, name='abon_phistory'),
url(r'^(?P<uid>\d+)/addinvoice$', views.add_invoice, name='add_invoice'), url(r'^(?P<uid>\d+)/addinvoice$', views.add_invoice, name='add_invoice'),
url(r'^(?P<uid>\d+)/pick$', views.pick_tariff, name='pick_tariff'), url(r'^(?P<uid>\d+)/pick$', views.pick_tariff, name='pick_tariff'),

5
abonapp/views.py

@ -1,5 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from json import dumps from json import dumps
from django.contrib.gis.shortcuts import render_to_text
from django.core.exceptions import PermissionDenied from django.core.exceptions import PermissionDenied
from django.db import IntegrityError from django.db import IntegrityError
from django.db.models import Count from django.db.models import Count
@ -180,10 +181,10 @@ def abonamount(request, gid, uid):
messages.error(request, e) messages.error(request, e)
except NasFailedResult as e: except NasFailedResult as e:
messages.error(request, e) messages.error(request, e)
return render(request, 'abonapp/abonamount.html', {
return render_to_text('abonapp/modal_abonamount.html', {
'abon': abon, 'abon': abon,
'abon_group': get_object_or_404(models.AbonGroup, id=gid) 'abon_group': get_object_or_404(models.AbonGroup, id=gid)
})
}, request=request)
@login_required @login_required

Loading…
Cancel
Save