From daecd6a766e58535ea5e02c11846ac9ed88273fc Mon Sep 17 00:00:00 2001 From: Oleksii Kriuchykhin Date: Wed, 23 Nov 2022 17:20:14 +0100 Subject: [PATCH] Update the existing endpoint for listing the users with access to the task [SCI-7439] --- app/controllers/user_my_modules_controller.rb | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/app/controllers/user_my_modules_controller.rb b/app/controllers/user_my_modules_controller.rb index e65eabdd7..b8ad0af41 100644 --- a/app/controllers/user_my_modules_controller.rb +++ b/app/controllers/user_my_modules_controller.rb @@ -104,15 +104,19 @@ class UserMyModulesController < ApplicationController def search users = @my_module.users - .where.not(id: @my_module.designated_users.select(:id)) + .joins("LEFT OUTER JOIN user_my_modules ON user_my_modules.user_id = users.id "\ + "AND user_my_modules.my_module_id = #{@my_module.id}") .search(false, params[:query]) .limit(Constants::SEARCH_LIMIT) + .select('users.*') + .select('CASE WHEN user_my_modules.id IS NOT NULL '\ + 'THEN true ELSE false END as designated') users = users.map do |user| { value: user.id, label: sanitize_input(user.full_name), - params: { avatar_url: avatar_path(user, :icon_small) } + params: { avatar_url: avatar_path(user, :icon_small), designated: user.designated } } end