:art: Support time range for integral list api

Kimi.Huang лет %!s(int64=6): %!d(string=назад)
Родитель
Сommit
ae95fc742f
1 измененных файлов с 8 добавлено и 1 удалено
  1. 8 1
      page/sale_views.py

+ 8 - 1
page/sale_views.py

@@ -687,6 +687,8 @@ def clerk_sale_submit_api(request):
687 687
 def clerk_integral_list_api(request):
688 688
     brandID = request.POST.get('BrandID', settings.KODO_DEFAULT_BRAND_PK)
689 689
     user_id = request.POST.get('user_id', '')
690
+    ftime = request.POST.get('ftime', '')
691
+    ttime = request.POST.get('ttime', '')
690 692
     page = int(request.POST.get('page', 1))
691 693
     num = int(request.POST.get('num', settings.GROUP_NUM_PER_PAGE))
692 694
 
@@ -714,12 +716,17 @@ def clerk_integral_list_api(request):
714 716
         return response(SaleclerkStatusCode.CLERK_NOT_FOUND)
715 717
 
716 718
     integrals = SaleclerkIntegralIncomeExpensesInfo.objects.filter(clerk_id=clerk.clerk_id).order_by('-pk')
719
+    if ftime and ttime:
720
+        fdt = tc.string_to_utc_datetime(ftime)
721
+        tdt = tc.string_to_utc_datetime(ttime)
722
+        integrals = integrals.filter(created_at__gte=fdt, created_at__lte=tdt)
717 723
     integrals, left = pagination(integrals, page, num)
718 724
     integrals = [integral.data for integral in integrals]
719 725
 
720 726
     return response(200, data={
721 727
         'integrals': integrals,
722
-        'total_integral': clerk.integral,
728
+        'total_integral': sum([i.get('integral', 0) for i in integrals]),
729
+        'left_integral': clerk.integral,
723 730
     })
724 731
 
725 732