diff --git a/app/controllers/api/v1/organizations/projects_controller.rb b/app/controllers/api/v1/organizations/projects_controller.rb index 047e95ec8..78381b3c2 100644 --- a/app/controllers/api/v1/organizations/projects_controller.rb +++ b/app/controllers/api/v1/organizations/projects_controller.rb @@ -1,13 +1,16 @@ class Api::V1::Organizations::ProjectsController < Api::V1::BaseController - def index + before_action :load_organization + + def index public_projects_sql = @organization.projects.where(is_public: true).to_sql private_projects_sql = @organization.projects .where(is_public: false) .joins(team_projects: {team: :team_users}) .where(team_users: {user_id: current_user.id}).to_sql @projects = Project.from("( #{ public_projects_sql} UNION #{ private_projects_sql } ) AS projects") - keywords = params[:search].to_s.each_char.select { |c| c.bytes.first < 240 }.join('')\ - @projects = @projects.where(is_public: params[:is_public]) if params[:is_public].present? + # 表情处理 + keywords = params[:search].to_s.each_char.select { |c| c.bytes.first < 240 }.join('') + @projects = @projects.where(is_public: params[:is_public] if params[:is_public].present? @projects = @projects.where(id: params[:pm_project_repository_ids].split(',')) if params[:pm_project_repository_ids].present? @projects = @projects.where.not(id: params[:exclude_ids].to_s.split(",")) if params[:exclude_ids].present? @projects = @projects.where(project_type: ['mirror', 'common']).where("gpid is not null") if params[:actived].present?