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
1d713c64
Commit
1d713c64
authored
Dec 06, 2024
by
罗林杰
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改我创建的文件
parent
934ed037
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
1286 additions
and
52 deletions
+1286
-52
index.ts
src/router/routes/index.ts
+10
-0
index.vue
.../mallResourceDevelopment/dataSet/dataSetByApply/index.vue
+2
-2
datasetByCreateDetail.vue
...lopment/dataSet/datasetByCreate/datasetByCreateDetail.vue
+1
-2
index.vue
src/views/mallResourceDevelopment/file/fileByApply/index.vue
+2
-2
GroupTree.vue
...s/mallResourceDevelopment/file/fileByCreate/GroupTree.vue
+1
-1
addFileModal.vue
...allResourceDevelopment/file/fileByCreate/addFileModal.vue
+2
-2
data.ts
src/views/mallResourceDevelopment/file/fileByCreate/data.ts
+257
-0
dataFileData.ts
...mallResourceDevelopment/file/fileByCreate/dataFileData.ts
+460
-0
editFileModal.vue
...llResourceDevelopment/file/fileByCreate/editFileModal.vue
+1
-1
fileByCreateDetail.vue
...ourceDevelopment/file/fileByCreate/fileByCreateDetail.vue
+303
-0
index.vue
...views/mallResourceDevelopment/file/fileByCreate/index.vue
+98
-41
newFolder.vue
...s/mallResourceDevelopment/file/fileByCreate/newFolder.vue
+1
-1
versionPublishModal.vue
...urceDevelopment/file/fileByCreate/versionPublishModal.vue
+148
-0
No files found.
src/router/routes/index.ts
View file @
1d713c64
...
@@ -269,6 +269,16 @@ export const MallSourceFileRoute: AppRouteRecordRaw = {
...
@@ -269,6 +269,16 @@ export const MallSourceFileRoute: AppRouteRecordRaw = {
icon
:
''
,
icon
:
''
,
},
},
},
},
{
path
:
'fileByCreate/fileByCreateDetail'
,
name
:
'fileByCreateDetail'
,
component
:
()
=>
import
(
'@/views/mallResourceDevelopment/file/fileByCreate/fileByCreateDetail.vue'
),
meta
:
{
title
:
'我创建的文件详情'
,
icon
:
''
,
},
},
],
],
};
};
...
...
src/views/mallResourceDevelopment/dataSet/dataSetByApply/index.vue
View file @
1d713c64
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
<template
#
headerContent
>
<template
#
headerContent
>
<div
class=
"modal_top"
>
<div
class=
"modal_top"
>
<div>
<div>
<Icon
icon=
"hugeicons:file-euro"
:size=
"
5
0"
:color=
"'#64c6e9'"
/>
<Icon
icon=
"hugeicons:file-euro"
:size=
"
4
0"
:color=
"'#64c6e9'"
/>
</div>
</div>
<div>
<div>
<div
class=
"title"
>
我申请的
</div>
<div
class=
"title"
>
我申请的
</div>
...
@@ -172,7 +172,7 @@
...
@@ -172,7 +172,7 @@
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
.title
{
.title
{
font-size
:
25
px
;
font-size
:
18
px
;
font-weight
:
500
;
font-weight
:
500
;
margin-left
:
10px
;
margin-left
:
10px
;
margin-top
:
20px
;
margin-top
:
20px
;
...
...
src/views/mallResourceDevelopment/dataSet/datasetByCreate/datasetByCreateDetail.vue
View file @
1d713c64
...
@@ -182,8 +182,7 @@
...
@@ -182,8 +182,7 @@
const
ATabs
=
Tabs
;
const
ATabs
=
Tabs
;
const
ATabPane
=
Tabs
.
TabPane
;
const
ATabPane
=
Tabs
.
TabPane
;
const
currentKey
=
ref
(
'1'
);
const
currentKey
=
ref
(
'1'
);
const
{
setTitle
}
=
useTabs
();
setTitle
(
'数据集详情'
);
const
[
registerVersionPublishModal
,
{
openModal
:
openVersionPublishModal
}]
=
useModal
();
const
[
registerVersionPublishModal
,
{
openModal
:
openVersionPublishModal
}]
=
useModal
();
const
[
registerTable
]
=
useTable
({
const
[
registerTable
]
=
useTable
({
...
...
src/views/mallResourceDevelopment/file/fileByApply/index.vue
View file @
1d713c64
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
<template
#
headerContent
>
<template
#
headerContent
>
<div
class=
"modal_top"
>
<div
class=
"modal_top"
>
<div>
<div>
<Icon
icon=
"hugeicons:file-euro"
:size=
"
5
0"
:color=
"'#64c6e9'"
/>
<Icon
icon=
"hugeicons:file-euro"
:size=
"
4
0"
:color=
"'#64c6e9'"
/>
</div>
</div>
<div>
<div>
<div
class=
"title"
>
我申请的
</div>
<div
class=
"title"
>
我申请的
</div>
...
@@ -172,7 +172,7 @@
...
@@ -172,7 +172,7 @@
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
.title
{
.title
{
font-size
:
25
px
;
font-size
:
18
px
;
font-weight
:
500
;
font-weight
:
500
;
margin-left
:
10px
;
margin-left
:
10px
;
margin-top
:
20px
;
margin-top
:
20px
;
...
...
src/views/mallResourceDevelopment/file/fileByCreate/GroupTree.vue
View file @
1d713c64
<
template
>
<
template
>
<div
class=
"
m-5 mr-0
overflow-hidden bg-white"
>
<div
class=
"overflow-hidden bg-white"
>
<BasicTree
<BasicTree
title=
""
title=
""
ref=
"treeRef"
ref=
"treeRef"
...
...
src/views/mallResourceDevelopment/file/fileByCreate/addFileModal.vue
View file @
1d713c64
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
import
{
BasicModal
,
useModal
,
useModalInner
}
from
'@/components/Modal'
;
import
{
BasicModal
,
useModal
,
useModalInner
}
from
'@/components/Modal'
;
import
{
BasicForm
,
useForm
}
from
'@/components/Form'
;
import
{
BasicForm
,
useForm
}
from
'@/components/Form'
;
import
{
addFileFormSchema
}
from
'./data'
;
import
{
addFileFormSchema
}
from
'./data'
;
import
{
TreeData
}
from
'./dataFileData'
;
import
{
newFile
TreeData
}
from
'./dataFileData'
;
import
EditFileModal
from
'./editFileModal.vue'
;
import
EditFileModal
from
'./editFileModal.vue'
;
defineOptions
({
name
:
'AccountModal'
});
defineOptions
({
name
:
'AccountModal'
});
...
@@ -49,7 +49,7 @@
...
@@ -49,7 +49,7 @@
});
});
}
}
title
.
value
=
data
.
title
;
title
.
value
=
data
.
title
;
const
treeList
=
handleTree
(
TreeData
,
'businessId'
,
undefined
,
undefined
,
undefined
);
const
treeList
=
handleTree
(
newFile
TreeData
,
'businessId'
,
undefined
,
undefined
,
undefined
);
updateSchema
([
updateSchema
([
{
{
field
:
'path'
,
field
:
'path'
,
...
...
src/views/mallResourceDevelopment/file/fileByCreate/data.ts
View file @
1d713c64
import
{
BasicColumn
,
FormSchema
}
from
'@/components/Table'
;
import
{
BasicColumn
,
FormSchema
}
from
'@/components/Table'
;
import
{
DescItem
}
from
'@/components/Description'
;
import
{
h
,
VNodeChild
}
from
'vue'
;
export
const
columns
:
BasicColumn
[]
=
[
export
const
columns
:
BasicColumn
[]
=
[
{
{
...
@@ -327,3 +329,258 @@ export const editFileOptionsFormSchema: any = [
...
@@ -327,3 +329,258 @@ export const editFileOptionsFormSchema: any = [
colProps
:
{
lg
:
24
,
md
:
24
},
colProps
:
{
lg
:
24
,
md
:
24
},
},
},
];
];
export
const
basicSchema
:
DescItem
[]
=
[
{
field
:
'name'
,
label
:
'资源名称'
,
},
{
field
:
'description'
,
label
:
'描述'
,
},
{
field
:
'tags'
,
label
:
'业务标签'
,
},
{
field
:
'owner'
,
label
:
'权属机构'
,
},
{
field
:
'sensitiveStatus'
,
label
:
'敏感状态'
,
},
{
field
:
'version'
,
label
:
'版本'
,
},
{
field
:
'source'
,
label
:
'来源'
,
},
];
export
const
sourceTableSchema
:
DescItem
[]
=
[
{
field
:
'name'
,
label
:
'表名'
,
},
{
field
:
'path'
,
label
:
'路径'
,
},
{
field
:
'size'
,
label
:
'大小'
,
},
{
field
:
'filterCondition'
,
label
:
'数据过滤条件'
,
},
];
export
const
optionSchema
:
DescItem
[]
=
[
{
field
:
'autoOffShelfDate'
,
label
:
'自动下架日期'
,
},
{
field
:
'shareType'
,
label
:
'共享方式'
,
},
{
field
:
'visibleRange'
,
label
:
'可见范围'
,
},
{
field
:
'filterCondition'
,
label
:
'数据过滤条件'
,
},
];
export
const
permissionSchema
:
DescItem
[]
=
[
{
field
:
'download'
,
label
:
'下载权限'
,
},
{
field
:
'encryption'
,
label
:
'文件加密'
,
},
{
field
:
'push'
,
label
:
'推送权限'
,
},
{
field
:
'api'
,
label
:
'API调用'
,
},
{
field
:
'filterType'
,
label
:
'数据过滤方式'
,
},
];
export
const
informationColumns
:
BasicColumn
[]
=
[
{
title
:
'字段'
,
dataIndex
:
'field'
,
width
:
120
,
},
{
title
:
'中文名'
,
dataIndex
:
'name'
,
width
:
150
,
},
{
title
:
'字段描述'
,
dataIndex
:
'remark'
,
width
:
150
,
},
{
title
:
'字段类型'
,
dataIndex
:
'type'
,
width
:
120
,
},
{
title
:
'安全分级'
,
dataIndex
:
'security'
,
width
:
120
,
},
{
title
:
'敏感状态'
,
dataIndex
:
'status'
,
width
:
150
,
},
{
title
:
'敏感类型'
,
dataIndex
:
'sensitiveType'
,
width
:
100
,
},
{
title
:
'数据标准'
,
dataIndex
:
'standard'
,
width
:
100
,
},
];
function
renderHeader
(
column
:
BasicColumn
,
isSensitive
:
boolean
):
VNodeChild
{
const
style
=
isSensitive
?
{
color
:
'orange'
}
:
{};
return
h
(
'span'
,
{
style
},
column
.
title
);
}
export
const
sampleDataColumns
:
BasicColumn
[]
=
[
{
title
:
'name(敏感)'
,
dataIndex
:
'name'
,
customHeaderRender
:
(
column
)
=>
renderHeader
(
column
,
true
),
width
:
120
,
},
{
title
:
'phone_number_string(敏感)'
,
dataIndex
:
'phone_number_string'
,
customHeaderRender
:
(
column
)
=>
renderHeader
(
column
,
true
),
width
:
150
,
},
{
title
:
'student_id(敏感)'
,
dataIndex
:
'student_id'
,
customHeaderRender
:
(
column
)
=>
renderHeader
(
column
,
true
),
width
:
150
,
},
{
title
:
'major(敏感)'
,
dataIndex
:
'major'
,
customHeaderRender
:
(
column
)
=>
renderHeader
(
column
,
true
),
width
:
120
,
},
{
title
:
'origin_city'
,
dataIndex
:
'origin_city'
,
width
:
120
,
},
{
title
:
'ethnic(敏感)'
,
dataIndex
:
'ethnic'
,
customHeaderRender
:
(
column
)
=>
renderHeader
(
column
,
true
),
width
:
150
,
},
{
title
:
'building_num'
,
dataIndex
:
'building_num'
,
width
:
100
,
},
];
export
const
globalDataColumns
:
BasicColumn
[]
=
[
{
title
:
'公共资源名称'
,
dataIndex
:
'name'
,
width
:
100
,
},
{
title
:
'上架状态'
,
dataIndex
:
'status'
,
width
:
100
,
},
];
export
const
uploadFieldColumns
:
BasicColumn
[]
=
[
{
title
:
'列名'
,
dataIndex
:
'name'
,
width
:
100
,
},
{
title
:
'中文名'
,
dataIndex
:
'chineseName'
,
width
:
100
,
},
{
title
:
'数据类型'
,
dataIndex
:
'type'
,
width
:
100
,
},
];
export
const
versionPublishSchema
:
FormSchema
[]
=
[
{
field
:
'title'
,
label
:
'申请标题'
,
component
:
'Input'
,
defaultValue
:
'申请发布V10.0版本:数据集1'
,
required
:
true
,
},
{
field
:
'reason'
,
label
:
'申请理由'
,
component
:
'Input'
,
},
{
field
:
'remark'
,
label
:
'版本说明'
,
component
:
'Input'
,
required
:
true
,
},
{
field
:
'scope'
,
label
:
'生效范围'
,
component
:
'Select'
,
defaultValue
:
'1'
,
componentProps
:
{
options
:
[
{
label
:
'存量任务和新增任务'
,
value
:
'1'
,
},
{
label
:
'全部'
,
value
:
'2'
,
},
],
},
required
:
true
,
},
];
export
const
searchEditFormSchema
:
FormSchema
[]
=
[
{
field
:
'name'
,
label
:
' '
,
component
:
'Input'
,
colProps
:
{
span
:
4
},
componentProps
:
{
placeholder
:
'搜索名称'
,
},
},
];
src/views/mallResourceDevelopment/file/fileByCreate/dataFileData.ts
View file @
1d713c64
...
@@ -137,3 +137,463 @@ export const TreeData: any[] = [
...
@@ -137,3 +137,463 @@ export const TreeData: any[] = [
createBy
:
'admin'
,
createBy
:
'admin'
,
},
},
];
];
export
const
newFileTreeData
:
any
[]
=
[
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
100
,
parentWorkSpaceName
:
'公共数据集'
,
workSpaceName
:
'公共数据集'
,
parentId
:
0
,
'code:'
:
'001'
,
ancestors
:
'0'
,
orderNum
:
0
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
101
,
parentWorkSpaceName
:
'公共数据集'
,
workSpaceName
:
'党建建设'
,
parentId
:
100
,
'code:'
:
'002'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
201
,
parentWorkSpaceName
:
'党建建设'
,
workSpaceName
:
'基本信息'
,
parentId
:
101
,
'code:'
:
'003'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
202
,
parentWorkSpaceName
:
'党建建设'
,
workSpaceName
:
'党员发展计划'
,
parentId
:
101
,
'code:'
:
'003'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
203
,
parentWorkSpaceName
:
'党建建设'
,
workSpaceName
:
'主题教育活动'
,
parentId
:
101
,
'code:'
:
'003'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
204
,
parentWorkSpaceName
:
'党建建设'
,
workSpaceName
:
'党建工作总结'
,
parentId
:
101
,
'code:'
:
'003'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
205
,
parentWorkSpaceName
:
'党建建设'
,
workSpaceName
:
'党史知识竞赛'
,
parentId
:
101
,
'code:'
:
'003'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
206
,
parentWorkSpaceName
:
'党建建设'
,
workSpaceName
:
'红色文化展览'
,
parentId
:
101
,
'code:'
:
'003'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
207
,
parentWorkSpaceName
:
'党建建设'
,
workSpaceName
:
'志愿服务活动'
,
parentId
:
101
,
'code:'
:
'003'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
208
,
parentWorkSpaceName
:
'党建建设'
,
workSpaceName
:
'党员风采展示'
,
parentId
:
101
,
'code:'
:
'003'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
102
,
parentWorkSpaceName
:
'公共数据集'
,
workSpaceName
:
'交通信息'
,
parentId
:
100
,
'code:'
:
'004'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
209
,
parentWorkSpaceName
:
'交通信息'
,
workSpaceName
:
'城市公交优化方案'
,
parentId
:
102
,
'code:'
:
'003'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
210
,
parentWorkSpaceName
:
'交通信息'
,
workSpaceName
:
'智能交通系统部署'
,
parentId
:
102
,
'code:'
:
'003'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
{
delFlag
:
'0'
,
flag
:
'1'
,
businessId
:
211
,
parentWorkSpaceName
:
'交通信息'
,
workSpaceName
:
'绿色出行倡议'
,
parentId
:
102
,
'code:'
:
'003'
,
ancestors
:
'0,100'
,
orderNum
:
1
,
children
:
[],
selectType
:
null
,
createTime
:
'2024-10-24 10:04:04'
,
createBy
:
'admin'
,
},
];
export
const
basicData
=
{
name
:
'wyx_contact'
,
description
:
'联系人信息'
,
tags
:
'测试'
,
owner
:
'数据平台治理部'
,
sensitiveStatus
:
'敏感'
,
version
:
'V1.0'
,
source
:
'元数据'
,
};
export
const
sourceTableData
=
{
name
:
'contact'
,
path
:
'商城工作区/18inceptor/wyx/contact'
,
size
:
'40.84KB'
,
filterCondition
:
'-'
,
};
export
const
optionData
=
{
autoOffShelfDate
:
'2024-12-31 23:59:59'
,
shareType
:
'公开'
,
visibleRange
:
'所有人'
,
filterCondition
:
'price > 100 AND stock > 0'
,
};
export
const
permissionData
=
{
download
:
'是'
,
encryption
:
'否'
,
push
:
'否'
,
api
:
'是'
,
filterType
:
'按时间过滤'
,
};
export
const
informationTableList
:
any
[]
=
[
{
field
:
'name'
,
name
:
'姓名'
,
remark
:
'姓名'
,
type
:
'string'
,
status
:
'敏感'
,
security
:
'G2'
,
sensitiveType
:
'姓名(简体中...'
,
standard
:
'-'
,
},
{
field
:
'phone_number'
,
name
:
'手机号'
,
remark
:
'手机号'
,
type
:
'string'
,
status
:
'敏感'
,
security
:
'G3'
,
sensitiveType
:
'手机号(中国...'
,
standard
:
'-'
,
},
{
field
:
'student_id'
,
name
:
'学号'
,
remark
:
'学号'
,
type
:
'string'
,
status
:
'敏感'
,
security
:
'G3'
,
sensitiveType
:
'账户编号'
,
standard
:
'-'
,
},
{
field
:
'major'
,
name
:
'专业'
,
remark
:
'专业'
,
type
:
'string'
,
status
:
'敏感'
,
security
:
'G10'
,
sensitiveType
:
'专业'
,
standard
:
'-'
,
},
{
field
:
'origin_city'
,
name
:
'生源地'
,
remark
:
'生源地'
,
type
:
'string'
,
status
:
'不敏感'
,
security
:
'未分级'
,
sensitiveType
:
'-'
,
standard
:
'-'
,
},
{
field
:
'ethnic'
,
name
:
'民族'
,
remark
:
'民族'
,
type
:
'string'
,
status
:
'敏感'
,
security
:
'G2'
,
sensitiveType
:
'民族'
,
standard
:
'-'
,
},
{
field
:
'building_num'
,
name
:
'楼号'
,
remark
:
'楼号'
,
type
:
'int'
,
status
:
'不敏感'
,
security
:
'未分级'
,
sensitiveType
:
'-'
,
standard
:
'-'
,
},
{
field
:
'room_num'
,
name
:
'寝室号'
,
remark
:
'寝室号'
,
type
:
'int'
,
status
:
'不敏感'
,
security
:
'安全分级_03'
,
sensitiveType
:
'敏感类型_01'
,
standard
:
'-'
,
},
];
export
const
sampleDataTableList
:
any
[]
=
[
{
name
:
'******'
,
phone_number_string
:
'******'
,
student_id
:
'******'
,
major
:
'******'
,
origin_city
:
'北京市'
,
ethnic
:
'******'
,
building_num
:
'18'
,
},
{
name
:
'******'
,
phone_number_string
:
'******'
,
student_id
:
'******'
,
major
:
'******'
,
origin_city
:
'上海市'
,
ethnic
:
'******'
,
building_num
:
'18'
,
},
{
name
:
'******'
,
phone_number_string
:
'******'
,
student_id
:
'******'
,
major
:
'******'
,
origin_city
:
'广州市'
,
ethnic
:
'******'
,
building_num
:
'18'
,
},
{
name
:
'******'
,
phone_number_string
:
'******'
,
student_id
:
'******'
,
major
:
'******'
,
origin_city
:
'深圳市'
,
ethnic
:
'******'
,
building_num
:
'18'
,
},
{
name
:
'******'
,
phone_number_string
:
'******'
,
student_id
:
'******'
,
major
:
'******'
,
origin_city
:
'杭州市'
,
ethnic
:
'******'
,
building_num
:
'18'
,
},
{
name
:
'******'
,
phone_number_string
:
'******'
,
student_id
:
'******'
,
major
:
'******'
,
origin_city
:
'武汉市'
,
ethnic
:
'******'
,
building_num
:
'18'
,
},
];
export
const
globalDataTableList
:
any
[]
=
[
{
name
:
'test1'
,
status
:
'1'
,
id
:
'1'
,
},
{
name
:
'test2'
,
status
:
'1'
,
id
:
'2'
,
},
{
name
:
'test3'
,
status
:
'1'
,
id
:
'3'
,
},
{
name
:
'test4'
,
status
:
'1'
,
id
:
'4'
,
},
];
export
const
uploadFieldTableList
:
any
[]
=
[
{
name
:
'id'
,
chineseName
:
'标识'
,
type
:
'INT'
,
},
{
name
:
'username'
,
chineseName
:
'用户名'
,
type
:
'VARCHAR'
,
},
{
name
:
'password'
,
chineseName
:
'密码'
,
type
:
'VARCHAR'
,
},
{
name
:
'email'
,
chineseName
:
'电子邮件'
,
type
:
'VARCHAR'
,
},
{
name
:
'age'
,
chineseName
:
'年龄'
,
type
:
'INT'
,
},
{
name
:
'birthday'
,
chineseName
:
'生日'
,
type
:
'DATE'
,
},
{
name
:
'created_at'
,
chineseName
:
'创建时间'
,
type
:
'DATETIME'
,
},
{
name
:
'updated_at'
,
chineseName
:
'更新时间'
,
type
:
'DATETIME'
,
},
];
export
const
basicNewData
=
{
name
:
'wyx_contact'
,
description
:
'联系人信息'
,
tags
:
'测试'
,
owner
:
'数据平台治理部'
,
sensitiveStatus
:
'敏感'
,
version
:
'V10.0'
,
source
:
'元数据'
,
};
export
const
basicOldData
=
{
name
:
'wyx_contact'
,
description
:
'联系人信息'
,
tags
:
'测试'
,
owner
:
'数据平台治理部'
,
sensitiveStatus
:
'敏感'
,
version
:
'V9.0'
,
source
:
'元数据'
,
};
src/views/mallResourceDevelopment/file/fileByCreate/editFileModal.vue
View file @
1d713c64
<
template
>
<
template
>
<BasicModal
<BasicModal
width=
"
55
%"
width=
"
60
%"
v-bind=
"$attrs"
v-bind=
"$attrs"
@
register=
"registerModal"
@
register=
"registerModal"
:title=
"title"
:title=
"title"
...
...
src/views/mallResourceDevelopment/file/fileByCreate/fileByCreateDetail.vue
0 → 100644
View file @
1d713c64
<
template
>
<PageWrapper
class=
"content-padding"
contentBackground
@
back=
"goBack"
>
<template
#
headerContent
>
<div
class=
"modal_top"
>
<Icon
icon=
"ep:arrow-left-bold"
:size=
"20"
style=
"margin-right: 5px"
:color=
"'#a3a7b1'"
@
click=
"goBack"
/>
<div>
<Icon
icon=
"material-symbols-light:dataset-linked-outline-sharp"
:size=
"40"
:color=
"'#64c6e9'"
/>
</div>
<div>
<div
class=
"title"
>
test
</div>
<div
class=
"path"
>
我创建的/test
</div>
</div>
<div
class=
"buttonGroup"
>
<a-button
type=
"primary"
@
click=
"handleVersionPublish"
>
版本发布
</a-button>
<a-button
type=
"primary"
@
click=
"handleVersionManagement"
>
版本管理
</a-button>
<a-button
type=
"primary"
@
click=
"handleDelete"
>
删除
</a-button>
<a-button
type=
"primary"
@
click=
"handleUp"
>
上架
</a-button>
<a-button
type=
"primary"
@
click=
"handleVersionManagement"
>
编辑
</a-button>
</div>
</div>
</
template
>
<
template
#
footer
>
<a-tabs
v-model:activeKey=
"currentKey"
>
<a-tab-pane
key=
"1"
tab=
"资源信息"
/>
<a-tab-pane
key=
"2"
tab=
"列信息"
/>
<a-tab-pane
key=
"3"
tab=
"采样数据"
/>
<a-tab-pane
key=
"4"
tab=
"对应公共资源"
/>
</a-tabs>
</
template
>
<div
class=
"pt-4 m-4 desc-wrap"
>
<
template
v-if=
"currentKey == '1'"
>
<Description
size=
"middle"
title=
"基本信息"
:bordered=
"false"
:column=
"2"
:data=
"basicData"
:schema=
"basicSchema"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
/>
<Description
size=
"middle"
title=
"源表信息"
:bordered=
"false"
:column=
"2"
:data=
"sourceTableData"
:schema=
"sourceTableSchema"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
/>
<Description
size=
"middle"
title=
"默认上架配置"
:bordered=
"false"
:column=
"2"
:data=
"optionData"
:schema=
"optionSchema"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
/>
<Description
size=
"middle"
title=
"开放权限"
:bordered=
"false"
:column=
"2"
:data=
"permissionData"
:schema=
"permissionSchema"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
/>
</
template
>
<
template
v-if=
"currentKey == '2'"
>
<BasicTable
@
register=
"registerTable"
/>
</
template
>
<
template
v-if=
"currentKey == '3'"
>
<BasicTable
@
register=
"registerSampleDataTable"
/>
</
template
>
<
template
v-if=
"currentKey == '4'"
>
<div
class=
"flex"
>
<div
style=
"width: 30%; border: rgba(26, 26, 26, 0.15) 1px solid"
>
<BasicTable
@
register=
"registerGlobalDataTable"
>
<template
#
bodyCell=
"
{ column, record }">
<template
v-if=
"column.key === 'status'"
>
<template
v-if=
"record.status === '1'"
>
<Icon
icon=
"grommet-icons:status-good"
color=
"green"
/><span>
已上架
</span>
</
template
>
<
template
v-if=
"record.status === '0'"
>
<Icon
icon=
"carbon:error-outline"
color=
"red"
/><span>
未上架
</span>
</
template
>
</template>
</template>
</BasicTable>
</div>
<div
style=
"width: 70%; border: rgba(26, 26, 26, 0.15) 1px solid"
>
<div>
<Icon
icon=
"material-symbols-light:dataset-linked-outline-sharp"
:size=
"40"
style=
"margin-left: 10px"
:color=
"'#64c6e9'"
/>
<a-button
type=
"primary"
style=
"margin-left: 900px"
@
click=
"handleDown"
>
下架
</a-button
>
<a-button
type=
"primary"
style=
"margin-left: 10px"
@
click=
"handleUp"
>
重新上架
</a-button
>
</div>
<div>
<div
class=
"title"
style=
"margin-left: 15px; padding-bottom: 20px"
>
test1
</div>
</div>
<div>
<Description
size=
"middle"
:bordered=
"false"
:column=
"2"
:data=
"optionData"
:schema=
"optionSchema"
:labelStyle=
"{ fontSize: '16px' }"
:contentStyle=
"{ fontSize: '16px' }"
/>
</div>
<div>
<BasicTable
@
register=
"registerUploadFieldTable"
/>
</div>
</div>
</div>
</template>
</div>
<VersionPublishModal
@
register=
"registerVersionPublishModal"
/>
</PageWrapper>
</template>
<
script
lang=
"ts"
setup
>
import
{
onMounted
,
ref
}
from
'vue'
;
import
{
PageWrapper
}
from
'@/components/Page'
;
import
{
useTabs
}
from
'@/hooks/web/useTabs'
;
import
{
Tabs
}
from
'ant-design-vue'
;
import
{
useMessage
}
from
'@/hooks/web/useMessage'
;
import
{
router
}
from
'@/router'
;
import
Icon
from
'@/components/Icon/Icon.vue'
;
import
{
Description
}
from
'@/components/Description'
;
import
{
basicSchema
,
sourceTableSchema
,
optionSchema
,
permissionSchema
,
searchEditFormSchema
,
informationColumns
,
sampleDataColumns
,
globalDataColumns
,
uploadFieldColumns
,
}
from
'./data'
;
import
{
basicData
,
sourceTableData
,
optionData
,
permissionData
,
informationTableList
,
sampleDataTableList
,
globalDataTableList
,
uploadFieldTableList
,
}
from
'./dataFileData'
;
import
{
BasicTable
,
useTable
}
from
'@/components/Table'
;
import
{
useModal
}
from
'@/components/Modal'
;
import
VersionPublishModal
from
'./versionPublishModal.vue'
;
defineOptions
({
name
:
'AccountDetail'
});
const
{
createMessage
,
createConfirm
}
=
useMessage
();
const
ATabs
=
Tabs
;
const
ATabPane
=
Tabs
.
TabPane
;
const
currentKey
=
ref
(
'1'
);
const
[
registerVersionPublishModal
,
{
openModal
:
openVersionPublishModal
}]
=
useModal
();
const
[
registerTable
]
=
useTable
({
api
:
async
()
=>
{
const
response
=
{
pageNu
:
'1'
,
pageSize
:
'10'
,
pages
:
'1'
,
total
:
informationTableList
.
length
,
code
:
''
,
message
:
''
,
data
:
informationTableList
,
};
return
{
...
response
};
},
columns
:
informationColumns
,
formConfig
:
{
labelWidth
:
10
,
schemas
:
searchEditFormSchema
,
autoSubmitOnEnter
:
true
,
showActionButtonGroup
:
false
,
},
useSearchForm
:
true
,
showTableSetting
:
false
,
showIndexColumn
:
false
,
bordered
:
true
,
handleSearchInfoFn
(
info
)
{
return
info
;
},
});
const
[
registerSampleDataTable
]
=
useTable
({
dataSource
:
sampleDataTableList
,
columns
:
sampleDataColumns
,
formConfig
:
{
labelWidth
:
10
,
schemas
:
searchEditFormSchema
,
autoSubmitOnEnter
:
true
,
showActionButtonGroup
:
false
,
},
useSearchForm
:
true
,
bordered
:
false
,
});
const
[
registerGlobalDataTable
]
=
useTable
({
dataSource
:
globalDataTableList
,
columns
:
globalDataColumns
,
rowSelection
:
true
,
rowKey
:
'id'
,
showIndexColumn
:
false
,
bordered
:
false
,
});
const
[
registerUploadFieldTable
]
=
useTable
({
title
:
'上架字段'
,
dataSource
:
uploadFieldTableList
,
columns
:
uploadFieldColumns
,
showIndexColumn
:
false
,
scroll
:
{
y
:
400
,
},
bordered
:
false
,
});
function
handleDown
()
{
createMessage
.
success
(
'下架成功'
);
}
function
handleUp
()
{
createMessage
.
success
(
'上架成功'
);
}
function
handleVersionPublish
()
{
openVersionPublishModal
(
true
,
{
title
:
'申请发布V10.0版本:数据集1'
,
});
}
function
handleDelete
()
{
createConfirm
({
iconType
:
'warning'
,
title
:
'确认删除'
,
content
:
'确认删除吗?'
,
onOk
()
{
router
.
back
();
createMessage
.
success
(
'删除成功!'
);
},
});
}
function
goBack
()
{
router
.
back
();
}
onMounted
(()
=>
{});
</
script
>
<
style
lang=
"scss"
scoped
>
.content-padding
{
background-color
:
white
;
}
.modal_top
{
padding
:
0
0
20px
0
;
display
:
flex
;
align-items
:
center
;
.title
{
font-size
:
16px
;
font-weight
:
500
;
}
.path
{
font-size
:
14px
;
color
:
gray
;
}
.buttonGroup
{
margin-left
:
auto
;
display
:
flex
;
gap
:
5px
;
align-items
:
center
;
}
}
.selected-row
{
background-color
:
#5cb3ff
;
/* 可以根据需要调整颜色 */
}
</
style
>
src/views/mallResourceDevelopment/file/fileByCreate/index.vue
View file @
1d713c64
<
template
>
<
template
>
<PageWrapper
dense
contentFullHeight
fixedHeight
contentClass=
"flex"
>
<PageWrapper
dense
contentFullHeight
fixedHeight
contentClass=
"flex"
>
<GroupTree
class=
"w-1/4 xl:w-1/5"
@
select=
"handleSelect"
/>
<GroupTree
class=
"w-1/4 xl:w-1/5"
@
select=
"handleSelect"
/>
<BasicTable
@
register=
"registerTable"
class=
"w-3/4 xl:w-4/5"
>
<div
class=
"w-3/4 xl:w-4/5"
>
<template
#
toolbar
>
<div
style=
"display: flex; align-items: center; background-color: white; padding-top: 20px"
>
<a-button
type=
"primary"
@
click=
"deleteButton"
>
删除
</a-button>
<Icon
style=
"margin-left: 30px"
icon=
"ion:folder-outline"
:size=
"50"
:color=
"'#6499e9'"
/>
<a-button
type=
"primary"
@
click=
"handleMove(1)"
>
移动
</a-button>
<div
style=
"margin-left: 10px"
>
<a-button
type=
"primary"
@
click=
"batchUploading"
>
批量上架
</a-button>
<span
class=
"title"
>
test
</span>
<a-button
type=
"primary"
@
click=
"handleNewFolder"
>
新建文件夹
</a-button>
<div>
<a-button
type=
"primary"
@
click=
"handleDataEntry"
>
新建文件
</a-button>
<span
class=
"path"
>
我创建的
</span>
</
template
>
</div>
<
template
#
bodyCell=
"{ column, record }"
>
</div>
<template
v-if=
"column.key === 'status'"
>
<a-button
style=
"margin-left: 550px"
type=
"primary"
@
click=
"deleteButton"
>
删除
</a-button>
<template
v-if=
"record.uploadStatus === '0'"
>
<a-button
style=
"margin-left: 10px"
type=
"primary"
@
click=
"handleMove(1)"
>
移动
</a-button>
<Icon
icon=
"grommet-icons:status-good"
color=
"green"
/><span>
已发布
</span>
<a-button
style=
"margin-left: 10px"
type=
"primary"
@
click=
"batchUploading"
>
批量上架
</a-button
>
<a-button
style=
"margin-left: 10px"
type=
"primary"
@
click=
"handleNewFolder"
>
新建文件夹
</a-button
>
<a-button
style=
"margin-left: 10px"
type=
"primary"
@
click=
"handleCataloging"
>
新建编目
</a-button
>
<a-button
style=
"margin-left: 10px"
type=
"primary"
@
click=
"handleDataEntry"
>
新建文件
</a-button
>
<a-button
style=
"margin-left: 10px"
type=
"primary"
@
click=
"handleDataEntry"
>
批量新建
</a-button
>
</div>
<BasicTable
style=
"background-color: white"
@
register=
"registerTable"
>
<template
#
bodyCell=
"
{ column, record }">
<template
v-if=
"column.key === 'status'"
>
<template
v-if=
"record.uploadStatus === '0'"
>
<Icon
icon=
"grommet-icons:status-good"
color=
"green"
/><span>
已发布
</span>
</
template
>
<
template
v-if=
"record.uploadStatus === '1'"
>
<Icon
icon=
"carbon:error-outline"
color=
"red"
/><span>
未发布
</span>
</
template
>
</template>
</template>
<
template
v-if=
"record.uploadStatus === '1'"
>
<
template
v-if=
"column.key === 'uploadStatus'"
>
<Icon
icon=
"carbon:error-outline"
color=
"red"
/><span>
未发布
</span>
<template
v-if=
"record.uploadStatus === '0'"
>
<Icon
icon=
"grommet-icons:status-good"
color=
"green"
/><span>
已上架
</span>
</
template
>
<
template
v-if=
"record.uploadStatus === '1'"
>
<Icon
icon=
"carbon:error-outline"
color=
"red"
/><span>
未上架
</span>
</
template
>
</template>
</template>
</template>
<
template
v-if=
"column.key === 'name'"
>
<
template
v-if=
"column.key === 'uploadStatus'"
>
<div
@
click=
"handleDetail"
style=
"color: #6499e9"
>
<template
v-if=
"record.uploadStatus === '0'"
>
<Icon
icon=
"carbon:folder"
/>
<Icon
icon=
"grommet-icons:status-good"
color=
"green"
/><span>
已上架
</span>
<span>
{{
record
.
name
}}
</span>
</div>
</
template
>
</
template
>
<
template
v-if=
"record.uploadStatus === '1'"
>
<
template
v-if=
"column.key === 'action'"
>
<Icon
icon=
"carbon:error-outline"
color=
"red"
/><span>
未上架
</span>
<TableAction
:actions=
"[
{
label: '上架',
popConfirm: {
title: '是否确认删除',
placement: 'left',
confirm: handleUpload.bind(null),
},
},
{
label: '编辑',
onClick: handEdit.bind(null),
},
{
label: '删除',
popConfirm: {
title: '是否确认删除',
placement: 'left',
confirm: handDelete.bind(null),
},
},
]"
/>
</
template
>
</
template
>
</template>
</template>
<
template
v-if=
"column.key === 'action'"
>
</BasicTable>
<TableAction
</div>
:actions=
"[
{
label: '上架',
onClick: handleUpload.bind(null, 0, record),
},
{
label: '删除',
onClick: handDelete.bind(null),
},
]"
/>
</
template
>
</template>
</BasicTable>
<MoveFile
@
register=
"registerMoveFile"
/>
<MoveFile
@
register=
"registerMoveFile"
/>
<NewFolder
@
register=
"registerNewFolder"
/>
<NewFolder
@
register=
"registerNewFolder"
/>
<AddFileModal
@
register=
"registerAddFileModal"
/>
<AddFileModal
@
register=
"registerAddFileModal"
/>
<EditFileModal
@
register=
"registerEditFile"
/>
</PageWrapper>
</PageWrapper>
</template>
</template>
<
script
lang=
"ts"
setup
>
<
script
lang=
"ts"
setup
>
...
@@ -60,11 +100,15 @@
...
@@ -60,11 +100,15 @@
import
GroupTree
from
'./GroupTree.vue'
;
import
GroupTree
from
'./GroupTree.vue'
;
import
Icon
from
'@/components/Icon/Icon.vue'
;
import
Icon
from
'@/components/Icon/Icon.vue'
;
import
AddFileModal
from
'./addFileModal.vue'
;
import
AddFileModal
from
'./addFileModal.vue'
;
import
EditFileModal
from
'./editFileModal.vue'
;
import
{
router
}
from
'@/router'
;
const
{
createMessage
,
createConfirm
}
=
useMessage
();
const
{
createMessage
,
createConfirm
}
=
useMessage
();
const
[
registerMoveFile
,
{
openModal
:
openMoveFileModal
}]
=
useModal
();
const
[
registerMoveFile
,
{
openModal
:
openMoveFileModal
}]
=
useModal
();
const
[
registerNewFolder
,
{
openModal
:
openNewFolderModal
}]
=
useModal
();
const
[
registerNewFolder
,
{
openModal
:
openNewFolderModal
}]
=
useModal
();
const
[
registerAddFileModal
,
{
openModal
:
openAddFileModal
}]
=
useModal
();
const
[
registerAddFileModal
,
{
openModal
:
openAddFileModal
}]
=
useModal
();
const
[
registerEditFile
,
{
openModal
:
openEditFileModal
}]
=
useModal
();
const
[
registerTable
,
{
reload
,
getRowSelection
}]
=
useTable
({
const
[
registerTable
,
{
reload
,
getRowSelection
}]
=
useTable
({
api
:
async
()
=>
{
api
:
async
()
=>
{
const
response
=
{
const
response
=
{
...
@@ -94,7 +138,7 @@
...
@@ -94,7 +138,7 @@
return
info
;
return
info
;
},
},
actionColumn
:
{
actionColumn
:
{
width
:
1
0
0
,
width
:
1
2
0
,
title
:
'操作'
,
title
:
'操作'
,
dataIndex
:
'action'
,
dataIndex
:
'action'
,
},
},
...
@@ -111,12 +155,14 @@
...
@@ -111,12 +155,14 @@
isUpdate
:
false
,
isUpdate
:
false
,
});
});
}
}
function
handleCataloging
()
{
openNewFolderModal
(
true
,
{
isUpdate
:
true
,
});
}
/** 移动按钮*/
/** 移动按钮*/
function
handleMove
(
isMove
,
record
:
Recordable
)
{
function
handleMove
(
isMove
)
{
// console.log('record',record)
openMoveFileModal
(
true
,
{
openMoveFileModal
(
true
,
{
record
,
isMove
:
isMove
,
isMove
:
isMove
,
});
});
}
}
...
@@ -152,6 +198,17 @@
...
@@ -152,6 +198,17 @@
});
});
}
}
function
handEdit
()
{
openEditFileModal
(
true
,
{
title
:
'编辑文件'
,
});
}
function
handleDetail
()
{
router
.
push
({
path
:
'/file/fileByCreate/fileByCreateDetail'
,
});
}
/** 部门树的select*/
/** 部门树的select*/
function
handleSelect
()
{
function
handleSelect
()
{
reload
();
reload
();
...
...
src/views/mallResourceDevelopment/file/fileByCreate/newFolder.vue
View file @
1d713c64
...
@@ -85,7 +85,7 @@
...
@@ -85,7 +85,7 @@
return
treeData
!==
''
?
treeData
:
data
;
return
treeData
!==
''
?
treeData
:
data
;
}
}
const
getTitle
=
computed
(()
=>
(
!
unref
(
isUpdate
)
?
'新建
主体'
:
'编辑主体
'
));
const
getTitle
=
computed
(()
=>
(
!
unref
(
isUpdate
)
?
'新建
文件夹'
:
'新建编目
'
));
async
function
handleSubmit
()
{
async
function
handleSubmit
()
{
try
{
try
{
...
...
src/views/mallResourceDevelopment/file/fileByCreate/versionPublishModal.vue
0 → 100644
View file @
1d713c64
<
template
>
<BasicModal
width=
"55%"
v-bind=
"$attrs"
@
register=
"registerModal"
:title=
"title"
@
ok=
"handleSubmit"
>
<div>
<BasicForm
@
register=
"registerForm"
/>
<Description
size=
"middle"
title=
"版本对比"
:bordered=
"false"
/>
</div>
<div
class=
"flex"
>
<div
style=
"width: 50%; border: rgba(26, 26, 26, 0.12) 1px solid"
>
<div
style=
"padding-left: 20px; font-size: 16px; font-weight: 500"
>
V9.0(当前)
</div>
<Description
size=
"middle"
title=
"基本信息"
:bordered=
"false"
:column=
"1"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
:data="basicOldData"
:schema="basicSchema"
/>
<Description
size=
"middle"
title=
"源表信息"
:bordered=
"false"
:column=
"1"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
:data="sourceTableData"
:schema="sourceTableSchema"
/>
<Description
size=
"middle"
title=
"默认上架配置"
:bordered=
"false"
:column=
"1"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
:data="optionData"
:schema="optionSchema"
/>
<Description
size=
"middle"
title=
"开放权限"
:bordered=
"false"
:column=
"1"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
:data="permissionData"
:schema="permissionSchema"
/>
</div>
<div
style=
"width: 50%; border: rgba(26, 26, 26, 0.12) 1px solid"
>
<div
style=
"padding-left: 20px; font-size: 16px; font-weight: 500"
>
发布版本
</div>
<Description
size=
"middle"
title=
"基本信息"
:bordered=
"false"
:column=
"1"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
:data="basicNewData"
:schema="basicSchema"
/>
<Description
size=
"middle"
title=
"源表信息"
:bordered=
"false"
:column=
"1"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
:data="sourceTableData"
:schema="sourceTableSchema"
/>
<Description
size=
"middle"
title=
"默认上架配置"
:bordered=
"false"
:column=
"1"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
:data="optionData"
:schema="optionSchema"
/>
<Description
size=
"middle"
title=
"开放权限"
:bordered=
"false"
:column=
"1"
:labelStyle=
"
{ fontSize: '16px' }"
:contentStyle="{ fontSize: '16px' }"
:data="permissionData"
:schema="permissionSchema"
/>
</div>
</div>
</BasicModal>
</
template
>
<
script
lang=
"ts"
setup
>
import
{
ref
}
from
'vue'
;
import
{
BasicModal
,
useModalInner
}
from
'@/components/Modal'
;
import
{
useMessage
}
from
'@/hooks/web/useMessage'
;
import
{
BasicForm
,
useForm
}
from
'@/components/Form'
;
import
{
basicSchema
,
optionSchema
,
permissionSchema
,
sourceTableSchema
,
versionPublishSchema
,
}
from
'@/views/mallResourceDevelopment/dataSet/datasetByCreate/data'
;
import
Description
from
'@/components/Description/src/Description.vue'
;
import
{
basicNewData
,
basicOldData
,
optionData
,
permissionData
,
sourceTableData
,
}
from
'@/views/mallResourceDevelopment/dataSet/datasetByCreate/dataFileData'
;
defineOptions
({
name
:
'KnowledgeModal'
});
const
{
createMessage
}
=
useMessage
();
const
title
=
ref
();
const
[
registerForm
,
{
resetFields
}]
=
useForm
({
labelWidth
:
100
,
baseColProps
:
{
lg
:
12
,
md
:
12
},
schemas
:
versionPublishSchema
,
showActionButtonGroup
:
false
,
actionColOptions
:
{
span
:
23
,
},
});
//初始化弹框
const
[
registerModal
,
{
setModalProps
,
closeModal
}]
=
useModalInner
(
async
(
data
)
=>
{
await
resetFields
();
setModalProps
({
confirmLoading
:
false
});
title
.
value
=
data
.
title
;
});
async
function
handleSubmit
()
{
closeModal
();
createMessage
.
success
(
'提交成功'
);
}
</
script
>
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