mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-06-01 11:25:22 +00:00
fix: Fixed the issue of user login statistics (#13440)
Co-authored-by: feng <1304903146@qq.com>
This commit is contained in:
parent
ff126f3459
commit
f42113afb9
@ -74,9 +74,13 @@ class DateTimeMixin:
|
|||||||
query = {f'{query_field}__gte': t}
|
query = {f'{query_field}__gte': t}
|
||||||
return qs.filter(**query)
|
return qs.filter(**query)
|
||||||
|
|
||||||
|
@lazyproperty
|
||||||
|
def users(self):
|
||||||
|
return self.org.get_members()
|
||||||
|
|
||||||
def get_logs_queryset(self, queryset, query_params):
|
def get_logs_queryset(self, queryset, query_params):
|
||||||
query = {}
|
query = {}
|
||||||
users = self.org.get_members()
|
users = self.users
|
||||||
if not self.org.is_root():
|
if not self.org.is_root():
|
||||||
if query_params == 'username':
|
if query_params == 'username':
|
||||||
query = {
|
query = {
|
||||||
@ -100,6 +104,13 @@ class DateTimeMixin:
|
|||||||
queryset = self.get_logs_queryset(qs, 'username')
|
queryset = self.get_logs_queryset(qs, 'username')
|
||||||
return queryset
|
return queryset
|
||||||
|
|
||||||
|
@lazyproperty
|
||||||
|
def user_login_logs_on_the_system_queryset(self):
|
||||||
|
qs = UserLoginLog.objects.all()
|
||||||
|
qs = self.get_logs_queryset_filter(qs, 'datetime')
|
||||||
|
queryset = qs.filter(username__in=construct_userlogin_usernames(self.users))
|
||||||
|
return queryset
|
||||||
|
|
||||||
@lazyproperty
|
@lazyproperty
|
||||||
def password_change_logs_queryset(self):
|
def password_change_logs_queryset(self):
|
||||||
qs = PasswordChangeLog.objects.all()
|
qs = PasswordChangeLog.objects.all()
|
||||||
@ -141,6 +152,7 @@ class DatesLoginMetricMixin:
|
|||||||
ftp_logs_queryset: FTPLog.objects
|
ftp_logs_queryset: FTPLog.objects
|
||||||
job_logs_queryset: JobLog.objects
|
job_logs_queryset: JobLog.objects
|
||||||
login_logs_queryset: UserLoginLog.objects
|
login_logs_queryset: UserLoginLog.objects
|
||||||
|
user_login_logs_on_the_system_queryset: UserLoginLog.objects
|
||||||
operate_logs_queryset: OperateLog.objects
|
operate_logs_queryset: OperateLog.objects
|
||||||
password_change_logs_queryset: PasswordChangeLog.objects
|
password_change_logs_queryset: PasswordChangeLog.objects
|
||||||
|
|
||||||
@ -241,7 +253,7 @@ class DatesLoginMetricMixin:
|
|||||||
|
|
||||||
@lazyproperty
|
@lazyproperty
|
||||||
def user_login_amount(self):
|
def user_login_amount(self):
|
||||||
return self.login_logs_queryset.values('username').distinct().count()
|
return self.user_login_logs_on_the_system_queryset.values('username').distinct().count()
|
||||||
|
|
||||||
@lazyproperty
|
@lazyproperty
|
||||||
def operate_logs_amount(self):
|
def operate_logs_amount(self):
|
||||||
|
Loading…
Reference in New Issue
Block a user