Преглед изворни кода

fix: add properties to retrieve created by account and end user in Wo… (#12129)

Signed-off-by: -LAN- <laipz8200@outlook.com>
-LAN- пре 3 месеци
родитељ
комит
4e76f2fc44
1 измењених фајлова са 12 додато и 0 уклоњено
  1. 12 0
      api/models/workflow.py

+ 12 - 0
api/models/workflow.py

@@ -414,6 +414,18 @@ class WorkflowRun(db.Model):  # type: ignore[name-defined]
     finished_at = db.Column(db.DateTime)
     exceptions_count = db.Column(db.Integer, server_default=db.text("0"))
 
+    @property
+    def created_by_account(self):
+        created_by_role = CreatedByRole(self.created_by_role)
+        return db.session.get(Account, self.created_by) if created_by_role == CreatedByRole.ACCOUNT else None
+
+    @property
+    def created_by_end_user(self):
+        from models.model import EndUser
+
+        created_by_role = CreatedByRole(self.created_by_role)
+        return db.session.get(EndUser, self.created_by) if created_by_role == CreatedByRole.END_USER else None
+
     @property
     def graph_dict(self):
         return json.loads(self.graph) if self.graph else {}