Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
csbr-daop
/
fe-data-trusted-space
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
7236a053
authored
2025-11-28 12:56:33 +0800
by
lihua
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
数据产品添加所属科室
1 parent
81f58659
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
91 additions
and
44 deletions
src/views/data_asset/registerCatalogCreate.vue
src/views/data_asset/registerCatalogDetail.vue
src/views/data_asset/registerCatalogCreate.vue
View file @
7236a05
...
...
@@ -63,6 +63,9 @@ const institutionTypeDictList: any = ref([]);
/** 更新频率字典列表 */
const
updateFrequencyDictList
:
any
=
ref
([]);
/** 所属科室下拉列表 */
const
medDepartmentCodeList
:
any
=
ref
([]);
const
getArea
=
(
node
,
resolve
)
=>
{
const
{
level
}
=
node
let
params
=
{
...
...
@@ -178,25 +181,6 @@ const baseInfoFormItems = ref([
disabled
:
route
.
query
.
dataSources
==
'1'
?
false
:
true
,
},
{
label
:
'所属主题'
,
type
:
'tree-select'
,
placeholder
:
'请选择'
,
field
:
'subjectDomain'
,
options
:
subjectDomainListData
.
value
,
showAllLevels
:
false
,
checkStrictly
:
false
,
//只能选择叶子节点。
lazy
:
false
,
props
:
{
value
:
'value'
,
label
:
'label'
,
children
:
'childDictList'
},
filterable
:
true
,
clearable
:
true
,
default
:
''
,
required
:
true
},
{
label
:
'行业分类'
,
type
:
'select'
,
placeholder
:
'请选择'
,
...
...
@@ -257,6 +241,46 @@ const baseInfoFormItems = ref([
visible
:
true
},
{
label
:
'所属科室'
,
type
:
'tree-select'
,
placeholder
:
'请选择'
,
field
:
'medDepartmentCode'
,
default
:
''
,
options
:
medDepartmentCodeList
.
value
||
[],
showAllLevels
:
false
,
checkStrictly
:
false
,
//只能选择叶子节点。
lazy
:
false
,
props
:
{
value
:
'value'
,
label
:
'label'
,
children
:
'childDictList'
},
filterable
:
true
,
clearable
:
true
,
visible
:
true
,
required
:
true
},
{
label
:
'所属主题'
,
type
:
'tree-select'
,
placeholder
:
'请选择'
,
field
:
'subjectDomain'
,
options
:
subjectDomainListData
.
value
,
showAllLevels
:
false
,
checkStrictly
:
false
,
//只能选择叶子节点。
lazy
:
false
,
props
:
{
value
:
'value'
,
label
:
'label'
,
children
:
'childDictList'
},
filterable
:
true
,
clearable
:
true
,
default
:
''
,
visible
:
false
,
required
:
true
},
{
label
:
"更新频率"
,
type
:
"select"
,
placeholder
:
"请选择"
,
...
...
@@ -469,6 +493,7 @@ const baseInfoFormRules = ref({
institutionType
:
[
required
(
'请选择机构分类'
)],
domain
:
[
required
(
'请选择领域'
)],
scenario
:
[
required
(
'请选择应用场景'
)],
medDepartmentCode
:
[
required
(
'请选择所属科室'
)],
updateFrequency
:
[
required
(
'请选择更新频率'
)]
});
...
...
@@ -632,6 +657,10 @@ const setFormItems = (val) => {
}
if
(
item
.
field
==
'scenario'
)
{
item
.
options
=
domainDictList
.
value
.
find
(
s
=>
s
.
value
==
val
[
'domain'
])?.
childDictList
||
[]
}
else
if
(
item
.
field
==
'medDepartmentCode'
)
{
item
.
visible
=
val
[
'domain'
]
==
'003'
}
else
if
(
item
.
field
==
'subjectDomain'
)
{
item
.
visible
=
val
[
'domain'
]
==
'004'
;
}
});
}
...
...
@@ -674,7 +703,7 @@ const productTableInfo = ref({
{
label
:
"序号"
,
type
:
"index"
,
width
:
TableColumnWidth
.
INDEX
,
align
:
"center"
},
{
label
:
"服务名称"
,
field
:
"apiGuid"
,
width
:
180
,
required
:
true
,
columClass
:
'edit-colum'
,
type
:
'edit'
},
{
label
:
"API类型"
,
field
:
"apiType"
,
width
:
100
,
getName
:
(
scope
)
=>
{
return
scope
.
row
.
apiType
&&
apiTypes
.
find
(
a
=>
a
.
value
==
scope
.
row
.
apiType
)?.
label
;
return
scope
.
row
.
apiType
&&
apiTypes
.
find
(
a
=>
a
.
value
==
scope
.
row
.
apiType
)?.
label
||
'--'
;
}
},
{
label
:
"API地址"
,
field
:
"requestUrl"
,
minWidth
:
240
},
{
label
:
"描述"
,
field
:
"apiDescription"
,
width
:
300
},
...
...
@@ -759,6 +788,17 @@ const addAssetTable = () => {
importTableFieldVisible
.
value
=
true
;
}
onActivated
(()
=>
{
getValidApi
().
then
((
res
:
any
)
=>
{
if
(
res
.
code
==
proxy
.
$passCode
)
{
apiList
.
value
=
res
.
data
||
[];
productTableInfo
.
value
.
editInfo
.
apiGuid
.
options
=
apiList
.
value
;
}
else
{
proxy
.
$ElMessage
.
error
(
res
.
msg
);
}
})
})
onBeforeMount
(()
=>
{
getParentAreaPromise
.
value
=
getAreaData
({
parentId
:
null
}).
then
((
res
:
any
)
=>
{
if
(
res
?.
code
==
proxy
.
$passCode
)
{
...
...
@@ -776,14 +816,15 @@ onBeforeMount(() => {
baseInfoFormItems
.
value
.
forEach
((
item
:
any
)
=>
{
item
.
default
=
detailInfo
.
value
[
item
.
field
]
==
null
?
''
:
detailInfo
.
value
[
item
.
field
];
if
(
item
.
field
==
'subjectDomain'
)
{
let
tree
=
detailInfo
.
value
.
subjectDomainTree
?.[
0
];
if
(
tree
)
{
if
(
!
tree
.
children
[
0
]?.
children
?.[
0
]?.
children
)
{
item
.
expandKeys
=
tree
.
children
[
0
]?.
children
?.[
0
].
parentGuids
;
}
else
if
(
!
tree
.
children
[
0
]?.
children
?.[
0
]?.
children
?.[
0
]?.
children
)
{
item
.
expandKeys
=
tree
.
children
[
0
]?.
children
?.[
0
]?.
children
?.[
0
]?.
parentGuids
;
}
}
item
.
visible
=
detailInfo
.
value
[
'domain'
]
==
'004'
;
// let tree = detailInfo.value.subjectDomainTree?.[0];
// if (tree) {
// if (!tree.children[0]?.children?.[0]?.children) {
// item.expandKeys = tree.children[0]?.children?.[0].parentGuids;
// } else if (!tree.children[0]?.children?.[0]?.children?.[0]?.children) {
// item.expandKeys = tree.children[0]?.children?.[0]?.children?.[0]?.parentGuids;
// }
// }
}
else
if
(
item
.
field
==
'coverageArea'
)
{
if
(
detailInfo
.
value
.
coverageArea
&&
Array
.
isArray
(
detailInfo
.
value
.
coverageArea
)
&&
detailInfo
.
value
.
coverageArea
.
length
>
0
)
{
...
...
@@ -820,6 +861,8 @@ onBeforeMount(() => {
item
.
default
=
route
.
query
.
dataSources
==
'1'
?
detailInfo
.
value
.
rightMain
:
detailInfo
.
value
.
rightMainName
;
}
else
if
(
item
.
field
==
'scenario'
)
{
item
.
options
=
domainDictList
.
value
.
find
(
s
=>
s
.
value
==
detailInfo
.
value
[
'domain'
])?.
childDictList
||
[]
}
else
if
(
item
.
field
==
'medDepartmentCode'
)
{
item
.
visible
=
detailInfo
.
value
[
'domain'
]
==
'003'
}
});
if
(
route
.
query
.
guid
&&
route
.
query
.
foundMode
==
'2'
)
{
...
...
@@ -886,7 +929,20 @@ onBeforeMount(() => {
if
(
res
.
code
==
proxy
.
$passCode
)
{
subjectDomainListData
.
value
=
res
.
data
||
[];
let
item
=
baseInfoFormItems
.
value
.
find
(
item
=>
item
.
field
==
'subjectDomain'
);
item
&&
(
item
.
options
=
subjectDomainListData
.
value
);
// item && (item.options = subjectDomainListData.value);
item
&&
(
item
.
options
=
subjectDomainListData
.
value
?.
find
(
d
=>
d
.
value
==
'1'
)?.
childDictList
||
[]);
}
else
{
proxy
.
$ElMessage
.
error
(
res
.
msg
);
}
})
getDamTypesList
({
dictType
:
"科室"
,
}).
then
((
res
:
any
)
=>
{
if
(
res
.
code
==
proxy
.
$passCode
)
{
medDepartmentCodeList
.
value
=
res
.
data
||
[];
let
item
=
baseInfoFormItems
.
value
.
find
(
item
=>
item
.
field
==
'medDepartmentCode'
);
item
&&
(
item
.
options
=
medDepartmentCodeList
.
value
);
}
else
{
proxy
.
$ElMessage
.
error
(
res
.
msg
);
}
...
...
@@ -940,15 +996,6 @@ onBeforeMount(() => {
proxy
.
$ElMessage
.
error
(
res
.
msg
);
}
})
getValidApi
().
then
((
res
:
any
)
=>
{
if
(
res
.
code
==
proxy
.
$passCode
)
{
apiList
.
value
=
res
.
data
||
[];
productTableInfo
.
value
.
editInfo
.
apiGuid
.
options
=
apiList
.
value
;
}
else
{
proxy
.
$ElMessage
.
error
(
res
.
msg
);
}
})
});
const
cancel
=
()
=>
{
...
...
src/views/data_asset/registerCatalogDetail.vue
View file @
7236a05
...
...
@@ -1218,27 +1218,27 @@ const respParamsTableInfo = ref({
<div
@
click=
"handleClick"
:class=
"
{ 'foundMode': detailInfo.foundMode == '2', 'title1': true }">
<ellipsis-tooltip
:content=
"detailInfo.damName ?? '--'"
class-name=
"w100f"
:refName=
"'tooltipOver' + 'damName'"
></ellipsis-tooltip></div>
<div
class=
"dataLabel"
>
{{
detailInfo
.
damTypeName
}}
</div>
<div
class=
"dataLabel"
v-show=
"detailInfo.subjectDomain"
>
{{
detailInfo
.
subjectDomainName
||
detailInfo
.
subjectDomain
}}
</div>
<div
class=
"dataLabel"
v-show=
"detailInfo.domainName"
>
{{
detailInfo
.
domainName
}}
</div>
<div
class=
"dataLabel dataLabel1"
v-if=
"detailInfo.databaseType"
>
{{
detailInfo
.
databaseType
}}
</div>
<div
class=
"dataLabel dataLabel1"
>
{{
detailInfo
.
dataSourcesName
}}
</div>
<div
class=
"dataLabel dataLabel1"
v-if=
"detailInfo.updateFrequency"
>
{{
detailInfo
.
updateFrequencyName
}}
</div>
</div>
</div>
<
template
v-if=
"detailInfo?.foundMode == 1"
>
<
!--
<template
v-if=
"detailInfo?.foundMode == 1"
>
--
>
<div
class=
"row-extra-desc"
>
<div
class=
"per-extra-desc"
>
{{
'行业分类:'
+
(
detailInfo
.
industryName
||
'--'
)
}}
</div>
<div>
{{
'机构分类:'
+
(
detailInfo
.
institutionTypeName
||
'--'
)
}}
</div>
</div>
<div
class=
"row-extra-desc"
>
<div
class=
"per-extra-desc"
>
{{
'领域:'
+
(
detailInfo
.
domainName
||
'--'
)
}}
</div>
<div>
{{
'应用场景:'
+
(
detailInfo
.
scenarioName
||
'--'
)
}}
</div>
<div
class=
"per-extra-desc"
>
{{
'应用场景:'
+
(
detailInfo
.
scenarioName
||
'--'
)
}}
</div>
<div
v-if=
"detailInfo.medDepartmentCode"
>
{{
'所属科室:'
+
(
detailInfo
.
medDepartmentCodeName
||
'--'
)
}}
</div>
<div
v-else
>
{{
'所属主题:'
+
(
detailInfo
.
subjectDomainName
||
'--'
)
}}
</div>
</div>
<div
class=
"row-extra-desc"
>
<div
class=
"per-extra-desc"
>
{{
'是否缓存:'
+
(
detailInfo
.
isCache
==
'Y'
?
'是'
:
'否'
)
}}
</div>
<div>
{{
'是否加密存储:'
+
(
detailInfo
.
scenario
==
'Y'
?
'是'
:
'否'
)
}}
</div>
</div>
<
/
template
>
<
!--
</
template
>
--
>
<div
v-show=
"detailInfo.rightMainName"
class=
"applicationScenarios"
>
{{ '权利主体:' + detailInfo.rightMainName }}
</div>
<div
class=
"applicationScenarios"
...
...
Write
Preview
Styling with
Markdown
is supported
Attach a file
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 post a comment