Add qoute step.
This commit is contained in:
		
							parent
							
								
									b71ea45681
								
							
						
					
					
						commit
						6ff4740d04
					
				
					 30 changed files with 3362 additions and 376 deletions
				
			
		| 
						 | 
				
			
			@ -1,7 +1,8 @@
 | 
			
		|||
# Generated by Django 5.2.4 on 2025-08-07 09:08
 | 
			
		||||
# Generated by Django 5.2.4 on 2025-08-14 09:02
 | 
			
		||||
 | 
			
		||||
import django.db.models.deletion
 | 
			
		||||
import simple_history.models
 | 
			
		||||
import wells.models
 | 
			
		||||
from django.conf import settings
 | 
			
		||||
from django.db import migrations, models
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -11,10 +12,27 @@ class Migration(migrations.Migration):
 | 
			
		|||
    initial = True
 | 
			
		||||
 | 
			
		||||
    dependencies = [
 | 
			
		||||
        ('locations', '0001_initial'),
 | 
			
		||||
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
 | 
			
		||||
    ]
 | 
			
		||||
 | 
			
		||||
    operations = [
 | 
			
		||||
        migrations.CreateModel(
 | 
			
		||||
            name='WaterMeterManufacturer',
 | 
			
		||||
            fields=[
 | 
			
		||||
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
 | 
			
		||||
                ('created', models.DateTimeField(auto_now_add=True, verbose_name='تاریخ ایجاد')),
 | 
			
		||||
                ('updated', models.DateTimeField(auto_now=True, verbose_name='تاریخ بروزرسانی')),
 | 
			
		||||
                ('is_active', models.BooleanField(default=True, verbose_name='فعال')),
 | 
			
		||||
                ('is_deleted', models.BooleanField(default=False, verbose_name='حذف شده')),
 | 
			
		||||
                ('deleted_at', models.DateTimeField(blank=True, null=True, verbose_name='تاریخ حذف')),
 | 
			
		||||
                ('name', models.CharField(blank=True, max_length=20, null=True, verbose_name='نام شرکت سازنده کنتور آب')),
 | 
			
		||||
            ],
 | 
			
		||||
            options={
 | 
			
		||||
                'verbose_name': 'شرکت سازنده کنتور آب',
 | 
			
		||||
                'verbose_name_plural': 'شرکت\u200cهای سازنده کنتور آب',
 | 
			
		||||
            },
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.CreateModel(
 | 
			
		||||
            name='HistoricalWell',
 | 
			
		||||
            fields=[
 | 
			
		||||
| 
						 | 
				
			
			@ -25,12 +43,28 @@ class Migration(migrations.Migration):
 | 
			
		|||
                ('is_deleted', models.BooleanField(default=False, verbose_name='حذف شده')),
 | 
			
		||||
                ('deleted_at', models.DateTimeField(blank=True, null=True, verbose_name='تاریخ حذف')),
 | 
			
		||||
                ('slug', models.SlugField(max_length=100, verbose_name='اسلاگ')),
 | 
			
		||||
                ('water_subscription_number', models.CharField(db_index=True, max_length=20, verbose_name='شماره اشتراک آب')),
 | 
			
		||||
                ('electricity_subscription_number', models.CharField(db_index=True, max_length=20, null=True, verbose_name='شماره اشتراک برق')),
 | 
			
		||||
                ('water_meter_serial_number', models.CharField(blank=True, max_length=20, null=True, verbose_name='سریال کنتور آب')),
 | 
			
		||||
                ('water_meter_old_serial_number', models.CharField(blank=True, max_length=20, null=True, verbose_name='سریال کنتور قدیمی آب')),
 | 
			
		||||
                ('utm_x', models.DecimalField(blank=True, decimal_places=6, max_digits=10, null=True, verbose_name='X UTM')),
 | 
			
		||||
                ('utm_y', models.DecimalField(blank=True, decimal_places=6, max_digits=10, null=True, verbose_name='Y UTM')),
 | 
			
		||||
                ('utm_zone', models.PositiveIntegerField(blank=True, default=40, null=True, verbose_name='زون UTM')),
 | 
			
		||||
                ('utm_hemisphere', models.CharField(blank=True, choices=[('N', 'شمال'), ('S', 'جنوب')], default='N', max_length=1, null=True, verbose_name='نیمکره UTM')),
 | 
			
		||||
                ('well_power', models.PositiveIntegerField(blank=True, null=True, verbose_name='قدرت چاه')),
 | 
			
		||||
                ('reference_letter_number', models.CharField(blank=True, max_length=20, null=True, verbose_name='شماره معرفی نامه')),
 | 
			
		||||
                ('reference_letter_date', models.DateField(blank=True, null=True, verbose_name='تاریخ معرفی نامه')),
 | 
			
		||||
                ('representative_letter_file', models.TextField(blank=True, max_length=100, null=True, verbose_name='نامه نمایندگی')),
 | 
			
		||||
                ('history_id', models.AutoField(primary_key=True, serialize=False)),
 | 
			
		||||
                ('history_date', models.DateTimeField(db_index=True)),
 | 
			
		||||
                ('history_change_reason', models.CharField(max_length=100, null=True)),
 | 
			
		||||
                ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)),
 | 
			
		||||
                ('affairs', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='locations.affairs', verbose_name='امور')),
 | 
			
		||||
                ('broker', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='locations.broker', verbose_name='کارگزار')),
 | 
			
		||||
                ('county', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='locations.county', verbose_name='شهرستان')),
 | 
			
		||||
                ('history_user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)),
 | 
			
		||||
                ('representative', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='نماینده')),
 | 
			
		||||
                ('water_meter_manufacturer', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='wells.watermetermanufacturer', verbose_name='شرکت سازنده کنتور آب')),
 | 
			
		||||
            ],
 | 
			
		||||
            options={
 | 
			
		||||
                'verbose_name': 'historical چاه',
 | 
			
		||||
| 
						 | 
				
			
			@ -50,7 +84,23 @@ class Migration(migrations.Migration):
 | 
			
		|||
                ('is_deleted', models.BooleanField(default=False, verbose_name='حذف شده')),
 | 
			
		||||
                ('deleted_at', models.DateTimeField(blank=True, null=True, verbose_name='تاریخ حذف')),
 | 
			
		||||
                ('slug', models.SlugField(max_length=100, unique=True, verbose_name='اسلاگ')),
 | 
			
		||||
                ('representative', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='wells', to=settings.AUTH_USER_MODEL, verbose_name='نماینده')),
 | 
			
		||||
                ('water_subscription_number', models.CharField(max_length=20, unique=True, verbose_name='شماره اشتراک آب')),
 | 
			
		||||
                ('electricity_subscription_number', models.CharField(max_length=20, null=True, unique=True, verbose_name='شماره اشتراک برق')),
 | 
			
		||||
                ('water_meter_serial_number', models.CharField(blank=True, max_length=20, null=True, verbose_name='سریال کنتور آب')),
 | 
			
		||||
                ('water_meter_old_serial_number', models.CharField(blank=True, max_length=20, null=True, verbose_name='سریال کنتور قدیمی آب')),
 | 
			
		||||
                ('utm_x', models.DecimalField(blank=True, decimal_places=6, max_digits=10, null=True, verbose_name='X UTM')),
 | 
			
		||||
                ('utm_y', models.DecimalField(blank=True, decimal_places=6, max_digits=10, null=True, verbose_name='Y UTM')),
 | 
			
		||||
                ('utm_zone', models.PositiveIntegerField(blank=True, default=40, null=True, verbose_name='زون UTM')),
 | 
			
		||||
                ('utm_hemisphere', models.CharField(blank=True, choices=[('N', 'شمال'), ('S', 'جنوب')], default='N', max_length=1, null=True, verbose_name='نیمکره UTM')),
 | 
			
		||||
                ('well_power', models.PositiveIntegerField(blank=True, null=True, verbose_name='قدرت چاه')),
 | 
			
		||||
                ('reference_letter_number', models.CharField(blank=True, max_length=20, null=True, verbose_name='شماره معرفی نامه')),
 | 
			
		||||
                ('reference_letter_date', models.DateField(blank=True, null=True, verbose_name='تاریخ معرفی نامه')),
 | 
			
		||||
                ('representative_letter_file', models.FileField(blank=True, null=True, upload_to=wells.models.Well.path_and_rename, verbose_name='نامه نمایندگی')),
 | 
			
		||||
                ('affairs', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='locations.affairs', verbose_name='امور')),
 | 
			
		||||
                ('broker', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='locations.broker', verbose_name='کارگزار')),
 | 
			
		||||
                ('county', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='locations.county', verbose_name='شهرستان')),
 | 
			
		||||
                ('representative', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='wells', to=settings.AUTH_USER_MODEL, verbose_name='نماینده')),
 | 
			
		||||
                ('water_meter_manufacturer', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='wells.watermetermanufacturer', verbose_name='شرکت سازنده کنتور آب')),
 | 
			
		||||
            ],
 | 
			
		||||
            options={
 | 
			
		||||
                'verbose_name': 'چاه',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,202 +0,0 @@
 | 
			
		|||
# Generated by Django 5.2.4 on 2025-08-07 14:29
 | 
			
		||||
 | 
			
		||||
import datetime
 | 
			
		||||
import django.db.models.deletion
 | 
			
		||||
import django.utils.timezone
 | 
			
		||||
from django.conf import settings
 | 
			
		||||
from django.db import migrations, models
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class Migration(migrations.Migration):
 | 
			
		||||
 | 
			
		||||
    dependencies = [
 | 
			
		||||
        ('locations', '0001_initial'),
 | 
			
		||||
        ('wells', '0001_initial'),
 | 
			
		||||
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
 | 
			
		||||
    ]
 | 
			
		||||
 | 
			
		||||
    operations = [
 | 
			
		||||
        migrations.CreateModel(
 | 
			
		||||
            name='WaterMeterManufacturer',
 | 
			
		||||
            fields=[
 | 
			
		||||
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
 | 
			
		||||
                ('created', models.DateTimeField(auto_now_add=True, verbose_name='تاریخ ایجاد')),
 | 
			
		||||
                ('updated', models.DateTimeField(auto_now=True, verbose_name='تاریخ بروزرسانی')),
 | 
			
		||||
                ('is_active', models.BooleanField(default=True, verbose_name='فعال')),
 | 
			
		||||
                ('is_deleted', models.BooleanField(default=False, verbose_name='حذف شده')),
 | 
			
		||||
                ('deleted_at', models.DateTimeField(blank=True, null=True, verbose_name='تاریخ حذف')),
 | 
			
		||||
                ('name', models.CharField(blank=True, max_length=20, null=True, verbose_name='نام شرکت سازنده کنتور آب')),
 | 
			
		||||
            ],
 | 
			
		||||
            options={
 | 
			
		||||
                'verbose_name': 'شرکت سازنده کنتور آب',
 | 
			
		||||
                'verbose_name_plural': 'شرکت\u200cهای سازنده کنتور آب',
 | 
			
		||||
            },
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='affairs',
 | 
			
		||||
            field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='locations.affairs', verbose_name='امور'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='broker',
 | 
			
		||||
            field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='locations.broker', verbose_name='کارگزار'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='county',
 | 
			
		||||
            field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='locations.county', verbose_name='شهرستان'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='electricity_subscription_number',
 | 
			
		||||
            field=models.CharField(blank=True, db_index=True, max_length=20, null=True, verbose_name='شماره اشتراک برق'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='reference_letter_date',
 | 
			
		||||
            field=models.DateField(blank=True, null=True, verbose_name='تاریخ معرفی نامه'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='reference_letter_number',
 | 
			
		||||
            field=models.CharField(blank=True, max_length=20, null=True, verbose_name='شماره معرفی نامه'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='representative_letter_file',
 | 
			
		||||
            field=models.TextField(blank=True, max_length=100, null=True, verbose_name='نامه نمایندگی'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='utm_hemisphere',
 | 
			
		||||
            field=models.CharField(blank=True, choices=[('N', 'شمال'), ('S', 'جنوب')], default='N', max_length=1, null=True, verbose_name='نیمکره UTM'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='utm_x',
 | 
			
		||||
            field=models.DecimalField(blank=True, decimal_places=6, max_digits=10, null=True, verbose_name='X UTM'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='utm_y',
 | 
			
		||||
            field=models.DecimalField(blank=True, decimal_places=6, max_digits=10, null=True, verbose_name='Y UTM'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='utm_zone',
 | 
			
		||||
            field=models.PositiveIntegerField(blank=True, default=40, null=True, verbose_name='زون UTM'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='water_meter_old_serial_number',
 | 
			
		||||
            field=models.CharField(blank=True, max_length=20, null=True, verbose_name='سریال کنتور قدیمی آب'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='water_meter_serial_number',
 | 
			
		||||
            field=models.CharField(blank=True, max_length=20, null=True, verbose_name='سریال کنتور آب'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='water_subscription_number',
 | 
			
		||||
            field=models.CharField(db_index=True, default=datetime.datetime(2025, 8, 7, 14, 29, 15, 340093, tzinfo=datetime.timezone.utc), max_length=20, verbose_name='شماره اشتراک آب'),
 | 
			
		||||
            preserve_default=False,
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='well_power',
 | 
			
		||||
            field=models.PositiveIntegerField(blank=True, null=True, verbose_name='قدرت چاه'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='affairs',
 | 
			
		||||
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='locations.affairs', verbose_name='امور'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='broker',
 | 
			
		||||
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='locations.broker', verbose_name='کارگزار'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='county',
 | 
			
		||||
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='locations.county', verbose_name='شهرستان'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='electricity_subscription_number',
 | 
			
		||||
            field=models.CharField(blank=True, max_length=20, null=True, unique=True, verbose_name='شماره اشتراک برق'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='reference_letter_date',
 | 
			
		||||
            field=models.DateField(blank=True, null=True, verbose_name='تاریخ معرفی نامه'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='reference_letter_number',
 | 
			
		||||
            field=models.CharField(blank=True, max_length=20, null=True, verbose_name='شماره معرفی نامه'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='representative_letter_file',
 | 
			
		||||
            field=models.FileField(blank=True, null=True, upload_to='representative_letters/', verbose_name='نامه نمایندگی'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='utm_hemisphere',
 | 
			
		||||
            field=models.CharField(blank=True, choices=[('N', 'شمال'), ('S', 'جنوب')], default='N', max_length=1, null=True, verbose_name='نیمکره UTM'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='utm_x',
 | 
			
		||||
            field=models.DecimalField(blank=True, decimal_places=6, max_digits=10, null=True, verbose_name='X UTM'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='utm_y',
 | 
			
		||||
            field=models.DecimalField(blank=True, decimal_places=6, max_digits=10, null=True, verbose_name='Y UTM'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='utm_zone',
 | 
			
		||||
            field=models.PositiveIntegerField(blank=True, default=40, null=True, verbose_name='زون UTM'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='water_meter_old_serial_number',
 | 
			
		||||
            field=models.CharField(blank=True, max_length=20, null=True, verbose_name='سریال کنتور قدیمی آب'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='water_meter_serial_number',
 | 
			
		||||
            field=models.CharField(blank=True, max_length=20, null=True, verbose_name='سریال کنتور آب'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='water_subscription_number',
 | 
			
		||||
            field=models.CharField(default=django.utils.timezone.now, max_length=20, unique=True, verbose_name='شماره اشتراک آب'),
 | 
			
		||||
            preserve_default=False,
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='well_power',
 | 
			
		||||
            field=models.PositiveIntegerField(blank=True, null=True, verbose_name='قدرت چاه'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AlterField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='representative',
 | 
			
		||||
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='wells', to=settings.AUTH_USER_MODEL, verbose_name='نماینده'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='historicalwell',
 | 
			
		||||
            name='water_meter_manufacturer',
 | 
			
		||||
            field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='wells.watermetermanufacturer', verbose_name='شرکت سازنده کنتور آب'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='well',
 | 
			
		||||
            name='water_meter_manufacturer',
 | 
			
		||||
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='wells.watermetermanufacturer', verbose_name='شرکت سازنده کنتور آب'),
 | 
			
		||||
        ),
 | 
			
		||||
    ]
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue