瀏覽代碼

Merge pull request #828 from meolu/2.1/feature/task-filter

walle 2.0.1 - 上线单增加「我的」上线任务过滤
walle-web.io 6 年之前
父節點
當前提交
8cfbe7a22d
共有 2 個文件被更改,包括 8 次插入2 次删除
  1. 4 1
      walle/api/task.py
  2. 4 1
      walle/model/task.py

+ 4 - 1
walle/api/task.py

@@ -39,7 +39,10 @@ class TaskAPI(SecurityResource):
         size = int(request.args.get('size', 10))
         kw = request.values.get('kw', '')
 
-        task_list, count = TaskModel().list(page=page, size=size, kw=kw, space_id=self.space_id)
+        user_id = request.values.get('user_id', '')
+        user_id = user_id.split(',') if user_id else []
+
+        task_list, count = TaskModel().list(page=page, size=size, kw=kw, space_id=self.space_id, user_id=user_id)
         return self.list_json(list=task_list, count=count, enable_create=permission.role_upper_reporter() and current_user.role != SUPER)
 
     def item(self, task_id):

+ 4 - 1
walle/model/task.py

@@ -73,7 +73,7 @@ class TaskModel(SurrogatePK, Model):
     #     return dict(project_info, **self.taskMdl)
     #
 
-    def list(self, page=0, size=10, space_id=None, kw=None):
+    def list(self, page=0, size=10, space_id=None, user_id=None, kw=None):
         """
         获取分页列表
         :param page:
@@ -99,6 +99,9 @@ class TaskModel(SurrogatePK, Model):
         if space_id:
             query = query.filter(ProjectModel.space_id == space_id)
 
+        if user_id:
+            query = query.filter(TaskModel.user_id.in_(user_id))
+
         query = query.add_columns(ProjectModel.name, EnvironmentModel.name, ProjectModel.keep_version_num)
         count = query.count()