From c09b5f59b18d5489bce81d19ff44692ec0898011 Mon Sep 17 00:00:00 2001 From: Anastasia Date: Sat, 16 May 2015 15:49:46 +0500 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D0=BE=D1=82=D1=87=D0=B5=D1=82=20=D0=BF=D0=BE=20=D0=B4?= =?UTF-8?q?=D0=B8=D0=B7=D0=B0=D0=B9=D0=BD=D0=B5=D1=80=D0=B0=D0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- asuzr/views.py | 20 +++++++++++++++++++- record/urls.py | 1 + templates/asuzr/desreport.html | 29 +++++++++++++++++++++++++++++ 3 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 templates/asuzr/desreport.html diff --git a/asuzr/views.py b/asuzr/views.py index 2329004..5ab78f3 100644 --- a/asuzr/views.py +++ b/asuzr/views.py @@ -5,7 +5,9 @@ from asuzr.models import Product from asuzr.models import Attendance from asuzr.models import Order from asuzr.models import OrderPlan -from datetime import datetime, date, time +from datetime import datetime, date +from django.db.models import Count, Sum + # Create your views here. def prod_list(request): @@ -83,4 +85,20 @@ def orders (request, archive): }) return HttpResponse(t.render(c)) +def desreport(request): + start_date = request.GET.get('sdate', date.today().strftime('%d.%m.%y')) + sdate = datetime.strptime(start_date, '%d.%m.%y') + end_date = request.GET.get('edate', date.today().strftime('%d.%m.%y')) + edate = datetime.strptime(end_date, '%d.%m.%y') + des_list = Order.objects.filter(cancelled=False, date__range=(sdate,edate)).values('designer__first_name').annotate(Sum('price'),Count('designer')) + t=loader.get_template('asuzr/desreport.html') + c=Context({ + 'des_list' : des_list, + 'start_date' : start_date, + 'end_date' : end_date, + }) + return HttpResponse(t.render(c)) + + + diff --git a/record/urls.py b/record/urls.py index 938d4fb..46242db 100644 --- a/record/urls.py +++ b/record/urls.py @@ -11,5 +11,6 @@ urlpatterns = patterns('', url(r'^product/(?P\d+)/$', 'asuzr.views.prod_detail'), url(r'^main/(?P\d+)/(?P\d+)/(?P\d+)/$', 'asuzr.views.main', name='asuzr-main'), url(r'^orders/(?P\d+)/$', 'asuzr.views.orders'), + url(r'^desreport/$', 'asuzr.views.desreport'), url(r'^admin/', include(admin.site.urls)), ) diff --git a/templates/asuzr/desreport.html b/templates/asuzr/desreport.html new file mode 100644 index 0000000..1f4ee00 --- /dev/null +++ b/templates/asuzr/desreport.html @@ -0,0 +1,29 @@ + + + + + + + +

Отчет по дизайнерам за {{start_date}} - {{end_date}}

+ + {% if des_list %} +
    +
+ + + + + {% for des in des_list %} + + + + + + {% endfor %} + + {% else %} +

Список заказов пуст

+ {% endif %} + + \ No newline at end of file
ДизайнерВсего заказовОбщая сумма
{{des.designer__first_name}}{{des.designer__count}}{{des.price__sum}}