From 51f342a7d34c545d5a5f3daa9e66c22c1c60c055 Mon Sep 17 00:00:00 2001 From: Skia Date: Thu, 29 Sep 2016 18:17:44 +0200 Subject: [PATCH] Add invoices calls --- club/templates/club/club_sellings.jinja | 8 +++ counter/templates/counter/invoices_call.jinja | 34 ++++++++++ counter/urls.py | 1 + counter/views.py | 33 +++++++++- locale/fr/LC_MESSAGES/django.mo | Bin 35691 -> 35905 bytes locale/fr/LC_MESSAGES/django.po | 61 ++++++++++-------- 6 files changed, 109 insertions(+), 28 deletions(-) create mode 100644 counter/templates/counter/invoices_call.jinja diff --git a/club/templates/club/club_sellings.jinja b/club/templates/club/club_sellings.jinja index 7be82f37..6e4848df 100644 --- a/club/templates/club/club_sellings.jinja +++ b/club/templates/club/club_sellings.jinja @@ -30,8 +30,16 @@ {{ s.date|localtime|date(DATETIME_FORMAT) }} {{ s.date|localtime|time(DATETIME_FORMAT) }} {{ s.counter }} + {% if s.seller %} {{ s.seller.get_display_name() }} + {% else %} + + {% endif %} + {% if s.customer %} {{ s.customer.user.get_display_name() }} + {% else %} + + {% endif %} {{ s.label }} {{ s.quantity }} {{ s.quantity * s.unit_price }} € diff --git a/counter/templates/counter/invoices_call.jinja b/counter/templates/counter/invoices_call.jinja new file mode 100644 index 00000000..6d83e0e5 --- /dev/null +++ b/counter/templates/counter/invoices_call.jinja @@ -0,0 +1,34 @@ +{% extends "core/base.jinja" %} + +{% block title %} +{% trans %}Invoices call{% endtrans %} +{% endblock %} + +{% block content %} +

{% trans %}Invoices call{% endtrans %}

+
+ + +
+ + + + + + + {% for i in sums %} + + + + + {% endfor %} + +
{% trans %}Club{% endtrans %}{% trans %}Sum{% endtrans %}
{{ i['club__name'] }}{{ i['selling_sum'] }} €
+{% endblock %} + + + diff --git a/counter/urls.py b/counter/urls.py index effd82f8..83b735df 100644 --- a/counter/urls.py +++ b/counter/urls.py @@ -16,6 +16,7 @@ urlpatterns = [ url(r'^admin$', CounterListView.as_view(), name='admin_list'), url(r'^admin/new$', CounterCreateView.as_view(), name='new'), url(r'^admin/delete/(?P[0-9]+)$', CounterDeleteView.as_view(), name='delete'), + url(r'^admin/invoices_call$', InvoiceCallView.as_view(), name='invoices_call'), url(r'^admin/cash_summary/list$', CashSummaryListView.as_view(), name='cash_summary_list'), url(r'^admin/cash_summary/(?P[0-9]+)$', CashSummaryEditView.as_view(), name='cash_summary_edit'), url(r'^admin/product/list$', ProductListView.as_view(), name='product_list'), diff --git a/counter/views.py b/counter/views.py index 52681065..227782c6 100644 --- a/counter/views.py +++ b/counter/views.py @@ -1,6 +1,6 @@ from django.shortcuts import render from django.core.exceptions import PermissionDenied -from django.views.generic import ListView, DetailView, RedirectView +from django.views.generic import ListView, DetailView, RedirectView, TemplateView from django.views.generic.edit import UpdateView, CreateView, DeleteView, ProcessFormView, FormMixin from django.forms.models import modelform_factory from django.forms import CheckboxSelectMultiple @@ -459,6 +459,11 @@ class CounterAdminTabsMixin(TabedViewMixin): 'slug': 'cash_summary', 'name': _("Cash register summaries"), }, + { + 'url': reverse_lazy('counter:invoices_call'), + 'slug': 'invoices_call', + 'name': _("Invoices call"), + }, ] class CounterListView(CounterAdminTabsMixin, CanViewMixin, ListView): @@ -908,3 +913,29 @@ class CashSummaryListView(CanEditPropMixin, CounterAdminTabsMixin, ListView): kwargs['refilling_sums'][c.name] = sum([s.amount for s in Refilling.objects.filter(counter=c, date__gt=last_date).all()]) return kwargs +class InvoiceCallView(CounterAdminTabsMixin, TemplateView): + template_name = 'counter/invoices_call.jinja' + current_tab = 'invoices_call' + + def get_context_data(self, **kwargs): + """ Add sums to the context """ + kwargs = super(InvoiceCallView, self).get_context_data(**kwargs) + kwargs['months'] = Selling.objects.datetimes('date', 'month', order='DESC') + start_date = None + end_date = None + try: + start_date = datetime.strptime(self.request.GET['month'], '%Y-%m') + except: + start_date = datetime(year=timezone.now().year, month=(timezone.now().month+10)%12+1, day=1) + end_date = (start_date + timedelta(days=32)).replace(day=1, hour=0, minute=0, microsecond=0) + from django.db.models import Sum, Case, When, F, DecimalField + kwargs['sums'] = Selling.objects.values('club__name').annotate(selling_sum=Sum( + Case(When(date__gte=start_date, + date__lt=end_date, + then=F('unit_price')*F('quantity')), + output_field=CurrencyField() + ) + )).exclude(selling_sum=None).order_by('-selling_sum') + return kwargs + + #).exclude(selling_sum=None).order_by('-selling_sum').all()[:100] diff --git a/locale/fr/LC_MESSAGES/django.mo b/locale/fr/LC_MESSAGES/django.mo index 9737cd738ad8cd3884d01d083c797b9e0a214355..bd0fc9f8d9be09101ccde507d96e80f1da4f9492 100644 GIT binary patch delta 13128 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

E3i^StiA zj@F#ag7=9)%3Cp!#-C7rbIi1I1vBE!2~42vYw~+2*T%)xCJNUP?-1E&Q-ZicIg%Ji z+Z#TN|337pdpEdoP3YSVvSl^iyUSd@;Paj57&|FX8A1SzNDNUzu?@T#LvWBLjN|H zZtV_XL2@0f{*&q1PjVJ6w+X>H*9BwHAk|yvGrg5xKu24xv&yELUZos^ zgNR0y*JEaUO4KEaQrB^i$e{bbkf=)BB?>S=4Xi`FOAO(H8szF=2+^I~T4Fh&BRw&K z*iPi-d}HNs5z&J3MZ8OtrjMRDo7`Z`Mg2BqPe}?#DRd#e;>3G69N#`_QZHnQM`knz zajlNF)_y7Oa#P-)Nz^@d?%Z2>71O!bdYsiXXiH)v#u5D}cP5S#g{i;BO*jEZ5jsXu zpGX{_yaSgLI!>9b-Kz5o&LvKe-*349^A8O6)&9SA9HxAY#<{Q@@q=}!CY9bQtFB`- zxo3nwtNDg{1ELT0--)`EGvI%ZKoaA~4v9^^s|2gGC)=ue>w8>%hc9hFg?uRXi9&fIzX@xM7Itmi8lt-$\n" "Language-Team: AE info \n" @@ -171,6 +171,7 @@ msgid "User" msgstr "Utilisateur" #: accounting/models.py:190 club/templates/club/club_detail.jinja:5 +#: counter/templates/counter/invoices_call.jinja:19 msgid "Club" msgstr "Club" @@ -297,7 +298,7 @@ msgstr "Compte en banque : " #: accounting/templates/accounting/bank_account_details.jinja:15 #: accounting/templates/accounting/club_account_details.jinja:16 -#: club/templates/club/club_sellings.jinja:40 +#: club/templates/club/club_sellings.jinja:48 #: core/templates/core/file_detail.jinja:43 #: core/templates/core/group_list.jinja:13 core/templates/core/macros.jinja:61 #: core/templates/core/user_account_detail.jinja:67 @@ -484,7 +485,7 @@ msgid "Done" msgstr "Effectué" #: accounting/templates/accounting/journal_details.jinja:34 -#: counter/templates/counter/cash_summary_list.jinja:32 counter/views.py:692 +#: counter/templates/counter/cash_summary_list.jinja:32 counter/views.py:697 msgid "Comment" msgstr "Commentaire" @@ -1725,20 +1726,16 @@ msgid "Godfathers" msgstr "Parrains" #: core/templates/core/user_godfathers.jinja:18 -#, fuzzy -#| msgid "Godfathers" msgid "No godfathers" -msgstr "Parrains" +msgstr "Pas de parrains" #: core/templates/core/user_godfathers.jinja:21 msgid "Godchildren" msgstr "Fillots" #: core/templates/core/user_godfathers.jinja:29 -#, fuzzy -#| msgid "Godchildren" msgid "No godchildren" -msgstr "Fillots" +msgstr "Pas de fillots" #: core/templates/core/user_group.jinja:4 #, python-format @@ -1793,7 +1790,7 @@ msgid "Subscriptions" msgstr "Cotisations" #: core/templates/core/user_tools.jinja:23 counter/views.py:440 -#: counter/views.py:579 +#: counter/views.py:584 msgid "Counters" msgstr "Comptoirs" @@ -2077,7 +2074,7 @@ msgstr "Liste des relevés de caisse" msgid "Theoric sums" msgstr "Sommes théoriques" -#: counter/templates/counter/cash_summary_list.jinja:31 counter/views.py:693 +#: counter/templates/counter/cash_summary_list.jinja:31 counter/views.py:698 msgid "Emptied" msgstr "Coffre vidé" @@ -2108,6 +2105,7 @@ msgstr "Pas de date de naissance renseigné" #: counter/templates/counter/counter_click.jinja:52 #: counter/templates/counter/counter_click.jinja:86 +#: counter/templates/counter/invoices_call.jinja:15 #: launderette/templates/launderette/launderette_admin.jinja:35 #: launderette/templates/launderette/launderette_click.jinja:13 msgid "Go" @@ -2183,6 +2181,15 @@ msgstr "Merci de vous identifier" msgid "Barman: " msgstr "Barman : " +#: counter/templates/counter/invoices_call.jinja:4 +#: counter/templates/counter/invoices_call.jinja:8 counter/views.py:465 +msgid "Invoices call" +msgstr "Appels à facture" + +#: counter/templates/counter/invoices_call.jinja:20 +msgid "Sum" +msgstr "Somme" + #: counter/templates/counter/last_ops.jinja:5 #: counter/templates/counter/last_ops.jinja:9 #, python-format @@ -2290,61 +2297,61 @@ msgstr "Produits archivés" msgid "Product types" msgstr "Types de produit" -#: counter/views.py:576 +#: counter/views.py:581 msgid "Parent product" msgstr "Produit parent" -#: counter/views.py:577 +#: counter/views.py:582 msgid "Buying groups" msgstr "Groupes d'achat" -#: counter/views.py:672 +#: counter/views.py:677 msgid "10 cents" msgstr "10 centimes" -#: counter/views.py:673 +#: counter/views.py:678 msgid "20 cents" msgstr "20 centimes" -#: counter/views.py:674 +#: counter/views.py:679 msgid "50 cents" msgstr "50 centimes" -#: counter/views.py:675 +#: counter/views.py:680 msgid "1 euro" msgstr "1 €" -#: counter/views.py:676 +#: counter/views.py:681 msgid "2 euros" msgstr "2 €" -#: counter/views.py:677 +#: counter/views.py:682 msgid "5 euros" msgstr "5 €" -#: counter/views.py:678 +#: counter/views.py:683 msgid "10 euros" msgstr "10 €" -#: counter/views.py:679 +#: counter/views.py:684 msgid "20 euros" msgstr "20 €" -#: counter/views.py:680 +#: counter/views.py:685 msgid "50 euros" msgstr "50 €" -#: counter/views.py:681 +#: counter/views.py:686 msgid "100 euros" msgstr "100 €" -#: counter/views.py:682 counter/views.py:684 counter/views.py:686 -#: counter/views.py:688 counter/views.py:690 +#: counter/views.py:687 counter/views.py:689 counter/views.py:691 +#: counter/views.py:693 counter/views.py:695 msgid "Check amount" msgstr "Montant du chèque" -#: counter/views.py:683 counter/views.py:685 counter/views.py:687 -#: counter/views.py:689 counter/views.py:691 +#: counter/views.py:688 counter/views.py:690 counter/views.py:692 +#: counter/views.py:694 counter/views.py:696 msgid "Check quantity" msgstr "Nombre de chèque"