修改我的项目的后端参数

This commit is contained in:
sylor_huang@126.com 2020-04-21 10:11:54 +08:00
parent f927b31072
commit fdcdc3baf6
3 changed files with 44 additions and 23 deletions

View File

@ -107,4 +107,16 @@ class Project < ApplicationRecord
Project.where.not(id: (user_not_show_1 - user_show_2).uniq)
end
def members_count
members.select(:id).size
end
def issues_count
issues.select(:id).size
end
def can_visited?
is_public? || User.current.admin? || member?(User.current)
end
end

View File

@ -17,7 +17,7 @@ class Projects::ListMyQuery < ApplicationQuery
else
projects = Project.where(user_id: params[:user_id])
end
scope = projects.includes(:project_category, :project_language, :repository, owner: :user_extension).like(params[:search])
scope = projects.includes(:members,:issues,owner: :user_extension).like(params[:search])
.with_project_type(params[:project_type])
.with_project_category(params[:category_id])
.with_project_language(params[:language_id])

View File

@ -1,27 +1,36 @@
json.total_count @total_count
json.count @total_count
json.projects do
json.array! @projects do |project|
json.partial! '/projects/project', project: project
json.author do
json.name project.owner.login
json.login project.owner.login
json.image_url url_to_avatar(project.owner)
end
json.category do
if project.project_category.blank?
json.nil!
else
json.id project.project_category.id
json.name project.project_category.name
end
end
json.language do
if project.project_language.blank?
json.nil!
else
json.id project.project_language.id
json.name project.project_language.name
end
user = project.owner
json.members_count project.members_count
json.issues_count project.issues_count
json.changesets_count project&.project_score&.changeset_num.to_i
json.can_visited project.can_visited?
json.id project.id
json.identifier project.identifier
json.name project.name
json.is_public project.is_public
json.owner do
json.id user.id
json.real_name user.real_name
json.avatar_url url_to_avatar(user)
json.school_name user.school_name
end
# json.category do
# if project.project_category.blank?
# json.nil!
# else
# json.id project.project_category.id
# json.name project.project_category.name
# end
# end
# json.language do
# if project.project_language.blank?
# json.nil!
# else
# json.id project.project_language.id
# json.name project.project_language.name
# end
# end
end
end