:art: Opt activity_contribute_list

huangqimin001 2 gadi atpakaļ
vecāks
revīzija
3a2cd351dc
1 mainītis faili ar 20 papildinājumiem un 7 dzēšanām
  1. 20 7
      api/member_views.py

+ 20 - 7
api/member_views.py

@@ -550,17 +550,30 @@ def activity_contribute_list(request):
550 550
     user_id = request.POST.get('user_id', '')
551 551
     activity_id = request.POST.get('activity_id', '')
552 552
     content_type = get_query_value(request, 'content_type', val_cast_type='int')
553
+    is_myself = get_query_value(request, 'is_myself', val_cast_type='int')
554
+    audit_status = get_query_value(request, 'audit_status', val_cast_type='int')
555
+    is_audit_pass = get_query_value(request, 'is_audit_pass', val_cast_type='int')
553 556
     is_selected = get_query_value(request, 'is_selected', val_cast_type='int')
554 557
     page = request.POST.get('page', 1)
555 558
     num = request.POST.get('num', 20)
556 559
 
557
-    contributions = MemberActivityContributionInfo.objects.filter(content_type=content_type, audit_status=MemberActivityContributionInfo.AUDIT_PASS, status=True)
558
-    if user_id:
559
-        contributions = contributions.filter(user_id=user_id)
560
-    if activity_id:
561
-        contributions = contributions.filter(activity_id=activity_id)
562
-    if is_selected:
563
-        contributions = contributions.filter(is_selected=True)
560
+    contributions = MemberActivityContributionInfo.objects.filter(activity_id=activity_id, status=True)
561
+    if 'content_type' in request.POST:
562
+        contributions.filter(content_type=content_type)
563
+    if 'is_myself' in request.POST:
564
+        if is_myself:
565
+            contributions = contributions.filter(user_id=user_id)
566
+        else:
567
+            contributions = contributions.exclude(user_id=user_id)
568
+    if 'audit_status' in request.POST:
569
+        contributions = contributions.filter(audit_status=audit_status)
570
+    if 'is_audit_pass' in request.POST:
571
+        if is_audit_pass:
572
+            contributions = contributions.filter(audit_status=MemberActivityContributionInfo.AUDIT_PASS)
573
+        else:
574
+            contributions = contributions.exclude(audit_status=MemberActivityContributionInfo.AUDIT_PASS)
575
+    if 'is_selected' in request.POST:
576
+        contributions = contributions.filter(is_selected=is_selected)
564 577
     contributions = contributions.order_by('-pk')
565 578
     contributions, left = pagination(contributions, page, num)
566 579
     contributions = [contribution.data for contribution in contributions]