コード例 #1
0
ファイル: testcom.py プロジェクト: B1aZer/Lionface
 def handle(self, *args, **options):
     from ecomm.models import Bids, Summary
     from django.conf import settings
     from pages.models import PageRequest
     import stripe
     stripe.api_key = settings.STRIPE_API_KEY
     winnc = Bids.objects.filter(status=3).count()
     max_three = Bids.objects.filter(status=1).order_by('-amount')[:3]
     if max_three.count():
         for bid in max_three:
             if not bid.page.exempt:
                 stripe_id = bid.get_stripe_id()
                 amount = bid.amount * 100
             try:
                 if not bid.page.exempt:
                     stripe.Charge.create(
                         amount=amount, # 1500 - $15.00 this time
                         currency="usd",
                         customer=stripe_id,
                         description="Charge for %s, user: %s" % (bid.page.name, bid.user)
                     )
                     Summary.objects.create(user=bid.user, page=bid.page, amount=bid.amount, type='B') 
                     self.stdout.write('Charging: %s' % stripe_id)
                 if winnc < 3:
                     bid.status = 3
                     bid.save()
                     pr = PageRequest(from_page = bid.page, to_page = bid.page, type = 'BN')
                     pr.save()
             except:
                 pr = PageRequest(from_page = bid.page, to_page = bid.page, type = 'BE')
                 pr.save()
                 bid.status = 2
                 bid.save()
コード例 #2
0
ファイル: tasks.py プロジェクト: B1aZer/Lionface
 def run(self, **kwargs):
     from ecomm.models import Bids, Summary
     from pages.models import PageRequest
     from django.conf import settings
     from django.utils import timezone
     import datetime as dateclass
     import stripe
     stripe.api_key = settings.STRIPE_API_KEY
     winnc = Bids.objects.filter(status=3).count()
     error_bids = Bids.objects.filter(status=2)
     for bid in error_bids:
         if not bid.page.exempt:
             stripe_id = bid.get_stripe_id()
             amount = bid.amount * 100
         # remove error notifiers
         prs = PageRequest.objects.filter(to_page=bid.page, type='BE')
         for pr in prs:
             pr.delete()
         try:
             if not bid.page.exempt:
                 stripe.Charge.create(
                     amount=amount,  # 1500 - $15.00 this time
                     currency="usd",
                     customer=stripe_id,
                     description="Recharge for %s, user: %s" %
                     (bid.page.name, bid.user))
                 Summary.objects.create(user=bid.user,
                                        page=bid.page,
                                        amount=bid.amount,
                                        type='B')
                 logger.info('ReCharging: %s' % stripe_id)
             if winnc < 3:
                 bid.status = 3
                 bid.save()
                 pr = PageRequest(from_page=bid.page,
                                  to_page=bid.page,
                                  type='BN')
                 pr.save()
         except:
             pr = PageRequest(from_page=bid.page,
                              to_page=bid.page,
                              type='BB')
             pr.save()
             now = timezone.now()
             delta = dateclass.timedelta(days=21)
             #delta = dateclass.timedelta(minutes=5)
             bid.page.is_disabled = now + delta
             bid.page.save()
             bid.status = 0
             bid.save()