إشعار يدعي وجود مستخدمين للموافقة، لكن لا يوجد أحد.

وجدت هذا الموضوع أثناء البحث قبل تقديم تقرير خطأ، لذا أضيف إليه.

ملخص سريع: الاستعلام الخاص بالإشعار خاطئ لأنه يحسب المستخدمين المرفوضين أيضًا.

الإشعار: 16 مستخدمًا ينتظرون الموافقة، انقر على الرابط، ترى 2 فقط.

الاستعلام المستخدم للإشعار هو هذا

puts AdminUserIndexQuery.new(query: "pending", stats: false).find_users_query.to_sql

SELECT "users".* FROM "users" 
WHERE (suspended_till IS NULL OR suspended_till <= '2023-11-13 11:05:23.225614') 
AND "users"."approved" = FALSE 
AND "users"."active" = TRUE 
ORDER BY users.created_at DESC,users.username

والذي يعطيني في حالتي 16 مستخدمًا

[4479, 4472, 4456, 4446, 4443, 4430, 4302, 4291, 4206, 4199, 4178, 4168, 4131, 4061, 3677, 3642]

عند إلقاء هذه المعرفات في قائمة المراجعة، أحصل على مستخدمين اثنين يحتاجان فعليًا إلى الموافقة (الحالة 0) و 14 مستخدمًا تم رفضهم بالفعل (الحالة 2)

ReviewableUser.where(type: 'ReviewableUser')
  .where(target_id: ids)
  .pluck(:target_id, :status)

[[3642, 2], [3677, 2], [4061, 2], [4131, 2], [4168, 2], 
[4178, 2], [4199, 2], [4206, 2], [4291, 2], [4302, 2], 
[4430, 2], [4443, 2], [4446, 2], [4456, 2], [4472, 0], [4479, 0]]
إعجابَين (2)