diff --git a/api/fields/member_fields.py b/api/fields/member_fields.py index 79164b3848..d061b59c34 100644 --- a/api/fields/member_fields.py +++ b/api/fields/member_fields.py @@ -28,6 +28,7 @@ account_with_role_fields = { 'avatar': fields.String, 'email': fields.String, 'last_login_at': TimestampField, + 'last_active_at': TimestampField, 'created_at': TimestampField, 'role': fields.String, 'status': fields.String, diff --git a/web/app/components/header/account-setting/members-page/index.tsx b/web/app/components/header/account-setting/members-page/index.tsx index 54ff68346b..3057e59481 100644 --- a/web/app/components/header/account-setting/members-page/index.tsx +++ b/web/app/components/header/account-setting/members-page/index.tsx @@ -105,7 +105,7 @@ const MembersPage = () => {
{account.email}
-
{dayjs(Number((account.last_login_at || account.created_at)) * 1000).locale(locale === 'zh-Hans' ? 'zh-cn' : 'en').fromNow()}
+
{dayjs(Number((account.last_active_at || account.created_at)) * 1000).locale(locale === 'zh-Hans' ? 'zh-cn' : 'en').fromNow()}
{ (owner && account.role !== 'owner') diff --git a/web/models/common.ts b/web/models/common.ts index 01c310a484..f4fe99bf92 100644 --- a/web/models/common.ts +++ b/web/models/common.ts @@ -27,6 +27,7 @@ export type UserProfileResponse = { interface_theme?: string timezone?: string last_login_at?: string + last_active_at?: string last_login_ip?: string created_at?: string } @@ -61,7 +62,7 @@ export type TenantInfoResponse = { trial_end_reason: null | 'trial_exceeded' | 'using_custom' } -export type Member = Pick & { +export type Member = Pick & { avatar: string status: 'pending' | 'active' | 'banned' | 'closed' role: 'owner' | 'admin' | 'editor' | 'normal'