mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-09-06 18:00:57 +00:00
fix: 站内信未读信息计数不准
This commit is contained in:
@@ -1,10 +1,17 @@
|
||||
import django_filters
|
||||
|
||||
from common.drf.filters import BaseFilterSet
|
||||
from .models import SiteMessage
|
||||
|
||||
|
||||
class SiteMsgFilter(django_filters.FilterSet):
|
||||
has_read = django_filters.BooleanFilter(field_name='m2m_sitemessageusers__has_read')
|
||||
class SiteMsgFilter(BaseFilterSet):
|
||||
# 不用 Django 的关联表过滤,有个小bug,会重复关联相同表
|
||||
# SELECT DISTINCT * FROM `notifications_sitemessage`
|
||||
# INNER JOIN `notifications_sitemessageusers` ON (`notifications_sitemessage`.`id` = `notifications_sitemessageusers`.`sitemessage_id`)
|
||||
# INNER JOIN `notifications_sitemessageusers` T4 ON (`notifications_sitemessage`.`id` = T4.`sitemessage_id`)
|
||||
# WHERE (`notifications_sitemessageusers`.`user_id` = '40c8f140dfa246d4861b80f63cf4f6e3' AND NOT T4.`has_read`)
|
||||
# ORDER BY `notifications_sitemessage`.`date_created` DESC LIMIT 15;
|
||||
has_read = django_filters.BooleanFilter(method='do_nothing')
|
||||
|
||||
class Meta:
|
||||
model = SiteMessage
|
||||
|
Reference in New Issue
Block a user