diff --git a/.gitignore b/.gitignore index efee2015..139c47eb 100644 --- a/.gitignore +++ b/.gitignore @@ -6,7 +6,7 @@ __pycache__ **/*__pycache__ db.sqlite3 media -./car_inventory/settings* +car_inventory/settings.py # Backup files # *.bak diff --git a/car_inventory/__pycache__/settings.cpython-311.pyc b/car_inventory/__pycache__/settings.cpython-311.pyc index ea64c422..30ea380f 100644 Binary files a/car_inventory/__pycache__/settings.cpython-311.pyc and b/car_inventory/__pycache__/settings.cpython-311.pyc differ diff --git a/car_inventory/settings.py b/car_inventory/settings.py index 13064782..8d0ad84f 100644 --- a/car_inventory/settings.py +++ b/car_inventory/settings.py @@ -104,24 +104,24 @@ WSGI_APPLICATION = 'car_inventory.wsgi.application' # Database # https://docs.djangoproject.com/en/5.0/ref/settings/#databases -# DATABASES = { -# "default": { -# "ENGINE": "django_prometheus.db.backends.postgresql", -# "NAME": "murad_haikal", -# "USER": "f95166", -# "PASSWORD": "Kfsh&rc9788", -# "HOST": "localhost", -# "PORT": 5432, -# } -# } - DATABASES = { - 'default': { - 'ENGINE': 'django.db.backends.sqlite3', - 'NAME': 'db.sqlite3', + "default": { + "ENGINE": "django_prometheus.db.backends.postgresql", + "NAME": "haikal", + "USER": "f95166", + "PASSWORD": "Kfsh&rc9788", + "HOST": "localhost", + "PORT": 5432, } } +# DATABASES = { +# 'default': { +# 'ENGINE': 'django.db.backends.sqlite3', +# 'NAME': 'db.sqlite3', +# } +# } + # Password validation # https://docs.djangoproject.com/en/5.0/ref/settings/#auth-password-validators diff --git a/inventory/__pycache__/forms.cpython-311.pyc b/inventory/__pycache__/forms.cpython-311.pyc index 8dd7b9af..454a569f 100644 Binary files a/inventory/__pycache__/forms.cpython-311.pyc and b/inventory/__pycache__/forms.cpython-311.pyc differ diff --git a/inventory/__pycache__/models.cpython-311.pyc b/inventory/__pycache__/models.cpython-311.pyc index 061c2f58..17809036 100644 Binary files a/inventory/__pycache__/models.cpython-311.pyc and b/inventory/__pycache__/models.cpython-311.pyc differ diff --git a/inventory/__pycache__/urls.cpython-311.pyc b/inventory/__pycache__/urls.cpython-311.pyc index 6e2d2f04..c0a72ed2 100644 Binary files a/inventory/__pycache__/urls.cpython-311.pyc and b/inventory/__pycache__/urls.cpython-311.pyc differ diff --git a/inventory/__pycache__/views.cpython-311.pyc b/inventory/__pycache__/views.cpython-311.pyc index 19f5e117..6a867697 100644 Binary files a/inventory/__pycache__/views.cpython-311.pyc and b/inventory/__pycache__/views.cpython-311.pyc differ diff --git a/inventory/migrations/0001_initial.py b/inventory/migrations/0001_initial.py deleted file mode 100644 index aa3b2b0b..00000000 --- a/inventory/migrations/0001_initial.py +++ /dev/null @@ -1,332 +0,0 @@ -# Generated by Django 5.1.4 on 2024-12-09 13:58 - -import django.db.models.deletion -import inventory.mixins -import phonenumber_field.modelfields -from decimal import Decimal -from django.conf import settings -from django.db import migrations, models - - -class Migration(migrations.Migration): - - initial = True - - dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ] - - operations = [ - migrations.CreateModel( - name='Car', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('vin', models.CharField(max_length=17, unique=True, verbose_name='VIN')), - ('year', models.IntegerField(verbose_name='Year')), - ('status', models.CharField(choices=[('available', 'Available'), ('sold', 'Sold'), ('hold', 'Hold'), ('damaged', 'Damaged')], default='available', max_length=10, verbose_name='Status')), - ('stock_type', models.CharField(choices=[('new', 'New'), ('used', 'Used')], default='new', max_length=10, verbose_name='Stock Type')), - ('remarks', models.TextField(blank=True, null=True, verbose_name='Remarks')), - ('mileage', models.IntegerField(blank=True, null=True, verbose_name='Mileage')), - ('receiving_date', models.DateTimeField(verbose_name='Receiving Date')), - ], - options={ - 'verbose_name': 'Car', - 'verbose_name_plural': 'Cars', - }, - ), - migrations.CreateModel( - name='CarMake', - fields=[ - ('id_car_make', models.AutoField(primary_key=True, serialize=False)), - ('name', models.CharField(max_length=255)), - ('arabic_name', models.CharField(max_length=255)), - ('logo', models.ImageField(blank=True, null=True, upload_to='car_make', verbose_name='logo')), - ('is_sa_import', models.BooleanField(default=False)), - ], - options={ - 'verbose_name': 'Make', - }, - bases=(models.Model, inventory.mixins.LocalizedNameMixin), - ), - migrations.CreateModel( - name='ExteriorColors', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(max_length=255, verbose_name='Name')), - ('arabic_name', models.CharField(max_length=255, verbose_name='Arabic Name')), - ('rgb', models.CharField(blank=True, max_length=24, null=True, verbose_name='RGB')), - ], - options={ - 'verbose_name': 'Exterior Colors', - 'verbose_name_plural': 'Exterior Colors', - }, - bases=(models.Model, inventory.mixins.LocalizedNameMixin), - ), - migrations.CreateModel( - name='InteriorColors', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(max_length=255, verbose_name='Name')), - ('arabic_name', models.CharField(max_length=255, verbose_name='Arabic Name')), - ('rgb', models.CharField(blank=True, max_length=24, null=True, verbose_name='RGB')), - ], - options={ - 'verbose_name': 'Interior Colors', - 'verbose_name_plural': 'Interior Colors', - }, - bases=(models.Model, inventory.mixins.LocalizedNameMixin), - ), - migrations.CreateModel( - name='CarFinance', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('cost_price', models.DecimalField(decimal_places=2, max_digits=14, verbose_name='Cost Price')), - ('selling_price', models.DecimalField(decimal_places=2, max_digits=14, verbose_name='Selling Price')), - ('profit_margin', models.DecimalField(decimal_places=2, editable=False, max_digits=14, verbose_name='Profit Margin')), - ('discount_amount', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=14, verbose_name='Discount Amount')), - ('registration_fee', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=14, verbose_name='Registration Fee')), - ('administration_fee', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=14, verbose_name='Administration Fee')), - ('transportation_fee', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=14, verbose_name='Transportation Fee')), - ('custom_card_fee', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=14, verbose_name='Custom Card Fee')), - ('vat_rate', models.DecimalField(decimal_places=2, default=Decimal('0.15'), max_digits=14, verbose_name='VAT Rate')), - ('administration_vat_amount', models.DecimalField(decimal_places=2, default=Decimal('0.00'), editable=False, max_digits=12, verbose_name='Administration VAT')), - ('transportation_vat_amount', models.DecimalField(decimal_places=2, default=Decimal('0.00'), editable=False, max_digits=12, verbose_name='Transportation VAT')), - ('custom_card_vat_amount', models.DecimalField(decimal_places=2, default=Decimal('0.00'), editable=False, max_digits=12, verbose_name='Custom Card VAT')), - ('selling_vat_amount', models.DecimalField(decimal_places=2, default=Decimal('0.00'), editable=False, max_digits=12, verbose_name='Selling VAT')), - ('total_vat_amount', models.DecimalField(decimal_places=2, default=Decimal('0.00'), editable=False, max_digits=12, verbose_name='Total VAT')), - ('total_before_vat', models.DecimalField(decimal_places=2, default=Decimal('0.00'), editable=False, max_digits=14, verbose_name='Total Before VAT')), - ('total', models.DecimalField(decimal_places=2, default=Decimal('0.00'), editable=False, max_digits=14, verbose_name='Total Amount')), - ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='finances', to='inventory.car')), - ], - ), - migrations.AddField( - model_name='car', - name='id_car_make', - field=models.ForeignKey(blank=True, db_column='id_car_make', null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carmake', verbose_name='Make'), - ), - migrations.CreateModel( - name='CarModel', - fields=[ - ('id_car_model', models.AutoField(primary_key=True, serialize=False)), - ('name', models.CharField(max_length=255)), - ('arabic_name', models.CharField(max_length=255)), - ('id_car_make', models.ForeignKey(db_column='id_car_make', on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carmake')), - ], - options={ - 'verbose_name': 'Model', - }, - bases=(models.Model, inventory.mixins.LocalizedNameMixin), - ), - migrations.AddField( - model_name='car', - name='id_car_model', - field=models.ForeignKey(blank=True, db_column='id_car_model', null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carmodel', verbose_name='Model'), - ), - migrations.CreateModel( - name='CarRegistration', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('plate_number', models.IntegerField(verbose_name='Plate Number')), - ('text1', models.CharField(max_length=1, verbose_name='Text 1')), - ('text2', models.CharField(max_length=1, verbose_name='Text 2')), - ('text3', models.CharField(max_length=1, verbose_name='Text 3')), - ('registration_date', models.DateTimeField(verbose_name='Registration Date')), - ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='registrations', to='inventory.car', verbose_name='Car')), - ], - options={ - 'verbose_name': 'Registration', - 'verbose_name_plural': 'Registrations', - }, - ), - migrations.CreateModel( - name='CarSerie', - fields=[ - ('id_car_serie', models.AutoField(primary_key=True, serialize=False)), - ('name', models.CharField(max_length=255)), - ('arabic_name', models.CharField(max_length=255)), - ('id_car_model', models.ForeignKey(db_column='id_car_model', on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carmodel')), - ], - options={ - 'verbose_name': 'Series', - }, - bases=(models.Model, inventory.mixins.LocalizedNameMixin), - ), - migrations.AddField( - model_name='car', - name='id_car_serie', - field=models.ForeignKey(blank=True, db_column='id_car_serie', null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carserie', verbose_name='Series'), - ), - migrations.CreateModel( - name='CarSpecification', - fields=[ - ('id_car_specification', models.AutoField(primary_key=True, serialize=False)), - ('name', models.CharField(max_length=255)), - ('arabic_name', models.CharField(max_length=255)), - ('id_parent', models.ForeignKey(blank=True, db_column='id_parent', null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carspecification')), - ], - options={ - 'verbose_name': 'Specification', - }, - bases=(models.Model, inventory.mixins.LocalizedNameMixin), - ), - migrations.CreateModel( - name='CarTrim', - fields=[ - ('id_car_trim', models.AutoField(primary_key=True, serialize=False)), - ('name', models.CharField(max_length=255)), - ('arabic_name', models.CharField(max_length=255)), - ('start_production_year', models.IntegerField(blank=True, null=True)), - ('end_production_year', models.IntegerField(blank=True, null=True)), - ('id_car_serie', models.ForeignKey(db_column='id_car_serie', on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carserie')), - ], - options={ - 'verbose_name': 'Trim', - }, - bases=(models.Model, inventory.mixins.LocalizedNameMixin), - ), - migrations.CreateModel( - name='CarSpecificationValue', - fields=[ - ('id_car_specification_value', models.AutoField(primary_key=True, serialize=False)), - ('value', models.CharField(max_length=500)), - ('unit', models.CharField(blank=True, max_length=255, null=True)), - ('id_car_specification', models.ForeignKey(db_column='id_car_specification', on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carspecification')), - ('id_car_trim', models.ForeignKey(db_column='id_car_trim', on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.cartrim')), - ], - options={ - 'verbose_name': 'Specification Value', - }, - ), - migrations.AddField( - model_name='car', - name='id_car_trim', - field=models.ForeignKey(blank=True, db_column='id_car_trim', null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.cartrim', verbose_name='Trim'), - ), - migrations.CreateModel( - name='CustomCard', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('custom_number', models.CharField(max_length=255, verbose_name='Custom Number')), - ('custom_date', models.DateField(verbose_name='Custom Date')), - ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='custom_cards', to='inventory.car', verbose_name='Car')), - ], - options={ - 'verbose_name': 'Custom Card', - 'verbose_name_plural': 'Custom Cards', - }, - ), - migrations.CreateModel( - name='Dealer', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('crn', models.CharField(max_length=10, verbose_name='Commercial Registration Number')), - ('vrn', models.CharField(max_length=15, verbose_name='VAT Registration Number')), - ('arabic_name', models.CharField(max_length=255, verbose_name='Arabic Name')), - ('name', models.CharField(max_length=255, verbose_name='English Name')), - ('phone_number', phonenumber_field.modelfields.PhoneNumberField(max_length=128, region='SA', verbose_name='Phone Number')), - ('address', models.CharField(blank=True, max_length=200, null=True, verbose_name='Address')), - ('logo', models.ImageField(blank=True, null=True, upload_to='logos/users', verbose_name='Logo')), - ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='dealer', to=settings.AUTH_USER_MODEL)), - ], - options={ - 'verbose_name': 'Dealer', - 'verbose_name_plural': 'Dealers', - }, - bases=(models.Model, inventory.mixins.LocalizedNameMixin), - ), - migrations.CreateModel( - name='Customer', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('first_name', models.CharField(max_length=50, verbose_name='First Name')), - ('middle_name', models.CharField(blank=True, max_length=50, null=True, verbose_name='Middle Name')), - ('last_name', models.CharField(max_length=50, verbose_name='Last Name')), - ('email', models.EmailField(max_length=254, unique=True, verbose_name='Email')), - ('national_id', models.CharField(max_length=10, unique=True, verbose_name='National ID')), - ('phone_number', phonenumber_field.modelfields.PhoneNumberField(max_length=128, region='SA', unique=True, verbose_name='Phone Number')), - ('address', models.CharField(blank=True, max_length=200, null=True, verbose_name='Address')), - ('created', models.DateTimeField(auto_now_add=True, verbose_name='Created')), - ('dealer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='customers', to='inventory.dealer')), - ], - options={ - 'verbose_name': 'Customer', - 'verbose_name_plural': 'Customers', - }, - ), - migrations.AddField( - model_name='car', - name='dealer', - field=models.ForeignKey(on_delete=django.db.models.deletion.DO_NOTHING, related_name='cars', to='inventory.dealer', verbose_name='Dealer'), - ), - migrations.CreateModel( - name='SaleQuotation', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('remarks', models.TextField(blank=True, null=True)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('customer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='inventory.customer')), - ], - ), - migrations.CreateModel( - name='SaleQuotationCar', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='inventory.car')), - ('financial_details', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quotation_finances', to='inventory.carfinance')), - ('quotation', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quotation_cars', to='inventory.salequotation')), - ], - ), - migrations.CreateModel( - name='Vendor', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('crn', models.CharField(max_length=10, unique=True, verbose_name='Commercial Registration Number')), - ('vrn', models.CharField(max_length=15, unique=True, verbose_name='VAT Registration Number')), - ('arabic_name', models.CharField(max_length=255, verbose_name='Arabic Name')), - ('name', models.CharField(max_length=255, verbose_name='English Name')), - ('contact_person', models.CharField(max_length=100, verbose_name='Contact Person')), - ('phone_number', phonenumber_field.modelfields.PhoneNumberField(max_length=128, region='SA', verbose_name='Phone Number')), - ('address', models.CharField(blank=True, max_length=200, null=True, verbose_name='Address')), - ('logo', models.ImageField(blank=True, null=True, upload_to='logos/vendors', verbose_name='Logo')), - ('dealer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='vendors', to='inventory.dealer')), - ], - options={ - 'verbose_name': 'Vendor', - 'verbose_name_plural': 'Vendors', - }, - bases=(models.Model, inventory.mixins.LocalizedNameMixin), - ), - migrations.AddField( - model_name='car', - name='vendor', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='cars', to='inventory.vendor', verbose_name='Vendor'), - ), - migrations.CreateModel( - name='CarReservation', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('reserved_at', models.DateTimeField(auto_now_add=True)), - ('reserved_until', models.DateTimeField()), - ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='reservations', to='inventory.car')), - ('reserved_by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - options={ - 'ordering': ['-reserved_at'], - 'unique_together': {('car', 'reserved_until')}, - }, - ), - migrations.CreateModel( - name='CarColors', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='colors', to='inventory.car')), - ('exterior', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='colors', to='inventory.exteriorcolors')), - ('interior', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='colors', to='inventory.interiorcolors')), - ], - options={ - 'verbose_name': 'Color', - 'verbose_name_plural': 'Colors', - 'unique_together': {('car', 'exterior', 'interior')}, - }, - ), - ] diff --git a/inventory/migrations/0002_additionalservices_subscription_subscriptionplan_and_more.py b/inventory/migrations/0002_additionalservices_subscription_subscriptionplan_and_more.py deleted file mode 100644 index 698a9aad..00000000 --- a/inventory/migrations/0002_additionalservices_subscription_subscriptionplan_and_more.py +++ /dev/null @@ -1,335 +0,0 @@ -# Generated by Django 5.1.4 on 2024-12-22 21:55 - -import django.db.models.deletion -import inventory.mixins -import phonenumber_field.modelfields -from decimal import Decimal -from django.conf import settings -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('django_ledger', '0017_alter_accountmodel_unique_together_and_more'), - ('inventory', '0001_initial'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ] - - operations = [ - migrations.CreateModel( - name='AdditionalServices', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(max_length=255, verbose_name='Name')), - ('display_name', models.CharField(max_length=255, verbose_name='Display Name')), - ('description', models.TextField(verbose_name='Description')), - ('price', models.DecimalField(decimal_places=2, max_digits=14, verbose_name='Price')), - ], - options={ - 'verbose_name': 'Additional Services', - 'verbose_name_plural': 'Additional Services', - }, - ), - migrations.CreateModel( - name='Subscription', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('plan', models.CharField(max_length=255)), - ('start_date', models.DateField()), - ('end_date', models.DateField()), - ('max_users', models.IntegerField()), - ('is_active', models.BooleanField(default=True)), - ], - ), - migrations.CreateModel( - name='SubscriptionPlan', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(max_length=255)), - ('description', models.TextField()), - ('price', models.DecimalField(decimal_places=2, max_digits=10)), - ('max_users', models.IntegerField()), - ], - ), - migrations.AlterModelOptions( - name='carfinance', - options={'verbose_name': 'Car Financial Details', 'verbose_name_plural': 'Car Financial Details'}, - ), - migrations.AlterModelOptions( - name='carreservation', - options={'ordering': ['-reserved_at'], 'verbose_name': 'Car Reservation', 'verbose_name_plural': 'Car Reservations'}, - ), - migrations.AlterModelOptions( - name='dealer', - options={'permissions': [('change_dealer_type', 'Can change dealer type')], 'verbose_name': 'Dealer', 'verbose_name_plural': 'Dealers'}, - ), - migrations.RemoveField( - model_name='carfinance', - name='administration_fee', - ), - migrations.RemoveField( - model_name='carfinance', - name='administration_vat_amount', - ), - migrations.RemoveField( - model_name='carfinance', - name='custom_card_fee', - ), - migrations.RemoveField( - model_name='carfinance', - name='custom_card_vat_amount', - ), - migrations.RemoveField( - model_name='carfinance', - name='profit_margin', - ), - migrations.RemoveField( - model_name='carfinance', - name='registration_fee', - ), - migrations.RemoveField( - model_name='carfinance', - name='selling_vat_amount', - ), - migrations.RemoveField( - model_name='carfinance', - name='total', - ), - migrations.RemoveField( - model_name='carfinance', - name='total_before_vat', - ), - migrations.RemoveField( - model_name='carfinance', - name='total_vat_amount', - ), - migrations.RemoveField( - model_name='carfinance', - name='transportation_fee', - ), - migrations.RemoveField( - model_name='carfinance', - name='transportation_vat_amount', - ), - migrations.RemoveField( - model_name='carfinance', - name='vat_rate', - ), - migrations.RemoveField( - model_name='salequotationcar', - name='financial_details', - ), - migrations.AddField( - model_name='carserie', - name='year_begin', - field=models.IntegerField(blank=True, null=True), - ), - migrations.AddField( - model_name='carserie', - name='year_end', - field=models.IntegerField(blank=True, null=True), - ), - migrations.AddField( - model_name='cartrim', - name='id_car_model', - field=models.ForeignKey(blank=True, db_column='id_car_model', null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carmodel'), - ), - migrations.AddField( - model_name='dealer', - name='dealer_type', - field=models.CharField(choices=[('Owner', 'Owner'), ('Inventory', 'Inventory'), ('Accountent', 'Accountent'), ('sales', 'Sales')], default='Owner', max_length=255, verbose_name='Dealer Type'), - ), - migrations.AddField( - model_name='dealer', - name='parent_dealer', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='sub_dealers', to='inventory.dealer', verbose_name='Parent Dealer'), - ), - migrations.AddField( - model_name='salequotation', - name='amount', - field=models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=10, verbose_name='Amount'), - ), - migrations.AddField( - model_name='salequotation', - name='dealer', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='sales', to='inventory.dealer'), - ), - migrations.AddField( - model_name='salequotation', - name='entity', - field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to='django_ledger.entitymodel'), - preserve_default=False, - ), - migrations.AddField( - model_name='salequotation', - name='is_approved', - field=models.BooleanField(default=False), - ), - migrations.AddField( - model_name='salequotation', - name='quotation_number', - field=models.CharField(default=1, max_length=10, unique=True), - preserve_default=False, - ), - migrations.AddField( - model_name='salequotation', - name='updated_at', - field=models.DateTimeField(auto_now=True, verbose_name='Updated At'), - ), - migrations.AddField( - model_name='salequotationcar', - name='quantity', - field=models.PositiveIntegerField(default=1, verbose_name='Quantity'), - ), - migrations.AlterField( - model_name='car', - name='status', - field=models.CharField(choices=[('available', 'Available'), ('sold', 'Sold'), ('hold', 'Hold'), ('damaged', 'Damaged'), ('reserved', 'Reserved')], default='available', max_length=10, verbose_name='Status'), - ), - migrations.AlterField( - model_name='carfinance', - name='car', - field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='finances', to='inventory.car'), - ), - migrations.AlterField( - model_name='carreservation', - name='car', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='reservations', to='inventory.car', verbose_name='Car'), - ), - migrations.AlterField( - model_name='carreservation', - name='reserved_at', - field=models.DateTimeField(auto_now_add=True, verbose_name='Reserved At'), - ), - migrations.AlterField( - model_name='carreservation', - name='reserved_by', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='reservations', to=settings.AUTH_USER_MODEL, verbose_name='Reserved By'), - ), - migrations.AlterField( - model_name='carreservation', - name='reserved_until', - field=models.DateTimeField(verbose_name='Reserved Until'), - ), - migrations.AlterField( - model_name='customcard', - name='car', - field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='custom_cards', to='inventory.car', verbose_name='Car'), - ), - migrations.AlterField( - model_name='dealer', - name='crn', - field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Commercial Registration Number'), - ), - migrations.AlterField( - model_name='dealer', - name='vrn', - field=models.CharField(blank=True, max_length=15, null=True, verbose_name='VAT Registration Number'), - ), - migrations.AlterField( - model_name='salequotation', - name='created_at', - field=models.DateTimeField(auto_now_add=True, verbose_name='Created At'), - ), - migrations.AlterField( - model_name='salequotation', - name='customer', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quotations', to='inventory.customer', verbose_name='Customer'), - ), - migrations.AlterField( - model_name='salequotation', - name='remarks', - field=models.TextField(blank=True, null=True, verbose_name='Remarks'), - ), - migrations.AlterField( - model_name='salequotationcar', - name='car', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='inventory.car', verbose_name='Car'), - ), - migrations.AlterField( - model_name='salequotationcar', - name='quotation', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quotation_cars', to='inventory.salequotation', verbose_name='Quotation'), - ), - migrations.AddField( - model_name='carfinance', - name='additional_services', - field=models.ManyToManyField(blank=True, related_name='additional_finances', to='inventory.additionalservices'), - ), - migrations.CreateModel( - name='CarLocation', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('description', models.TextField(blank=True, help_text='Optional description about the showroom placement.', null=True, verbose_name='Description')), - ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created At')), - ('updated_at', models.DateTimeField(auto_now=True, verbose_name='Last Updated')), - ('car', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='location', to='inventory.car', verbose_name='Car')), - ('owner', models.ForeignKey(help_text='Dealer who owns the car.', on_delete=django.db.models.deletion.CASCADE, related_name='owned_cars', to='inventory.dealer', verbose_name='Owner')), - ('showroom', models.ForeignKey(help_text='Dealer where the car is displayed (can be the owner).', on_delete=django.db.models.deletion.CASCADE, related_name='showroom_cars', to='inventory.dealer', verbose_name='Showroom')), - ], - options={ - 'verbose_name': 'Car Location', - 'verbose_name_plural': 'Car Locations', - }, - ), - migrations.CreateModel( - name='Organization', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(max_length=255, verbose_name='Name')), - ('arabic_name', models.CharField(max_length=255, verbose_name='Arabic Name')), - ('crn', models.CharField(max_length=15, verbose_name='Commercial Registration Number')), - ('vrn', models.CharField(max_length=15, verbose_name='VAT Registration Number')), - ('phone_number', phonenumber_field.modelfields.PhoneNumberField(max_length=128, region='SA', verbose_name='Phone Number')), - ('address', models.CharField(blank=True, max_length=200, null=True, verbose_name='Address')), - ('logo', models.ImageField(blank=True, null=True, upload_to='logos', verbose_name='Logo')), - ('dealer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='organizations', to='inventory.dealer')), - ], - options={ - 'verbose_name': 'Organization', - 'verbose_name_plural': 'Organizations', - }, - bases=(models.Model, inventory.mixins.LocalizedNameMixin), - ), - migrations.CreateModel( - name='Representative', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(max_length=255, verbose_name='Name')), - ('arabic_name', models.CharField(max_length=255, verbose_name='Arabic Name')), - ('id_number', models.CharField(max_length=10, verbose_name='ID Number')), - ('phone_number', phonenumber_field.modelfields.PhoneNumberField(max_length=128, region='SA', verbose_name='Phone Number')), - ('address', models.CharField(blank=True, max_length=200, null=True, verbose_name='Address')), - ('dealer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='representatives', to='inventory.dealer')), - ('organization', models.ManyToManyField(related_name='representatives', to='inventory.organization')), - ], - options={ - 'verbose_name': 'Representative', - 'verbose_name_plural': 'Representatives', - }, - bases=(models.Model, inventory.mixins.LocalizedNameMixin), - ), - migrations.CreateModel( - name='SalesOrder', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created At')), - ('total_amount', models.DecimalField(decimal_places=2, max_digits=14, verbose_name='Total Amount')), - ('quotation', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='sales_order', to='inventory.salequotation', verbose_name='Quotation')), - ], - ), - migrations.CreateModel( - name='SubscriptionUser', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('subscription', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='inventory.subscription')), - ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.AddField( - model_name='subscription', - name='users', - field=models.ManyToManyField(through='inventory.SubscriptionUser', to=settings.AUTH_USER_MODEL), - ), - ] diff --git a/inventory/migrations/0003_remove_additionalservices_display_name_and_more.py b/inventory/migrations/0003_remove_additionalservices_display_name_and_more.py deleted file mode 100644 index 53fe897a..00000000 --- a/inventory/migrations/0003_remove_additionalservices_display_name_and_more.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 5.1.4 on 2024-12-23 08:51 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0002_additionalservices_subscription_subscriptionplan_and_more'), - ] - - operations = [ - migrations.RemoveField( - model_name='additionalservices', - name='display_name', - ), - migrations.AddField( - model_name='additionalservices', - name='arabic_name', - field=models.CharField(default='-', max_length=255, verbose_name='Arabic Name'), - preserve_default=False, - ), - ] diff --git a/inventory/migrations/0004_remove_additionalservices_arabic_name.py b/inventory/migrations/0004_remove_additionalservices_arabic_name.py deleted file mode 100644 index 622ecaca..00000000 --- a/inventory/migrations/0004_remove_additionalservices_arabic_name.py +++ /dev/null @@ -1,17 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-24 08:07 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0003_remove_additionalservices_display_name_and_more'), - ] - - operations = [ - migrations.RemoveField( - model_name='additionalservices', - name='arabic_name', - ), - ] diff --git a/inventory/migrations/0005_additionalservices_arabic_name.py b/inventory/migrations/0005_additionalservices_arabic_name.py deleted file mode 100644 index b9056578..00000000 --- a/inventory/migrations/0005_additionalservices_arabic_name.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-24 08:09 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0004_remove_additionalservices_arabic_name'), - ] - - operations = [ - migrations.AddField( - model_name='additionalservices', - name='arabic_name', - field=models.CharField(default='-', max_length=255, verbose_name='Arabic Name'), - preserve_default=False, - ), - ] diff --git a/inventory/migrations/0006_remove_additionalservices_arabic_name.py b/inventory/migrations/0006_remove_additionalservices_arabic_name.py deleted file mode 100644 index a2ac801f..00000000 --- a/inventory/migrations/0006_remove_additionalservices_arabic_name.py +++ /dev/null @@ -1,17 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-24 08:10 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0005_additionalservices_arabic_name'), - ] - - operations = [ - migrations.RemoveField( - model_name='additionalservices', - name='arabic_name', - ), - ] diff --git a/inventory/migrations/0007_additionalservices_arabic_name.py b/inventory/migrations/0007_additionalservices_arabic_name.py deleted file mode 100644 index 013a875e..00000000 --- a/inventory/migrations/0007_additionalservices_arabic_name.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-24 08:11 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0006_remove_additionalservices_arabic_name'), - ] - - operations = [ - migrations.AddField( - model_name='additionalservices', - name='arabic_name', - field=models.CharField(default='-', max_length=255, verbose_name='Arabic Name'), - preserve_default=False, - ), - ] diff --git a/inventory/migrations/0008_salequotation_status.py b/inventory/migrations/0008_salequotation_status.py deleted file mode 100644 index cf5450ac..00000000 --- a/inventory/migrations/0008_salequotation_status.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-24 08:35 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0007_additionalservices_arabic_name'), - ] - - operations = [ - migrations.AddField( - model_name='salequotation', - name='status', - field=models.CharField(choices=[('DRAFT', 'Draft'), ('CONFIRMED', 'Confirmed'), ('CANCELED', 'Canceled')], default='DRAFT', max_length=10, verbose_name='Status'), - ), - ] diff --git a/inventory/migrations/0009_salequotation_date_approved_and_more.py b/inventory/migrations/0009_salequotation_date_approved_and_more.py deleted file mode 100644 index 8b31c0e9..00000000 --- a/inventory/migrations/0009_salequotation_date_approved_and_more.py +++ /dev/null @@ -1,48 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-24 09:48 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0008_salequotation_status'), - ] - - operations = [ - migrations.AddField( - model_name='salequotation', - name='date_approved', - field=models.DateField(blank=True, null=True, verbose_name='Approved Date'), - ), - migrations.AddField( - model_name='salequotation', - name='date_canceled', - field=models.DateField(blank=True, null=True, verbose_name='Canceled Date'), - ), - migrations.AddField( - model_name='salequotation', - name='date_draft', - field=models.DateField(blank=True, null=True, verbose_name='Draft Date'), - ), - migrations.AddField( - model_name='salequotation', - name='date_in_review', - field=models.DateField(blank=True, null=True, verbose_name='In Review Date'), - ), - migrations.AddField( - model_name='salequotation', - name='date_paid', - field=models.DateField(blank=True, null=True, verbose_name='Paid Date'), - ), - migrations.AddField( - model_name='salequotation', - name='date_void', - field=models.DateField(blank=True, null=True, verbose_name='Void Date'), - ), - migrations.AlterField( - model_name='salequotation', - name='status', - field=models.CharField(choices=[('Draft', 'Draft'), ('Approved', 'Approved'), ('In Review', 'In Review'), ('Paid', 'Paid')], default='Draft', max_length=10, verbose_name='Status'), - ), - ] diff --git a/inventory/migrations/0010_alter_salequotation_date_approved_and_more.py b/inventory/migrations/0010_alter_salequotation_date_approved_and_more.py deleted file mode 100644 index 6a994ae2..00000000 --- a/inventory/migrations/0010_alter_salequotation_date_approved_and_more.py +++ /dev/null @@ -1,43 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-24 09:49 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0009_salequotation_date_approved_and_more'), - ] - - operations = [ - migrations.AlterField( - model_name='salequotation', - name='date_approved', - field=models.DateTimeField(blank=True, null=True, verbose_name='Approved Date'), - ), - migrations.AlterField( - model_name='salequotation', - name='date_canceled', - field=models.DateTimeField(blank=True, null=True, verbose_name='Canceled Date'), - ), - migrations.AlterField( - model_name='salequotation', - name='date_draft', - field=models.DateTimeField(blank=True, null=True, verbose_name='Draft Date'), - ), - migrations.AlterField( - model_name='salequotation', - name='date_in_review', - field=models.DateTimeField(blank=True, null=True, verbose_name='In Review Date'), - ), - migrations.AlterField( - model_name='salequotation', - name='date_paid', - field=models.DateTimeField(blank=True, null=True, verbose_name='Paid Date'), - ), - migrations.AlterField( - model_name='salequotation', - name='date_void', - field=models.DateTimeField(blank=True, null=True, verbose_name='Void Date'), - ), - ] diff --git a/inventory/migrations/0011_salequotation_posted.py b/inventory/migrations/0011_salequotation_posted.py deleted file mode 100644 index 450c6708..00000000 --- a/inventory/migrations/0011_salequotation_posted.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-24 10:47 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0010_alter_salequotation_date_approved_and_more'), - ] - - operations = [ - migrations.AddField( - model_name='salequotation', - name='posted', - field=models.BooleanField(default=False), - ), - ] diff --git a/inventory/migrations/0012_salequotation_payment_id.py b/inventory/migrations/0012_salequotation_payment_id.py deleted file mode 100644 index 24758c73..00000000 --- a/inventory/migrations/0012_salequotation_payment_id.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-24 13:46 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0011_salequotation_posted'), - ] - - operations = [ - migrations.AddField( - model_name='salequotation', - name='payment_id', - field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Payment ID'), - ), - ] diff --git a/inventory/migrations/0013_salequotation_is_paid.py b/inventory/migrations/0013_salequotation_is_paid.py deleted file mode 100644 index c3f313d5..00000000 --- a/inventory/migrations/0013_salequotation_is_paid.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-24 13:46 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0012_salequotation_payment_id'), - ] - - operations = [ - migrations.AddField( - model_name='salequotation', - name='is_paid', - field=models.BooleanField(default=False), - ), - ] diff --git a/inventory/migrations/0014_payment_refund.py b/inventory/migrations/0014_payment_refund.py deleted file mode 100644 index 4e5748f9..00000000 --- a/inventory/migrations/0014_payment_refund.py +++ /dev/null @@ -1,43 +0,0 @@ -# Generated by Django 5.1.4 on 2024-12-24 14:43 - -import django.db.models.deletion -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0013_salequotation_is_paid'), - ] - - operations = [ - migrations.CreateModel( - name='Payment', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('amount', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='amount')), - ('payment_method', models.CharField(choices=[('cash', 'cash'), ('credit', 'credit'), ('transfer', 'transfer'), ('debit', 'debit'), ('SADAD', 'SADAD')], max_length=50, verbose_name='method')), - ('reference_number', models.CharField(blank=True, max_length=100, null=True, verbose_name='reference number')), - ('payment_date', models.DateField(auto_now_add=True, verbose_name='date')), - ('quotation', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='payments', to='inventory.salequotation')), - ], - options={ - 'verbose_name': 'payment', - 'verbose_name_plural': 'payments', - }, - ), - migrations.CreateModel( - name='Refund', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('amount', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='amount')), - ('reason', models.TextField(blank=True, verbose_name='reason')), - ('refund_date', models.DateField(auto_now_add=True, verbose_name='refund date')), - ('payment', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='refund', to='inventory.payment')), - ], - options={ - 'verbose_name': 'refund', - 'verbose_name_plural': 'refunds', - }, - ), - ] diff --git a/inventory/migrations/0015_alter_salequotation_payment_id.py b/inventory/migrations/0015_alter_salequotation_payment_id.py deleted file mode 100644 index d863d075..00000000 --- a/inventory/migrations/0015_alter_salequotation_payment_id.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-24 14:26 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0014_payment_refund'), - ] - - operations = [ - migrations.AlterField( - model_name='salequotation', - name='payment_id', - field=models.CharField(blank=True, max_length=255, null=True, verbose_name='Payment ID'), - ), - ] diff --git a/inventory/migrations/0016_dealer_joined_at.py b/inventory/migrations/0016_dealer_joined_at.py deleted file mode 100644 index 501ff4c4..00000000 --- a/inventory/migrations/0016_dealer_joined_at.py +++ /dev/null @@ -1,20 +0,0 @@ -# Generated by Django 5.1.4 on 2024-12-25 10:37 - -import django.utils.timezone -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0015_alter_salequotation_payment_id'), - ] - - operations = [ - migrations.AddField( - model_name='dealer', - name='joined_at', - field=models.DateTimeField(auto_now_add=True, default=django.utils.timezone.now, verbose_name='Joined At'), - preserve_default=False, - ), - ] diff --git a/inventory/migrations/0017_dealer_email.py b/inventory/migrations/0017_dealer_email.py deleted file mode 100644 index 2aa8aa7f..00000000 --- a/inventory/migrations/0017_dealer_email.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 5.1.4 on 2024-12-25 10:44 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0016_dealer_joined_at'), - ] - - operations = [ - migrations.AddField( - model_name='dealer', - name='email', - field=models.EmailField(default='email@tenhal.sa', max_length=254, unique=True, verbose_name='Email'), - preserve_default=False, - ), - ] diff --git a/inventory/migrations/0018_additionalservices_taxable.py b/inventory/migrations/0018_additionalservices_taxable.py deleted file mode 100644 index 2f9b8f65..00000000 --- a/inventory/migrations/0018_additionalservices_taxable.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.1.4 on 2024-12-25 17:06 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0017_dealer_email'), - ] - - operations = [ - migrations.AddField( - model_name='additionalservices', - name='taxable', - field=models.BooleanField(default=True, verbose_name='Taxable'), - ), - ] diff --git a/inventory/migrations/0019_remove_additionalservices_taxable_and_more.py b/inventory/migrations/0019_remove_additionalservices_taxable_and_more.py deleted file mode 100644 index 728f5f69..00000000 --- a/inventory/migrations/0019_remove_additionalservices_taxable_and_more.py +++ /dev/null @@ -1,21 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-26 07:13 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0018_additionalservices_taxable'), - ] - - operations = [ - migrations.RemoveField( - model_name='additionalservices', - name='taxable', - ), - migrations.RemoveField( - model_name='salequotation', - name='entity', - ), - ] diff --git a/inventory/migrations/0020_dealer_entity.py b/inventory/migrations/0020_dealer_entity.py deleted file mode 100644 index 123c9d0d..00000000 --- a/inventory/migrations/0020_dealer_entity.py +++ /dev/null @@ -1,20 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-26 07:22 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('django_ledger', '0017_alter_accountmodel_unique_together_and_more'), - ('inventory', '0019_remove_additionalservices_taxable_and_more'), - ] - - operations = [ - migrations.AddField( - model_name='dealer', - name='entity', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='django_ledger.entitymodel'), - ), - ] diff --git a/inventory/migrations/0031_remove_salequotation_entity.py b/inventory/migrations/0031_remove_salequotation_entity.py deleted file mode 100644 index 715069b0..00000000 --- a/inventory/migrations/0031_remove_salequotation_entity.py +++ /dev/null @@ -1,17 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-26 07:58 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0030_account'), - ] - - operations = [ - migrations.RemoveField( - model_name='salequotation', - name='entity', - ), - ] diff --git a/inventory/migrations/0032_remove_additionalservices_vatable_and_more.py b/inventory/migrations/0032_remove_additionalservices_vatable_and_more.py deleted file mode 100644 index e97bfde8..00000000 --- a/inventory/migrations/0032_remove_additionalservices_vatable_and_more.py +++ /dev/null @@ -1,22 +0,0 @@ -# Generated by Django 4.2.17 on 2024-12-26 08:02 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('inventory', '0031_remove_salequotation_entity'), - ] - - operations = [ - migrations.RemoveField( - model_name='additionalservices', - name='vatable', - ), - migrations.AddField( - model_name='additionalservices', - name='taxable', - field=models.BooleanField(default=False, verbose_name='taxable'), - ), - ] diff --git a/inventory/migrations/__pycache__/0001_initial.cpython-311.pyc b/inventory/migrations/__pycache__/0001_initial.cpython-311.pyc deleted file mode 100644 index 0b51c813..00000000 Binary files a/inventory/migrations/__pycache__/0001_initial.cpython-311.pyc and /dev/null differ