mirror of
https://github.com/makeplane/plane.git
synced 2026-07-14 14:31:37 +02:00
[SILO-303] Model and migrations for Clickup importer #3346
This commit is contained in:
@@ -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),
|
||||
),
|
||||
]
|
||||
@@ -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"
|
||||
|
||||
@@ -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()
|
||||
|
||||
Reference in New Issue
Block a user