Add model for tracking unassigned tickets
This commit is contained in:
parent
9068febd30
commit
674df0e66b
29
main/migrations/0012_auto_20210311_2027.py
Normal file
29
main/migrations/0012_auto_20210311_2027.py
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
# Generated by Django 3.1.6 on 2021-03-11 17:27
|
||||||
|
|
||||||
|
from django.conf import settings
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
|
('main', '0011_auto_20210311_1734'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.RemoveField(
|
||||||
|
model_name='rolechangelogs',
|
||||||
|
name='name',
|
||||||
|
),
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='UnassignedTicket',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('ticket_id', models.IntegerField(help_text='Номер тикера, для которого сняли ответственного')),
|
||||||
|
('status', models.IntegerField(choices=[(0, 'Снят с пользователя, перенесён в буферную группу'), (1, 'Авторство восстановлено'), (2, 'Пока нас не было, тикет испарился из буферной группы. Дополнительные действия не требуются')], default=0)),
|
||||||
|
('assignee', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='tickets', to=settings.AUTH_USER_MODEL)),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
]
|
@ -33,9 +33,20 @@ class RoleChangeLogs(models.Model):
|
|||||||
"""Модель для логирования изменений ролей пользователя"""
|
"""Модель для логирования изменений ролей пользователя"""
|
||||||
user = models.ForeignKey(to=User, on_delete=models.CASCADE,
|
user = models.ForeignKey(to=User, on_delete=models.CASCADE,
|
||||||
help_text='Пользователь, которому присвоили другую роль')
|
help_text='Пользователь, которому присвоили другую роль')
|
||||||
name = models.TextField(help_text='Имя пользователя')
|
|
||||||
old_role = models.IntegerField(default=0, help_text='Старая роль')
|
old_role = models.IntegerField(default=0, help_text='Старая роль')
|
||||||
new_role = models.IntegerField(default=0, help_text='Присвоенная роль')
|
new_role = models.IntegerField(default=0, help_text='Присвоенная роль')
|
||||||
change_time = models.DateTimeField(help_text='Дата и время изменения роли')
|
change_time = models.DateTimeField(help_text='Дата и время изменения роли')
|
||||||
changed_by = models.ForeignKey(to=User, on_delete=models.CASCADE, related_name='changed_by',
|
changed_by = models.ForeignKey(to=User, on_delete=models.CASCADE, related_name='changed_by',
|
||||||
help_text='Кем была изменена роль')
|
help_text='Кем была изменена роль')
|
||||||
|
|
||||||
|
|
||||||
|
class UnassignedTicketStatus(models.IntegerChoices):
|
||||||
|
UNASSIGNED = 0, 'Снят с пользователя, перенесён в буферную группу'
|
||||||
|
RESTORED = 1, 'Авторство восстановлено'
|
||||||
|
NOT_FOUND = 2, 'Пока нас не было, тикет испарился из буферной группы. Дополнительные действия не требуются'
|
||||||
|
|
||||||
|
|
||||||
|
class UnassignedTicket(models.Model):
|
||||||
|
assignee = models.ForeignKey(to=User, on_delete=models.CASCADE, related_name='tickets')
|
||||||
|
ticket_id = models.IntegerField(help_text='Номер тикера, для которого сняли ответственного')
|
||||||
|
status = models.IntegerField(choices=UnassignedTicketStatus.choices, default=UnassignedTicketStatus.UNASSIGNED)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user