Refactor removing field
parent
7d7f805a1e
commit
cdd6909432
|
@ -62,7 +62,6 @@ class UserStoryStatusExportSerializer(RelatedExportSerializer):
|
||||||
|
|
||||||
class UserStoryDueDateExportSerializer(RelatedExportSerializer):
|
class UserStoryDueDateExportSerializer(RelatedExportSerializer):
|
||||||
name = Field()
|
name = Field()
|
||||||
slug = Field()
|
|
||||||
order = Field()
|
order = Field()
|
||||||
by_default = Field()
|
by_default = Field()
|
||||||
color = Field()
|
color = Field()
|
||||||
|
@ -87,7 +86,6 @@ class TaskStatusExportSerializer(RelatedExportSerializer):
|
||||||
|
|
||||||
class TaskDueDateExportSerializer(RelatedExportSerializer):
|
class TaskDueDateExportSerializer(RelatedExportSerializer):
|
||||||
name = Field()
|
name = Field()
|
||||||
slug = Field()
|
|
||||||
order = Field()
|
order = Field()
|
||||||
by_default = Field()
|
by_default = Field()
|
||||||
color = Field()
|
color = Field()
|
||||||
|
@ -104,7 +102,6 @@ class IssueStatusExportSerializer(RelatedExportSerializer):
|
||||||
|
|
||||||
class IssueDueDateExportSerializer(RelatedExportSerializer):
|
class IssueDueDateExportSerializer(RelatedExportSerializer):
|
||||||
name = Field()
|
name = Field()
|
||||||
slug = Field()
|
|
||||||
order = Field()
|
order = Field()
|
||||||
by_default = Field()
|
by_default = Field()
|
||||||
color = Field()
|
color = Field()
|
||||||
|
|
|
@ -626,7 +626,6 @@ class UserStoryDueDateViewSet(BlockedByProjectMixin, ModelCrudViewSet):
|
||||||
for us_duedate in project_template.us_duedates:
|
for us_duedate in project_template.us_duedates:
|
||||||
models.UserStoryDueDate.objects.create(
|
models.UserStoryDueDate.objects.create(
|
||||||
name=us_duedate["name"],
|
name=us_duedate["name"],
|
||||||
slug=us_duedate["slug"],
|
|
||||||
by_default=us_duedate["by_default"],
|
by_default=us_duedate["by_default"],
|
||||||
color=us_duedate["color"],
|
color=us_duedate["color"],
|
||||||
days_to_due=us_duedate["days_to_due"],
|
days_to_due=us_duedate["days_to_due"],
|
||||||
|
@ -703,7 +702,6 @@ class TaskDueDateViewSet(BlockedByProjectMixin, ModelCrudViewSet):
|
||||||
for task_duedate in project_template.task_duedates:
|
for task_duedate in project_template.task_duedates:
|
||||||
models.TaskDueDate.objects.create(
|
models.TaskDueDate.objects.create(
|
||||||
name=task_duedate["name"],
|
name=task_duedate["name"],
|
||||||
slug=task_duedate["slug"],
|
|
||||||
by_default=task_duedate["by_default"],
|
by_default=task_duedate["by_default"],
|
||||||
color=task_duedate["color"],
|
color=task_duedate["color"],
|
||||||
days_to_due=task_duedate["days_to_due"],
|
days_to_due=task_duedate["days_to_due"],
|
||||||
|
@ -844,7 +842,6 @@ class IssueDueDateViewSet(BlockedByProjectMixin, ModelCrudViewSet):
|
||||||
for issue_duedate in project_template.issue_duedates:
|
for issue_duedate in project_template.issue_duedates:
|
||||||
models.IssueDueDate.objects.create(
|
models.IssueDueDate.objects.create(
|
||||||
name=issue_duedate["name"],
|
name=issue_duedate["name"],
|
||||||
slug=issue_duedate["slug"],
|
|
||||||
by_default=issue_duedate["by_default"],
|
by_default=issue_duedate["by_default"],
|
||||||
color=issue_duedate["color"],
|
color=issue_duedate["color"],
|
||||||
days_to_due=issue_duedate["days_to_due"],
|
days_to_due=issue_duedate["days_to_due"],
|
||||||
|
|
|
@ -21,7 +21,6 @@
|
||||||
"points": "?",
|
"points": "?",
|
||||||
"priority": "Normal",
|
"priority": "Normal",
|
||||||
"us_status": "New",
|
"us_status": "New",
|
||||||
"us_duedate": "Default",
|
|
||||||
"issue_type": "Bug",
|
"issue_type": "Bug",
|
||||||
"epic_status": "New",
|
"epic_status": "New",
|
||||||
"severity": "Normal",
|
"severity": "Normal",
|
||||||
|
@ -123,7 +122,6 @@
|
||||||
],
|
],
|
||||||
"us_duedates": [
|
"us_duedates": [
|
||||||
{
|
{
|
||||||
"slug": "default",
|
|
||||||
"name": "Default",
|
"name": "Default",
|
||||||
"order": 1,
|
"order": 1,
|
||||||
"by_default": true,
|
"by_default": true,
|
||||||
|
@ -131,7 +129,6 @@
|
||||||
"days_to_due": null
|
"days_to_due": null
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "due-soon",
|
|
||||||
"name": "Due soon",
|
"name": "Due soon",
|
||||||
"order": 2,
|
"order": 2,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
@ -139,7 +136,6 @@
|
||||||
"days_to_due": 14
|
"days_to_due": 14
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "past-due",
|
|
||||||
"name": "Past due",
|
"name": "Past due",
|
||||||
"order": 3,
|
"order": 3,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
@ -248,7 +244,6 @@
|
||||||
],
|
],
|
||||||
"task_duedates": [
|
"task_duedates": [
|
||||||
{
|
{
|
||||||
"slug": "default",
|
|
||||||
"name": "Default",
|
"name": "Default",
|
||||||
"order": 1,
|
"order": 1,
|
||||||
"by_default": true,
|
"by_default": true,
|
||||||
|
@ -256,7 +251,6 @@
|
||||||
"days_to_due": null
|
"days_to_due": null
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "due-soon",
|
|
||||||
"name": "Due soon",
|
"name": "Due soon",
|
||||||
"order": 2,
|
"order": 2,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
@ -264,7 +258,6 @@
|
||||||
"days_to_due": 14
|
"days_to_due": 14
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "past-due",
|
|
||||||
"name": "Past due",
|
"name": "Past due",
|
||||||
"order": 3,
|
"order": 3,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
@ -342,7 +335,6 @@
|
||||||
],
|
],
|
||||||
"issue_duedates": [
|
"issue_duedates": [
|
||||||
{
|
{
|
||||||
"slug": "default",
|
|
||||||
"name": "Default",
|
"name": "Default",
|
||||||
"order": 1,
|
"order": 1,
|
||||||
"by_default": true,
|
"by_default": true,
|
||||||
|
@ -350,7 +342,6 @@
|
||||||
"days_to_due": null
|
"days_to_due": null
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "due-soon",
|
|
||||||
"name": "Due soon",
|
"name": "Due soon",
|
||||||
"order": 2,
|
"order": 2,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
@ -358,7 +349,6 @@
|
||||||
"days_to_due": 14
|
"days_to_due": 14
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "past-due",
|
|
||||||
"name": "Past due",
|
"name": "Past due",
|
||||||
"order": 3,
|
"order": 3,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
@ -773,7 +763,6 @@
|
||||||
],
|
],
|
||||||
"us_duedates": [
|
"us_duedates": [
|
||||||
{
|
{
|
||||||
"slug": "default",
|
|
||||||
"name": "Default",
|
"name": "Default",
|
||||||
"order": 1,
|
"order": 1,
|
||||||
"by_default": true,
|
"by_default": true,
|
||||||
|
@ -781,7 +770,6 @@
|
||||||
"days_to_due": null
|
"days_to_due": null
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "due-soon",
|
|
||||||
"name": "Due soon",
|
"name": "Due soon",
|
||||||
"order": 2,
|
"order": 2,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
@ -789,7 +777,6 @@
|
||||||
"days_to_due": 14
|
"days_to_due": 14
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "past-due",
|
|
||||||
"name": "Past due",
|
"name": "Past due",
|
||||||
"order": 3,
|
"order": 3,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
@ -898,7 +885,6 @@
|
||||||
],
|
],
|
||||||
"task_duedates": [
|
"task_duedates": [
|
||||||
{
|
{
|
||||||
"slug": "default",
|
|
||||||
"name": "Default",
|
"name": "Default",
|
||||||
"order": 1,
|
"order": 1,
|
||||||
"by_default": true,
|
"by_default": true,
|
||||||
|
@ -906,7 +892,6 @@
|
||||||
"days_to_due": null
|
"days_to_due": null
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "due-soon",
|
|
||||||
"name": "Due soon",
|
"name": "Due soon",
|
||||||
"order": 2,
|
"order": 2,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
@ -914,7 +899,6 @@
|
||||||
"days_to_due": 14
|
"days_to_due": 14
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "past-due",
|
|
||||||
"name": "Past due",
|
"name": "Past due",
|
||||||
"order": 3,
|
"order": 3,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
@ -992,7 +976,6 @@
|
||||||
],
|
],
|
||||||
"issue_duedates": [
|
"issue_duedates": [
|
||||||
{
|
{
|
||||||
"slug": "default",
|
|
||||||
"name": "Default",
|
"name": "Default",
|
||||||
"order": 1,
|
"order": 1,
|
||||||
"by_default": true,
|
"by_default": true,
|
||||||
|
@ -1000,7 +983,6 @@
|
||||||
"days_to_due": null
|
"days_to_due": null
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "due-soon",
|
|
||||||
"name": "Due soon",
|
"name": "Due soon",
|
||||||
"order": 2,
|
"order": 2,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
@ -1008,7 +990,6 @@
|
||||||
"days_to_due": 14
|
"days_to_due": 14
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"slug": "past-due",
|
|
||||||
"name": "Past due",
|
"name": "Past due",
|
||||||
"order": 3,
|
"order": 3,
|
||||||
"by_default": false,
|
"by_default": false,
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
# Generated by Django 1.11.2 on 2018-06-14 07:21
|
# Generated by Django 1.11.2 on 2018-06-14 13:38
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
import django.core.serializers.json
|
import django.core.serializers.json
|
||||||
|
@ -20,7 +20,6 @@ class Migration(migrations.Migration):
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('name', models.CharField(max_length=255, verbose_name='name')),
|
('name', models.CharField(max_length=255, verbose_name='name')),
|
||||||
('slug', models.SlugField(blank=True, max_length=255, verbose_name='slug')),
|
|
||||||
('order', models.IntegerField(default=10, verbose_name='order')),
|
('order', models.IntegerField(default=10, verbose_name='order')),
|
||||||
('by_default', models.BooleanField(default=False, verbose_name='by default')),
|
('by_default', models.BooleanField(default=False, verbose_name='by default')),
|
||||||
('color', models.CharField(default='#999999', max_length=20, verbose_name='color')),
|
('color', models.CharField(default='#999999', max_length=20, verbose_name='color')),
|
||||||
|
@ -38,7 +37,6 @@ class Migration(migrations.Migration):
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('name', models.CharField(max_length=255, verbose_name='name')),
|
('name', models.CharField(max_length=255, verbose_name='name')),
|
||||||
('slug', models.SlugField(blank=True, max_length=255, verbose_name='slug')),
|
|
||||||
('order', models.IntegerField(default=10, verbose_name='order')),
|
('order', models.IntegerField(default=10, verbose_name='order')),
|
||||||
('by_default', models.BooleanField(default=False, verbose_name='by default')),
|
('by_default', models.BooleanField(default=False, verbose_name='by default')),
|
||||||
('color', models.CharField(default='#999999', max_length=20, verbose_name='color')),
|
('color', models.CharField(default='#999999', max_length=20, verbose_name='color')),
|
||||||
|
@ -56,7 +54,6 @@ class Migration(migrations.Migration):
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('name', models.CharField(max_length=255, verbose_name='name')),
|
('name', models.CharField(max_length=255, verbose_name='name')),
|
||||||
('slug', models.SlugField(blank=True, max_length=255, verbose_name='slug')),
|
|
||||||
('order', models.IntegerField(default=10, verbose_name='order')),
|
('order', models.IntegerField(default=10, verbose_name='order')),
|
||||||
('by_default', models.BooleanField(default=False, verbose_name='by default')),
|
('by_default', models.BooleanField(default=False, verbose_name='by default')),
|
||||||
('color', models.CharField(default='#999999', max_length=20, verbose_name='color')),
|
('color', models.CharField(default='#999999', max_length=20, verbose_name='color')),
|
||||||
|
@ -84,16 +81,20 @@ class Migration(migrations.Migration):
|
||||||
name='us_duedates',
|
name='us_duedates',
|
||||||
field=taiga.base.db.models.fields.json.JSONField(blank=True, encoder=django.core.serializers.json.DjangoJSONEncoder, null=True, verbose_name='us duedates'),
|
field=taiga.base.db.models.fields.json.JSONField(blank=True, encoder=django.core.serializers.json.DjangoJSONEncoder, null=True, verbose_name='us duedates'),
|
||||||
),
|
),
|
||||||
|
migrations.AlterUniqueTogether(
|
||||||
|
name='issuestatus',
|
||||||
|
unique_together=set([('project', 'name')]),
|
||||||
|
),
|
||||||
migrations.AlterUniqueTogether(
|
migrations.AlterUniqueTogether(
|
||||||
name='userstoryduedate',
|
name='userstoryduedate',
|
||||||
unique_together=set([('project', 'slug'), ('project', 'name')]),
|
unique_together=set([('project', 'name')]),
|
||||||
),
|
),
|
||||||
migrations.AlterUniqueTogether(
|
migrations.AlterUniqueTogether(
|
||||||
name='taskduedate',
|
name='taskduedate',
|
||||||
unique_together=set([('project', 'slug'), ('project', 'name')]),
|
unique_together=set([('project', 'name')]),
|
||||||
),
|
),
|
||||||
migrations.AlterUniqueTogether(
|
migrations.AlterUniqueTogether(
|
||||||
name='issueduedate',
|
name='issueduedate',
|
||||||
unique_together=set([('project', 'slug'), ('project', 'name')]),
|
unique_together=set([('project', 'name')]),
|
||||||
),
|
),
|
||||||
]
|
]
|
|
@ -608,8 +608,6 @@ class Points(models.Model):
|
||||||
class UserStoryDueDate(models.Model):
|
class UserStoryDueDate(models.Model):
|
||||||
name = models.CharField(max_length=255, null=False, blank=False,
|
name = models.CharField(max_length=255, null=False, blank=False,
|
||||||
verbose_name=_("name"))
|
verbose_name=_("name"))
|
||||||
slug = models.SlugField(max_length=255, null=False, blank=True,
|
|
||||||
verbose_name=_("slug"))
|
|
||||||
order = models.IntegerField(default=10, null=False, blank=False,
|
order = models.IntegerField(default=10, null=False, blank=False,
|
||||||
verbose_name=_("order"))
|
verbose_name=_("order"))
|
||||||
by_default = models.BooleanField(default=False, null=False, blank=True,
|
by_default = models.BooleanField(default=False, null=False, blank=True,
|
||||||
|
@ -625,19 +623,11 @@ class UserStoryDueDate(models.Model):
|
||||||
verbose_name = "user story due date"
|
verbose_name = "user story due date"
|
||||||
verbose_name_plural = "user story due dates"
|
verbose_name_plural = "user story due dates"
|
||||||
ordering = ["project", "order", "name"]
|
ordering = ["project", "order", "name"]
|
||||||
unique_together = (("project", "name"), ("project", "slug"))
|
unique_together = ("project", "name")
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.name
|
return self.name
|
||||||
|
|
||||||
def save(self, *args, **kwargs):
|
|
||||||
qs = self.project.us_duedates
|
|
||||||
if self.id:
|
|
||||||
qs = qs.exclude(id=self.id)
|
|
||||||
|
|
||||||
self.slug = slugify_uniquely_for_queryset(self.name, qs)
|
|
||||||
return super().save(*args, **kwargs)
|
|
||||||
|
|
||||||
|
|
||||||
# Tasks common models
|
# Tasks common models
|
||||||
class TaskStatus(models.Model):
|
class TaskStatus(models.Model):
|
||||||
|
@ -675,8 +665,6 @@ class TaskStatus(models.Model):
|
||||||
class TaskDueDate(models.Model):
|
class TaskDueDate(models.Model):
|
||||||
name = models.CharField(max_length=255, null=False, blank=False,
|
name = models.CharField(max_length=255, null=False, blank=False,
|
||||||
verbose_name=_("name"))
|
verbose_name=_("name"))
|
||||||
slug = models.SlugField(max_length=255, null=False, blank=True,
|
|
||||||
verbose_name=_("slug"))
|
|
||||||
order = models.IntegerField(default=10, null=False, blank=False,
|
order = models.IntegerField(default=10, null=False, blank=False,
|
||||||
verbose_name=_("order"))
|
verbose_name=_("order"))
|
||||||
by_default = models.BooleanField(default=False, null=False, blank=True,
|
by_default = models.BooleanField(default=False, null=False, blank=True,
|
||||||
|
@ -692,19 +680,11 @@ class TaskDueDate(models.Model):
|
||||||
verbose_name = "task due date"
|
verbose_name = "task due date"
|
||||||
verbose_name_plural = "task due dates"
|
verbose_name_plural = "task due dates"
|
||||||
ordering = ["project", "order", "name"]
|
ordering = ["project", "order", "name"]
|
||||||
unique_together = (("project", "name"), ("project", "slug"))
|
unique_together = (("project", "name"))
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.name
|
return self.name
|
||||||
|
|
||||||
def save(self, *args, **kwargs):
|
|
||||||
qs = self.project.task_duedates
|
|
||||||
if self.id:
|
|
||||||
qs = qs.exclude(id=self.id)
|
|
||||||
|
|
||||||
self.slug = slugify_uniquely_for_queryset(self.name, qs)
|
|
||||||
return super().save(*args, **kwargs)
|
|
||||||
|
|
||||||
|
|
||||||
# Issue common Models
|
# Issue common Models
|
||||||
|
|
||||||
|
@ -803,8 +783,6 @@ class IssueType(models.Model):
|
||||||
class IssueDueDate(models.Model):
|
class IssueDueDate(models.Model):
|
||||||
name = models.CharField(max_length=255, null=False, blank=False,
|
name = models.CharField(max_length=255, null=False, blank=False,
|
||||||
verbose_name=_("name"))
|
verbose_name=_("name"))
|
||||||
slug = models.SlugField(max_length=255, null=False, blank=True,
|
|
||||||
verbose_name=_("slug"))
|
|
||||||
order = models.IntegerField(default=10, null=False, blank=False,
|
order = models.IntegerField(default=10, null=False, blank=False,
|
||||||
verbose_name=_("order"))
|
verbose_name=_("order"))
|
||||||
by_default = models.BooleanField(default=False, null=False, blank=True,
|
by_default = models.BooleanField(default=False, null=False, blank=True,
|
||||||
|
@ -820,19 +798,11 @@ class IssueDueDate(models.Model):
|
||||||
verbose_name = "issue due date"
|
verbose_name = "issue due date"
|
||||||
verbose_name_plural = "issue due dates"
|
verbose_name_plural = "issue due dates"
|
||||||
ordering = ["project", "order", "name"]
|
ordering = ["project", "order", "name"]
|
||||||
unique_together = (("project", "name"), ("project", "slug"))
|
unique_together = ("project", "name")
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.name
|
return self.name
|
||||||
|
|
||||||
def save(self, *args, **kwargs):
|
|
||||||
qs = self.project.issue_duedates
|
|
||||||
if self.id:
|
|
||||||
qs = qs.exclude(id=self.id)
|
|
||||||
|
|
||||||
self.slug = slugify_uniquely_for_queryset(self.name, qs)
|
|
||||||
return super().save(*args, **kwargs)
|
|
||||||
|
|
||||||
|
|
||||||
class ProjectTemplate(TaggedMixin, TagsColorsMixin, models.Model):
|
class ProjectTemplate(TaggedMixin, TagsColorsMixin, models.Model):
|
||||||
name = models.CharField(max_length=250, null=False, blank=False,
|
name = models.CharField(max_length=250, null=False, blank=False,
|
||||||
|
@ -958,7 +928,6 @@ class ProjectTemplate(TaggedMixin, TagsColorsMixin, models.Model):
|
||||||
for us_duedate in project.us_duedates.all():
|
for us_duedate in project.us_duedates.all():
|
||||||
self.us_duedates.append({
|
self.us_duedates.append({
|
||||||
"name": us_duedate.name,
|
"name": us_duedate.name,
|
||||||
"slug": us_duedate.slug,
|
|
||||||
"by_default": us_duedate.by_default,
|
"by_default": us_duedate.by_default,
|
||||||
"color": us_duedate.color,
|
"color": us_duedate.color,
|
||||||
"days_to_due": us_duedate.days_to_due,
|
"days_to_due": us_duedate.days_to_due,
|
||||||
|
@ -987,7 +956,6 @@ class ProjectTemplate(TaggedMixin, TagsColorsMixin, models.Model):
|
||||||
for task_duedate in project.task_duedates.all():
|
for task_duedate in project.task_duedates.all():
|
||||||
self.task_duedates.append({
|
self.task_duedates.append({
|
||||||
"name": task_duedate.name,
|
"name": task_duedate.name,
|
||||||
"slug": task_duedate.slug,
|
|
||||||
"by_default": task_duedate.by_default,
|
"by_default": task_duedate.by_default,
|
||||||
"color": task_duedate.color,
|
"color": task_duedate.color,
|
||||||
"days_to_due": task_duedate.days_to_due,
|
"days_to_due": task_duedate.days_to_due,
|
||||||
|
@ -1016,7 +984,6 @@ class ProjectTemplate(TaggedMixin, TagsColorsMixin, models.Model):
|
||||||
for issue_duedate in project.issue_duedates.all():
|
for issue_duedate in project.issue_duedates.all():
|
||||||
self.issue_duedates.append({
|
self.issue_duedates.append({
|
||||||
"name": issue_duedate.name,
|
"name": issue_duedate.name,
|
||||||
"slug": issue_duedate.slug,
|
|
||||||
"by_default": issue_duedate.by_default,
|
"by_default": issue_duedate.by_default,
|
||||||
"color": issue_duedate.color,
|
"color": issue_duedate.color,
|
||||||
"days_to_due": issue_duedate.days_to_due,
|
"days_to_due": issue_duedate.days_to_due,
|
||||||
|
@ -1137,7 +1104,6 @@ class ProjectTemplate(TaggedMixin, TagsColorsMixin, models.Model):
|
||||||
for us_duedate in self.us_duedates:
|
for us_duedate in self.us_duedates:
|
||||||
UserStoryDueDate.objects.create(
|
UserStoryDueDate.objects.create(
|
||||||
name=us_duedate["name"],
|
name=us_duedate["name"],
|
||||||
slug=us_duedate["slug"],
|
|
||||||
by_default=us_duedate["by_default"],
|
by_default=us_duedate["by_default"],
|
||||||
color=us_duedate["color"],
|
color=us_duedate["color"],
|
||||||
days_to_due=us_duedate["days_to_due"],
|
days_to_due=us_duedate["days_to_due"],
|
||||||
|
@ -1166,7 +1132,6 @@ class ProjectTemplate(TaggedMixin, TagsColorsMixin, models.Model):
|
||||||
for task_duedate in self.task_duedates:
|
for task_duedate in self.task_duedates:
|
||||||
TaskDueDate.objects.create(
|
TaskDueDate.objects.create(
|
||||||
name=task_duedate["name"],
|
name=task_duedate["name"],
|
||||||
slug=task_duedate["slug"],
|
|
||||||
by_default=task_duedate["by_default"],
|
by_default=task_duedate["by_default"],
|
||||||
color=task_duedate["color"],
|
color=task_duedate["color"],
|
||||||
days_to_due=task_duedate["days_to_due"],
|
days_to_due=task_duedate["days_to_due"],
|
||||||
|
@ -1195,7 +1160,6 @@ class ProjectTemplate(TaggedMixin, TagsColorsMixin, models.Model):
|
||||||
for issue_duedate in self.issue_duedates:
|
for issue_duedate in self.issue_duedates:
|
||||||
IssueDueDate.objects.create(
|
IssueDueDate.objects.create(
|
||||||
name=issue_duedate["name"],
|
name=issue_duedate["name"],
|
||||||
slug=issue_duedate["slug"],
|
|
||||||
by_default=issue_duedate["by_default"],
|
by_default=issue_duedate["by_default"],
|
||||||
color=issue_duedate["color"],
|
color=issue_duedate["color"],
|
||||||
days_to_due=issue_duedate["days_to_due"],
|
days_to_due=issue_duedate["days_to_due"],
|
||||||
|
|
|
@ -40,7 +40,6 @@ from .notifications.choices import NotifyLevel
|
||||||
class BaseDueDateSerializer(serializers.LightSerializer):
|
class BaseDueDateSerializer(serializers.LightSerializer):
|
||||||
id = Field()
|
id = Field()
|
||||||
name = I18NField()
|
name = I18NField()
|
||||||
slug = Field()
|
|
||||||
order = Field()
|
order = Field()
|
||||||
by_default = Field()
|
by_default = Field()
|
||||||
days_to_due = Field()
|
days_to_due = Field()
|
||||||
|
|
|
@ -2296,7 +2296,6 @@ def test_create_us_default_due_dates(client):
|
||||||
|
|
||||||
us_duedates = [{
|
us_duedates = [{
|
||||||
"name": 'Default',
|
"name": 'Default',
|
||||||
"slug": 'default',
|
|
||||||
"by_default": True,
|
"by_default": True,
|
||||||
'color': '#0000',
|
'color': '#0000',
|
||||||
'days_to_due': None,
|
'days_to_due': None,
|
||||||
|
@ -2320,7 +2319,6 @@ def test_create_us_default_due_dates(client):
|
||||||
def test_prevent_create_us_default_due_dates_when_already_exists(client):
|
def test_prevent_create_us_default_due_dates_when_already_exists(client):
|
||||||
us_duedates = [{
|
us_duedates = [{
|
||||||
"name": 'Default',
|
"name": 'Default',
|
||||||
"slug": 'default',
|
|
||||||
"by_default": True,
|
"by_default": True,
|
||||||
'color': '#0000',
|
'color': '#0000',
|
||||||
'days_to_due': None,
|
'days_to_due': None,
|
||||||
|
@ -2344,7 +2342,6 @@ def test_prevent_create_us_default_due_dates_when_already_exists(client):
|
||||||
def test_prevent_delete_us_default_due_dates(client):
|
def test_prevent_delete_us_default_due_dates(client):
|
||||||
us_duedates = [{
|
us_duedates = [{
|
||||||
"name": 'Default',
|
"name": 'Default',
|
||||||
"slug": 'default',
|
|
||||||
"by_default": True,
|
"by_default": True,
|
||||||
'color': '#0000',
|
'color': '#0000',
|
||||||
'days_to_due': None,
|
'days_to_due': None,
|
||||||
|
@ -2370,7 +2367,6 @@ def test_create_task_default_due_dates(client):
|
||||||
|
|
||||||
task_duedates = [{
|
task_duedates = [{
|
||||||
"name": 'Default',
|
"name": 'Default',
|
||||||
"slug": 'default',
|
|
||||||
"by_default": True,
|
"by_default": True,
|
||||||
'color': '#0000',
|
'color': '#0000',
|
||||||
'days_to_due': None,
|
'days_to_due': None,
|
||||||
|
@ -2394,7 +2390,6 @@ def test_create_task_default_due_dates(client):
|
||||||
def test_prevent_create_task_default_due_dates_when_already_exists(client):
|
def test_prevent_create_task_default_due_dates_when_already_exists(client):
|
||||||
task_duedates = [{
|
task_duedates = [{
|
||||||
"name": 'Default',
|
"name": 'Default',
|
||||||
"slug": 'default',
|
|
||||||
"by_default": True,
|
"by_default": True,
|
||||||
'color': '#0000',
|
'color': '#0000',
|
||||||
'days_to_due': None,
|
'days_to_due': None,
|
||||||
|
@ -2418,7 +2413,6 @@ def test_prevent_create_task_default_due_dates_when_already_exists(client):
|
||||||
def test_prevent_delete_task_default_due_dates(client):
|
def test_prevent_delete_task_default_due_dates(client):
|
||||||
task_duedates = [{
|
task_duedates = [{
|
||||||
"name": 'Default',
|
"name": 'Default',
|
||||||
"slug": 'default',
|
|
||||||
"by_default": True,
|
"by_default": True,
|
||||||
'color': '#0000',
|
'color': '#0000',
|
||||||
'days_to_due': None,
|
'days_to_due': None,
|
||||||
|
@ -2444,7 +2438,6 @@ def test_create_issue_default_due_dates(client):
|
||||||
|
|
||||||
issue_duedates = [{
|
issue_duedates = [{
|
||||||
"name": 'Default',
|
"name": 'Default',
|
||||||
"slug": 'default',
|
|
||||||
"by_default": True,
|
"by_default": True,
|
||||||
'color': '#0000',
|
'color': '#0000',
|
||||||
'days_to_due': None,
|
'days_to_due': None,
|
||||||
|
@ -2468,7 +2461,6 @@ def test_create_issue_default_due_dates(client):
|
||||||
def test_prevent_create_issue_default_due_dates_when_already_exists(client):
|
def test_prevent_create_issue_default_due_dates_when_already_exists(client):
|
||||||
issue_duedates = [{
|
issue_duedates = [{
|
||||||
"name": 'Default',
|
"name": 'Default',
|
||||||
"slug": 'default',
|
|
||||||
"by_default": True,
|
"by_default": True,
|
||||||
'color': '#0000',
|
'color': '#0000',
|
||||||
'days_to_due': None,
|
'days_to_due': None,
|
||||||
|
@ -2492,7 +2484,6 @@ def test_prevent_create_issue_default_due_dates_when_already_exists(client):
|
||||||
def test_prevent_delete_issue_default_due_dates(client):
|
def test_prevent_delete_issue_default_due_dates(client):
|
||||||
issue_duedates = [{
|
issue_duedates = [{
|
||||||
"name": 'Default',
|
"name": 'Default',
|
||||||
"slug": 'default',
|
|
||||||
"by_default": True,
|
"by_default": True,
|
||||||
'color': '#0000',
|
'color': '#0000',
|
||||||
'days_to_due': None,
|
'days_to_due': None,
|
||||||
|
|
Loading…
Reference in New Issue