[SILO-303] Model and migrations for Clickup importer #3346

This commit is contained in:
Saurabh Kumar
2025-06-11 17:06:36 +05:30
committed by GitHub
parent 9967fc8c07
commit c1ca165693
3 changed files with 37 additions and 2 deletions

View File

@@ -0,0 +1,30 @@
# Generated by Django 4.2.21 on 2025-06-06 12:24
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('db', '0096_user_is_email_valid_user_masked_at'),
('ee', '0037_pageuser_pageuser_unique_page_user_and_more'),
]
operations = [
migrations.AddField(
model_name='importreport',
name='completed_batch_count',
field=models.IntegerField(default=0),
),
migrations.AlterField(
model_name='importjob',
name='project',
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='jobs', to='db.project'),
),
migrations.AlterField(
model_name='importjob',
name='status',
field=models.CharField(choices=[('PROGRESSING', 'Progressing'), ('CREATED', 'Created'), ('QUEUED', 'Queued'), ('INITIATED', 'Initiated'), ('PULLING', 'Pulling'), ('PULLED', 'Pulled'), ('TRANSFORMING', 'Transforming'), ('PUSHING', 'Pushing'), ('FINISHED', 'Finished'), ('ERROR', 'Error'), ('CANCELLED', 'Cancelled')], default='CREATED', max_length=20),
),
]

View File

@@ -10,6 +10,7 @@ class ImportReport(BaseModel):
total_batch_count = models.IntegerField(default=0)
imported_batch_count = models.IntegerField(default=0)
errored_batch_count = models.IntegerField(default=0)
completed_batch_count = models.IntegerField(default=0)
# issues information
total_issue_count = models.IntegerField(default=0)
imported_issue_count = models.IntegerField(default=0)
@@ -31,6 +32,7 @@ class ImportReport(BaseModel):
class ImportJob(BaseModel):
class JobStatus(TextChoices):
PROGRESSING = "PROGRESSING", "Progressing"
CREATED = "CREATED", "Created"
QUEUED = "QUEUED", "Queued"
INITIATED = "INITIATED", "Initiated"
@@ -51,7 +53,7 @@ class ImportJob(BaseModel):
related_name="jobs",
)
project = models.ForeignKey(
"db.Project", on_delete=models.CASCADE, related_name="jobs"
"db.Project", on_delete=models.CASCADE, null=True, related_name="jobs"
)
workspace = models.ForeignKey(
"db.Workspace", on_delete=models.CASCADE, related_name="jobs"

View File

@@ -23,7 +23,10 @@ class ImportJobAPISerializer(BaseSerializer):
source="workspace", queryset=Workspace.objects.all()
)
project_id = serializers.PrimaryKeyRelatedField(
source="project", queryset=Project.objects.all()
source="project",
queryset=Project.objects.all(),
required=False,
allow_null=True,
)
initiator_id = serializers.PrimaryKeyRelatedField(
source="initiator", queryset=User.objects.all()