from django.contrib.auth import get_user_model from django.db import models from dbsynce.models.service import Service from tickets.models import Ticket from dbsynce.docs.database.provider import Provider as HelpTexts from core.settings_vars import METASERVICE_ID class Provider(models.Model): """ Provider – единица описания поставщика услуг/ответственного лица за определенный ресурс (например, машину). По сути - это надстройка к клиентскому аккаунту, иллюстрирующая, что данный пользователь может выступать не только в роли потребителя. То есть, по тому, какие “провайдеры” находятся по идентификатору пользователя - можно установить конкретный список услуг данного пользователя. """ # ID METASERVICE id_metaservice = models.PositiveIntegerField( default=METASERVICE_ID, help_text=HelpTexts.id_metaservice ) # DATA gap = models.DateTimeField( max_length=150, help_text=HelpTexts.gap ) requirements = models.CharField( max_length=300, help_text=HelpTexts.requirements ) status = models.CharField( max_length=150, help_text=HelpTexts.status ) service_status = models.CharField( max_length=150, help_text=HelpTexts.service_status ) location_type = models.CharField( max_length=300, help_text=HelpTexts.location_type ) default_location = models.CharField( max_length=300, help_text=HelpTexts.default_location ) # OTHER is_global = models.CharField( max_length=1, default="f", help_text=HelpTexts.is_global ) is_visible = models.CharField( max_length=1, default="f", help_text=HelpTexts.is_visible ) # FK user = models.ForeignKey( get_user_model(), on_delete=models.DO_NOTHING, null=True, help_text=HelpTexts.user ) ticket_status = models.ForeignKey( Ticket, on_delete=models.DO_NOTHING, null=True, help_text=HelpTexts.ticket_status ) service = models.ForeignKey( Service, on_delete=models.DO_NOTHING, null=True, help_text=HelpTexts.service ) class Meta: db_table = "provider" verbose_name = "Поставщик" verbose_name_plural = "Поставщики"