@@ -557,6 +557,28 @@ def statistic_member(request): |
||
| 557 | 557 |
'province_logs': province_logs, |
| 558 | 558 |
}) |
| 559 | 559 |
|
| 560 |
+def statistic_coupon(request): |
|
| 561 |
+ brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
|
|
| 562 |
+ admin_id = request.POST.get('admin_id', '')
|
|
| 563 |
+ start_time = request.POST.get('start_time', '')
|
|
| 564 |
+ end_time = request.POST.get('end_time', '')
|
|
| 565 |
+ |
|
| 566 |
+ if start_time and end_time: |
|
| 567 |
+ start_time = datetime.strptime(start_time, '%Y%m%d') |
|
| 568 |
+ end_time = datetime.strptime(end_time + ' 23:59:59', '%Y%m%d %H:%M:%S') |
|
| 569 |
+ coupons = UserCouponInfo.objects.filter(create_at__range=(start_time, end_time), status=True) |
|
| 570 |
+ else: |
|
| 571 |
+ coupons = UserCouponInfo.objects.filter(status=True) |
|
| 572 |
+ |
|
| 573 |
+ froms_logs = list(coupons.values('coupon_from').annotate(num=Count('user_coupon_id')))
|
|
| 574 |
+ type_logs = list(coupons.values('coupon_title', 'coupon_value').annotate(num=Count('user_coupon_id')))
|
|
| 575 |
+ type_has_used_logs = list(coupons.filter(has_used=True).values('coupon_title', 'coupon_value').annotate(num=Count('user_coupon_id')))
|
|
| 576 |
+ |
|
| 577 |
+ return response(200, 'Get Consumer Statistic Success', u'获取消费者统计成功', data={
|
|
| 578 |
+ 'froms_logs': froms_logs, |
|
| 579 |
+ 'type_logs': type_logs, |
|
| 580 |
+ 'type_has_used_logs': type_has_used_logs, |
|
| 581 |
+ }) |
|
| 560 | 582 |
|
| 561 | 583 |
def record_consumer(request): |
| 562 | 584 |
brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
|
@@ -148,6 +148,8 @@ urlpatterns += [ |
||
| 148 | 148 |
url(r'^admin/statistic/consumer$', admin_views.statistic_consumer, name='statistic_consumer'), |
| 149 | 149 |
url(r'^admin/statistic/member$', admin_views.statistic_member, name='statistic_member'), |
| 150 | 150 |
|
| 151 |
+ url(r'^admin/statistic/coupon$', admin_views.statistic_coupon, name='statistic_coupon'), |
|
| 152 |
+ |
|
| 151 | 153 |
url(r'^admin/record/consumer$', admin_views.record_consumer, name='record_consumer'), |
| 152 | 154 |
url(r'^admin/record/sale$', admin_views.record_sale, name='record_sale'), |
| 153 | 155 |
url(r'^admin/record/warehouse$', admin_views.record_warehouse, name='record_warehouse'), |