示例#1
0
def get_available_subscriptions():
    goal = int(getattr(settings, "SUBSCRIPTION_PROGRESS_GOAL", "10") or "10")
    target = SubscriptionPart.objects.filter(
        ~q_cancelled() & ~q_deactivated(),
        type__size__product__is_extra=False,
        subscription__in=SubscriptionDao.future_subscriptions()).aggregate(
            total=Sum('type__size__units'))['total']
    return goal - target
示例#2
0
 def active_parts(self):
     return self.parts.filter(q_activated() & ~q_deactivated())
示例#3
0
 def future_extra_subscriptions(self):
     return self.extra_subscription_set.filter(~q_cancelled()
                                               & ~q_deactivated())
示例#4
0
 def extra_subscriptions(self):
     return self.extra_subscription_set.filter(q_activated()
                                               & ~q_deactivated())
示例#5
0
 def types_changed(self):
     return self.parts.filter(~q_activated()
                              | (q_cancelled() & ~q_deactivated())).count()
示例#6
0
 def active_and_future_parts(self):
     return self.parts.filter(~q_deactivated())
示例#7
0
 def members_for_email_with_subscription():
     return Member.objects.filter(
         MemberDao.has_subscription()
         | MemberDao.has_cancelled_subscription()).exclude(q_deactivated())
示例#8
0
 def future_subscriptions():
     return Subscription.objects.filter(~q_cancelled()
                                        & ~q_deactivated()).filter(
                                            deactivation_date=None)
示例#9
0
 def members_in_area(area):
     return area.members.all().filter(~q_deactivated())
示例#10
0
 def canceled_members():
     return Member.objects.filter(q_cancelled()).exclude(q_deactivated())
示例#11
0
 def active_members():
     return Member.objects.filter(~q_deactivated())
示例#12
0
 def member_with_active_subscription_for_depot(depot):
     return Member.objects.filter(MemberDao.has_subscription() | MemberDao.has_cancelled_subscription())\
         .filter(subscriptionmembership__subscription__depot=depot)\
         .exclude(q_deactivated()).distinct()
示例#13
0
 def members_for_email_with_shares():
     return Member.objects.filter(share__isnull=False).exclude(
         q_deactivated())
示例#14
0
 def canceled_extra_subs():
     return ExtraSubscription.objects.filter(q_activated() & q_cancelled()
                                             & ~q_deactivated())
示例#15
0
 def active_subscriptions(self):
     return self.subscription_set.filter(q_activated()
                                         & ~q_deactivated()).order_by(
                                             'primary_member__first_name')
示例#16
0
 def all_active_extrasubscritions():
     return ExtraSubscription.objects.filter(q_activated()
                                             & ~q_deactivated())
示例#17
0
 def future_parts(self):
     return self.parts.filter(~q_cancelled() & ~q_deactivated())
示例#18
0
 def canceled_subscriptions():
     return Subscription.objects.filter(
         q_cancelled() & ~q_deactivated()).order_by('end_date')
示例#19
0
 def members_for_email():
     return Member.objects.exclude(q_deactivated())