Add monthlyhostingbill model + code
This commit is contained in:
		
					parent
					
						
							
								46c3bb1ce4
							
						
					
				
			
			
				commit
				
					
						0e84081880
					
				
			
		
					 2 changed files with 42 additions and 0 deletions
				
			
		| 
						 | 
					@ -232,6 +232,28 @@ class HostingBill(AssignPermissionsMixin, models.Model):
 | 
				
			||||||
        return instance
 | 
					        return instance
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class MonthlyHostingBill(AssignPermissionsMixin, models.Model):
 | 
				
			||||||
 | 
					    customer = models.ForeignKey(StripeCustomer)
 | 
				
			||||||
 | 
					    order = models.ForeignKey(HostingOrder)
 | 
				
			||||||
 | 
					    receipt_number = models.CharField(
 | 
				
			||||||
 | 
					        help_text="The receipt number that is generated on Stripe"
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					    invoice_number = models.CharField(
 | 
				
			||||||
 | 
					        help_text="The invoice number that is generated on Stripe"
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					    billing_period = models.CharField(
 | 
				
			||||||
 | 
					        help_text="The billing period for which the bill is valid"
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					    date_paid = models.DateField(help_text="Date on which the bill was paid")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    permissions = ('view_monthlyhostingbill',)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    class Meta:
 | 
				
			||||||
 | 
					        permissions = (
 | 
				
			||||||
 | 
					            ('view_monthlyhostingbill', 'View Monthly Hosting'),
 | 
				
			||||||
 | 
					        )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class VMDetail(models.Model):
 | 
					class VMDetail(models.Model):
 | 
				
			||||||
    user = models.ForeignKey(CustomUser)
 | 
					    user = models.ForeignKey(CustomUser)
 | 
				
			||||||
    vm_id = models.IntegerField(default=0)
 | 
					    vm_id = models.IntegerField(default=0)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -122,6 +122,26 @@ class StripeUtils(object):
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        return card_details
 | 
					        return card_details
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @handleStripeError
 | 
				
			||||||
 | 
					    def get_all_invoices(self, customer_id):
 | 
				
			||||||
 | 
					        invoices = stripe.Invoice.list(limit=100, customer=customer_id)
 | 
				
			||||||
 | 
					        return_list = []
 | 
				
			||||||
 | 
					        for invoice in invoices:
 | 
				
			||||||
 | 
					            invoice_details = {
 | 
				
			||||||
 | 
					                'created': invoice.created,
 | 
				
			||||||
 | 
					                'receipt_number': invoice.receipt_number,
 | 
				
			||||||
 | 
					                'invoice_number': invoice.number,
 | 
				
			||||||
 | 
					                'date_paid': invoice.date_paid,
 | 
				
			||||||
 | 
					                'period_start': invoice.period_start,
 | 
				
			||||||
 | 
					                'period_end': invoice.period_end,
 | 
				
			||||||
 | 
					                'paid': invoice.paid,
 | 
				
			||||||
 | 
					                'billing_reason': invoice.billing_reason,
 | 
				
			||||||
 | 
					                'discount': invoice.discount.coupon.amount_off if invoice.discount else 0,
 | 
				
			||||||
 | 
					                'total': invoice.total
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            return_list.append(invoice_details)
 | 
				
			||||||
 | 
					        return return_list
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @handleStripeError
 | 
					    @handleStripeError
 | 
				
			||||||
    def get_cards_details_from_token(self, token):
 | 
					    def get_cards_details_from_token(self, token):
 | 
				
			||||||
        stripe_token = stripe.Token.retrieve(token)
 | 
					        stripe_token = stripe.Token.retrieve(token)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue