from django.contrib.auth import get_user_model from django.db import models from tickets.models import Ticket from dbsynce.docs.database.relationship import Relationship as HelpTexts from dbsynce.docs.verbose_names.relationship import Relationship as VerboseName from core.settings_vars import METASERVICE_ID from dbsynce.lib import dicts class Relationship(models.Model): """ Relationship - описание связей (желательных - как имеющиеся договорные отношения, и нежелательных - как пожелание любой из сторон) """ # ID METASERVICE id_metaservice = models.PositiveIntegerField( default=METASERVICE_ID, verbose_name = VerboseName.id_metaservice, help_text=HelpTexts.id_metaservice, ) # DATA neg_type = models.IntegerField( choices = list(dicts.neg_type_by_code.items()), verbose_name = VerboseName.neg_type, help_text=HelpTexts.neg_type, ) requirements = models.CharField( max_length=50, #TODO ADD CORRECT DEFAULT! default="DSMPUB", verbose_name = VerboseName.requirements, help_text=HelpTexts.requirements, ) status = models.CharField( max_length=1, default="1", choices = list(dicts.activity_status_by_code.items()), verbose_name = VerboseName.status, help_text=HelpTexts.status, ) # OTHER is_global = models.CharField( max_length=1, default="f", choices = list(dicts.is_global_by_code.items()), verbose_name = VerboseName.is_global, help_text=HelpTexts.is_global, ) is_visible = models.CharField( max_length=1, default="f", choices = list(dicts.is_visible_by_code.items()), verbose_name = VerboseName.is_visible, help_text=HelpTexts.is_visible, ) # FK user_who = models.ForeignKey( get_user_model(), related_name="user_who", on_delete=models.DO_NOTHING, verbose_name = VerboseName.user_who, help_text=HelpTexts.user_who, ) user_whom = models.ForeignKey( get_user_model(), related_name="user_whom", on_delete=models.DO_NOTHING, verbose_name = VerboseName.user_whom, help_text=HelpTexts.user_whom, ) ticket_status = models.ForeignKey( Ticket, on_delete=models.DO_NOTHING, verbose_name = VerboseName.ticket_status, help_text=HelpTexts.ticket_status, ) class Meta: db_table = "relationship" verbose_name = "Связь (Договорное отношение)" verbose_name_plural = "Связи (Договорные отношения)"