@liujitcn/kratos-admin-system 0.0.69 → 0.0.71
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.
- package/dist/package/declarations/src/rpc/system/admin/v1/base_redact_output_policy.d.ts +1 -1
- package/dist/package/declarations/src/rpc/system/admin/v1/base_redact_storage_policy.d.ts +3 -1
- package/dist/package/src/locales/README.md +1 -1
- package/dist/package/src/rpc/base/v1/ai_knowledge.ts +1 -1
- package/dist/package/src/rpc/base/v1/ai_message.ts +1 -1
- package/dist/package/src/rpc/base/v1/ai_provider.ts +1 -1
- package/dist/package/src/rpc/base/v1/ai_search.ts +1 -1
- package/dist/package/src/rpc/base/v1/ai_session.ts +1 -1
- package/dist/package/src/rpc/base/v1/ai_tool.ts +1 -1
- package/dist/package/src/rpc/base/v1/config.ts +1 -1
- package/dist/package/src/rpc/base/v1/login.ts +1 -1
- package/dist/package/src/rpc/base/v1/notification.ts +1 -1
- package/dist/package/src/rpc/base/v1/oauth.ts +1 -1
- package/dist/package/src/rpc/base/v1/oauth_client.ts +1 -1
- package/dist/package/src/rpc/base/v1/sse.ts +1 -1
- package/dist/package/src/rpc/common/v1/analytics.ts +1 -1
- package/dist/package/src/rpc/common/v1/common.ts +1 -1
- package/dist/package/src/rpc/common/v1/enum.ts +1 -1
- package/dist/package/src/rpc/common/v1/types.ts +1 -1
- package/dist/package/src/rpc/google/protobuf/empty.ts +1 -1
- package/dist/package/src/rpc/google/protobuf/struct.ts +1 -1
- package/dist/package/src/rpc/google/protobuf/timestamp.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/ai_provider.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/ai_query.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/ai_session.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/auth.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_api.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_api_log.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_api_rate_limit_policy.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_area.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_config.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_dashboard.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_data_access_log.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_dept.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_dict.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_dict_item.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_file.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_i18n.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_i18n_custom.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_job.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_job_log.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_language.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_log.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_login_log.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_login_policy.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_menu.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_message.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_message_category.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_message_provider.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_message_template.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_migration.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_oauth_provider.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_operation_log.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_permission_log.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_policy_evaluation_log.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_post.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_rate_limit_rule.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_redact_common.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_redact_output_policy.ts +2 -2
- package/dist/package/src/rpc/system/admin/v1/base_redact_rule.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_redact_storage_policy.ts +4 -2
- package/dist/package/src/rpc/system/admin/v1/base_role.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_session.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_table_archive.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_table_archive_record.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_table_archive_restore.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_table_backup.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_table_backup_record.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_table_backup_restore.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_table_source.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_tenant.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_tenant_project.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_tenant_project_grant.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_third_account.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/base_user.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/cache.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/code_gen.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/code_gen_column.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/code_gen_proto.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/code_gen_table.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/common.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/oauth_client.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/ops_monitoring.ts +1 -1
- package/dist/package/src/rpc/system/admin/v1/runtime_log.ts +1 -1
- package/dist/package/src/rpc/system/common/v1/common.ts +1 -1
- package/dist/package/src/rpc/system/config/v1/system_config.ts +1 -1
- package/dist/package/src/views/base/redact-output-policy/index.vue +10 -7
- package/dist/package/src/views/base/redact-storage-policy/index.vue +6 -10
- package/package.json +2 -2
|
@@ -44,7 +44,7 @@ export interface BaseRedactStoragePolicyForm {
|
|
|
44
44
|
rule_params: string;
|
|
45
45
|
/** 数据源名称 */
|
|
46
46
|
source_name: string;
|
|
47
|
-
/** 租户ID */
|
|
47
|
+
/** 租户ID,零表示全局策略 */
|
|
48
48
|
tenant_id: number;
|
|
49
49
|
/** 状态 */
|
|
50
50
|
status: Status;
|
|
@@ -94,6 +94,8 @@ export interface BaseRedactStoragePolicy {
|
|
|
94
94
|
source_name: string;
|
|
95
95
|
/** 租户ID */
|
|
96
96
|
tenant_id: number;
|
|
97
|
+
/** 数据表注释 */
|
|
98
|
+
table_comment: string;
|
|
97
99
|
/** 状态 */
|
|
98
100
|
status: Status;
|
|
99
101
|
/** 备注 */
|
|
@@ -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.
|
|
3
|
+
// protoc-gen-ts_proto v2.12.1
|
|
4
4
|
// protoc unknown
|
|
5
5
|
// source: system/admin/v1/base_redact_output_policy.proto
|
|
6
6
|
|
|
@@ -74,7 +74,7 @@ export interface BaseRedactOutputPolicyForm {
|
|
|
74
74
|
field_path: string;
|
|
75
75
|
/** 服务名 */
|
|
76
76
|
service_name: string;
|
|
77
|
-
/** 租户ID */
|
|
77
|
+
/** 租户ID,零表示全局策略 */
|
|
78
78
|
tenant_id: number;
|
|
79
79
|
/** 处理模式 */
|
|
80
80
|
mode: BaseRedactOutputPolicyMode;
|
|
@@ -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.
|
|
3
|
+
// protoc-gen-ts_proto v2.12.1
|
|
4
4
|
// protoc unknown
|
|
5
5
|
// source: system/admin/v1/base_redact_storage_policy.proto
|
|
6
6
|
|
|
@@ -61,7 +61,7 @@ export interface BaseRedactStoragePolicyForm {
|
|
|
61
61
|
rule_params: string;
|
|
62
62
|
/** 数据源名称 */
|
|
63
63
|
source_name: string;
|
|
64
|
-
/** 租户ID */
|
|
64
|
+
/** 租户ID,零表示全局策略 */
|
|
65
65
|
tenant_id: number;
|
|
66
66
|
/** 状态 */
|
|
67
67
|
status: Status;
|
|
@@ -116,6 +116,8 @@ export interface BaseRedactStoragePolicy {
|
|
|
116
116
|
source_name: string;
|
|
117
117
|
/** 租户ID */
|
|
118
118
|
tenant_id: number;
|
|
119
|
+
/** 数据表注释 */
|
|
120
|
+
table_comment: string;
|
|
119
121
|
/** 状态 */
|
|
120
122
|
status: Status;
|
|
121
123
|
/** 备注 */
|
|
@@ -220,12 +220,12 @@ const statusOptions = computed<ProFormOption[]>(() => [{ label: t("common.status
|
|
|
220
220
|
const serviceOptions = computed<ProFormOption[]>(() => {
|
|
221
221
|
const services = new Map<string, string>();
|
|
222
222
|
for (const item of apiCatalog.value) {
|
|
223
|
-
if (!isGetApi(item)) continue;
|
|
223
|
+
if (!isGetApi(item) || !matchesTenantScope(item)) continue;
|
|
224
224
|
if (item.service_name && !services.has(item.service_name)) services.set(item.service_name, serviceLabel(item.service_name));
|
|
225
225
|
}
|
|
226
226
|
return [...services.entries()].sort(([left], [right]) => left.localeCompare(right)).map(([value, label]) => ({ label, value }));
|
|
227
227
|
});
|
|
228
|
-
const interfaceOptions = computed(() => apiCatalog.value.filter(item => item.service_name === form.service_name && isGetApi(item)));
|
|
228
|
+
const interfaceOptions = computed(() => apiCatalog.value.filter(item => item.service_name === form.service_name && isGetApi(item) && matchesTenantScope(item)));
|
|
229
229
|
const serviceLabels = computed(() => new Map(apiCatalog.value.map(item => [item.service_name, item.service_desc || item.service_name])));
|
|
230
230
|
const operationLabels = computed(() => new Map(apiCatalog.value.map(item => [item.operation, item.desc || item.operation])));
|
|
231
231
|
const modeOptions = computed<ProFormOption[]>(() => [
|
|
@@ -235,7 +235,8 @@ const modeOptions = computed<ProFormOption[]>(() => [
|
|
|
235
235
|
]);
|
|
236
236
|
const configuredFieldCount = computed(() => form.field_rows.filter(isConfiguredRow).length);
|
|
237
237
|
const fields = computed<ProFormField[]>(() => [
|
|
238
|
-
|
|
238
|
+
// 脱敏策略支持全局配置,租户选择器追加全局选项。
|
|
239
|
+
tenantFormField({ label: t("common.field.tenant"), disabledOnEdit: true, includeGlobal: true }),
|
|
239
240
|
{ prop: "service_name", label: t("system.base.redact_output_policy.field.service_name"), component: "select", options: serviceOptions.value, props: { filterable: true, clearable: true, placeholder: t("system.base.redact_output_policy.placeholder.service"), onChange: handleServiceChange } },
|
|
240
241
|
{ prop: "api_id", label: t("system.base.redact_output_policy.field.api"), component: "select", options: interfaceOptions.value.map(api => ({ label: apiLabel(api), value: api.id })), props: { filterable: true, clearable: true, disabled: !form.service_name, placeholder: t("system.base.redact_output_policy.placeholder.api"), onChange: handleApiChange } },
|
|
241
242
|
{ prop: "field_rows", label: t("system.base.redact_output_policy.field.response_field"), component: "slot", slotName: "field_rows", colSpan: 24, visible: () => form.api_id !== undefined },
|
|
@@ -251,7 +252,7 @@ const rules = computed<FormRules>(() => ({
|
|
|
251
252
|
const modeEnums = computed<EnumProps[]>(() => modeOptions.value);
|
|
252
253
|
const columns = computed<ColumnProps[]>(() => [
|
|
253
254
|
{ type: "selection", width: 55 },
|
|
254
|
-
...tenantColumns({ label: t("common.field.tenant"), order: 1 }),
|
|
255
|
+
...tenantColumns({ label: t("common.field.tenant"), order: 1, includeGlobal: true }),
|
|
255
256
|
{ prop: "service_name", label: t("system.base.redact_output_policy.field.service_name"), minWidth: 220, search: { el: "input" }, render: scope => serviceLabels.value.get(scope.row.service_name) ?? scope.row.service_name },
|
|
256
257
|
{ prop: "operation", label: t("system.base.redact_output_policy.field.api"), minWidth: 260, search: { el: "input" }, render: scope => operationLabels.value.get(scope.row.operation) ?? scope.row.operation },
|
|
257
258
|
{ prop: "message_ref", label: t("system.base.redact_output_policy.field.message_ref"), minWidth: 220 },
|
|
@@ -264,13 +265,13 @@ const columns = computed<ColumnProps[]>(() => [
|
|
|
264
265
|
const headerActions = computed<HeaderActionProps[]>(() => [{ label: t("common.action.create"), type: "success", icon: CirclePlus, hidden: () => !BUTTONS.value["base:redact-output-policy:create"], onClick: () => openDialog() }, { label: t("common.action.delete"), type: "danger", icon: Delete, hidden: () => !BUTTONS.value["base:redact-output-policy:delete"], disabled: scope => !scope.selectedList.length, onClick: scope => deleteItems(scope.selectedList as BaseRedactOutputPolicy[]) }]);
|
|
265
266
|
|
|
266
267
|
/** 请求出库脱敏策略分页列表。 */
|
|
267
|
-
async function requestTable(params: PageBaseRedactOutputPolicyRequest) { const data = await defBaseRedactOutputPolicyService.PageBaseRedactOutputPolicy({ ...buildPageRequest(params), tenant_id: toRequestTenantId(params.tenant_id) }); return { data: { list: data.base_redact_output_policies ?? [], total: data.total } }; }
|
|
268
|
+
async function requestTable(params: PageBaseRedactOutputPolicyRequest) { const data = await defBaseRedactOutputPolicyService.PageBaseRedactOutputPolicy({ ...buildPageRequest(params), tenant_id: toRequestTenantId(params.tenant_id, true) }); return { data: { list: data.base_redact_output_policies ?? [], total: data.total } }; }
|
|
268
269
|
/** 加载 API 选项。 */
|
|
269
270
|
async function loadApis() { apiCatalog.value = await requestApis(); }
|
|
270
|
-
/**
|
|
271
|
+
/** 请求 GET API 选项,包含全局策略可用的非租户响应接口。 */
|
|
271
272
|
async function requestApis() {
|
|
272
273
|
if (!apiCatalogRequest) {
|
|
273
|
-
apiCatalogRequest = defBaseApiService.OptionBaseApi({ include_public: true
|
|
274
|
+
apiCatalogRequest = defBaseApiService.OptionBaseApi({ include_public: true })
|
|
274
275
|
.then(data => (data.base_apis ?? []).filter(isGetApi))
|
|
275
276
|
.catch(error => {
|
|
276
277
|
apiCatalogRequest = undefined;
|
|
@@ -283,6 +284,8 @@ async function requestApis() {
|
|
|
283
284
|
async function loadRules() { const rules = await requestRules(); ruleCatalog.value = rules.catalog; ruleOptions.value = rules.options; }
|
|
284
285
|
/** 请求脱敏规则选项。 */
|
|
285
286
|
async function requestRules() { const data = await defBaseRedactRuleService.PageBaseRedactRule({ code: "", name: "", rule_type: "", page_num: 1, page_size: 100 }); const catalog = (data.base_redact_rules ?? []).filter(item => item.rule_type !== "ENCRYPT"); return { catalog, options: catalog.map(item => ({ label: `${item.name} (${item.code})`, value: item.id, disabled: item.status !== Status.STATUS_ENABLE })) }; }
|
|
287
|
+
/** 判断接口是否适用于当前租户范围;仅选择全局策略时允许租户响应以外的接口。 */
|
|
288
|
+
function matchesTenantScope(item: BaseApi) { return form.tenant_id === 0 || Boolean(item.tenant_response); }
|
|
286
289
|
/** 服务变更后清空接口和返回字段。 */
|
|
287
290
|
function handleServiceChange(serviceName?: string) { responseFieldsRequestRevision += 1; form.service_name = serviceName ?? ""; form.api_id = undefined; form.operation = ""; form.message_ref = ""; form.field_path = ""; form.field_rows = []; }
|
|
288
291
|
/** API 变更后重新加载返回字段。 */
|
|
@@ -192,7 +192,6 @@ const table = ref<ProTableInstance>();
|
|
|
192
192
|
const dialogRef = ref<InstanceType<typeof FormDialog>>();
|
|
193
193
|
const sourceOptions = ref<ProFormOption[]>([]);
|
|
194
194
|
const tableOptions = ref<ProFormOption[]>([]);
|
|
195
|
-
const tableCommentMap = ref(new Map<string, string>());
|
|
196
195
|
const ruleOptions = ref<ProFormOption[]>([]);
|
|
197
196
|
const ruleCatalog = ref<BaseRedactRule[]>([]);
|
|
198
197
|
const dialog = reactive({ visible: false, titleKey: "common.action.create_resource" });
|
|
@@ -201,7 +200,8 @@ let columnsRequestRevision = 0;
|
|
|
201
200
|
const statusOptions = computed<ProFormOption[]>(() => [{ label: t("common.status.enabled"), value: Status.STATUS_ENABLE }, { label: t("common.status.disabled"), value: Status.STATUS_DISABLE }]);
|
|
202
201
|
const configuredFieldCount = computed(() => form.column_rows.filter(row => Boolean(row.rule_id)).length);
|
|
203
202
|
const fields = computed<ProFormField[]>(() => [
|
|
204
|
-
|
|
203
|
+
// 脱敏策略支持全局配置,租户选择器追加全局选项。
|
|
204
|
+
tenantFormField({ label: t("common.field.tenant"), disabledOnEdit: true, includeGlobal: true }),
|
|
205
205
|
{ prop: "source_name", label: t("system.base.redact_storage_policy.field.source_name"), component: "select", props: { filterable: true, disabled: Boolean(form.id), onChange: handleSourceChange }, options: sourceOptions.value },
|
|
206
206
|
{ prop: "table_name", label: t("system.base.redact_storage_policy.field.table_name"), component: "select", props: { filterable: true, disabled: Boolean(form.id) || !form.source_name, onChange: handleTableChange }, options: tableOptions.value },
|
|
207
207
|
{ prop: "column_rows", label: t("system.base.redact_storage_policy.field.column_name"), component: "slot", slotName: "column_rows", colSpan: 24, visible: () => Boolean(form.table_name) },
|
|
@@ -221,7 +221,7 @@ const rules = computed<FormRules>(() => ({
|
|
|
221
221
|
}));
|
|
222
222
|
const columns = computed<ColumnProps[]>(() => [
|
|
223
223
|
{ type: "selection", width: 55 },
|
|
224
|
-
...tenantColumns({ label: t("common.field.tenant"), order: 1 }),
|
|
224
|
+
...tenantColumns({ label: t("common.field.tenant"), order: 1, includeGlobal: true }),
|
|
225
225
|
{ prop: "source_name", label: t("system.base.redact_storage_policy.field.source_name"), minWidth: 130, search: { el: "input" } },
|
|
226
226
|
{ prop: "table_name", label: t("system.base.redact_storage_policy.field.table_name"), minWidth: 180, search: { el: "input" }, render: scope => tableLabel(scope.row as BaseRedactStoragePolicy) },
|
|
227
227
|
{ prop: "column_name", label: t("system.base.redact_storage_policy.field.column_name"), minWidth: 150, search: { el: "input" } },
|
|
@@ -232,7 +232,7 @@ const columns = computed<ColumnProps[]>(() => [
|
|
|
232
232
|
const headerActions = computed<HeaderActionProps[]>(() => [{ label: t("common.action.create"), type: "success", icon: CirclePlus, hidden: () => !BUTTONS.value["base:redact-storage-policy:create"], onClick: () => openDialog() }, { label: t("common.action.delete"), type: "danger", icon: Delete, hidden: () => !BUTTONS.value["base:redact-storage-policy:delete"], disabled: scope => !scope.selectedList.length, onClick: scope => deleteItems(scope.selectedList as BaseRedactStoragePolicy[]) }]);
|
|
233
233
|
|
|
234
234
|
/** 请求入库脱敏策略分页列表。 */
|
|
235
|
-
async function requestTable(params: PageBaseRedactStoragePolicyRequest) { const data = await defBaseRedactStoragePolicyService.PageBaseRedactStoragePolicy({ ...buildPageRequest(params), tenant_id: toRequestTenantId(params.tenant_id) }); return { data: { list: data.base_redact_storage_policies ?? [], total: data.total } }; }
|
|
235
|
+
async function requestTable(params: PageBaseRedactStoragePolicyRequest) { const data = await defBaseRedactStoragePolicyService.PageBaseRedactStoragePolicy({ ...buildPageRequest(params), tenant_id: toRequestTenantId(params.tenant_id, true) }); return { data: { list: data.base_redact_storage_policies ?? [], total: data.total } }; }
|
|
236
236
|
/** 加载脱敏规则选项。 */
|
|
237
237
|
async function loadRules() { const rules = await requestRules(); ruleCatalog.value = rules.catalog; ruleOptions.value = rules.options; }
|
|
238
238
|
/** 请求脱敏规则选项。 */
|
|
@@ -249,8 +249,6 @@ async function requestSourceOptions() { const data = await defBaseTableSourceSer
|
|
|
249
249
|
async function loadTables(sourceName = form.source_name) { tableOptions.value = await requestTables(sourceName); }
|
|
250
250
|
/** 请求指定数据源的数据表选项。 */
|
|
251
251
|
async function requestTables(sourceName: string) { if (!sourceName) return []; const data = await defBaseRedactStoragePolicyService.ListBaseRedactStorageTable({ source_name: sourceName }); return (data.tables ?? []).map(item => ({ label: item.comment && item.comment !== item.name ? `${item.comment}(${item.name})` : item.name, value: item.name })); }
|
|
252
|
-
/** 预加载数据表中文注释,供列表显示。 */
|
|
253
|
-
async function loadTableComments() { await loadSourceOptions(); const comments = new Map<string, string>(); await Promise.all(sourceOptions.value.map(async option => { const sourceName = String(option.value); const data = await defBaseRedactStoragePolicyService.ListBaseRedactStorageTable({ source_name: sourceName }); for (const item of data.tables ?? []) { if (item.comment) comments.set(`${sourceName}\x00${item.name}`, item.comment); } })); tableCommentMap.value = comments; }
|
|
254
252
|
/** 加载并过滤数据库字段。 */
|
|
255
253
|
async function loadColumns() { const revision = ++columnsRequestRevision; const rows = await requestColumns(form.source_name, form.table_name); if (revision === columnsRequestRevision) form.column_rows = rows; }
|
|
256
254
|
/** 请求并转换数据库字段。 */
|
|
@@ -307,10 +305,8 @@ function deleteItems(selected?: BaseRedactStoragePolicy | BaseRedactStoragePolic
|
|
|
307
305
|
/** 创建默认入库表单。 */
|
|
308
306
|
function defaultForm(): StorageFormState { return { id: 0, tenant_id: undefined, source_name: "", table_name: "", column_name: "", column_rows: [], rule_id: 0, rule_params: "{}", status: Status.STATUS_ENABLE, remark: "" }; }
|
|
309
307
|
|
|
310
|
-
/**
|
|
311
|
-
function tableLabel(row: BaseRedactStoragePolicy) {
|
|
312
|
-
|
|
313
|
-
void loadTableComments().catch(() => undefined);
|
|
308
|
+
/** 格式化列表中的数据表名称,表注释由列表接口按行返回。 */
|
|
309
|
+
function tableLabel(row: BaseRedactStoragePolicy) { return row.table_comment && row.table_comment !== row.table_name ? `${row.table_comment}(${row.table_name})` : row.table_name; }
|
|
314
310
|
</script>
|
|
315
311
|
|
|
316
312
|
<style scoped lang="scss">
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@liujitcn/kratos-admin-system",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.71",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "kratos-admin system management module",
|
|
7
7
|
"license": "MIT",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"sortablejs": "^1.15.2",
|
|
17
17
|
"swagger-ui-dist": "^5.32.15",
|
|
18
18
|
"vue-element-plus-x": "^2.0.3",
|
|
19
|
-
"@liujitcn/kratos-admin-core": "0.0.
|
|
19
|
+
"@liujitcn/kratos-admin-core": "0.0.71"
|
|
20
20
|
},
|
|
21
21
|
"peerDependencies": {
|
|
22
22
|
"@element-plus/icons-vue": "^2.3.1",
|