commit
c920994274
|
@ -140,7 +140,7 @@ class PullRequestsController < ApplicationController
|
|||
end
|
||||
|
||||
def pr_merge
|
||||
return render_forbidden("你没有权限操作.") unless current_user.project_manager?(@project)
|
||||
return render_forbidden("你没有权限操作.") unless @project.develper?(current_user)
|
||||
|
||||
if params[:do].blank?
|
||||
normal_status(-1, "请选择合并方式")
|
||||
|
@ -215,7 +215,7 @@ class PullRequestsController < ApplicationController
|
|||
def get_relatived
|
||||
@project_tags = @project.issue_tags&.select(:id,:name, :color).as_json
|
||||
@project_versions = @project.versions&.select(:id,:name, :status).as_json
|
||||
@project_members = @project.all_managers
|
||||
@project_members = @project.all_developers
|
||||
@project_priories = IssuePriority&.select(:id,:name, :position).as_json
|
||||
end
|
||||
|
||||
|
|
|
@ -99,6 +99,12 @@ module ProjectOperable
|
|||
return User.from("( #{ member_sql } UNION #{ team_user_sql } ) AS users").distinct
|
||||
end
|
||||
|
||||
def all_developers
|
||||
member_sql = User.joins(members: :roles).where(members: {project_id: self.id}, roles: {name: %w(Manager Developer)}).to_sql
|
||||
team_user_sql = User.joins(teams: :team_projects).where(teams: {authorize: %w(owner admin write)}, team_projects: {project_id: self.id}).to_sql
|
||||
return User.from("( #{ member_sql } UNION #{ team_user_sql } ) AS users").distinct
|
||||
end
|
||||
|
||||
def all_managers
|
||||
member_sql = User.joins(members: :roles).where(members: {project_id: self.id}, roles: {name: %w(Manager)}).to_sql
|
||||
team_user_sql = User.joins(teams: :team_projects).where(teams: {authorize: %w(owner admin)},team_projects: {project_id: self.id}).to_sql
|
||||
|
|
|
@ -27,6 +27,8 @@ class ProjectUnit < ApplicationRecord
|
|||
end
|
||||
|
||||
def self.update_by_unit_types!(project, types)
|
||||
# 默认code类型自动创建
|
||||
types << "code"
|
||||
project.project_units.where.not(unit_type: types).each(&:destroy!)
|
||||
types.each do |type|
|
||||
project.project_units.find_or_create_by!(unit_type: type)
|
||||
|
|
Loading…
Reference in New Issue