Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
smart_gov_platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
smart_gov_platform
Commits
984989c0
Commit
984989c0
authored
Jul 18, 2023
by
赵啸非
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
c592cbd0
83f9aa39
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
5686 additions
and
5928 deletions
+5686
-5928
base-manager-ui/admin/src/pages/basicset/workman/personnel.vue
...manager-ui/admin/src/pages/basicset/workman/personnel.vue
+7
-3
portal-manager-ui/admin/package.json
portal-manager-ui/admin/package.json
+0
-1
portal-manager-ui/admin/src/assets/css/common.less
portal-manager-ui/admin/src/assets/css/common.less
+1
-0
portal-manager-ui/admin/src/views/dataActuary/portrayal/portrayalAnalysis/index.vue
...c/views/dataActuary/portrayal/portrayalAnalysis/index.vue
+2
-2
portal-manager-ui/admin/src/views/thePlatformIsSet/components/applService.vue
...min/src/views/thePlatformIsSet/components/applService.vue
+1
-0
portal-manager-ui/admin/src/views/thePlatformIsSet/components/menuManagement/menuMgmt.vue
...s/thePlatformIsSet/components/menuManagement/menuMgmt.vue
+9
-5
portal-manager-ui/admin/src/views/thePlatformIsSet/components/productManage/components/InterfaceManage/alerting.vue
...nts/productManage/components/InterfaceManage/alerting.vue
+4
-3
portal-manager-ui/admin/src/views/thePlatformIsSet/components/productManage/components/InterfaceManage/components/Details.vue
...tManage/components/InterfaceManage/components/Details.vue
+589
-465
portal-manager-ui/admin/src/views/thePlatformIsSet/components/productManage/components/appManage/application.vue
...onents/productManage/components/appManage/application.vue
+10
-15
portal-manager-ui/admin/src/views/thePlatformIsSet/components/productManage/components/docData/fileData.vue
.../components/productManage/components/docData/fileData.vue
+8
-6
portal-manager-ui/admin/vue.config.js
portal-manager-ui/admin/vue.config.js
+1
-19
portal-manager-ui/admin/yarn.lock
portal-manager-ui/admin/yarn.lock
+5054
-5409
No files found.
base-manager-ui/admin/src/pages/basicset/workman/personnel.vue
View file @
984989c0
...
...
@@ -238,8 +238,8 @@
<span
v-else
>
--
</span>
</
template
>
<!-- 所属窗口 -->
<
template
slot=
"window
Name
"
slot-scope=
"text"
>
{{
text
.
window
Name
?
text
.
windowName
:
"
--
"
}}
<
template
slot=
"window
Id
"
slot-scope=
"text"
>
{{
text
.
window
Id
?
filterWindow
(
text
.
windowId
)
:
"
--
"
}}
</
template
>
<!-- 创建时间 -->
<
template
slot=
"time"
slot-scope=
"text"
>
...
...
@@ -357,7 +357,7 @@ const columns = [
{
title
:
"
所属窗口
"
,
scopedSlots
:
{
customRender
:
"
window
Name
"
,
customRender
:
"
window
Id
"
,
},
},
{
...
...
@@ -637,6 +637,10 @@ export default {
});
return
name
;
},
// 过滤窗口
filterWindow
(
id
)
{
return
this
.
windowData
.
find
((
v
)
=>
v
.
id
==
id
).
fromnum
;
},
},
};
</
script
>
...
...
portal-manager-ui/admin/package.json
View file @
984989c0
...
...
@@ -38,7 +38,6 @@
"@vue/cli-service"
:
"~5.0.0"
,
"browserslist"
:
"^4.21.4"
,
"caniuse-lite"
:
"^1.0.30001442"
,
"filemanager-webpack-plugin"
:
"^8.0.0"
,
"less"
:
"^4.0.0"
,
"less-loader"
:
"^8.0.0"
,
"postcss"
:
"^8.4.12"
,
...
...
portal-manager-ui/admin/src/assets/css/common.less
View file @
984989c0
...
...
@@ -553,4 +553,5 @@
.addclass {
background: linear-gradient(90deg, #5ab6ff 0%, #2e9aff 100%) !important;
color: #fff !important;
border:none !important
}
portal-manager-ui/admin/src/views/dataActuary/portrayal/portrayalAnalysis/index.vue
View file @
984989c0
...
...
@@ -17,7 +17,7 @@
<a-form-item
label=
"联系电话:"
>
{{ formState.phone || '--' }}
</a-form-item>
<a-form-item
label=
"身份证号:"
>
{{ formState.idcard_IDCardNo || '--' }}
</a-form-item>
<a-form-item
label=
"注册时间:"
>
{{ formState.update_time || '--' }}
</a-form-item>
<a-form-item
label=
"注册来源:"
>
{{ regType[formState.register_type] || '
--
' }}
</a-form-item>
<a-form-item
label=
"注册来源:"
>
{{ regType[formState.register_type] || '
现场注册
' }}
</a-form-item>
<a-form-item
label=
"户籍地址:"
>
{{ formState.idcard_Address || '--' }}
</a-form-item>
</a-form>
</div>
...
...
@@ -57,7 +57,7 @@
{{ formState.idcard_Name }}
<a-tag
color=
"green"
class=
"info_tag"
>
实名认证
</a-tag>
</div>
<a-row>
<a-col
:span=
"8"
>
年龄:{{ formState.
idcard_Name }}
</a-col>
<a-col
:span=
"8"
>
年龄:{{ formState.
age }}岁
</a-col>
<a-col
:span=
"8"
>
性别:{{ formState.idcard_Sex || '--' }}
</a-col>
<a-col
:span=
"8"
>
民族:{{ formState.idcard_Nation }}
</a-col>
</a-row>
...
...
portal-manager-ui/admin/src/views/thePlatformIsSet/components/applService.vue
View file @
984989c0
...
...
@@ -45,6 +45,7 @@
<div
class=
"list flex aic jcb"
v-for=
"(i, j) in listArr[active].curInfo"
:key=
"j"
>
<div
class=
"app-name"
>
{{
i
.
appName
}}
</div>
<img
...
...
portal-manager-ui/admin/src/views/thePlatformIsSet/components/menuManagement/menuMgmt.vue
View file @
984989c0
<
template
>
<div
class=
"menuMgmt"
>
<div
class=
"header_box"
>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"showEditModal(1)"
>
新增
</a-button>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"showEditModal(1)"
>
新增
</a-button
>
<span>
<a-input
v-model=
"searchForm.name"
placeholder=
"请输入菜单名称搜索"
>
<a-icon
slot=
"prefix"
type=
"search"
/>
...
...
@@ -13,7 +15,9 @@
</a-select-option>
</a-select>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"searchData"
>
搜索
</a-button>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"searchData"
>
搜索
</a-button
>
<a-button
@
click=
"resetSearch"
>
重置
</a-button>
</span>
</div>
...
...
@@ -89,7 +93,7 @@ export default {
api
:
process
.
env
.
VUE_APP_API_IMG_URL
,
EditModalVisible
:
false
,
searchForm
:
{
name
:
undefined
,
name
:
""
,
parentId
:
""
,
},
tableLoading
:
false
,
...
...
@@ -218,8 +222,8 @@ export default {
// 搜索
async
searchData
()
{
if
(
this
.
searchForm
.
parentId
||
this
.
searchForm
.
name
)
{
let
obj
=
{
...
this
.
searchForm
}
obj
.
name
=
'
%
'
+
this
.
searchForm
.
name
+
'
%
'
let
obj
=
{
...
this
.
searchForm
};
obj
.
name
=
"
%
"
+
this
.
searchForm
.
name
+
"
%
"
;
let
res
=
await
menuList
({
page
:
this
.
tablePagination
.
current
,
size
:
-
1
,
...
...
portal-manager-ui/admin/src/views/thePlatformIsSet/components/productManage/components/InterfaceManage/alerting.vue
View file @
984989c0
...
...
@@ -51,7 +51,7 @@
:columns="tableHeaders"
:dataSource="tableSourceData"
>
<template
slot=
"network"
slot-scope=
"text
, record, index
"
>
<template
slot=
"network"
slot-scope=
"text"
>
<span
v-for=
"(item, idx) of dict.network"
v-show=
"text.indexOf(idx) != -1"
...
...
@@ -61,7 +61,7 @@
</span>
</
template
>
<
template
slot=
"operation"
slot-scope=
"text, record
, index
"
>
<
template
slot=
"operation"
slot-scope=
"text, record"
>
<a-button
type=
"link"
@
click=
"openDetails(record)"
>
编辑
</a-button>
<a-popconfirm
title=
"确定要删除此应用吗?"
...
...
@@ -163,7 +163,7 @@ export default {
},
],
query
:
{
interfaceName
:
undefined
,
interfaceName
:
""
,
interfaceSource
:
""
,
interfaceTag
:
""
,
productId
:
this
.
$route
.
query
.
id
,
...
...
@@ -188,6 +188,7 @@ export default {
page
:
this
.
tablePagination
.
current
,
size
:
this
.
tablePagination
.
pageSize
,
...
this
.
query
,
interfaceName
:
`%
${
this
.
query
.
interfaceName
}
%`
,
}).
then
((
res
)
=>
{
if
(
res
.
code
==
1
)
{
let
{
data
,
total
,
dict
}
=
res
.
data
;
...
...
portal-manager-ui/admin/src/views/thePlatformIsSet/components/productManage/components/InterfaceManage/components/Details.vue
View file @
984989c0
<
template
>
<a-drawer
:destroyOnClose=
"true"
:title=
"modalInfo.title"
:width=
"modalInfo.width"
:visible=
"modalInfo.visible"
@
close=
"resetForm"
>
<a-form-model
ref=
"ruleForm"
:model=
"detailsForm"
:rules=
"detailsRules"
:label-col=
"
{ span: 4 }"
:wrapper-col="{ span: 20 }">
<a-row
:gutter=
"16"
>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"接口名称"
prop=
"interfaceName"
>
<a-input
v-model=
"detailsForm.interfaceName"
placeholder=
"请输入"
allowClear
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"版本号"
prop=
"versionNumber"
>
<a-input
v-model=
"detailsForm.versionNumber"
placeholder=
"请输入"
allowClear
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"请求类型"
prop=
"requestType"
>
<a-select
v-model=
"detailsForm.requestType"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"1"
>
POST
</a-select-option>
<a-select-option
value=
"2"
>
GET
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"请求协议"
prop=
"requestProtocol"
>
<a-select
v-model=
"detailsForm.requestProtocol"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"1"
>
HTTP
</a-select-option>
<a-select-option
value=
"2"
>
HTTPS
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-drawer
:destroyOnClose=
"true"
:title=
"modalInfo.title"
:width=
"modalInfo.width"
:visible=
"modalInfo.visible"
@
close=
"resetForm"
>
<a-form-model
ref=
"ruleForm"
:model=
"detailsForm"
:rules=
"detailsRules"
:label-col=
"
{ span: 4 }"
:wrapper-col="{ span: 20 }"
>
<a-row
:gutter=
"16"
>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"接口名称"
prop=
"interfaceName"
>
<a-input
v-model=
"detailsForm.interfaceName"
placeholder=
"请输入"
allowClear
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"版本号"
prop=
"versionNumber"
>
<a-input
v-model=
"detailsForm.versionNumber"
placeholder=
"请输入"
allowClear
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"请求类型"
prop=
"requestType"
>
<a-select
v-model=
"detailsForm.requestType"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"1"
>
POST
</a-select-option>
<a-select-option
value=
"2"
>
GET
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"请求协议"
prop=
"requestProtocol"
>
<a-select
v-model=
"detailsForm.requestProtocol"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"1"
>
HTTP
</a-select-option>
<a-select-option
value=
"2"
>
HTTPS
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"content-type"
prop=
"contentType"
>
<a-select
v-model=
"detailsForm.contentType"
placeholder=
"请选择"
allowClear
>
<a-select-option
v-for=
"item, index in ctList"
:key=
"index"
:value=
"item"
>
{{
item
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"超时时长"
prop=
"timeoutValue"
>
<a-input
v-model=
"detailsForm.timeoutValue"
placeholder=
"请输入"
allowClear
>
<template
slot=
"suffix"
>
秒
</
template
>
</a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"限流策略"
prop=
"limitStrategy"
>
<a-select
v-model=
"detailsForm.limitStrategy"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"1"
>
分钟
</a-select-option>
<a-select-option
value=
"2"
>
小时
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"访问网络"
prop=
"network"
>
<a-checkbox-group
v-model=
"detailsForm.network"
:options=
"options"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"接口标签"
prop=
"interfaceTag"
>
<a-select
v-model=
"detailsForm.interfaceTag"
placeholder=
"请选择"
allowClear
>
<a-select-option
v-for=
"(item, index) of dict.interfaceTag"
:key=
"index"
:value=
"index"
>
{{ item }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"content-type"
prop=
"contentType"
>
<a-select
v-model=
"detailsForm.contentType"
placeholder=
"请选择"
allowClear
>
<a-select-option
v-for=
"(item, index) in ctList"
:key=
"index"
:value=
"item"
>
{{
item
}}
</a-select-option
>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"超时时长"
prop=
"timeoutValue"
>
<a-input
v-model=
"detailsForm.timeoutValue"
placeholder=
"请输入"
allowClear
>
<template
slot=
"suffix"
>
秒
</
template
>
</a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"限流策略"
prop=
"limitStrategy"
>
<a-select
v-model=
"detailsForm.limitStrategy"
placeholder=
"请选择"
allowClear
showSearch
optionFilterProp=
"label"
>
<a-select-option
value=
"1"
label=
"分钟"
>
分钟
</a-select-option>
<a-select-option
value=
"2"
label=
"小时"
>
小时
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"访问网络"
prop=
"network"
>
<a-checkbox-group
v-model=
"detailsForm.network"
:options=
"options"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"接口标签"
prop=
"interfaceTag"
>
<a-select
v-model=
"detailsForm.interfaceTag"
placeholder=
"请选择"
allowClear
>
<a-select-option
v-for=
"(item, index) of dict.interfaceTag"
:key=
"index"
:value=
"index"
>
{{ item }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"接口来源"
prop=
"interfaceSource"
>
<a-select
v-model=
"detailsForm.interfaceSource"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"1"
>
自建发布
</a-select-option>
<a-select-option
value=
"2"
>
对接转化
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"请求路径"
prop=
"requestUrl"
>
<a-input
v-model=
"detailsForm.requestUrl"
placeholder=
"请输入"
allowClear
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"描述"
prop=
"description"
>
<a-textarea
v-model=
"detailsForm.description"
placeholder=
"请输入"
:rows=
"4"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"接口来源"
prop=
"interfaceSource"
>
<a-select
v-model=
"detailsForm.interfaceSource"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"1"
>
自建发布
</a-select-option>
<a-select-option
value=
"2"
>
对接转化
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"请求路径"
prop=
"requestUrl"
>
<a-input
v-model=
"detailsForm.requestUrl"
placeholder=
"请输入"
allowClear
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"描述"
prop=
"description"
>
<a-textarea
v-model=
"detailsForm.description"
placeholder=
"请输入"
:rows=
"4"
/>
</a-form-model-item>
</a-col>
</a-row>
</a-row>
<h1
class=
"title_"
>
请求参数
</h1>
<div
class=
"flex aic jcb mb10"
>
<a-radio-group
v-model=
"requestPam.type"
button-style=
"solid"
@
change=
"onReqType('new')"
>
<a-radio-button
value=
"path"
>
路径参数
</a-radio-button>
<a-radio-button
value=
"headers"
>
headers
</a-radio-button>
<a-radio-button
value=
"query"
>
query
</a-radio-button>
<a-radio-button
value=
"body"
>
body
</a-radio-button>
</a-radio-group>
<div
class=
"flex aic"
>
<div
class=
"mr10"
>
入参是否加密
</div>
<a-radio-group
v-model=
"detailsForm.inEncrypt"
>
<a-radio
:value=
"0"
>
不加密
</a-radio>
<a-radio
:value=
"1"
>
加密
</a-radio>
</a-radio-group>
</div>
</div>
<h1
class=
"title_"
>
请求参数
</h1>
<div
class=
"flex aic jcb mb10"
>
<a-radio-group
v-model=
"requestPam.type"
button-style=
"solid"
@
change=
"onReqType('new')"
>
<a-radio-button
value=
"path"
>
路径参数
</a-radio-button>
<a-radio-button
value=
"headers"
>
headers
</a-radio-button>
<a-radio-button
value=
"query"
>
query
</a-radio-button>
<a-radio-button
value=
"body"
>
body
</a-radio-button>
</a-radio-group>
<div
class=
"flex aic"
>
<div
class=
"mr10"
>
入参是否加密
</div>
<a-radio-group
v-model=
"detailsForm.inEncrypt"
>
<a-radio
:value=
"0"
>
不加密
</a-radio>
<a-radio
:value=
"1"
>
加密
</a-radio>
</a-radio-group>
</div>
</div>
<a-table
size=
"middle"
bordered
:row-key=
"(record) => record.id"
:locale=
"{ emptyText: '无' }"
:pagination=
"false"
:columns=
"table_columns"
:dataSource=
"requestPam.table"
>
<
template
slot=
"参数名"
slot-scope=
"text, record"
>
<a-input
v-model=
"record.name"
placeholder=
"请输入"
allowClear
/>
</
template
>
<
template
slot=
"参数值类型"
slot-scope=
"text, record"
>
<a-select
v-model=
"record.type"
placeholder=
"请选择"
allowClear
:disabled=
"record.isType"
>
<a-select-option
value=
"String"
>
String
</a-select-option>
<a-select-option
value=
"Int"
>
Int
</a-select-option>
<a-select-option
value=
"Object"
>
Object
</a-select-option>
<a-select-option
value=
"[String]"
>
[String]
</a-select-option>
<a-select-option
value=
"[Int]"
>
[Int]
</a-select-option>
<a-select-option
value=
"[Object]"
>
[Object]
</a-select-option>
</a-select>
</
template
>
<
template
slot=
"默认值"
slot-scope=
"text, record"
>
<a-input
v-model=
"record.default"
placeholder=
"请输入"
allowClear
/>
</
template
>
<
template
slot=
"是否必填"
slot-scope=
"text, record"
>
<a-select
v-model=
"record.isMust"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"1"
>
是
</a-select-option>
<a-select-option
value=
"0"
>
否
</a-select-option>
</a-select>
</
template
>
<
template
slot=
"描述"
slot-scope=
"text, record"
>
<a-input
v-model=
"record.describe"
placeholder=
"请输入"
allowClear
/>
</
template
>
<a-table
size=
"middle"
bordered
:row-key=
"(record) => record.id"
:locale=
"{ emptyText: '无' }"
:pagination=
"false"
:columns=
"table_columns"
:dataSource=
"requestPam.table"
>
<
template
slot=
"参数名"
slot-scope=
"text, record, index"
>
<a-input
v-model=
"record.name"
placeholder=
"请输入"
allowClear
/>
</
template
>
<
template
slot=
"参数值类型"
slot-scope=
"text, record, index"
>
<a-select
v-model=
"record.type"
placeholder=
"请选择"
allowClear
:disabled=
"record.isType"
>
<a-select-option
value=
"String"
>
String
</a-select-option>
<a-select-option
value=
"Int"
>
Int
</a-select-option>
<a-select-option
value=
"Object"
>
Object
</a-select-option>
<a-select-option
value=
"[String]"
>
[String]
</a-select-option>
<a-select-option
value=
"[Int]"
>
[Int]
</a-select-option>
<a-select-option
value=
"[Object]"
>
[Object]
</a-select-option>
</a-select>
</
template
>
<
template
slot=
"默认值"
slot-scope=
"text, record, index"
>
<a-input
v-model=
"record.default"
placeholder=
"请输入"
allowClear
/>
</
template
>
<
template
slot=
"是否必填"
slot-scope=
"text, record, index"
>
<a-select
v-model=
"record.isMust"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"1"
>
是
</a-select-option>
<a-select-option
value=
"0"
>
否
</a-select-option>
</a-select>
</
template
>
<
template
slot=
"描述"
slot-scope=
"text, record, index"
>
<a-input
v-model=
"record.describe"
placeholder=
"请输入"
allowClear
/>
</
template
>
<
template
slot=
"operation"
slot-scope=
"text, record, index"
>
<a-button
type=
"link"
@
click=
"delTabRow('requestPam', index)"
style=
"color: #ff4420"
>
删除
</a-button
>
</
template
>
</a-table>
<div
class=
"table_footer"
v-if=
"requestPam.type != 'path'"
>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"onReqType('add')"
>
添加参数
</a-button>
</div>
<
template
slot=
"operation"
slot-scope=
"text, record, index"
>
<a-button
type=
"link"
@
click=
"delTabRow('requestPam', index)"
style=
"color: #ff4420"
>
删除
</a-button>
</
template
>
</a-table>
<div
class=
"table_footer"
v-if=
"requestPam.type != 'path'"
>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"onReqType('add')"
>
添加参数
</a-button>
</div>
<div
class=
"flex aic jcb mt20"
>
<h1
class=
"title_"
>
响应数据
</h1>
<div
class=
"flex aic"
>
<div
class=
"mr10"
>
出参是否加密
</div>
<a-radio-group
v-model=
"detailsForm.outEncrypt"
>
<a-radio
:value=
"0"
>
不加密
</a-radio>
<a-radio
:value=
"1"
>
加密
</a-radio>
</a-radio-group>
</div>
</div>
<div
class=
"flex aic jcb mt20"
>
<h1
class=
"title_"
>
响应数据
</h1>
<div
class=
"flex aic"
>
<div
class=
"mr10"
>
出参是否加密
</div>
<a-radio-group
v-model=
"detailsForm.outEncrypt"
>
<a-radio
:value=
"0"
>
不加密
</a-radio>
<a-radio
:value=
"1"
>
加密
</a-radio>
</a-radio-group>
</div>
</div>
<a-table
size=
"middle"
bordered
:row-key=
"(record) => record.id"
:locale=
"{ emptyText: '无' }"
:pagination=
"false"
:columns=
"table_columns"
:dataSource=
"responsePam.table"
>
<
template
slot=
"参数名"
slot-scope=
"text, record"
>
<a-input
v-model=
"record.name"
placeholder=
"请输入"
allowClear
/>
</
template
>
<
template
slot=
"参数值类型"
slot-scope=
"text, record"
>
<a-select
v-model=
"record.type"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"String"
>
String
</a-select-option>
<a-select-option
value=
"Int"
>
Int
</a-select-option>
<a-select-option
value=
"Object"
>
Object
</a-select-option>
<a-select-option
value=
"[String]"
>
[String]
</a-select-option>
<a-select-option
value=
"[Int]"
>
[Int]
</a-select-option>
<a-select-option
value=
"[Object]"
>
[Object]
</a-select-option>
</a-select>
</
template
>
<
template
slot=
"默认值"
slot-scope=
"text, record"
>
<a-input
v-model=
"record.default"
placeholder=
"请输入"
allowClear
/>
</
template
>
<
template
slot=
"是否必填"
slot-scope=
"text, record"
>
<a-select
v-model=
"record.isMust"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"1"
>
是
</a-select-option>
<a-select-option
value=
"0"
>
否
</a-select-option>
</a-select>
</
template
>
<
template
slot=
"描述"
slot-scope=
"text, record"
>
<a-input
v-model=
"record.describe"
placeholder=
"请输入"
allowClear
/>
</
template
>
<a-table
size=
"middle"
bordered
:row-key=
"(record) => record.id"
:locale=
"{ emptyText: '无' }"
:pagination=
"false"
:columns=
"table_columns"
:dataSource=
"responsePam.table"
>
<
template
slot=
"参数名"
slot-scope=
"text, record, index"
>
<a-input
v-model=
"record.name"
placeholder=
"请输入"
allowClear
/>
</
template
>
<
template
slot=
"参数值类型"
slot-scope=
"text, record, index"
>
<a-select
v-model=
"record.type"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"String"
>
String
</a-select-option>
<a-select-option
value=
"Int"
>
Int
</a-select-option>
<a-select-option
value=
"Object"
>
Object
</a-select-option>
<a-select-option
value=
"[String]"
>
[String]
</a-select-option>
<a-select-option
value=
"[Int]"
>
[Int]
</a-select-option>
<a-select-option
value=
"[Object]"
>
[Object]
</a-select-option>
</a-select>
</
template
>
<
template
slot=
"默认值"
slot-scope=
"text, record, index"
>
<a-input
v-model=
"record.default"
placeholder=
"请输入"
allowClear
/>
</
template
>
<
template
slot=
"是否必填"
slot-scope=
"text, record, index"
>
<a-select
v-model=
"record.isMust"
placeholder=
"请选择"
allowClear
>
<a-select-option
value=
"1"
>
是
</a-select-option>
<a-select-option
value=
"0"
>
否
</a-select-option>
</a-select>
</
template
>
<
template
slot=
"描述"
slot-scope=
"text, record, index"
>
<a-input
v-model=
"record.describe"
placeholder=
"请输入"
allowClear
/>
</
template
>
<
template
slot=
"operation"
slot-scope=
"text, record, index"
>
<a-button
type=
"link"
@
click=
"delTabRow('responsePam', index)"
style=
"color: #ff4420"
>
删除
</a-button>
</
template
>
</a-table>
<div
class=
"table_footer"
>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"addResPam"
>
添加参数
</a-button>
</div>
<div
class=
"drawer_footer"
>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"modalSubmit"
>
保存
</a-button>
<a-button
@
click=
"resetForm"
>
取消
</a-button>
</div>
</a-form-model>
</a-drawer>
<
template
slot=
"operation"
slot-scope=
"text, record, index"
>
<a-button
type=
"link"
@
click=
"delTabRow('responsePam', index)"
style=
"color: #ff4420"
>
删除
</a-button
>
</
template
>
</a-table>
<div
class=
"table_footer"
>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"addResPam"
>
添加参数
</a-button>
</div>
<div
class=
"drawer_footer"
>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"modalSubmit"
>
保存
</a-button>
<a-button
@
click=
"resetForm"
>
取消
</a-button>
</div>
</a-form-model>
</a-drawer>
</template>
<
script
>
import
modal
from
"
../mixins/modal
"
;
import
{
getInterfaceSave
,
getInterfaceInfo
}
from
'
@/api/thePlatformIsSet.js
'
import
{
getInterfaceSave
,
getInterfaceInfo
}
from
"
@/api/thePlatformIsSet.js
"
;
export
default
{
mixins
:
[
modal
],
name
:
"
PortalAdminVuePicWorks
"
,
props
:
[
"
dict
"
],
data
()
{
return
{
detailsForm
:
{
productId
:
this
.
$route
.
query
.
id
,
interfaceName
:
undefined
,
versionNumber
:
undefined
,
requestType
:
undefined
,
requestProtocol
:
undefined
,
requestUrl
:
undefined
,
timeoutValue
:
undefined
,
timeoutValue
:
undefined
,
network
:
undefined
,
description
:
undefined
,
flowControl
:
undefined
,
authorizeInfo
:
undefined
,
contentType
:
undefined
,
interfaceTag
:
undefined
,
inEncrypt
:
0
,
outEncrypt
:
0
},
detailsRules
:
{
interfaceName
:
[{
required
:
true
,
message
:
"
请输入
"
,
trigger
:
"
blur
"
}],
versionNumber
:
[{
required
:
true
,
message
:
"
请输入
"
,
trigger
:
"
blur
"
}],
requestType
:
[{
required
:
true
,
message
:
"
请选择
"
,
trigger
:
"
change
"
}],
requestProtocol
:
[{
required
:
true
,
message
:
"
请选择
"
,
trigger
:
"
change
"
}],
requestUrl
:
[{
required
:
true
,
message
:
"
请输入
"
,
trigger
:
"
blur
"
}],
timeoutValue
:
[{
required
:
true
,
message
:
"
请输入
"
,
trigger
:
"
blur
"
}],
},
options
:
[{
label
:
"
互联网
"
,
value
:
"
1
"
,
},
{
label
:
"
政务网
"
,
value
:
"
2
"
,
},
],
table_columns
:
[{
title
:
"
参数名
"
,
align
:
"
center
"
,
dataIndex
:
"
name
"
,
scopedSlots
:
{
customRender
:
"
参数名
"
,
},
},
{
title
:
"
参数值类型
"
,
align
:
"
center
"
,
dataIndex
:
"
type
"
,
scopedSlots
:
{
customRender
:
"
参数值类型
"
,
},
},
{
title
:
"
默认值
"
,
align
:
"
center
"
,
dataIndex
:
"
default
"
,
scopedSlots
:
{
customRender
:
"
默认值
"
,
},
},
{
title
:
"
是否必填
"
,
align
:
"
center
"
,
dataIndex
:
"
isMust
"
,
scopedSlots
:
{
customRender
:
"
是否必填
"
,
},
},
{
title
:
"
描述
"
,
align
:
"
center
"
,
dataIndex
:
"
describe
"
,
scopedSlots
:
{
customRender
:
"
描述
"
,
},
width
:
200
},
mixins
:
[
modal
],
name
:
"
PortalAdminVuePicWorks
"
,
props
:
[
"
dict
"
],
data
()
{
return
{
detailsForm
:
{
productId
:
this
.
$route
.
query
.
id
,
interfaceName
:
undefined
,
versionNumber
:
undefined
,
requestType
:
undefined
,
requestProtocol
:
undefined
,
requestUrl
:
undefined
,
timeoutValue
:
undefined
,
timeoutValue
:
undefined
,
network
:
undefined
,
description
:
undefined
,
flowControl
:
undefined
,
authorizeInfo
:
undefined
,
contentType
:
undefined
,
interfaceTag
:
undefined
,
inEncrypt
:
0
,
outEncrypt
:
0
,
},
detailsRules
:
{
interfaceName
:
[{
required
:
true
,
message
:
"
请输入
"
,
trigger
:
"
blur
"
}],
versionNumber
:
[{
required
:
true
,
message
:
"
请输入
"
,
trigger
:
"
blur
"
}],
requestType
:
[{
required
:
true
,
message
:
"
请选择
"
,
trigger
:
"
change
"
}],
requestProtocol
:
[
{
required
:
true
,
message
:
"
请选择
"
,
trigger
:
"
change
"
},
],
requestUrl
:
[{
required
:
true
,
message
:
"
请输入
"
,
trigger
:
"
blur
"
}],
timeoutValue
:
[{
required
:
true
,
message
:
"
请输入
"
,
trigger
:
"
blur
"
}],
},
options
:
[
{
label
:
"
互联网
"
,
value
:
"
1
"
,
},
{
label
:
"
政务网
"
,
value
:
"
2
"
,
},
],
table_columns
:
[
{
title
:
"
参数名
"
,
align
:
"
center
"
,
dataIndex
:
"
name
"
,
scopedSlots
:
{
customRender
:
"
参数名
"
,
},
},
{
title
:
"
参数值类型
"
,
align
:
"
center
"
,
dataIndex
:
"
type
"
,
scopedSlots
:
{
customRender
:
"
参数值类型
"
,
},
},
{
title
:
"
默认值
"
,
align
:
"
center
"
,
dataIndex
:
"
default
"
,
scopedSlots
:
{
customRender
:
"
默认值
"
,
},
},
{
title
:
"
是否必填
"
,
align
:
"
center
"
,
dataIndex
:
"
isMust
"
,
scopedSlots
:
{
customRender
:
"
是否必填
"
,
},
},
{
title
:
"
描述
"
,
align
:
"
center
"
,
dataIndex
:
"
describe
"
,
scopedSlots
:
{
customRender
:
"
描述
"
,
},
width
:
200
,
},
{
title
:
"
操作
"
,
align
:
"
center
"
,
width
:
"
60px
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
,
},
},
],
requestPam
:
{
type
:
'
path
'
,
table
:
[]
},
responsePam
:
{
table
:
[{
name
:
``
,
type
:
undefined
,
default
:
``
,
isMust
:
undefined
,
describe
:
``
,
}]
},
errorCode_columns
:
[{
title
:
"
Http Code
"
,
align
:
"
center
"
,
dataIndex
:
"
httpCode
"
,
scopedSlots
:
{
customRender
:
"
Http Code
"
,
}
},
{
title
:
"
Error Code
"
,
align
:
"
center
"
,
dataIndex
:
"
errorCode
"
,
scopedSlots
:
{
customRender
:
"
Error Code
"
,
},
},
{
title
:
"
错误信息
"
,
align
:
"
center
"
,
dataIndex
:
"
errorMessage
"
,
scopedSlots
:
{
customRender
:
"
错误信息
"
,
},
},
{
title
:
"
操作
"
,
align
:
"
center
"
,
width
:
"
60px
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
,
},
}
],
errorCode
:
[{
httpCode
:
``
,
errorCode
:
``
,
errorMessage
:
``
}],
changeHistory_columns
:
[{
title
:
"
变更时间
"
,
align
:
"
center
"
,
dataIndex
:
"
time
"
,
scopedSlots
:
{
customRender
:
"
变更时间
"
,
}
},
{
title
:
"
变更内容概要
"
,
align
:
"
center
"
,
dataIndex
:
"
content
"
,
scopedSlots
:
{
customRender
:
"
变更内容概要
"
,
},
}
],
changeHistory
:
[{
time
:
''
,
content
:
''
}],
ctList
:
[
"
text/html
"
,
"
text/xml
"
,
"
application/json
"
,
"
application/xml
"
,
"
application/x-www-form-urlencoded
"
,
"
multipart/form-data
"
]
};
},
{
title
:
"
操作
"
,
align
:
"
center
"
,
width
:
"
60px
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
,
},
},
],
requestPam
:
{
type
:
"
path
"
,
table
:
[],
},
responsePam
:
{
table
:
[
{
name
:
``
,
type
:
undefined
,
default
:
``
,
isMust
:
undefined
,
describe
:
``
,
},
],
},
errorCode_columns
:
[
{
title
:
"
Http Code
"
,
align
:
"
center
"
,
dataIndex
:
"
httpCode
"
,
scopedSlots
:
{
customRender
:
"
Http Code
"
,
},
},
{
title
:
"
Error Code
"
,
align
:
"
center
"
,
dataIndex
:
"
errorCode
"
,
scopedSlots
:
{
customRender
:
"
Error Code
"
,
},
},
{
title
:
"
错误信息
"
,
align
:
"
center
"
,
dataIndex
:
"
errorMessage
"
,
scopedSlots
:
{
customRender
:
"
错误信息
"
,
},
},
{
title
:
"
操作
"
,
align
:
"
center
"
,
width
:
"
60px
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
,
},
},
],
errorCode
:
[
{
httpCode
:
``
,
errorCode
:
``
,
errorMessage
:
``
,
},
],
changeHistory_columns
:
[
{
title
:
"
变更时间
"
,
align
:
"
center
"
,
dataIndex
:
"
time
"
,
scopedSlots
:
{
customRender
:
"
变更时间
"
,
},
},
{
title
:
"
变更内容概要
"
,
align
:
"
center
"
,
dataIndex
:
"
content
"
,
scopedSlots
:
{
customRender
:
"
变更内容概要
"
,
},
},
],
changeHistory
:
[
{
time
:
""
,
content
:
""
,
},
],
ctList
:
[
"
text/html
"
,
"
text/xml
"
,
"
application/json
"
,
"
application/xml
"
,
"
application/x-www-form-urlencoded
"
,
"
multipart/form-data
"
,
],
};
},
mounted
()
{
},
mounted
()
{
},
methods
:
{
getInfo
(
id
)
{
getInterfaceInfo
({
id
:
id
}).
then
(
res
=>
{
res
.
data
.
network
=
res
.
data
.
network
.
split
(
'
,
'
)
this
.
detailsForm
=
res
.
data
this
.
requestPam
=
JSON
.
parse
(
res
.
data
.
requestParameters
)
this
.
responsePam
=
JSON
.
parse
(
res
.
data
.
responseParameters
)
})
},
modalSubmit
()
{
this
.
$refs
.
ruleForm
.
validate
(
valid
=>
{
if
(
valid
)
{
let
json
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
detailsForm
))
if
(
json
.
network
.
length
)
json
.
network
=
json
.
network
.
join
(
'
,
'
)
json
.
requestParameters
=
JSON
.
stringify
(
this
.
requestPam
)
json
.
responseParameters
=
JSON
.
stringify
(
this
.
responsePam
)
getInterfaceSave
(
json
).
then
(
res
=>
{
let
{
code
,
msg
}
=
res
if
(
code
==
1
)
{
this
.
$message
.
success
(
'
保存成功
'
);
this
.
resetForm
();
this
.
modalInfo
.
visible
=
false
this
.
$parent
.
getList
()
}
else
{
this
.
$message
.
error
(
msg
);
}
})
}
else
{
return
false
;
}
});
},
//type
onReqType
(
type
)
{
let
index
=
this
.
requestPam
.
type
if
(
index
==
'
path
'
)
{
this
.
requestPam
.
table
=
[]
}
else
{
let
obj
=
{
name
:
``
,
type
:
'
String
'
,
default
:
``
,
isMust
:
undefined
,
describe
:
``
,
isType
:
true
}
if
(
index
==
'
body
'
)
{
obj
.
isType
=
false
}
if
(
type
==
'
new
'
)
{
this
.
requestPam
.
table
=
[
obj
]
}
else
{
this
.
requestPam
.
table
.
push
(
obj
)
}
}
},
addResPam
()
{
this
.
responsePam
.
table
.
push
({
name
:
``
,
type
:
undefined
,
default
:
``
,
isMust
:
undefined
,
describe
:
``
,
})
},
delTabRow
(
key
,
index
)
{
this
[
key
].
table
.
splice
(
index
,
1
)
},
resetForm
()
{
this
.
$nextTick
(()
=>
{
this
.
$refs
.
ruleForm
.
resetFields
();
this
.
detailsForm
.
id
=
""
this
.
requestPam
=
{
type
:
'
path
'
,
table
:
[]
}
this
.
responsePam
=
{
table
:
[{
name
:
``
,
type
:
undefined
,
default
:
``
,
isMust
:
undefined
,
describe
:
``
,
}]
}
this
.
modalInfo
.
visible
=
false
;
});
}
},
methods
:
{
getInfo
(
id
)
{
getInterfaceInfo
({
id
:
id
}).
then
((
res
)
=>
{
res
.
data
.
network
=
res
.
data
.
network
.
split
(
"
,
"
);
this
.
detailsForm
=
res
.
data
;
this
.
requestPam
=
JSON
.
parse
(
res
.
data
.
requestParameters
);
this
.
responsePam
=
JSON
.
parse
(
res
.
data
.
responseParameters
);
});
},
modalSubmit
()
{
this
.
$refs
.
ruleForm
.
validate
((
valid
)
=>
{
if
(
valid
)
{
let
json
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
detailsForm
));
if
(
json
.
network
.
length
)
json
.
network
=
json
.
network
.
join
(
"
,
"
);
json
.
requestParameters
=
JSON
.
stringify
(
this
.
requestPam
);
json
.
responseParameters
=
JSON
.
stringify
(
this
.
responsePam
);
getInterfaceSave
(
json
).
then
((
res
)
=>
{
let
{
code
,
msg
}
=
res
;
if
(
code
==
1
)
{
this
.
$message
.
success
(
"
保存成功
"
);
this
.
resetForm
();
this
.
modalInfo
.
visible
=
false
;
this
.
$parent
.
getList
();
}
else
{
this
.
$message
.
error
(
msg
);
}
});
}
else
{
return
false
;
}
});
},
//type
onReqType
(
type
)
{
let
index
=
this
.
requestPam
.
type
;
if
(
index
==
"
path
"
)
{
this
.
requestPam
.
table
=
[];
}
else
{
let
obj
=
{
name
:
``
,
type
:
"
String
"
,
default
:
``
,
isMust
:
undefined
,
describe
:
``
,
isType
:
true
,
};
if
(
index
==
"
body
"
)
{
obj
.
isType
=
false
;
}
if
(
type
==
"
new
"
)
{
this
.
requestPam
.
table
=
[
obj
];
}
else
{
this
.
requestPam
.
table
.
push
(
obj
);
}
}
},
addResPam
()
{
this
.
responsePam
.
table
.
push
({
name
:
``
,
type
:
undefined
,
default
:
``
,
isMust
:
undefined
,
describe
:
``
,
});
},
delTabRow
(
key
,
index
)
{
this
[
key
].
table
.
splice
(
index
,
1
);
},
resetForm
()
{
this
.
$nextTick
(()
=>
{
this
.
$refs
.
ruleForm
.
resetFields
();
this
.
detailsForm
.
id
=
""
;
this
.
requestPam
=
{
type
:
"
path
"
,
table
:
[],
};
this
.
responsePam
=
{
table
:
[
{
name
:
``
,
type
:
undefined
,
default
:
``
,
isMust
:
undefined
,
describe
:
``
,
},
],
};
this
.
modalInfo
.
visible
=
false
;
});
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
/deep/.ant-drawer-content {
overflow-x: hidden !important;
overflow-x: hidden !important;
}
.drawer_footer {
z-index: 1;
text-align: left;
background: #fff;
padding: 10px 16px;
border-top: 1px solid #e9e9e9;
width: 100%;
bottom: 0;
right: 0;
position: absolute;
z-index: 1;
text-align: left;
background: #fff;
padding: 10px 16px;
border-top: 1px solid #e9e9e9;
width: 100%;
bottom: 0;
right: 0;
position: absolute;
}
.title_ {
font-size: 16px;
font-weight: bold;
color: #333;
margin-bottom: 10px;
font-size: 16px;
font-weight: bold;
color: #333;
margin-bottom: 10px;
}
.table_footer {
text-align: center;
padding-top: 10px;
text-align: center;
padding-top: 10px;
}
/deep/.ant-drawer-body {
margin-bottom: 100px;
margin-bottom: 100px;
}
</
style
>
\ No newline at end of file
portal-manager-ui/admin/src/views/thePlatformIsSet/components/productManage/components/appManage/application.vue
View file @
984989c0
...
...
@@ -2,11 +2,7 @@
<div
class=
"PoliticsShow-Container"
>
<div
class=
"header_box"
>
<div>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"openDetails()"
>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"openDetails()"
>
<span>
新增
</span>
</a-button>
</div>
...
...
@@ -30,10 +26,7 @@
</a-select-option>
</a-select>
<a-button
type=
"primary"
class=
"addclass"
@
click=
"getList()"
<a-button
type=
"primary"
class=
"addclass"
@
click=
"getList()"
>
搜索
</a-button
>
</span>
...
...
@@ -50,11 +43,11 @@
:columns="tableHeaders"
:dataSource="tableSourceData"
>
<template
slot=
"operation"
slot-scope=
"text, record
, index
"
>
<template
slot=
"operation"
slot-scope=
"text, record"
>
<a-button
type=
"link"
v-if=
"record.appFileUrl"
@
click=
"handleDowload(record.appFileUrl)"
@
click=
"handleDowload(record.appFileUrl
, record.appName
)"
>
下载应用
</a-button
>
<a-button
type=
"link"
@
click=
"openDetails(record)"
>
编辑
</a-button>
...
...
@@ -83,6 +76,7 @@ export default {
name
:
"
PortalAdminVueAlerting
"
,
data
()
{
return
{
api
:
process
.
env
.
VUE_APP_API_IMG_URL
,
tableHeaders
:
[
{
title
:
"
序号
"
,
...
...
@@ -194,11 +188,12 @@ export default {
}
});
},
handleDowload
(
url
)
{
let
arr
=
url
.
split
(
"
/
"
);
handleDowload
(
url
,
fileName
)
{
let
index
=
url
.
lastIndexOf
(
"
.
"
);
let
suffix
=
url
.
slice
(
index
);
const
a
=
document
.
createElement
(
"
a
"
);
a
.
href
=
process
.
env
.
VUE_APP_API_BASE_URL
+
"
/
"
+
url
;
a
.
download
=
arr
[
arr
.
length
-
1
]
;
a
.
href
=
this
.
api
+
url
;
a
.
download
=
fileName
+
suffix
;
a
.
click
();
},
openDetails
(
item
)
{
...
...
portal-manager-ui/admin/src/views/thePlatformIsSet/components/productManage/components/docData/fileData.vue
View file @
984989c0
...
...
@@ -31,11 +31,11 @@
:columns="tableHeaders"
:dataSource="tableSourceData"
>
<template
slot=
"operation"
slot-scope=
"text, record
, index
"
>
<template
slot=
"operation"
slot-scope=
"text, record"
>
<a-button
type=
"link"
v-if=
"record.docFileUrl"
@
click=
"handleDowload(record.docFileUrl)"
@
click=
"handleDowload(record.docFileUrl
, record.docName
)"
>
下载
</a-button
>
<a-button
type=
"link"
@
click=
"openDetails(record)"
>
编辑
</a-button>
...
...
@@ -63,6 +63,7 @@ export default {
name
:
"
PortalAdminVueAlerting
"
,
data
()
{
return
{
api
:
process
.
env
.
VUE_APP_API_IMG_URL
,
tableHeaders
:
[
{
title
:
"
序号
"
,
...
...
@@ -159,11 +160,12 @@ export default {
}
});
},
handleDowload
(
url
)
{
let
arr
=
url
.
split
(
"
/
"
);
handleDowload
(
url
,
fileName
)
{
let
index
=
url
.
lastIndexOf
(
"
.
"
);
let
suffix
=
url
.
slice
(
index
);
const
a
=
document
.
createElement
(
"
a
"
);
a
.
href
=
process
.
env
.
VUE_APP_API_BASE_URL
+
"
/
"
+
url
;
a
.
download
=
arr
[
arr
.
length
-
1
]
;
a
.
href
=
this
.
api
+
url
;
a
.
download
=
fileName
+
suffix
;
a
.
click
();
},
openDetails
(
item
)
{
...
...
portal-manager-ui/admin/vue.config.js
View file @
984989c0
const
{
defineConfig
}
=
require
(
"
@vue/cli-service
"
);
const
FileManagerPlugin
=
require
(
"
filemanager-webpack-plugin
"
);
// 压缩文件夹
const
isDev
=
process
.
env
.
NODE_ENV
===
"
development
"
;
let
plugins
=
[];
// 避免打本地启项目时自动打zip包
if
(
!
isDev
)
{
plugins
.
push
(
new
FileManagerPlugin
({
events
:
{
onEnd
:
{
// mkdir: ["./dist"],
delete
:
[
"
./zip/
"
],
copy
:
[{
source
:
"
./dist
"
,
destination
:
"
./zip/dist
"
}],
archive
:
[{
source
:
"
./zip
"
,
destination
:
"
./zip/门户系统.zip
"
}],
},
},
})
);
}
module
.
exports
=
defineConfig
({
transpileDependencies
:
true
,
lintOnSave
:
false
,
// 打包目录
outputDir
:
"
dist
"
,
configureWebpack
:
{
plugins
:
[
...
plugins
],
plugins
:
[],
},
devServer
:
{
proxy
:
{
...
...
portal-manager-ui/admin/yarn.lock
View file @
984989c0
This source diff could not be displayed because it is too large. You can
view the blob
instead.
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