Просмотр исходного кода

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

Signed-off-by: -LAN- <laipz8200@outlook.com>
-LAN- месяцев назад: 4
Родитель
Сommit
4e76f2fc44
1 измененных файлов с 12 добавлено и 0 удалено
  1. 12 0
      api/models/workflow.py

+ 12 - 0
api/models/workflow.py

@@ -415,6 +415,18 @@ class WorkflowRun(db.Model):  # type: ignore[name-defined]
     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 {}