# -*- coding: utf-8 -*- from __future__ import unicode_literals from django.db import migrations, models import jsonfield.fields from django.conf import settings class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Payment', fields=[ ('id', models.AutoField(verbose_name='ID', primary_key=True, serialize=False, auto_created=True)), ('backend_id', models.CharField(choices=[('bitcoin', 'Bitcoin'), ('coinbase', 'Coinbase'), ('manual', 'Manual'), ('paypal', 'PayPal'), ('stripe', 'Stripe')], max_length=16)), ('status', models.CharField(choices=[('new', 'Waiting for payment'), ('confirmed', 'Confirmed'), ('cancelled', 'Cancelled'), ('rejected', 'Rejected by processor'), ('error', 'Payment processing failed')], max_length=16)), ('created', models.DateTimeField(auto_now_add=True)), ('modified', models.DateTimeField(auto_now=True)), ('confirmed_on', models.DateTimeField(null=True, blank=True)), ('amount', models.IntegerField()), ('paid_amount', models.IntegerField(default=0)), ('time', models.DurationField()), ('status_message', models.TextField(null=True, blank=True)), ('backend_extid', models.CharField(null=True, max_length=64, blank=True)), ('backend_data', jsonfield.fields.JSONField(blank=True, default=dict)), ], options={ 'ordering': ('-created',), }, ), migrations.CreateModel( name='RecurringPaymentSource', fields=[ ('id', models.AutoField(verbose_name='ID', primary_key=True, serialize=False, auto_created=True)), ('backend', models.CharField(choices=[('bitcoin', 'Bitcoin'), ('coinbase', 'Coinbase'), ('manual', 'Manual'), ('paypal', 'PayPal'), ('stripe', 'Stripe')], max_length=16)), ('created', models.DateTimeField(auto_now_add=True)), ('modified', models.DateTimeField(auto_now=True)), ('period', models.CharField(choices=[('monthly', 'Monthly'), ('biannually', 'Bianually'), ('yearly', 'Yearly')], max_length=16)), ('last_confirmed_payment', models.DateTimeField(null=True, blank=True)), ('backend_id', models.CharField(null=True, max_length=64, blank=True)), ('backend_data', jsonfield.fields.JSONField(blank=True, default=dict)), ('user', models.ForeignKey(to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)), ], ), migrations.AddField( model_name='payment', name='recurring_source', field=models.ForeignKey(null=True, to='payments.RecurringPaymentSource', blank=True, on_delete=models.CASCADE), ), migrations.AddField( model_name='payment', name='user', field=models.ForeignKey(to=settings.AUTH_USER_MODEL, on_delete=models.SET_NULL), ), ]