Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
B
bigDataSystem
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张伯涛
bigDataSystem
Commits
e7732d2a
Commit
e7732d2a
authored
Dec 11, 2024
by
chenjiahao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修复已知问题
parent
ae6ac637
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
295 additions
and
141 deletions
+295
-141
BasicUpload.vue
src/components/Upload/src/BasicUpload.vue
+15
-15
databaseOfflineLoading.vue
...tion/dataLoading/dataEntryLake/databaseOfflineLoading.vue
+278
-124
index.vue
...s/mallResourceDevelopment/dataSet/commonDataSet/index.vue
+2
-2
No files found.
src/components/Upload/src/BasicUpload.vue
View file @
e7732d2a
...
...
@@ -7,22 +7,22 @@
preIcon=
"carbon:cloud-upload"
:disabled=
"disabled"
>
{{
t
(
'component.upload.upload'
)
}}
<slot
name=
"uploadBtnName"
>
{{
t
(
'component.upload.upload'
)
}}
</slot>
</a-button>
<!--
<Tooltip
placement=
"bottom"
v-if=
"showPreview"
>
-->
<!--
<template
#
title
>
-->
<!--
{{
t
(
'component.upload.uploaded'
)
}}
-->
<!--
<template
v-if=
"fileList.length"
>
-->
<!--
{{
fileList
.
length
}}
-->
<!--
</
template
>
-->
<!-- </template>-->
<!-- <a-button @click="openPreviewModal">-->
<!-- <Icon icon="bi:eye" />-->
<!-- <template v-if="fileList.length && showPreviewNumber">-->
<!-- {{ fileList.length }}-->
<!-- </template>-->
<!-- </a-button>-->
<!-- </Tooltip>-->
<!--
<Tooltip
placement=
"bottom"
v-if=
"showPreview"
>
-->
<!--
<template
#
title
>
-->
<!--
{{
t
(
'component.upload.uploaded'
)
}}
-->
<!--
<template
v-if=
"fileList.length"
>
-->
<!--
{{
fileList
.
length
}}
-->
<!--
</
template
>
-->
<!-- </template>-->
<!-- <a-button @click="openPreviewModal">-->
<!-- <Icon icon="bi:eye" />-->
<!-- <template v-if="fileList.length && showPreviewNumber">-->
<!-- {{ fileList.length }}-->
<!-- </template>-->
<!-- </a-button>-->
<!-- </Tooltip>-->
</Space>
<UploadModal
v-bind=
"bindValue"
...
...
src/views/dataIntegration/dataLoading/dataEntryLake/databaseOfflineLoading.vue
View file @
e7732d2a
...
...
@@ -68,20 +68,45 @@
@
register=
"registerSourceSideConfigurationForm"
style=
"width: 30%; margin-right: 30px"
>
<
template
#
dataSourceAlert
>
<Alert
show-icon
style=
"font-size: 12px"
message=
"目标端为Inceptor、Argodb,若与源端数据源跨集群或租户,则需要配置互信"
type=
"info"
/>
</
template
>
<
template
#
DataDischargeLakeIsCustomSQLAlert
>
<Alert
show-icon
style=
"font-size: 10px; white-space: break-spaces"
message=
"! 自定义的SQL模式,仅支持查询SQL,且更新SQL必须进行解析操作,否则任务可能执行失败。
! 自定义SQL只支持填写一条查询SQL,否则解析SQL可能失败。
! 建议非必要不要在抽数中进行多表联查,否则抽数效率较低。"
type=
"info"
/>
</
template
>
<
template
#
getMetadata
>
<a-button
@
click=
"handleGetMetadata"
type=
"primary"
>
获取元数据
</a-button>
</
template
>
<
template
#
importFile
>
<div
style=
"display: flex"
>
<a-button
style=
"margin-right: 5px"
>
下载文件模板
</a-button>
<a-button
@
click=
"handleDownloadTemplateFile"
style=
"margin-right: 5px"
>
下载文件模板
</a-button
>
<!--
<a-button
type=
"primary"
>
导入文件
</a-button>
-->
<BasicUpload
:maxSize=
"20"
:maxNumber=
"1"
@
change=
"handleChange"
@
click=
"handleUpload"
:api=
"userImport"
:accept=
"['.xlsx, .xls']"
/>
>
<template
#
uploadBtnName
>
{{
1231231
}}
</
template
>
</BasicUpload>
</div>
</template>
</BasicForm>
...
...
@@ -109,12 +134,13 @@
<div
style=
"display: flex; justify-content: space-between"
>
<strong>
自定义查询SQL
</strong>
<a-button
type=
"primary"
style=
"margin-right: 5px"
@
click=
"handleParsingSQL"
>
解析SQL
</a-button
>
>
解析SQL
</a-button
>
</div>
<CodeEditor
v-model:value=
"sql"
style=
"height: 100%"
/>
</div>
</div>
<!-- 右侧表单 --->
<BasicForm
v-if=
"isGetMeta === 'true'"
@
register=
"registerLoadingStrategyForm"
...
...
@@ -201,21 +227,27 @@
</
template
>
<
template
#
executionSequence=
"{ index }"
>
<div
style=
"display: flex; justify-content: center; color: dimgray"
>
<Icon
style=
"font-size: 30px !important"
icon=
"material-symbols-light:keyboard-double-arrow-up"
@
click=
"handleMoveTop(index)"
/>
<Icon
style=
"font-size: 20px !important; margin-right: 5px"
icon=
"oui:arrow-down"
@
click=
"handleMoveDown(index)"
/>
<Icon
style=
"font-size: 20px !important"
icon=
"oui:arrow-up"
@
click=
"handleMoveUp(index)"
/>
<Tooltip
title=
"移至顶部"
placement=
"bottom"
>
<Icon
style=
"font-size: 30px !important"
icon=
"material-symbols-light:keyboard-double-arrow-up"
@
click=
"handleMoveTop(index)"
/>
</Tooltip>
<Tooltip
title=
"下移"
placement=
"bottom"
>
<Icon
style=
"font-size: 20px !important; margin-right: 5px"
icon=
"oui:arrow-down"
@
click=
"handleMoveDown(index)"
/>
</Tooltip>
<Tooltip
title=
"上移"
placement=
"bottom"
>
<Icon
style=
"font-size: 20px !important"
icon=
"oui:arrow-up"
@
click=
"handleMoveUp(index)"
/>
</Tooltip>
</div>
</
template
>
<
template
#
bodyCell=
"{ column, record }"
>
...
...
@@ -225,10 +257,12 @@
:actions=
"[
{
icon: 'iconamoon:edit',
tooltip: '编辑',
onClick: handleEdit.bind(null, record),
},
{
icon: 'ic:outline-delete-outline',
tooltip: '删除',
onClick: handleDeleteRule.bind(null, record),
},
]"
...
...
@@ -523,8 +557,9 @@
Select
,
CheckboxGroup
,
Checkbox
,
Tooltip
,
}
from
'ant-design-vue'
;
import
{
h
,
ref
,
onMounted
}
from
'vue'
;
import
{
h
,
ref
,
onMounted
,
onBeforeMount
}
from
'vue'
;
import
{
BasicTree
}
from
'@/components/Tree'
;
import
{
BasicForm
,
FormSchema
,
useForm
}
from
'@/components/Form'
;
import
{
...
...
@@ -583,6 +618,8 @@
import
FieldTypeMappingRuleModal
from
'@/views/dataIntegration/dataLoading/dataEntryLake/fieldTypeMappingRuleModal.vue'
;
import
DataTransformationRuleModal
from
'@/views/dataIntegration/dataLoading/dataEntryLake/dataTransformationRuleModal.vue'
;
import
SingleTableFieldMappingRuleModal
from
'@/views/dataIntegration/dataLoading/dataEntryLake/singleTableFieldMappingRuleModal.vue'
;
import
{
exportRoleList
}
from
'@/api/system/role/role'
;
import
{
downloadByData
}
from
'@/utils/file/download'
;
const
route
=
useRoute
();
const
emit
=
defineEmits
([
'success'
,
'register'
]);
...
...
@@ -613,6 +650,8 @@
let
customSQLFlag
=
ref
();
let
isAutomaticTableConstructionFlag
=
ref
(
false
);
let
isParsingSQL
=
ref
(
false
);
let
isImport
=
ref
(
false
);
let
isDataDischargeLake
=
ref
(
false
);
let
isClearTargetTable
=
ref
(
'否'
);
const
isSave
=
ref
(
'false'
);
const
isRun
=
ref
(
'false'
);
...
...
@@ -634,7 +673,7 @@
},
{
label
:
'V3'
,
value
:
'V
4
'
,
value
:
'V
3
'
,
},
];
const
actionList
=
[
...
...
@@ -651,18 +690,6 @@
},
];
const
[
registerNewFieldRuleModal
,
{
openModal
:
openNewFieldRuleModal
}]
=
useModal
();
const
[
registerFieldNameMappingRuleModal
,
{
openModal
:
openFieldNameMappingRuleModal
}]
=
useModal
();
const
[
registerFieldTypeMappingRuleModal
,
{
openModal
:
openFieldTypeMappingRuleModal
}]
=
useModal
();
const
[
registerDataTransformationRuleModal
,
{
openModal
:
openDataTransformationRuleModal
}]
=
useModal
();
const
[
registerSingleTableFieldMappingRuleModal
,
{
openModal
:
openSingleTableFieldMappingRuleModal
},
]
=
useModal
();
const
sourceSideConfigurationFormSchema
:
FormSchema
[]
=
[
{
field
:
'loadType'
,
...
...
@@ -673,10 +700,12 @@
onChange
:
()
=>
{
loadType
.
value
=
formModel
.
loadType
;
const
flag
=
formModel
.
loadType
===
'增量数据加载'
;
updateSchema
([{
field
:
'incrementalRepresentationColumn'
,
ifShow
:
flag
}]);
updateSchema
([{
field
:
'site'
,
ifShow
:
flag
}]);
updateSchema
([{
field
:
'incrementalRepresentationColumnAlert'
,
ifShow
:
flag
}]);
updateSchema
([{
field
:
'incrementalRepresentationColumnAlertDivider'
,
ifShow
:
flag
}]);
updateDestinationConfigurationSchema
([
{
field
:
'incrementalRepresentationColumn'
,
ifShow
:
flag
},
{
field
:
'site'
,
ifShow
:
flag
},
{
field
:
'incrementalRepresentationColumnAlert'
,
ifShow
:
flag
},
{
field
:
'incrementalRepresentationColumnAlertDivider'
,
ifShow
:
flag
},
]);
},
options
:
[
{
label
:
'全量数据加载'
,
value
:
'全量数据加载'
},
...
...
@@ -692,27 +721,56 @@
componentProps
:
({
formModel
,
formActionType
})
=>
({
onChange
:
()
=>
{
isParsingSQL
.
value
=
false
;
isGetMeta
.
value
=
formModel
.
metadataAcquisitionMode
===
'自定义SQL'
?
'true'
:
'false'
;
metadataAcquisitionModeFlag
.
value
=
formModel
.
metadataAcquisitionMode
===
'自定义SQL'
;
const
flag
=
!
metadataAcquisitionModeFlag
.
value
;
const
isImport
=
formModel
.
metadataAcquisitionMode
===
'导入元数据文件'
;
update
Schema
([{
field
:
'filterCondition'
,
ifShow
:
flag
&&
customSQLFlag
.
value
}]);
updateSchema
([{
field
:
'notCustomSQLTable'
,
ifShow
:
flag
&&
customSQLFlag
.
value
}]);
updateSchema
([{
field
:
'customSQL'
,
ifShow
:
flag
}]);
updateSchema
([{
field
:
'querySQL'
,
ifShow
:
flag
&&
!
customSQLFlag
.
value
}]);
updateSchema
([{
field
:
'parsingSQL'
,
ifShow
:
flag
&&
!
customSQLFlag
.
value
}]);
updateSchema
([{
field
:
'isCustomSQLAlert'
,
ifShow
:
flag
&&
!
customSQLFlag
.
value
}]);
updateSchema
([
isImport
.
value
=
formModel
.
metadataAcquisitionMode
===
'导入元数据文件'
;
update
LoadingStrategyFormSchema
([
{
field
:
'filterCondition'
,
ifShow
:
flag
&&
customSQLFlag
.
value
},
{
field
:
'notCustomSQLTable'
,
ifShow
:
flag
&&
customSQLFlag
.
value
},
{
field
:
'customSQL'
,
ifShow
:
flag
},
{
field
:
'querySQL'
,
ifShow
:
flag
&&
!
customSQLFlag
.
value
},
{
field
:
'parsingSQL'
,
ifShow
:
flag
&&
!
customSQLFlag
.
value
},
{
field
:
'parsingSQL'
,
ifShow
:
flag
&&
!
customSQLFlag
.
value
},
{
field
:
'isCustomSQLTable'
,
ifShow
:
flag
&&
!
customSQLFlag
.
value
&&
isParsingSQL
.
value
,
},
{
field
:
'sourceDataTableName'
,
ifShow
:
!
flag
},
{
field
:
'isBatchCustomSQLTable'
,
ifShow
:
!
flag
&&
isParsingSQL
.
value
},
]);
if
(
isDataDischargeLake
.
value
===
true
)
{
formActionType
.
updateSchema
([
{
field
:
'dataBase'
,
label
:
'Schema'
,
ifShow
:
isDataDischargeLake
.
value
&&
flag
&&
!
isImport
.
value
,
},
]);
}
else
{
formActionType
.
updateSchema
([
{
field
:
'dataBase'
,
label
:
'数据库'
,
ifShow
:
isDataDischargeLake
.
value
&&
flag
&&
!
isImport
.
value
,
},
]);
}
formActionType
.
updateSchema
([
{
field
:
'metadataType'
,
ifShow
:
flag
&&
!
isImport
.
value
},
{
field
:
'getMetadata'
,
ifShow
:
flag
&&
!
isImport
.
value
},
{
field
:
'importFile'
,
ifShow
:
flag
&&
isImport
.
value
},
{
field
:
'dataSourceAlert'
,
ifShow
:
isDataDischargeLake
.
value
&&
flag
&&
!
isImport
.
value
,
},
{
field
:
'HDFSDataSource'
,
ifShow
:
isDataDischargeLake
.
value
&&
flag
&&
!
isImport
.
value
,
},
{
field
:
'useResources'
,
ifShow
:
isDataDischargeLake
.
value
&&
flag
&&
!
isImport
.
value
},
{
field
:
'DataDischargeLakeIsCustomSQLAlert'
,
ifShow
:
!
flag
},
]);
updateSchema
([{
field
:
'sourceDataTableName'
,
ifShow
:
!
flag
}]);
updateSchema
([{
field
:
'isBatchCustomSQLTable'
,
ifShow
:
!
flag
&&
isParsingSQL
.
value
}]);
formActionType
.
updateSchema
([{
field
:
'dataBase'
,
ifShow
:
flag
&&
!
isImport
}]);
formActionType
.
updateSchema
([{
field
:
'metadataType'
,
ifShow
:
flag
&&
!
isImport
}]);
formActionType
.
updateSchema
([{
field
:
'getMetadata'
,
ifShow
:
flag
&&
!
isImport
}]);
formActionType
.
updateSchema
([{
field
:
'importFile'
,
ifShow
:
flag
&&
isImport
}]);
},
options
:
[
{
label
:
'从JDBC获取元数据'
,
value
:
'从JDBC获取元数据'
},
...
...
@@ -727,14 +785,66 @@
component
:
'Select'
,
required
:
true
,
defaultValue
:
'KunDB数据源'
,
componentProps
:
{
componentProps
:
({
formModel
,
formActionType
})
=>
({
onChange
:
()
=>
{
isParsingSQL
.
value
=
false
;
isDataDischargeLake
.
value
=
[
'Argodb'
,
'Inceptor'
].
includes
(
formModel
.
dataSource
);
formActionType
.
updateSchema
([
{
field
:
'dataSourceAlert'
,
ifShow
:
isDataDischargeLake
.
value
&&
!
isImport
.
value
&&
!
metadataAcquisitionModeFlag
.
value
,
},
{
field
:
'maximumNumberOfDatabaseConnections'
,
ifShow
:
!
isDataDischargeLake
.
value
,
},
{
field
:
'HDFSDataSource'
,
ifShow
:
isDataDischargeLake
.
value
&&
!
isImport
.
value
&&
!
metadataAcquisitionModeFlag
.
value
,
},
{
field
:
'useResources'
,
ifShow
:
isDataDischargeLake
.
value
&&
!
isImport
.
value
&&
!
metadataAcquisitionModeFlag
.
value
,
},
{
field
:
'dataBase'
,
label
:
'Schema'
},
{
field
:
'dataBase'
,
label
:
'数据库'
},
]);
updateDestinationConfigurationSchema
([
{
field
:
'objectLibrary'
,
ifShow
:
!
isDataDischargeLake
.
value
},
{
field
:
'catalog'
,
ifShow
:
isDataDischargeLake
.
value
},
{
field
:
'HDFSDataSource'
,
ifShow
:
!
isDataDischargeLake
.
value
},
{
field
:
'isTargetTableSnapshot'
,
ifShow
:
!
isDataDischargeLake
.
value
},
{
field
:
'isAutomaticTableConstruction'
,
ifShow
:
!
isDataDischargeLake
.
value
,
},
{
field
:
'withOutAutomaticTableConstruction'
,
ifShow
:
isDataDischargeLake
.
value
,
},
]);
isAutomaticTableConstructionFlag
.
value
=
false
;
setColumns
(
noConfigurationColumns
);
},
placeholder
:
'请选择数据源'
,
options
:
[
{
label
:
'KunDB数据源'
,
value
:
'KunDB数据源'
},
{
label
:
'MongoDB数据源'
,
value
:
'MongoDB数据源'
},
{
label
:
'AmazonS3'
,
value
:
'AmazonS3'
},
{
label
:
'Argodb'
,
value
:
'Argodb'
},
{
label
:
'Inceptor'
,
value
:
'Inceptor'
},
],
},
}),
},
{
field
:
'dataSourceAlert'
,
label
:
''
,
slot
:
'dataSourceAlert'
,
ifShow
:
false
,
},
{
field
:
'dataBase'
,
...
...
@@ -742,45 +852,12 @@
component
:
'Select'
,
required
:
true
,
componentProps
:
{
placeholder
:
''
,
options
:
[
{
label
:
'maoyanceshi1'
,
value
:
'maoyanceshi1'
},
{
label
:
'bigevent'
,
value
:
'bigevent'
},
{
label
:
'database1'
,
value
:
'database1'
},
],
},
// componentProps: {
// placeholder: '请选择数据源',
// displayRender: ({ labels }) => {
// return labels[labels.length - 1];
// },
// options: [
// {
// value: '数据库对象资源',
// label: '数据库对象资源',
// children: [
// {
// value: '数据中台工作区01',
// label: '数据中台工作区01',
// children: [
// {
// value: 'ArgoDB_Dev01',
// label: 'ArgoDB_Dev01',
// },
// {
// value: 'ArgoDB_Dev02',
// label: 'ArgoDB_Dev02',
// },
// {
// value: 'GbaseDB_Dev01',
// label: 'GbaseDB_Dev01',
// },
// ],
// },
// ],
// },
// ],
// },
},
{
field
:
'metadataType'
,
...
...
@@ -806,13 +883,56 @@
{
field
:
'maximumNumberOfDatabaseConnections'
,
label
:
'源库最大连接数'
,
defaultValue
:
'10'
,
component
:
'Input'
,
componentProps
:
{
placeholder
:
'请输入源库最大连接数'
,
},
},
{
field
:
'HDFSDataSource'
,
label
:
'HDFS数据源'
,
component
:
'Select'
,
componentProps
:
{
placeholder
:
''
,
options
:
[
{
label
:
'546-hdfs'
,
value
:
'546-hdfs'
},
{
label
:
'cluster1-hdfs'
,
value
:
'cluster1-hdfs'
},
{
label
:
'cluster2-hdfs'
,
value
:
'cluster2-hdfs'
},
{
label
:
'prod-hdfs'
,
value
:
'prod-hdfs'
},
{
label
:
'dev-hdfs'
,
value
:
'dev-hdfs'
},
{
label
:
'test-hdfs'
,
value
:
'test-hdfs'
},
{
label
:
'backup-hdfs'
,
value
:
'backup-hdfs'
},
],
},
ifShow
:
false
,
required
:
true
,
},
{
field
:
'useResources'
,
label
:
'使用资源'
,
component
:
'RadioGroup'
,
defaultValue
:
'源端'
,
ifShow
:
false
,
componentProps
:
({
formModel
,
formActionType
})
=>
({
onChange
:
()
=>
{
// loadType.value = formModel.loadType;
// const flag = formModel.loadType === '增量数据加载';
// updateSchema([{ field: 'incrementalRepresentationColumn', ifShow: flag }]);
// updateSchema([{ field: 'site', ifShow: flag }]);
},
options
:
[
{
label
:
'源端'
,
value
:
'源端'
},
{
label
:
'目标端'
,
value
:
'目标端'
},
],
}),
},
{
field
:
'DataDischargeLakeIsCustomSQLAlert'
,
slot
:
'DataDischargeLakeIsCustomSQLAlert'
,
ifShow
:
false
,
},
];
const
LoadingStrategyFormSchema
:
FormSchema
[]
=
[
{
field
:
'incrementalRepresentationColumn'
,
...
...
@@ -887,11 +1007,14 @@
required
:
true
,
componentProps
:
({
formModel
,
formActionType
})
=>
({
onChange
:
()
=>
{
isParsingSQL
.
value
=
false
;
//
isParsingSQL.value = false;
customSQLFlag
.
value
=
formModel
.
customSQL
===
'否'
;
formActionType
.
updateSchema
([{
field
:
'filterCondition'
,
ifShow
:
customSQLFlag
.
value
}]);
formActionType
.
updateSchema
([
{
field
:
'notCustomSQLTable'
,
ifShow
:
customSQLFlag
.
value
},
{
field
:
'notCustomSQLTable'
,
ifShow
:
!
metadataAcquisitionModeFlag
.
value
&&
customSQLFlag
.
value
,
},
]);
formActionType
.
updateSchema
([{
field
:
'querySQL'
,
ifShow
:
!
customSQLFlag
.
value
}]);
formActionType
.
updateSchema
([{
field
:
'parsingSQL'
,
ifShow
:
!
customSQLFlag
.
value
}]);
...
...
@@ -943,25 +1066,20 @@
{
field
:
'isCustomSQLTable'
,
slot
:
'isCustomSQLTable'
,
ifShow
:
isParsingSQL
.
valu
e
,
ifShow
:
fals
e
,
},
{
field
:
'sourceDataTableName'
,
label
:
'源端标识表名'
,
component
:
'Input'
,
defaultValue
:
'user_info,customer_details,order_history,product_inventory'
,
colProps
:
{
lg
:
11
,
md
:
11
},
componentProps
:
{
placeholder
:
''
,
},
ifShow
:
false
,
},
{
field
:
'isBatchCustomSQLTable'
,
slot
:
'isBatchCustomSQLTable'
,
ifShow
:
isParsingSQL
.
value
,
},
];
const
DestinationConfigurationFormSchema
:
FormSchema
[]
=
[
{
field
:
'dataSource'
,
...
...
@@ -1018,6 +1136,22 @@
},
required
:
true
,
},
{
field
:
'catalog'
,
label
:
'catalog'
,
component
:
'Select'
,
colProps
:
{
lg
:
12
,
md
:
12
},
componentProps
:
{
placeholder
:
''
,
options
:
[
{
label
:
'maoyanceshi1'
,
value
:
'maoyanceshi1'
},
{
label
:
'bigevent'
,
value
:
'bigevent'
},
{
label
:
'database1'
,
value
:
'database1'
},
],
},
ifShow
:
false
,
required
:
true
,
},
{
field
:
'theMaximumNumberOfConcurrentRequestsAllowed'
,
label
:
'允许最大并发数'
,
...
...
@@ -1094,6 +1228,24 @@
],
}),
},
{
field
:
'withOutAutomaticTableConstruction'
,
label
:
'是否自动建表'
,
component
:
'RadioGroup'
,
defaultValue
:
'否'
,
ifShow
:
false
,
colProps
:
{
lg
:
12
,
md
:
12
},
componentProps
:
({
formModel
,
formActionType
})
=>
({
onChange
:
()
=>
{
isAutomaticTableConstructionFlag
.
value
=
formModel
.
withOutAutomaticTableConstruction
===
'是'
;
setColumns
(
noConfigurationColumns
);
// formActionType.updateSchema([{ field: 'quantityBasedAlert', ifShow: flag }]);
// formActionType.updateSchema([{ field: 'conditionBasedAlert', ifShow: !flag }]);
},
options
:
[{
label
:
'否'
,
value
:
'否'
}],
}),
},
{
field
:
'span'
,
label
:
' '
,
...
...
@@ -1161,7 +1313,6 @@
ifShow
:
[
'0'
].
includes
(
configurationModeFlag
.
value
),
},
];
const
ConfigurationItemFormSchema
:
FormSchema
[]
=
[
{
slot
:
'reviewSQL'
,
...
...
@@ -1312,6 +1463,17 @@
},
];
const
[
registerNewFieldRuleModal
,
{
openModal
:
openNewFieldRuleModal
}]
=
useModal
();
const
[
registerFieldNameMappingRuleModal
,
{
openModal
:
openFieldNameMappingRuleModal
}]
=
useModal
();
const
[
registerFieldTypeMappingRuleModal
,
{
openModal
:
openFieldTypeMappingRuleModal
}]
=
useModal
();
const
[
registerDataTransformationRuleModal
,
{
openModal
:
openDataTransformationRuleModal
}]
=
useModal
();
const
[
registerSingleTableFieldMappingRuleModal
,
{
openModal
:
openSingleTableFieldMappingRuleModal
},
]
=
useModal
();
const
[
registerGetMetadataModal
,
{
openModal
:
openGetMetadataModal
}]
=
useModal
();
const
[
registerDeplysModal
,
{
openModal
:
openDeplysModal
}]
=
useModal
();
const
[
registerViewLogsModal
,
{
openModal
:
openViewLogsModal
}]
=
useModal
();
...
...
@@ -1327,14 +1489,13 @@
]
=
useModal
();
const
[
registerBatchScaleNameMappingModal
,
{
openModal
:
openBatchScaleNameMappingModal
}]
=
useModal
();
const
[
registerBatchConfigurationModal
,
{
openModal
:
openBatchConfigurationModal
}]
=
useModal
();
const
[
registerClearConfigurationModal
,
{
openModal
:
openClearConfigurationModal
}]
=
useModal
();
const
[
registerSourceSideConfigurationForm
,
{
updateSchema
:
updateSourceSideConfigurationSechema
,
getFieldsValue
,
validate
:
validateSourceSideConfigurationForm
,
submit
:
submitSourceSideConfiguration
,
...
...
@@ -1349,8 +1510,10 @@
span
:
23
,
},
});
const
[
registerLoadingStrategyForm
,
{
updateSchema
,
setFieldsValue
}]
=
useForm
({
const
[
registerLoadingStrategyForm
,
{
updateSchema
:
updateLoadingStrategyFormSchema
,
setFieldsValue
},
]
=
useForm
({
labelWidth
:
120
,
labelAlign
:
'left'
,
baseColProps
:
{
lg
:
24
,
md
:
24
},
...
...
@@ -1360,7 +1523,6 @@
span
:
23
,
},
});
const
[
registerDestinationConfigurationForm
,
{
...
...
@@ -1377,7 +1539,6 @@
span
:
23
,
},
});
const
[
registerConfigurationItemForm
,
{
...
...
@@ -1394,7 +1555,6 @@
span
:
23
,
},
});
const
[
registerIsCustomSQLTable
,
{
reload
:
isCustomSQLTableReload
}]
=
useTable
({
api
:
async
()
=>
{
isCustomSQLTable
.
value
=
isCustomSQLTableList
.
filter
((
item
)
=>
{
...
...
@@ -1418,7 +1578,6 @@
showIndexColumn
:
false
,
bordered
:
false
,
});
const
[
registerIsBatchCustomSQLTable
]
=
useTable
({
api
:
async
()
=>
{
const
response
=
{
...
...
@@ -1439,7 +1598,6 @@
showIndexColumn
:
false
,
bordered
:
false
,
});
const
[
registerNotCustomSQLTable
,
{
reload
:
notCustomSQLTableReload
}]
=
useTable
({
api
:
async
()
=>
{
notCustomSQLTable
.
value
=
notCustomSQLTableList
.
filter
(
...
...
@@ -1473,7 +1631,6 @@
// slots: { customRender: 'action' },
},
});
const
[
registerMappingRuleConfigurationTable
,
{
getRowSelection
:
getMappingRuleConfigurationRowSelection
},
...
...
@@ -1505,7 +1662,6 @@
// slots: { customRender: 'action' },
},
});
const
[
registerConfigurationTable
,
{
...
...
@@ -1538,7 +1694,6 @@
showIndexColumn
:
true
,
bordered
:
false
,
});
const
[
registerPartitionKeyTable
,
{
reload
:
reloadPartitionKeyTable
,
getDataSource
:
getPartitionKeyDataSource
},
...
...
@@ -1571,7 +1726,6 @@
dataIndex
:
'action'
,
},
});
const
[
registerPartitionRangeTable
,
{
reload
:
reloadPartitionRangeTable
,
getDataSource
:
getPartitionRangeDataSource
},
...
...
@@ -1604,7 +1758,6 @@
dataIndex
:
'action'
,
},
});
const
[
registerOtherConfigurationTable
,
{
reload
:
reloadOtherConfigurationTable
,
getDataSource
:
getOtherConfigurationDataSource
},
...
...
@@ -1637,7 +1790,6 @@
dataIndex
:
'action'
,
},
});
const
[
registerTabularPresentationTable
,
{
reload
:
reloadTabularPresentationTable
,
getDataSource
:
getTabularPresentationDataSource
},
...
...
@@ -1677,7 +1829,6 @@
dataIndex
:
'action'
,
},
});
const
[
registerCompareTable
,
{
reload
:
reloadCompareTable
,
getDataSource
:
getCompareDataSource
},
...
...
@@ -1718,11 +1869,15 @@
pagination
:
false
,
bordered
:
false
,
});
onBeforeMount
(()
=>
{
key
.
value
=
'3'
;
});
onMounted
(()
=>
{
setFieldsValue
({
sourceDataTableName
:
'user_info,customer_details,order_history,product_inventory'
,
});
key
.
value
=
'1'
;
isEdit
.
value
=
route
.
query
.
isEdit
;
});
...
...
@@ -1741,7 +1896,6 @@
},
});
};
function
handleDelete
()
{
Modal
.
confirm
({
title
:
'确认删除'
,
...
...
@@ -1765,7 +1919,6 @@
// },
// });
}
function
handleSelect
(
keys
)
{
isParsingSQL
.
value
=
false
;
console
.
log
(
'keys'
,
getFieldsValue
());
...
...
@@ -1776,16 +1929,16 @@
notCustomSQLTableReload
();
// emit('select', keys[0]);
}
function
goBack
()
{
router
.
back
();
}
function
handleUpload
()
{
isGetMeta
.
value
=
'true'
;
}
function
handleChange
(
list
:
string
[])
{
console
.
log
(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,
list
);
createMessage
.
success
(
`文件上传成功`
);
}
function
handleDebug
()
{
isEdit
.
value
=
'debug'
;
key
.
value
=
'4'
;
...
...
@@ -1833,11 +1986,9 @@
];
reloadTabularPresentationTable
();
}
function
handleExitDebug
()
{
isEdit
.
value
=
'true'
;
}
async
function
handleSave
()
{
try
{
const
isValid
=
await
validateSourceSideConfigurationForm
();
...
...
@@ -1853,7 +2004,6 @@
createMessage
.
error
(
'表单校验未通过,请检查输入'
);
}
}
function
handlePublish
()
{
openSaveModal
(
true
,
{
title
:
'发布新版本'
,
...
...
@@ -1874,15 +2024,12 @@
myCheckedKeys
,
});
}
function
handleViewLogs
()
{
openViewLogsModal
(
true
);
}
function
handleGetMetadata
()
{
openGetMetadataModal
(
true
);
}
function
handleAddRule
()
{
openAddRuleModal
();
}
...
...
@@ -2162,6 +2309,13 @@
});
}
function
handleDownloadTemplateFile
()
{
console
.
log
(
'导出----'
);
const
params
=
Object
.
assign
({},
{});
const
data
=
exportRoleList
(
params
);
downloadByData
(
data
,
'导入模板'
+
'.xlsx'
);
}
function
handleDeletePartitionKey
(
record
)
{
createMessage
.
success
(
'删除成功!'
);
deletePartitionKeyIds
.
value
.
push
(
record
.
businessId
);
...
...
src/views/mallResourceDevelopment/dataSet/commonDataSet/index.vue
View file @
e7732d2a
...
...
@@ -39,7 +39,7 @@
allow-clear
v-model:value=
"inputValue"
placeholder=
"请输入关键字"
style=
"width: 200px"
style=
"width: 200px
; margin-left: 24px
"
@
search=
"onSearch"
/>
<Select
...
...
@@ -74,7 +74,7 @@
<
template
v-for=
"item in cardListData"
:key=
"item.title"
>
<Col
:span=
"6"
>
<ListItem>
<Card
:hoverable=
"true"
style=
"height:
25
0px; width: 300px; position: relative"
>
<Card
:hoverable=
"true"
style=
"height:
30
0px; width: 300px; position: relative"
>
<div
style=
"display: flex; justify-content: space-between"
>
<div
style=
"display: flex; align-items: center; gap: 5px"
>
<Checkbox
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment