# Generated by Django 3.2.13 on 2023-09-17 15:05 from django.conf import settings from django.db import migrations, models import django.db.models.deletion import django.utils.timezone import uuid class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Address', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('key', models.UUIDField(default=uuid.uuid4, editable=False, null=True, unique=True)), ('create_date', models.DateTimeField(auto_now_add=True)), ('modify_date', models.DateTimeField(auto_now=True)), ('trash', models.BooleanField(default=False)), ('title', models.CharField(default='', max_length=200, null=True)), ('country', models.CharField(default='', max_length=100, null=True)), ('province', models.CharField(default='', max_length=50, null=True)), ('city', models.CharField(default='', max_length=50, null=True)), ('street', models.CharField(default='', max_length=200, null=True)), ('postal_code', models.CharField(default='', max_length=20, null=True)), ('phone', models.CharField(default='', max_length=20, null=True)), ('phone_type', models.CharField(default='', max_length=20, null=True)), ('no', models.CharField(default='', max_length=5, null=True)), ('floor', models.IntegerField(default=0, null=True)), ('unit', models.IntegerField(default=0, null=True)), ('is_default', models.BooleanField(default=False, null=True)), ('created_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='address_createdby', to=settings.AUTH_USER_MODEL)), ('modified_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='address_modifiedby', to=settings.AUTH_USER_MODEL)), ('user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='user_address', to=settings.AUTH_USER_MODEL)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='BankCard', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('key', models.UUIDField(default=uuid.uuid4, editable=False, null=True, unique=True)), ('create_date', models.DateTimeField(auto_now_add=True)), ('modify_date', models.DateTimeField(auto_now=True)), ('trash', models.BooleanField(default=False)), ('card', models.CharField(default='', max_length=16, null=True)), ('iban', models.CharField(default='', max_length=100, null=True)), ('state', models.CharField(default='pending', max_length=20)), ('created_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='bankcard_createdby', to=settings.AUTH_USER_MODEL)), ('modified_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='bankcard_modifiedby', to=settings.AUTH_USER_MODEL)), ('user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='banks', to=settings.AUTH_USER_MODEL)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='PaymentMethod', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('key', models.UUIDField(default=uuid.uuid4, editable=False, null=True, unique=True)), ('create_date', models.DateTimeField(auto_now_add=True)), ('modify_date', models.DateTimeField(auto_now=True)), ('trash', models.BooleanField(default=False)), ('method_type', models.CharField(default='', max_length=255)), ('created_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='paymentmethod_createdby', to=settings.AUTH_USER_MODEL)), ('modified_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='paymentmethod_modifiedby', to=settings.AUTH_USER_MODEL)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='payment_user', to=settings.AUTH_USER_MODEL)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Wallet', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('key', models.UUIDField(default=uuid.uuid4, editable=False, null=True, unique=True)), ('create_date', models.DateTimeField(auto_now_add=True)), ('modify_date', models.DateTimeField(auto_now=True)), ('trash', models.BooleanField(default=False)), ('credit', models.CharField(default='0', max_length=20)), ('card_expiry', models.DateTimeField(default=django.utils.timezone.now, null=True)), ('created_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='wallet_createdby', to=settings.AUTH_USER_MODEL)), ('credit_cards', models.ManyToManyField(to='Wallet.BankCard')), ('modified_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='wallet_modifiedby', to=settings.AUTH_USER_MODEL)), ('owner', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='wallets', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'wallet', 'verbose_name_plural': 'wallets', }, ), migrations.CreateModel( name='Transaction', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('key', models.UUIDField(default=uuid.uuid4, editable=False, null=True, unique=True)), ('modify_date', models.DateTimeField(auto_now=True)), ('trash', models.BooleanField(default=False)), ('date', models.DateTimeField(default=django.utils.timezone.now, help_text='When the account was created')), ('amount', models.DecimalField(decimal_places=5, max_digits=12)), ('status', models.CharField(choices=[('completed', 'Complete!'), ('requested', 'Requested!'), ('pending', 'Pending!'), ('confirmed', 'Confirmed!')], max_length=45)), ('transaction_type', models.CharField(choices=[('send', 'Send'), ('request', 'Request'), ('transfer', 'Transfer')], default='', max_length=45)), ('category', models.CharField(choices=[('Bank', 'Bank Transfer'), ('Utilities', 'Bills & Utilities'), ('Transportation', 'Auto & Transport'), ('Groceries', 'Groceries'), ('Food', 'Food'), ('Shopping', 'Shopping'), ('Health', 'Healthcare'), ('Education', 'Education'), ('Travel', 'Travel'), ('Housing', 'Housing'), ('Entertainment', 'Entertainment'), ('Others', 'Others')], max_length=45)), ('description', models.CharField(default=False, max_length=200)), ('create_date', models.DateTimeField(default=django.utils.timezone.now, editable=False)), ('is_complete', models.BooleanField(default=False)), ('created_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='transaction_createdby', to=settings.AUTH_USER_MODEL)), ('creator', models.ForeignKey(default='', on_delete=django.db.models.deletion.PROTECT, related_name='creator', to=settings.AUTH_USER_MODEL)), ('modified_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='transaction_modifiedby', to=settings.AUTH_USER_MODEL)), ('payment_method', models.ForeignKey(default='', null=True, on_delete=django.db.models.deletion.PROTECT, related_name='payment_method', to='Wallet.paymentmethod')), ('receiver', models.ForeignKey(default='', on_delete=django.db.models.deletion.PROTECT, related_name='receiver', to=settings.AUTH_USER_MODEL)), ('wallet', models.ForeignKey(blank=True, help_text='Wallet holding payment information', null=True, on_delete=django.db.models.deletion.SET_NULL, to='Wallet.wallet')), ], options={ 'verbose_name': 'transaction', 'verbose_name_plural': 'transactions', 'ordering': ('-date',), }, ), migrations.CreateModel( name='Shipping', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('key', models.UUIDField(default=uuid.uuid4, editable=False, null=True, unique=True)), ('create_date', models.DateTimeField(auto_now_add=True)), ('modify_date', models.DateTimeField(auto_now=True)), ('trash', models.BooleanField(default=False)), ('client', models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='shipping_client', to=settings.AUTH_USER_MODEL)), ('client_address', models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='client_address', to='Wallet.address')), ('created_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='shipping_createdby', to=settings.AUTH_USER_MODEL)), ('modified_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='shipping_modifiedby', to=settings.AUTH_USER_MODEL)), ('supplier', models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='shipping_supplier', to=settings.AUTH_USER_MODEL)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Factor', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('key', models.UUIDField(default=uuid.uuid4, editable=False, null=True, unique=True)), ('create_date', models.DateTimeField(auto_now_add=True)), ('modify_date', models.DateTimeField(auto_now=True)), ('trash', models.BooleanField(default=False)), ('created_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='factor_createdby', to=settings.AUTH_USER_MODEL)), ('modified_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='factor_modifiedby', to=settings.AUTH_USER_MODEL)), ('transaction', models.ForeignKey(blank=True, help_text='Transactions', null=True, on_delete=django.db.models.deletion.SET_NULL, to='Wallet.transaction')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Account', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('balance', models.FloatField(default=0.0)), ('payment', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='Wallet.paymentmethod')), ], ), migrations.CreateModel( name='Card', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('card_type', models.CharField(choices=[('Credit', 'Credit Card'), ('Debit', 'Debit Card')], max_length=45)), ('card_number', models.CharField(default=None, max_length=16)), ('owner_first_name', models.CharField(max_length=45)), ('owner_last_name', models.CharField(max_length=45)), ('security_code', models.CharField(default=None, max_length=3)), ('expiration_date', models.DateField(default=None)), ('payment', models.OneToOneField(on_delete=django.db.models.deletion.DO_NOTHING, to='Wallet.paymentmethod')), ], options={ 'ordering': ['card_type', 'card_number'], 'unique_together': {('card_type', 'owner_first_name', 'owner_last_name', 'card_number', 'security_code', 'expiration_date')}, }, ), migrations.CreateModel( name='Bank', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('owner_first_name', models.CharField(default=None, max_length=255)), ('owner_last_name', models.CharField(default=None, max_length=255)), ('routing_number', models.CharField(default=None, max_length=9)), ('account_number', models.CharField(default=None, max_length=10)), ('payment', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='Wallet.paymentmethod')), ], options={ 'unique_together': {('routing_number', 'account_number')}, }, ), ]