diff --git a/app/controllers/organizations/organization_users_controller.rb b/app/controllers/organizations/organization_users_controller.rb index 52e5866d8..0b2d9393c 100644 --- a/app/controllers/organizations/organization_users_controller.rb +++ b/app/controllers/organizations/organization_users_controller.rb @@ -5,7 +5,7 @@ class Organizations::OrganizationUsersController < Organizations::BaseController def index @organization_users = @organization.organization_users.includes(:user) search = params[:search].to_s.downcase - @organization_users = @organization_users.joins(:user).where("LOWER(concat(users.lastname, users.firstname, users.login, users.mail, users.nickname)) LIKE ?", "%#{search.split(" ").join('|')}%") if search.present? + @organization_users = @organization_users.joins(:user).where("LOWER(CONCAT_WS(users.lastname, users.firstname, users.login, users.mail)) LIKE ?", "%#{search.split(" ").join('|')}%") if search.present? @organization_users = kaminari_paginate(@organization_users) end @@ -41,8 +41,8 @@ class Organizations::OrganizationUsersController < Organizations::BaseController private def load_organization @organization = Organization.find_by(login: params[:organization_id]) || Organization.find_by(id: params[:organization_id]) - tip_exception("组织不存在") if @organization.nil? - tip_exception("没有查看组织的权限") if org_limited_condition || org_privacy_condition + return render_not_found("组织不存在") if @organization.nil? + return render_forbidden("没有查看组织的权限") if org_limited_condition || org_privacy_condition end def load_operate_user diff --git a/app/controllers/organizations/organizations_controller.rb b/app/controllers/organizations/organizations_controller.rb index 35cc1d404..8346886e9 100644 --- a/app/controllers/organizations/organizations_controller.rb +++ b/app/controllers/organizations/organizations_controller.rb @@ -90,8 +90,8 @@ class Organizations::OrganizationsController < Organizations::BaseController def load_organization @organization = Organization.find_by(login: params[:id]) || Organization.find_by(id: params[:id]) - tip_exception("组织不存在") if @organization.nil? - tip_exception("没有查看组织的权限") if org_limited_condition || org_privacy_condition + return render_not_found("组织不存在") if @organization.nil? + return render_forbidden("没有查看组织的权限") if org_limited_condition || org_privacy_condition end def sort_by diff --git a/app/controllers/organizations/projects_controller.rb b/app/controllers/organizations/projects_controller.rb index aabb781b4..cc275b090 100644 --- a/app/controllers/organizations/projects_controller.rb +++ b/app/controllers/organizations/projects_controller.rb @@ -31,8 +31,8 @@ class Organizations::ProjectsController < Organizations::BaseController def load_organization @organization = Organization.find_by(login: params[:organization_id]) || Organization.find_by(id: params[:organization_id]) - tip_exception("组织不存在") if @organization.nil? - tip_exception("没有查看组织的权限") if org_limited_condition || org_privacy_condition + return render_not_found("组织不存在") if @organization.nil? + return render_forbidden("没有查看组织的权限") if org_limited_condition || org_privacy_condition end def sort diff --git a/app/controllers/organizations/team_projects_controller.rb b/app/controllers/organizations/team_projects_controller.rb index f221c98db..2badca177 100644 --- a/app/controllers/organizations/team_projects_controller.rb +++ b/app/controllers/organizations/team_projects_controller.rb @@ -36,14 +36,14 @@ class Organizations::TeamProjectsController < Organizations::BaseController private def load_organization @organization = Organization.find_by(login: params[:organization_id]) || Organization.find_by(id: params[:organization_id]) - tip_exception("组织不存在") if @organization.nil? - tip_exception("没有查看组织的权限") if org_limited_condition || org_privacy_condition + return render_not_found("组织不存在") if @organization.nil? + return render_forbidden("没有查看组织的权限") if org_limited_condition || org_privacy_condition end def load_team @team = Team.find_by_id(params[:team_id]) - tip_exception("组织团队不存在") if @team.nil? - tip_exception("没有查看组织团队的权限") if team_not_found_condition + return render_not_found("组织团队不存在") if @team.nil? + return render_forbidden("没有查看组织团队的权限") if team_not_found_condition end def load_operate_project diff --git a/app/controllers/organizations/team_users_controller.rb b/app/controllers/organizations/team_users_controller.rb index 7065ef6a3..a8e834423 100644 --- a/app/controllers/organizations/team_users_controller.rb +++ b/app/controllers/organizations/team_users_controller.rb @@ -5,10 +5,10 @@ class Organizations::TeamUsersController < Organizations::BaseController before_action :check_user_can_edit_org, only: [:create, :destroy] def index - @team_users = @team.team_users + @team_users = @team.team_users.includes(:user) search = params[:search].to_s.downcase - @team_users = @team_users.joins(:user).where("LOWER(concat(users.lastname, users.firstname, users.login, users.mail, users.nickname)) LIKE ?", "%#{search.split(" ").join('|')}%") if search.present? + @team_users = @team_users.joins(:user).where("LOWER(CONCAT_WS(users.lastname, users.firstname, users.login, users.mail, users.nickname)) LIKE ?", "%#{search.split(" ").join('|')}%") if search.present? @team_users = kaminari_paginate(@team_users) end @@ -25,7 +25,7 @@ class Organizations::TeamUsersController < Organizations::BaseController end def destroy - tip_exception("您不能从 Owner 团队中删除最后一个用户") if @organization.is_owner_team_last_one?(@operate_user.id) + tip_exception("您不能从 Owner 团队中删除最后一个用户") if @team.owner? && @organization.is_owner_team_last_one?(@operate_user.id) ActiveRecord::Base.transaction do @team_user.destroy! Gitea::Organization::TeamUser::DeleteService.call(@organization.gitea_token, @team.gtid, @operate_user.login) @@ -39,7 +39,7 @@ class Organizations::TeamUsersController < Organizations::BaseController def quit @team_user = @team.team_users.find_by(user_id: current_user.id) tip_exception("您不在该组织团队中") if @team_user.nil? - tip_exception("您不能从 Owner 团队中删除最后一个用户") if @organization.is_owner_team_last_one?(current_user.id) + tip_exception("您不能从 Owner 团队中删除最后一个用户") if @team.owner? && @organization.is_owner_team_last_one?(current_user.id) ActiveRecord::Base.transaction do @team_user.destroy! Gitea::Organization::TeamUser::DeleteService.call(@organization.gitea_token, @team.gtid, current_user.login) @@ -53,14 +53,14 @@ class Organizations::TeamUsersController < Organizations::BaseController private def load_organization @organization = Organization.find_by(login: params[:organization_id]) || Organization.find_by(id: params[:organization_id]) - tip_exception("组织不存在") if @organization.nil? - tip_exception("没有查看组织的权限") if org_limited_condition || org_privacy_condition + return render_not_found("组织不存在") if @organization.nil? + return render_forbidden("没有查看组织的权限") if org_limited_condition || org_privacy_condition end def load_team @team = Team.find_by_id(params[:team_id]) - tip_exception("组织团队不存在") if @team.nil? - tip_exception("没有查看组织团队的权限") if team_not_found_condition + return render_not_found("组织团队不存在") if @team.nil? + return render_forbidden("没有查看组织团队的权限") if team_not_found_condition end def load_operate_user diff --git a/app/controllers/organizations/teams_controller.rb b/app/controllers/organizations/teams_controller.rb index 26c56f39f..577b3121a 100644 --- a/app/controllers/organizations/teams_controller.rb +++ b/app/controllers/organizations/teams_controller.rb @@ -53,13 +53,13 @@ class Organizations::TeamsController < Organizations::BaseController def load_organization @organization = Organization.find_by(login: params[:organization_id]) || Organization.find_by(id: params[:organization_id]) - tip_exception("组织不存在") if @organization.nil? - tip_exception("没有查看组织的权限") if org_limited_condition || org_privacy_condition + return render_not_found("组织不存在") if @organization.nil? + return render_forbidden("没有查看组织的权限") if org_limited_condition || org_privacy_condition end def load_team @team = Team.find_by_id(params[:id]) - tip_exception("组织团队不存在") if @team.nil? - tip_exception("没有查看组织团队的权限") if team_not_found_condition + return render_not_found("组织团队不存在") if @team.nil? + return render_forbidden("没有查看组织团队的权限") if team_not_found_condition end end \ No newline at end of file diff --git a/app/views/organizations/organizations/_detail.json.jbuilder b/app/views/organizations/organizations/_detail.json.jbuilder index 99932b20d..e7aafd4e9 100644 --- a/app/views/organizations/organizations/_detail.json.jbuilder +++ b/app/views/organizations/organizations/_detail.json.jbuilder @@ -7,7 +7,7 @@ json.repo_admin_change_team_access organization.repo_admin_change_team_access json.visibility organization.visibility json.max_repo_creation organization.max_repo_creation json.num_projects organization.num_projects -json.num_user organization.num_users +json.num_users organization.num_users json.num_teams organization.num_teams json.avatar_url url_to_avatar(organization) json.created_at organization.created_on.strftime("%Y-%m-%d") \ No newline at end of file