Evgeny Polivanov hai 1 ano
pai
achega
07d031f91b
Modificáronse 1 ficheiros con 25 adicións e 23 borrados
  1. 25 23
      models.py

+ 25 - 23
models.py

@@ -14,8 +14,8 @@ class Permissions(models.Model):
     check_date = models.DateTimeField(null=True, help_text="timestamp проверки")
     id_permissions = models.BigIntegerField(help_text="уникальный идентификатор определяющий наличие разрешения из множества в словаре - выданных пользователю/клиенту/аккаунту")
     check_level = models.CharField(max_length=10, help_text="тип проверки в соответствии с классификатором проверок.")
-    checked_by = models.ForeignKey(SharixUser, related_name="checked_by", on_delete=models.DO_NOTHING, null=True, help_text="(check-level из классификатора платформы) - информация об уровне проверки. Проверка может быть проведена как платформой, так и мета-сервисом, так и партнером мета-сервиса, а может быть и никем (просто загружен). Указывается, так как достоверность проверки разная. Экзамен, проверенный только на низком уровне, не принимается во внимание как имеющийся до прохождения более высокоуровневой проверки.")
-    user_id = models.ForeignKey(SharixUser, related_name="user_id", on_delete=models.DO_NOTHING, null=True, help_text="уникальный идентификатор пользователя/клиента/аккаунта, которым была пройдена проверка и получено разрешение")
+    checked_by = models.ForeignKey(SharixUser, related_name="checked_by_perm", on_delete=models.DO_NOTHING, null=True, help_text="(check-level из классификатора платформы) - информация об уровне проверки. Проверка может быть проведена как платформой, так и мета-сервисом, так и партнером мета-сервиса, а может быть и никем (просто загружен). Указывается, так как достоверность проверки разная. Экзамен, проверенный только на низком уровне, не принимается во внимание как имеющийся до прохождения более высокоуровневой проверки.")
+    user_id = models.ForeignKey(SharixUser, related_name="user_id_perm", on_delete=models.DO_NOTHING, null=True, help_text="уникальный идентификатор пользователя/клиента/аккаунта, которым была пройдена проверка и получено разрешение")
     status = models.CharField(max_length=150, help_text="статус обработки заявки в системе заявок")
     ticket_status = models.ForeignKey(Task, on_delete=models.DO_NOTHING, null=True, help_text="id заявки, по которой происходит проверка статуса relationship. State меняется только в результате изменений в заявке.")
     id_metaservice = models.BigIntegerField(help_text=" уникальный идентификатор мета-сервиса, необходимый для синхронизации данных.")
@@ -84,15 +84,31 @@ class Documents(models.Model):
     ticket_status = models.ForeignKey(Task, on_delete=models.DO_NOTHING, help_text="id последнего актуального тикета, касающийся статуса. Если он меняет статус на закрытый - вызывается проверка, которая смотрит, нет ли другого открытого по пользователю.")
     datalink = models.TextField(blank=True, help_text="адрес фактического размещения на физическом носителе, если информация настолько велика, что не может храниться внутри БД.")
     doc_type = models.CharField(max_length=150, help_text="тип документа (паспорт/паспорт 1 страница и т д) в соответствии с классификатором типов документов (см описание в Requirements)")
-    user_id = models.ForeignKey(SharixUser, related_name="user_id", on_delete=models.DO_NOTHING, help_text="уникальный идентификатор пользователя (конкретного клиентского аккаунта) являющегося владельцем данного документа")
+    user_id = models.ForeignKey(SharixUser, related_name="user_id_doc", on_delete=models.DO_NOTHING, help_text="уникальный идентификатор пользователя (конкретного клиентского аккаунта) являющегося владельцем данного документа")
     company_id = models.ForeignKey("Company", on_delete=models.DO_NOTHING, null=True, help_text="идентификатор компании, к которой относится документ, если таковая есть (может не быть)")
     is_global = models.CharField(max_length=1, help_text="доступны ли документы для хранения в глобальном сервисе/нужна синхронизация")
     is_visible = models.CharField(max_length=1, help_text="доступна ли информация о наличии документов для планирования в цепочке с другими услугами в глобальном сервисе")
-    checked_by = models.ForeignKey(SharixUser, related_name="checked_by", on_delete=models.DO_NOTHING, null=True, help_text="userid проверившего")
+    checked_by = models.ForeignKey(SharixUser, related_name="checked_by_doc", on_delete=models.DO_NOTHING, null=True, help_text="userid проверившего")
 
     class Meta:
         db_table = "documents"
 
+class Client(models.Model):
+    """
+    Client - это таблица с клиентами
+    """
+    user = models.ForeignKey(SharixUser, on_delete=models.DO_NOTHING)
+    requirements = models.CharField(max_length=150)
+    status = models.CharField(max_length=150, help_text="активность на основе системы заявок")
+    ticket_status = models.ForeignKey(Task, on_delete=models.DO_NOTHING, help_text="id последнего актуального тикета, касающийся статуса. Если он меняет статус на закрытый - вызывается проверка, которая смотрит, нет ли другого открытого по пользователю.")
+    id_metaservice = models.BigIntegerField(null=True, help_text="уникальный идентификатор мета-сервиса, необходимый для синхронизации данных. Если при синхронизации возникает конфликт (несовместимость) с другим сервисом, предлагается или форсировать изменения везде (если возможно), либо is_global выставляется как false.")
+    is_global = models.CharField(max_length=1, help_text="")
+    is_visible = models.CharField(max_length=1, help_text="")
+
+
+    class Meta:
+        db_table = "client"
+
 
 class Orders(models.Model):
     """
@@ -100,12 +116,12 @@ class Orders(models.Model):
     """
 
     service = models.ForeignKey("Service", on_delete=models.DO_NOTHING)
-    service_type = models.ForeignKey("Servicetype", on_delete=models.DO_NOTHING)
+    service_type = models.ForeignKey(ServiceType, on_delete=models.DO_NOTHING)
     state = models.CharField(max_length=150)
     id_metaservice = models.BigIntegerField(null=True, help_text="уникальный идентификатор мета-сервиса, необходимый для синхронизации данных. Если при синхронизации возникает конфликт (несовместимость) с другим сервисом, предлагается или форсировать изменения везде (если возможно), либо is_global выставляется как false.")
-    provider = models.ForeignKey("Provider", on_delete=models.DO_NOTHING) 
+    provider = models.ForeignKey(Provider, on_delete=models.DO_NOTHING) 
     receiver = models.ForeignKey(SharixUser, related_name="user_id", on_delete=models.DO_NOTHING, help_text="уникальный идентификатор пользователя (конкретного клиентского аккаунта) являющегося владельцем данного документа")
-    client_id = models.ForeignKey("Client", on_delete=models.DO_NOTHING) 
+    client_id = models.ForeignKey(Client, on_delete=models.DO_NOTHING) 
     time_created = models.DateTimeField(auto_now_add=True, help_text="")
     time_placed = models.DateTimeField(help_text="")
     time_start = models.DateTimeField(help_text="")
@@ -122,29 +138,15 @@ class Orders(models.Model):
         db_table = "orders"
 
 
-class Client(models.Model):
-    """
-    Client - это таблица с клиентами
-    """
-    user = models.ForeignKey("User", on_delete=models.DO_NOTHING)
-    requirements = models.CharField(max_length=150)
-    status = models.CharField(max_length=150, help_text="активность на основе системы заявок")
-    ticket_status = models.ForeignKey(Task, on_delete=models.DO_NOTHING, help_text="id последнего актуального тикета, касающийся статуса. Если он меняет статус на закрытый - вызывается проверка, которая смотрит, нет ли другого открытого по пользователю.")
-    id_metaservice = models.BigIntegerField(null=True, help_text="уникальный идентификатор мета-сервиса, необходимый для синхронизации данных. Если при синхронизации возникает конфликт (несовместимость) с другим сервисом, предлагается или форсировать изменения везде (если возможно), либо is_global выставляется как false.")
-    is_global = models.CharField(max_length=1, help_text="")
-    is_visible = models.CharField(max_length=1, help_text="")
-
 
-    class Meta:
-        db_table = "client"
 
 #hi
 class Relationship(models.Model):
     """
     Relationship - таблица с взаимосвязями 
     """
-    user_id_who = models.ForeignKey("User", on_delete=models.DO_NOTHING)
-    user_id_whom = models.ForeignKey("User", on_delete=models.DO_NOTHING)
+    user_id_who = models.ForeignKey(SharixUser, related_name="user_id_who", on_delete=models.DO_NOTHING)
+    user_id_whom = models.ForeignKey(SharixUser,  related_name="user_id_whom", on_delete=models.DO_NOTHING)
     neg_type = models.IntegerField()
     id_metaservice = models.BigIntegerField(null=True, help_text="уникальный идентификатор мета-сервиса, необходимый для синхронизации данных. Если при синхронизации возникает конфликт (несовместимость) с другим сервисом, предлагается или форсировать изменения везде (если возможно), либо is_global выставляется как false.")
     requirements = models.CharField(max_length=150)