|
|
|
@@ -34,6 +34,10 @@ class Projects::ListMyQuery < ApplicationQuery |
|
|
|
elsif params[:category].to_s == "forked" #我fork的 |
|
|
|
fork_ids = user.fork_users.select(:id, :fork_project_id).pluck(:fork_project_id) |
|
|
|
projects = projects.where(id: fork_ids) |
|
|
|
elsif params[:category].to_s == "admin" |
|
|
|
normal_projects = projects.joins(members: :roles).where(members: {user_id: user.id}, roles: {name: %w(Manager)}).to_sql |
|
|
|
org_projects = projects.joins(team_projects: [team: :team_users]).where(teams: {authorize: "owner"},team_users: {user_id: user.id}).to_sql |
|
|
|
projects = Project.from("( #{ normal_projects} UNION #{ org_projects } ) AS projects").distinct |
|
|
|
# elsif params[:category].to_s == "public" |
|
|
|
# projects = projects.visible.joins(:members).where(members: { user_id: user.id }) |
|
|
|
# elsif params[:category].to_s == "private" |
|
|
|
|