@liujitcn/kratos-admin-system 0.0.38 → 0.0.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/dist/package/declarations/src/api/system/admin/v1/base_login_log.d.ts +3 -1
  2. package/dist/package/declarations/src/api/system/admin/v1/base_session.d.ts +7 -1
  3. package/dist/package/declarations/src/locales/generated.d.ts +100 -0
  4. package/dist/package/declarations/src/rpc/base/v1/login.d.ts +2 -0
  5. package/dist/package/declarations/src/rpc/base/v1/notification.d.ts +1 -1
  6. package/dist/package/declarations/src/rpc/base/v1/oauth.d.ts +4 -0
  7. package/dist/package/declarations/src/rpc/base/v1/oauth_client.d.ts +1 -1
  8. package/dist/package/declarations/src/rpc/system/admin/v1/base_api_log.d.ts +1 -1
  9. package/dist/package/declarations/src/rpc/system/admin/v1/base_data_access_log.d.ts +1 -1
  10. package/dist/package/declarations/src/rpc/system/admin/v1/base_i18n.d.ts +1 -1
  11. package/dist/package/declarations/src/rpc/system/admin/v1/base_log.d.ts +1 -1
  12. package/dist/package/declarations/src/rpc/system/admin/v1/base_login_log.d.ts +10 -1
  13. package/dist/package/declarations/src/rpc/system/admin/v1/base_login_policy.d.ts +8 -0
  14. package/dist/package/declarations/src/rpc/system/admin/v1/base_message.d.ts +1 -1
  15. package/dist/package/declarations/src/rpc/system/admin/v1/base_message_category.d.ts +1 -1
  16. package/dist/package/declarations/src/rpc/system/admin/v1/base_migration.d.ts +1 -1
  17. package/dist/package/declarations/src/rpc/system/admin/v1/base_operation_log.d.ts +1 -1
  18. package/dist/package/declarations/src/rpc/system/admin/v1/base_permission_log.d.ts +1 -1
  19. package/dist/package/declarations/src/rpc/system/admin/v1/base_policy_evaluation_log.d.ts +1 -1
  20. package/dist/package/declarations/src/rpc/system/admin/v1/base_redact_output_policy.d.ts +1 -1
  21. package/dist/package/declarations/src/rpc/system/admin/v1/base_redact_storage_policy.d.ts +1 -1
  22. package/dist/package/declarations/src/rpc/system/admin/v1/base_session.d.ts +41 -0
  23. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_archive.d.ts +1 -1
  24. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_archive_record.d.ts +1 -1
  25. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_archive_restore.d.ts +1 -1
  26. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_backup.d.ts +1 -1
  27. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_backup_record.d.ts +1 -1
  28. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_backup_restore.d.ts +1 -1
  29. package/dist/package/declarations/src/rpc/system/admin/v1/base_table_source.d.ts +1 -1
  30. package/dist/package/declarations/src/rpc/system/admin/v1/cache.d.ts +1 -1
  31. package/dist/package/declarations/src/rpc/system/admin/v1/oauth_client.d.ts +1 -1
  32. package/dist/package/declarations/src/rpc/system/admin/v1/ops_monitoring.d.ts +1 -1
  33. package/dist/package/declarations/src/views/base/online-session/index.vue.d.ts +3 -0
  34. package/dist/package/declarations/src/views/profile/components/login-log.vue.d.ts +3 -0
  35. package/dist/package/src/api/base/v1/sse.ts +11 -2
  36. package/dist/package/src/api/system/admin/v1/base_login_log.ts +10 -0
  37. package/dist/package/src/api/system/admin/v1/base_session.ts +32 -1
  38. package/dist/package/src/locales/en-US.json +33 -20
  39. package/dist/package/src/locales/ja-JP.json +35 -22
  40. package/dist/package/src/locales/zh-CN.json +34 -21
  41. package/dist/package/src/locales/zh-TW.json +33 -20
  42. package/dist/package/src/module.ts +1 -0
  43. package/dist/package/src/rpc/base/v1/ai_message.ts +1 -1
  44. package/dist/package/src/rpc/base/v1/ai_session.ts +1 -1
  45. package/dist/package/src/rpc/base/v1/ai_tool.ts +1 -1
  46. package/dist/package/src/rpc/base/v1/config.ts +1 -1
  47. package/dist/package/src/rpc/base/v1/login.ts +3 -1
  48. package/dist/package/src/rpc/base/v1/notification.ts +2 -2
  49. package/dist/package/src/rpc/base/v1/oauth.ts +5 -1
  50. package/dist/package/src/rpc/base/v1/oauth_client.ts +2 -2
  51. package/dist/package/src/rpc/base/v1/sse.ts +1 -1
  52. package/dist/package/src/rpc/common/v1/analytics.ts +1 -1
  53. package/dist/package/src/rpc/common/v1/common.ts +1 -1
  54. package/dist/package/src/rpc/common/v1/enum.ts +1 -1
  55. package/dist/package/src/rpc/common/v1/types.ts +1 -1
  56. package/dist/package/src/rpc/google/protobuf/empty.ts +1 -1
  57. package/dist/package/src/rpc/google/protobuf/timestamp.ts +1 -1
  58. package/dist/package/src/rpc/system/admin/v1/auth.ts +1 -1
  59. package/dist/package/src/rpc/system/admin/v1/base_api.ts +1 -1
  60. package/dist/package/src/rpc/system/admin/v1/base_api_log.ts +2 -2
  61. package/dist/package/src/rpc/system/admin/v1/base_area.ts +1 -1
  62. package/dist/package/src/rpc/system/admin/v1/base_config.ts +1 -1
  63. package/dist/package/src/rpc/system/admin/v1/base_dashboard.ts +1 -1
  64. package/dist/package/src/rpc/system/admin/v1/base_data_access_log.ts +2 -2
  65. package/dist/package/src/rpc/system/admin/v1/base_dept.ts +1 -1
  66. package/dist/package/src/rpc/system/admin/v1/base_dict.ts +1 -1
  67. package/dist/package/src/rpc/system/admin/v1/base_dict_item.ts +1 -1
  68. package/dist/package/src/rpc/system/admin/v1/base_file.ts +1 -1
  69. package/dist/package/src/rpc/system/admin/v1/base_i18n.ts +2 -2
  70. package/dist/package/src/rpc/system/admin/v1/base_job.ts +1 -1
  71. package/dist/package/src/rpc/system/admin/v1/base_job_log.ts +1 -1
  72. package/dist/package/src/rpc/system/admin/v1/base_language.ts +1 -1
  73. package/dist/package/src/rpc/system/admin/v1/base_log.ts +2 -2
  74. package/dist/package/src/rpc/system/admin/v1/base_login_log.ts +12 -2
  75. package/dist/package/src/rpc/system/admin/v1/base_login_policy.ts +11 -1
  76. package/dist/package/src/rpc/system/admin/v1/base_menu.ts +1 -1
  77. package/dist/package/src/rpc/system/admin/v1/base_message.ts +2 -2
  78. package/dist/package/src/rpc/system/admin/v1/base_message_category.ts +2 -2
  79. package/dist/package/src/rpc/system/admin/v1/base_migration.ts +2 -2
  80. package/dist/package/src/rpc/system/admin/v1/base_operation_log.ts +2 -2
  81. package/dist/package/src/rpc/system/admin/v1/base_permission_log.ts +2 -2
  82. package/dist/package/src/rpc/system/admin/v1/base_policy_evaluation_log.ts +2 -2
  83. package/dist/package/src/rpc/system/admin/v1/base_post.ts +1 -1
  84. package/dist/package/src/rpc/system/admin/v1/base_redact_common.ts +1 -1
  85. package/dist/package/src/rpc/system/admin/v1/base_redact_output_policy.ts +2 -2
  86. package/dist/package/src/rpc/system/admin/v1/base_redact_rule.ts +1 -1
  87. package/dist/package/src/rpc/system/admin/v1/base_redact_storage_policy.ts +2 -2
  88. package/dist/package/src/rpc/system/admin/v1/base_role.ts +1 -1
  89. package/dist/package/src/rpc/system/admin/v1/base_session.ts +47 -1
  90. package/dist/package/src/rpc/system/admin/v1/base_table_archive.ts +2 -2
  91. package/dist/package/src/rpc/system/admin/v1/base_table_archive_record.ts +2 -2
  92. package/dist/package/src/rpc/system/admin/v1/base_table_archive_restore.ts +2 -2
  93. package/dist/package/src/rpc/system/admin/v1/base_table_backup.ts +2 -2
  94. package/dist/package/src/rpc/system/admin/v1/base_table_backup_record.ts +2 -2
  95. package/dist/package/src/rpc/system/admin/v1/base_table_backup_restore.ts +2 -2
  96. package/dist/package/src/rpc/system/admin/v1/base_table_source.ts +2 -2
  97. package/dist/package/src/rpc/system/admin/v1/base_tenant.ts +1 -1
  98. package/dist/package/src/rpc/system/admin/v1/base_third_account.ts +1 -1
  99. package/dist/package/src/rpc/system/admin/v1/base_user.ts +1 -1
  100. package/dist/package/src/rpc/system/admin/v1/cache.ts +2 -2
  101. package/dist/package/src/rpc/system/admin/v1/code_gen.ts +1 -1
  102. package/dist/package/src/rpc/system/admin/v1/code_gen_column.ts +1 -1
  103. package/dist/package/src/rpc/system/admin/v1/code_gen_proto.ts +1 -1
  104. package/dist/package/src/rpc/system/admin/v1/code_gen_table.ts +1 -1
  105. package/dist/package/src/rpc/system/admin/v1/common.ts +1 -1
  106. package/dist/package/src/rpc/system/admin/v1/oauth_client.ts +2 -2
  107. package/dist/package/src/rpc/system/admin/v1/ops_monitoring.ts +2 -2
  108. package/dist/package/src/rpc/system/admin/v1/runtime_log.ts +1 -1
  109. package/dist/package/src/rpc/system/common/v1/common.ts +1 -1
  110. package/dist/package/src/rpc/system/config/v1/system_config.ts +1 -1
  111. package/dist/package/src/views/base/login-policy/index.vue +28 -0
  112. package/dist/package/src/views/base/online-session/index.vue +116 -0
  113. package/dist/package/src/views/base/user/index.vue +20 -8
  114. package/dist/package/src/views/profile/components/login-log.vue +123 -0
  115. package/dist/package/src/views/profile/components/session.vue +46 -61
  116. package/dist/package/src/views/profile/index.vue +13 -9
  117. package/dist/package/src/views/tool/code-gen/code-preview/index.vue +5 -15
  118. package/dist/package/src/views/tool/code-gen/table/index.vue +50 -24
  119. package/package.json +2 -2
@@ -1,12 +1,22 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/base_session.proto
6
6
 
7
7
  /* eslint-disable */
8
8
  import type { Empty } from "../../../google/protobuf/empty";
9
9
 
10
+ /** 查询本人全部会话请求。 */
11
+ export interface ListCurrentBaseSessionsRequest {
12
+ }
13
+
14
+ /** 本人有效会话列表。 */
15
+ export interface ListCurrentBaseSessionsResponse {
16
+ /** 本人有效会话列表 */
17
+ sessions: BaseSession[];
18
+ }
19
+
10
20
  /** 查询当前会话请求参数。 */
11
21
  export interface GetCurrentBaseSessionRequest {
12
22
  }
@@ -15,8 +25,36 @@ export interface GetCurrentBaseSessionRequest {
15
25
  export interface RevokeAllBaseSessionsRequest {
16
26
  }
17
27
 
28
+ /** 在线会话分页查询请求。 */
29
+ export interface PageOnlineBaseSessionsRequest {
30
+ /** 关键字 */
31
+ keyword: string;
32
+ /** 租户编码 */
33
+ tenant_code: string;
34
+ /** 当前页码 */
35
+ page_num: number;
36
+ /** 每页行数 */
37
+ page_size: number;
38
+ }
39
+
40
+ /** 在线会话分页响应。 */
41
+ export interface PageOnlineBaseSessionsResponse {
42
+ /** 在线会话列表 */
43
+ sessions: BaseSession[];
44
+ /** 总数 */
45
+ total: number;
46
+ }
47
+
48
+ /** 下线指定会话请求。 */
49
+ export interface RevokeBaseSessionRequest {
50
+ /** 会话ID */
51
+ session_id: string;
52
+ }
53
+
18
54
  /** 当前会话信息。 */
19
55
  export interface BaseSession {
56
+ /** 会话ID */
57
+ session_id: string;
20
58
  /** 用户ID */
21
59
  user_id: number;
22
60
  /** 用户账号 */
@@ -33,12 +71,20 @@ export interface BaseSession {
33
71
  issued_at: string;
34
72
  /** 令牌有效期(秒) */
35
73
  expires_in: number;
74
+ /** 是否为当前请求会话 */
75
+ current: boolean;
36
76
  }
37
77
 
38
78
  /** Admin会话管理服务。 */
39
79
  export interface BaseSessionService {
80
+ /** 查询当前用户全部有效会话。 */
81
+ ListCurrentBaseSessions(request: ListCurrentBaseSessionsRequest): Promise<ListCurrentBaseSessionsResponse>;
40
82
  /** 查询当前用户会话。 */
41
83
  GetCurrentBaseSession(request: GetCurrentBaseSessionRequest): Promise<BaseSession>;
42
84
  /** 撤销当前用户全部会话。 */
43
85
  RevokeAllBaseSessions(request: RevokeAllBaseSessionsRequest): Promise<Empty>;
86
+ /** 分页查询当前在线用户会话。 */
87
+ PageOnlineBaseSessions(request: PageOnlineBaseSessionsRequest): Promise<PageOnlineBaseSessionsResponse>;
88
+ /** 下线指定用户会话。 */
89
+ RevokeBaseSession(request: RevokeBaseSessionRequest): Promise<Empty>;
44
90
  }
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/base_table_archive.proto
6
6
 
@@ -92,7 +92,7 @@ export interface SetBaseTableArchiveStatusRequest {
92
92
  status: number;
93
93
  }
94
94
 
95
- /** BaseTableArchiveService 管理数据库表归档配置。 */
95
+ /** Admin数据库表归档配置服务。 */
96
96
  export interface BaseTableArchiveService {
97
97
  /** 查询表归档配置分页列表。 */
98
98
  PageBaseTableArchive(request: PageBaseTableArchiveRequest): Promise<PageBaseTableArchiveResponse>;
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/base_table_archive_record.proto
6
6
 
@@ -86,7 +86,7 @@ export interface GetBaseTableArchiveRecordRequest {
86
86
  id: number;
87
87
  }
88
88
 
89
- /** BaseTableArchiveRecordService 查询表归档执行记录。 */
89
+ /** Admin表归档执行记录服务。 */
90
90
  export interface BaseTableArchiveRecordService {
91
91
  /** 查询表归档记录分页列表。 */
92
92
  PageBaseTableArchiveRecord(request: PageBaseTableArchiveRecordRequest): Promise<PageBaseTableArchiveRecordResponse>;
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/base_table_archive_restore.proto
6
6
 
@@ -80,7 +80,7 @@ export interface ExecuteBaseTableArchiveRestoreRequest {
80
80
  base_table_archive_restore: BaseTableArchiveRestore | undefined;
81
81
  }
82
82
 
83
- /** BaseTableArchiveRestoreService 手工恢复归档数据。 */
83
+ /** Admin归档数据恢复服务。 */
84
84
  export interface BaseTableArchiveRestoreService {
85
85
  /** 查询归档恢复记录分页列表。 */
86
86
  PageBaseTableArchiveRestore(
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/base_table_backup.proto
6
6
 
@@ -74,7 +74,7 @@ export interface SetBaseTableBackupStatusRequest {
74
74
  status: number;
75
75
  }
76
76
 
77
- /** BaseTableBackupService 管理数据库备份配置。 */
77
+ /** Admin数据库备份配置服务。 */
78
78
  export interface BaseTableBackupService {
79
79
  /** 查询数据库备份配置分页列表。 */
80
80
  PageBaseTableBackup(request: PageBaseTableBackupRequest): Promise<PageBaseTableBackupResponse>;
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/base_table_backup_record.proto
6
6
 
@@ -73,7 +73,7 @@ export interface GetBaseTableBackupRecordRequest {
73
73
  id: number;
74
74
  }
75
75
 
76
- /** BaseTableBackupRecordService 查询数据库备份执行记录。 */
76
+ /** Admin数据库备份执行记录服务。 */
77
77
  export interface BaseTableBackupRecordService {
78
78
  /** 查询数据库备份记录分页列表。 */
79
79
  PageBaseTableBackupRecord(request: PageBaseTableBackupRecordRequest): Promise<PageBaseTableBackupRecordResponse>;
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/base_table_backup_restore.proto
6
6
 
@@ -80,7 +80,7 @@ export interface ExecuteBaseTableBackupRestoreRequest {
80
80
  base_table_backup_restore: BaseTableBackupRestore | undefined;
81
81
  }
82
82
 
83
- /** BaseTableBackupRestoreService 手工恢复数据库备份。 */
83
+ /** Admin数据库备份恢复服务。 */
84
84
  export interface BaseTableBackupRestoreService {
85
85
  /** 查询备份恢复记录分页列表。 */
86
86
  PageBaseTableBackupRestore(request: PageBaseTableBackupRestoreRequest): Promise<PageBaseTableBackupRestoreResponse>;
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/base_table_source.proto
6
6
 
@@ -17,7 +17,7 @@ export interface OptionBaseTableRequest {
17
17
  source_name: string;
18
18
  }
19
19
 
20
- /** BaseTableSourceService 提供数据备份、数据归档和代码生成共用的数据源元数据。 */
20
+ /** Admin数据源元数据服务,提供数据备份、数据归档和代码生成共用的数据源信息。 */
21
21
  export interface BaseTableSourceService {
22
22
  /** 查询已初始化的数据源名称。 */
23
23
  OptionBaseTableSource(request: OptionBaseTableSourceRequest): Promise<StringValues>;
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/base_tenant.proto
6
6
 
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/base_third_account.proto
6
6
 
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/base_user.proto
6
6
 
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/cache.proto
6
6
 
@@ -52,7 +52,7 @@ export interface CacheField {
52
52
  value: string;
53
53
  }
54
54
 
55
- /** 运行时缓存查询服务。 */
55
+ /** Admin运行时缓存查询服务。 */
56
56
  export interface CacheService {
57
57
  /** 分页查询当前进程已观测到的缓存条目。 */
58
58
  PageCache(request: PageCacheRequest): Promise<PageCacheResponse>;
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/code_gen.proto
6
6
 
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/code_gen_column.proto
6
6
 
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/code_gen_proto.proto
6
6
 
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/code_gen_table.proto
6
6
 
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/common.proto
6
6
 
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/oauth_client.proto
6
6
 
@@ -151,7 +151,7 @@ export interface OauthClientCredentials {
151
151
  crypto_key: string;
152
152
  }
153
153
 
154
- /** 开放授权客户端管理服务。 */
154
+ /** Admin开放授权客户端管理服务。 */
155
155
  export interface OauthClientService {
156
156
  /** 查询可授权的开发接口选项。 */
157
157
  OptionOauthClientApi(request: OptionOauthClientApiRequest): Promise<OptionOauthClientApiResponse>;
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/ops_monitoring.proto
6
6
 
@@ -240,7 +240,7 @@ export interface OpsAlert {
240
240
  status: string;
241
241
  }
242
242
 
243
- /** 运维监控服务。 */
243
+ /** Admin运维监控服务。 */
244
244
  export interface OpsMonitoringService {
245
245
  /** 查询当前进程运行信息。 */
246
246
  GetOpsRuntime(request: GetOpsRuntimeRequest): Promise<OpsRuntime>;
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/admin/v1/runtime_log.proto
6
6
 
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/common/v1/common.proto
6
6
 
@@ -1,6 +1,6 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.12.1
3
+ // protoc-gen-ts_proto v2.11.8
4
4
  // protoc unknown
5
5
  // source: system/config/v1/system_config.proto
6
6
 
@@ -136,6 +136,12 @@ const formFields = computed<ProFormField[]>(() => [
136
136
  component: "input-number",
137
137
  props: { min: 1, max: 1440, precision: 0 }
138
138
  },
139
+ {
140
+ prop: "allow_concurrent_login",
141
+ label: t("system.base.login_policy.field.allow_concurrent_login"),
142
+ component: "switch",
143
+ props: { activeText: t("common.status.enabled"), inactiveText: t("common.status.disabled") }
144
+ },
139
145
  {
140
146
  prop: "password_min_length",
141
147
  label: t("system.base.login_policy.field.password_min_length"),
@@ -160,6 +166,12 @@ const formFields = computed<ProFormField[]>(() => [
160
166
  component: "input-number",
161
167
  props: { min: 0, max: 3650, precision: 0 }
162
168
  },
169
+ {
170
+ prop: "mfa_remember_days",
171
+ label: t("system.base.login_policy.field.mfa_remember_days"),
172
+ component: "input-number",
173
+ props: { min: 0, max: 90, precision: 0 }
174
+ },
163
175
  {
164
176
  prop: "initial_password",
165
177
  label: t("system.base.login_policy.field.initial_password"),
@@ -182,6 +194,7 @@ const formRules = computed(() => ({
182
194
  { required: true, message: t("system.base.login_policy.validation.password_min_complexity_classes"), trigger: "change" }
183
195
  ],
184
196
  password_max_age_days: [{ required: true, message: t("system.base.login_policy.validation.password_max_age_days"), trigger: "change" }]
197
+ ,mfa_remember_days: [{ required: true, message: t("system.base.login_policy.validation.mfa_remember_days"), trigger: "change" }]
185
198
  }));
186
199
 
187
200
  const columns = computed<ColumnProps[]>(() => [
@@ -207,6 +220,18 @@ const columns = computed<ColumnProps[]>(() => [
207
220
  },
208
221
  { prop: "max_failed_attempts", label: t("system.base.login_policy.field.max_failed_attempts"), width: 110, align: "right" },
209
222
  { prop: "lock_duration_minutes", label: t("system.base.login_policy.field.lock_duration_minutes"), width: 110, align: "right" },
223
+ {
224
+ prop: "allow_concurrent_login",
225
+ label: t("system.base.login_policy.field.allow_concurrent_login"),
226
+ width: 130,
227
+ cellType: "status",
228
+ statusProps: {
229
+ activeValue: true,
230
+ inactiveValue: false,
231
+ activeText: t("common.status.enabled"),
232
+ inactiveText: t("common.status.disabled")
233
+ }
234
+ },
210
235
  { prop: "password_min_length", label: t("system.base.login_policy.field.password_min_length"), width: 110, align: "right" },
211
236
  { prop: "password_history_count", label: t("system.base.login_policy.field.password_history_count"), width: 110, align: "right" },
212
237
  {
@@ -216,6 +241,7 @@ const columns = computed<ColumnProps[]>(() => [
216
241
  align: "right"
217
242
  },
218
243
  { prop: "password_max_age_days", label: t("system.base.login_policy.field.password_max_age_days"), width: 110, align: "right" },
244
+ { prop: "mfa_remember_days", label: t("system.base.login_policy.field.mfa_remember_days"), width: 130, align: "right" },
219
245
  {
220
246
  prop: "status",
221
247
  label: t("common.field.status"),
@@ -312,10 +338,12 @@ function defaultForm(): BaseLoginPolicyFormState {
312
338
  user_id: 0,
313
339
  max_failed_attempts: 5,
314
340
  lock_duration_minutes: 15,
341
+ allow_concurrent_login: false,
315
342
  password_min_length: 8,
316
343
  password_history_count: 3,
317
344
  password_min_complexity_classes: 3,
318
345
  password_max_age_days: 90,
346
+ mfa_remember_days: 0,
319
347
  initial_password: "",
320
348
  status: Status.STATUS_ENABLE,
321
349
  rules: []
@@ -0,0 +1,116 @@
1
+ <template>
2
+ <div class="online-session-page">
3
+ <el-card class="admin-page-card">
4
+ <ProTable
5
+ :key="isDefaultTenant ? 'default-tenant' : 'current-tenant'"
6
+ ref="proTable"
7
+ row-key="session_id"
8
+ :columns="columns"
9
+ :request-api="requestTable"
10
+ />
11
+ </el-card>
12
+ </div>
13
+ </template>
14
+
15
+ <script setup lang="ts">
16
+ import { computed, ref } from "vue";
17
+ import ProTable from "@liujitcn/kratos-admin-core/components/ProTable";
18
+ import type { ColumnProps, EnumProps, ProTableInstance } from "@liujitcn/kratos-admin-core/components/ProTable/interface";
19
+ import { DEFAULT_TENANT_CODE } from "@liujitcn/kratos-admin-core/tenant";
20
+ import { useUserStore } from "@liujitcn/kratos-admin-core/stores/runtime";
21
+ import { useAuthButtons } from "@liujitcn/kratos-admin-core/auth";
22
+ import { buildPageRequest } from "@liujitcn/kratos-admin-core/table";
23
+ import { t } from "@liujitcn/kratos-admin-core";
24
+ import { defBaseTenantService } from "@liujitcn/kratos-admin-system/api/system/admin/v1/base_tenant";
25
+ import { defBaseSessionService } from "@liujitcn/kratos-admin-system/api/system/admin/v1/base_session";
26
+ import type { BaseSession, PageOnlineBaseSessionsRequest } from "@liujitcn/kratos-admin-system/rpc/system/admin/v1/base_session";
27
+
28
+ defineOptions({ name: "BaseOnlineSession", inheritAttrs: false });
29
+
30
+ const { BUTTONS } = useAuthButtons();
31
+ const proTable = ref<ProTableInstance>();
32
+ const userStore = useUserStore();
33
+ const isDefaultTenant = computed(() => userStore.userInfo.tenant_code === DEFAULT_TENANT_CODE);
34
+
35
+ const columns = computed<ColumnProps[]>(() => [
36
+ {
37
+ prop: "tenant_code",
38
+ label: t("common.field.tenant"),
39
+ minWidth: 130,
40
+ search: isDefaultTenant.value ? { el: "select", props: { filterable: true }, order: 1 } : undefined,
41
+ enum: requestSessionTenantOptions
42
+ },
43
+ {
44
+ prop: "user_name",
45
+ label: t("system.base.online_session.field.user_name"),
46
+ minWidth: 140,
47
+ search: { el: "input", key: "keyword", order: 2 }
48
+ },
49
+ { prop: "client_ip", label: t("system.base.online_session.field.client_ip"), minWidth: 140 },
50
+ { prop: "device", label: t("system.base.online_session.field.device"), minWidth: 180 },
51
+ { prop: "user_agent", label: t("system.base.online_session.field.user_agent"), minWidth: 220 },
52
+ { prop: "issued_at", label: t("system.base.online_session.field.issued_at"), minWidth: 180 },
53
+ {
54
+ prop: "operation",
55
+ label: t("common.field.operation"),
56
+ width: 100,
57
+ fixed: "right",
58
+ cellType: "actions",
59
+ actions: [
60
+ {
61
+ label: t("system.base.online_session.action.revoke"),
62
+ type: "danger",
63
+ link: true,
64
+ icon: SwitchButton,
65
+ hidden: () => !BUTTONS.value["base:online-session:revoke"],
66
+ onClick: scope => revokeSession(scope.row as BaseSession)
67
+ }
68
+ ]
69
+ }
70
+ ]);
71
+
72
+ /** 将租户名称映射到会话使用的租户编码,供下拉筛选与表格展示复用。 */
73
+ async function requestSessionTenantOptions() {
74
+ if (!isDefaultTenant.value) {
75
+ return { data: [{ value: userStore.userInfo.tenant_code, label: userStore.userInfo.tenant_name }] };
76
+ }
77
+ const options: EnumProps[] = [];
78
+ const pageSize = 100;
79
+ for (let pageNum = 1; ; pageNum++) {
80
+ const response = await defBaseTenantService.PageBaseTenant({ code: "", name: "", page_num: pageNum, page_size: pageSize });
81
+ const tenants = response.base_tenants ?? [];
82
+ options.push(...tenants.map(tenant => ({ value: tenant.code, label: tenant.name })));
83
+ if (options.length >= response.total || tenants.length === 0) break;
84
+ }
85
+ return { data: options };
86
+ }
87
+
88
+ /** 查询在线用户会话列表。 */
89
+ async function requestTable(params: Record<string, unknown>) {
90
+ const response = await defBaseSessionService.PageOnlineBaseSessions(
91
+ buildPageRequest<PageOnlineBaseSessionsRequest>({
92
+ ...(params as unknown as PageOnlineBaseSessionsRequest),
93
+ tenant_code: isDefaultTenant.value ? String(params.tenant_code ?? "") : ""
94
+ })
95
+ );
96
+ return { data: { list: response.sessions ?? [], total: response.total } };
97
+ }
98
+
99
+ /** 下线指定在线用户会话。 */
100
+ async function revokeSession(row: BaseSession) {
101
+ await ElMessageBox.confirm(
102
+ t("system.base.online_session.confirm.revoke", { user_name: row.user_name }),
103
+ t("common.title.warning"),
104
+ { type: "warning" }
105
+ );
106
+ await defBaseSessionService.RevokeBaseSession({ session_id: row.session_id });
107
+ ElMessage.success(t("system.base.online_session.message.revoked"));
108
+ proTable.value?.getTableList();
109
+ }
110
+ </script>
111
+
112
+ <style scoped lang="scss">
113
+ .online-session-page {
114
+ min-width: 0;
115
+ }
116
+ </style>
@@ -27,7 +27,9 @@
27
27
  v-model="dialog.visible"
28
28
  ref="formDialogRef"
29
29
  :title="t(dialog.editing ? 'system.base.user.action.edit' : 'system.base.user.action.create')"
30
- width="800px"
30
+ width="960px"
31
+ label-width="120px"
32
+ :col-span="12"
31
33
  :model="formData"
32
34
  :fields="formFields"
33
35
  :rules="rules"
@@ -400,12 +402,6 @@ const formFields = computed<ProFormField[]>(() => [
400
402
  component: "input",
401
403
  props: { placeholder: t("common.validation.phone_required") }
402
404
  },
403
- {
404
- prop: "email",
405
- label: t("system.base.user.field.email"),
406
- component: "input",
407
- props: { placeholder: t("system.base.user.placeholder.email") }
408
- },
409
405
  {
410
406
  prop: "id_type",
411
407
  label: t("system.base.user.field.id_type"),
@@ -419,10 +415,19 @@ const formFields = computed<ProFormField[]>(() => [
419
415
  component: "input",
420
416
  props: { placeholder: t("system.base.user.placeholder.id_code") }
421
417
  },
418
+ {
419
+ prop: "email",
420
+ label: t("system.base.user.field.email"),
421
+ component: "input",
422
+ colSpan: 24,
423
+ props: { placeholder: t("system.base.user.placeholder.email") }
424
+ },
422
425
  {
423
426
  prop: "pwd",
424
427
  label: t("system.base.user.field.password"),
425
428
  component: "password",
429
+ rowBreakBefore: true,
430
+ colSpan: 24,
426
431
  props: { placeholder: t("system.base.user.placeholder.password_optional"), showPassword: true },
427
432
  visible: model => !model.id
428
433
  },
@@ -431,9 +436,15 @@ const formFields = computed<ProFormField[]>(() => [
431
436
  label: t("system.base.user.field.password_strength"),
432
437
  component: "slot",
433
438
  slotName: "passwordStrength",
439
+ colSpan: 24,
434
440
  visible: model => !model.id
435
441
  },
436
- { prop: "gender", label: t("system.base.user.field.gender"), component: "dict", props: { code: "base_user_gender" } },
442
+ {
443
+ prop: "gender",
444
+ label: t("system.base.user.field.gender"),
445
+ component: "dict",
446
+ props: { code: "base_user_gender", style: { width: "100%" } }
447
+ },
437
448
  {
438
449
  prop: "status",
439
450
  label: t("common.field.status"),
@@ -445,6 +456,7 @@ const formFields = computed<ProFormField[]>(() => [
445
456
  prop: "remark",
446
457
  label: t("common.field.remark"),
447
458
  component: "textarea",
459
+ colSpan: 24,
448
460
  props: { placeholder: t("common.placeholder.remark") }
449
461
  }
450
462
  ]);