Переглянути джерело

added modules: orders, relationships, client

yobafromstarvvars 1 рік тому
батько
коміт
09f69abaeb
1 змінених файлів з 62 додано та 0 видалено
  1. 62 0
      models.py

+ 62 - 0
models.py

@@ -31,3 +31,65 @@ class Documents(models.Model):
     class Meta:
         db_table = "documents"
 
+
+class Orders(models.Model):
+    """
+    Orders - таблица с заказами
+    """
+
+    service = models.ForeignKey("Service", 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) 
+    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) 
+    time_created = models.DateTimeField(auto_now_add=True, help_text="")
+    time_placed = models.DateTimeField(help_text="")
+    time_start = models.DateTimeField(help_text="")
+    time_finish_predicted = models.DateTimeField(help_text="")
+    time_finish_real = models.DateTimeField(null=True, help_text="")
+    # SHOULDN'T IT BE A FOREIGN KEY???
+    ticket = models.IntegerField()
+    predicted_price = models.FloatField()
+    real_price = models.FloatField()
+    is_global = models.CharField(max_length=1, help_text="")
+    is_visible = models.CharField(max_length=1, help_text="")
+
+    class Meta:
+        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"
+
+
+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)
+    neg_type = models.IntegerField()
+    id_metaservice = models.BigIntegerField(null=True, help_text="уникальный идентификатор мета-сервиса, необходимый для синхронизации данных. Если при синхронизации возникает конфликт (несовместимость) с другим сервисом, предлагается или форсировать изменения везде (если возможно), либо is_global выставляется как false.")
+    requirements = models.CharField(max_length=150)
+    status = models.CharField(max_length=150)
+    ticket_status = models.ForeignKey(Task, on_delete=models.DO_NOTHING, help_text="id последнего актуального тикета, касающийся статуса. Если он меняет статус на закрытый - вызывается проверка, которая смотрит, нет ли другого открытого по пользователю.")
+    is_global = models.CharField(max_length=1, help_text="")
+    is_visible = models.CharField(max_length=1, help_text="")
+
+    class Meta:
+        db_table = "relationship"