plantdate added to field and

due date became a dateField
This commit is contained in:
2025-08-05 16:52:21 +03:30
parent 812d507f26
commit 589c955c48
11 changed files with 49 additions and 217 deletions

View File

@@ -1,6 +1,7 @@
# Generated by Django 5.2.4 on 2025-07-29 17:23
# Generated by Django 5.2.4 on 2025-08-04 13:18
import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models
@@ -9,21 +10,24 @@ class Migration(migrations.Migration):
initial = True
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.CreateModel(
name='Cultivation_calender',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('calender', models.JSONField(default=dict)),
],
),
migrations.CreateModel(
name='Cost',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=255)),
],
),
migrations.CreateModel(
name='Cultivation_calender',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('calender', models.JSONField()),
('amount', models.BigIntegerField(default=0)),
('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
@@ -31,7 +35,9 @@ class Migration(migrations.Migration):
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=255)),
('geography', models.JSONField()),
('geography', models.JSONField(default=dict)),
('plantdate', models.DateField(blank=True, null=True)),
('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
@@ -39,7 +45,9 @@ class Migration(migrations.Migration):
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('image', models.ImageField(upload_to='images/')),
('comment', models.TextField(default='')),
('uploaded_at', models.DateTimeField(auto_now_add=True)),
('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
@@ -47,18 +55,26 @@ class Migration(migrations.Migration):
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('content', models.TextField()),
('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Voice',
name='Job',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('Voice', models.FileField(upload_to='audios/')),
('uploaded_at', models.DateTimeField(auto_now_add=True)),
('type', models.CharField(choices=[('Irrigation', 'IRRIGATING'), ('Planting', 'PLANTING'), ('PrePlanting', 'PREPLANTING'), ('Fertilizing', 'FERTILIZING'), ('Spraying', 'SPRAYING'), ('Pruning', 'PRUNING'), ('Harvesting', 'HARVESTING')], default='Irrigating', max_length=15)),
('made_date', models.DateTimeField(auto_now_add=True)),
('due_date', models.DateTimeField(auto_now_add=True)),
('status', models.BooleanField()),
('costs', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='field.cost')),
('field', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='field.field')),
('images', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='field.image')),
('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
('notes', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='field.note')),
],
),
migrations.CreateModel(
name='product',
name='Product',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=255)),
@@ -66,18 +82,4 @@ class Migration(migrations.Migration):
('cultivation_calender', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='field.cultivation_calender')),
],
),
migrations.CreateModel(
name='Job',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('made_date', models.DateTimeField(auto_now_add=True)),
('due_date', models.DateTimeField()),
('status', models.BooleanField()),
('costs', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='field.cost')),
('field', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='field.field')),
('images', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='field.image')),
('notes', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='field.note')),
('voices', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='field.voice')),
],
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 5.2.4 on 2025-08-05 10:47
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('field', '0001_initial'),
]
operations = [
migrations.AlterField(
model_name='job',
name='due_date',
field=models.DateField(),
),
]

View File

@@ -1,18 +0,0 @@
# Generated by Django 5.2.4 on 2025-07-29 17:33
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('field', '0001_initial'),
]
operations = [
migrations.AddField(
model_name='cost',
name='amount',
field=models.BigIntegerField(default=0),
),
]

View File

@@ -1,28 +0,0 @@
# Generated by Django 5.2.4 on 2025-07-29 17:41
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('field', '0002_cost_amount'),
]
operations = [
migrations.AddField(
model_name='image',
name='comment',
field=models.TextField(default=''),
),
migrations.AlterField(
model_name='cultivation_calender',
name='calender',
field=models.JSONField(default=dict),
),
migrations.AlterField(
model_name='field',
name='geography',
field=models.JSONField(default=dict),
),
]

View File

@@ -1,18 +0,0 @@
# Generated by Django 5.2.4 on 2025-07-29 17:55
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('field', '0003_image_comment_alter_cultivation_calender_calender_and_more'),
]
operations = [
migrations.AddField(
model_name='job',
name='type',
field=models.CharField(choices=[('Irrigating', 'IRRIGATING'), ('Planting', 'PLANTING'), ('PrePlanting', 'PREPLANTING'), ('Fertilizing', 'FERTILIZING'), ('Pruning', 'PRUNING'), ('Harvesting', 'HARVESTING')], default='Irrigating', max_length=15),
),
]

View File

@@ -1,43 +0,0 @@
# Generated by Django 5.2.4 on 2025-07-29 18:30
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('field', '0004_job_type'),
]
operations = [
migrations.RemoveField(
model_name='voice',
name='Voice',
),
migrations.AlterField(
model_name='job',
name='costs',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='field.cost'),
),
migrations.AlterField(
model_name='job',
name='images',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='field.image'),
),
migrations.AlterField(
model_name='job',
name='notes',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='field.note'),
),
migrations.AlterField(
model_name='job',
name='voices',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='field.voice'),
),
migrations.AddField(
model_name='voice',
name='voice',
field=models.FileField(blank=True, null=True, upload_to='audios/'),
),
]

View File

@@ -1,25 +0,0 @@
# Generated by Django 5.2.4 on 2025-07-30 20:06
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('field', '0005_remove_voice_voice_alter_job_costs_alter_job_images_and_more'),
]
operations = [
migrations.RemoveField(
model_name='job',
name='voices',
),
migrations.AlterField(
model_name='job',
name='type',
field=models.CharField(choices=[('Irrigation', 'IRRIGATING'), ('Planting', 'PLANTING'), ('PrePlanting', 'PREPLANTING'), ('Fertilizing', 'FERTILIZING'), ('Spraying', 'SPRAYING'), ('Pruning', 'PRUNING'), ('Harvesting', 'HARVESTING')], default='Irrigating', max_length=15),
),
migrations.DeleteModel(
name='Voice',
),
]

View File

@@ -1,26 +0,0 @@
# Generated by Django 5.2.4 on 2025-07-30 20:12
import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('field', '0006_remove_job_voices_alter_job_type_delete_voice'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.AddField(
model_name='field',
name='user',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
),
migrations.AddField(
model_name='job',
name='user',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
),
]

View File

@@ -1,31 +0,0 @@
# Generated by Django 5.2.4 on 2025-07-30 21:08
import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('field', '0007_field_user_job_user'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.AddField(
model_name='cost',
name='user',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
),
migrations.AddField(
model_name='image',
name='user',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
),
migrations.AddField(
model_name='note',
name='user',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
),
]

View File

@@ -8,6 +8,7 @@ class Field(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE, null=True, blank=True)
name = models.CharField(max_length=255)
geography = models.JSONField(default=dict)
plantdate = models.DateField(null=True, blank=True)
def __str__(self):
return self.name
@@ -70,7 +71,7 @@ class Job(models.Model):
type = models.CharField(max_length=15, choices=TYPE_CHOICES, default="Irrigating")
field = models.ForeignKey(Field, on_delete=models.CASCADE)
made_date = models.DateTimeField(auto_now_add=True)
due_date = models.DateTimeField(auto_now_add=True)
due_date = models.DateField()
status = models.BooleanField()
costs = models.ForeignKey(Cost, on_delete=models.SET_NULL, null=True, blank=True)
notes = models.ForeignKey(Note, on_delete=models.SET_NULL, null=True, blank=True)