Browse Source

修改项目列表页的显示

tags/v1
sylor_huang@126.com 6 years ago
parent
commit
1cb781ed95
2 changed files with 11 additions and 2 deletions
  1. +3
    -1
      app/controllers/projects_controller.rb
  2. +8
    -1
      app/queries/projects/list_query.rb

+ 3
- 1
app/controllers/projects_controller.rb View File

@@ -6,7 +6,9 @@ class ProjectsController < ApplicationController
before_action :authorizate_user_can_edit_project!, only: %i[update]

def index
scope = Projects::ListQuery.call(params)
is_admin = current_user && current_user&.admin?

scope = Projects::ListQuery.call(params.merge(is_admin: is_admin))
@total_count = scope.size
@projects = paginate(scope)
end


+ 8
- 1
app/queries/projects/list_query.rb View File

@@ -10,7 +10,14 @@ class Projects::ListQuery < ApplicationQuery
end

def call
scope = Project.visible.like(params[:search])
if params[:is_admin]
projects = Project.all
elsif params[:user_id].to_i != 2
projects = Project.joins(:members).where.not("projects.is_public = ? and (projects.user_id != ? or members.user_id != ?)", false, params[:user_id].to_i,params[:user_id].to_i )
else
projects = Project.visible
end
scope = projects.like(params[:search])
.with_project_type(params[:project_type])
.with_project_category(params[:category_id])
.with_project_language(params[:language_id])


Loading…
Cancel
Save