|
@@ -5,64 +5,40 @@
|
|
|
<div class="page-form-title-box">
|
|
|
<el-form :model="queryParams" class="form-box" ref="queryForm"
|
|
|
:inline="true" style="width:100%;">
|
|
|
- <el-form-item label="" prop="queryParamsData1">
|
|
|
+ <el-form-item label="" prop="searchValue">
|
|
|
<el-input
|
|
|
maxLength="30"
|
|
|
- v-model="queryParams.queryParamsData1"
|
|
|
- placeholder="请输入"
|
|
|
+ v-model="queryParams.searchValue"
|
|
|
+ placeholder="请输入名称"
|
|
|
style="width: 200px"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="" prop="queryParamsData2">
|
|
|
- <el-select v-model="queryParams.queryParamsData2" placeholder="请选择" style="width: 200px">
|
|
|
- <el-option
|
|
|
- v-for="dict in optionList"
|
|
|
- :key="dict.value"
|
|
|
- :label="dict.label"
|
|
|
- :value="dict.value"
|
|
|
- />
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="" prop="state">
|
|
|
- <el-date-picker
|
|
|
- :clearable="false"
|
|
|
- v-model="dateRange"
|
|
|
- size="small"
|
|
|
- style="width: 240px"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- type="daterange"
|
|
|
- range-separator="-"
|
|
|
- start-placeholder="开始日期"
|
|
|
- end-placeholder="结束日期"
|
|
|
- ></el-date-picker>
|
|
|
- </el-form-item>
|
|
|
<p class="page-inquire-common-style-button" @click="handleQuery">查询</p>
|
|
|
<p class="page-reset-common-style-button" @click="resetQuery">重置</p>
|
|
|
<p class="page-add-common-style-button"
|
|
|
style="float: right;"
|
|
|
@click="tableButton(1)"
|
|
|
- v-hasPermiRouter="['demo:demo:add']"
|
|
|
+ v-hasPermiRouter="['system:link:add']"
|
|
|
>新增</p>
|
|
|
</el-form>
|
|
|
</div>
|
|
|
<div class="page-content-box">
|
|
|
<el-table class="table-box" v-loading="loading" border :data="dataList">
|
|
|
- <el-table-column label="名称" prop="name" show-overflow-tooltip/>
|
|
|
- <el-table-column label="内容" prop="content" width="200" show-overflow-tooltip/>
|
|
|
- <el-table-column label="状态" prop="state" width="100" show-overflow-tooltip>
|
|
|
+ <el-table-column label="名称" prop="linkName" show-overflow-tooltip/>
|
|
|
+ <el-table-column label="链接地址" prop="linkUrl" width="500" show-overflow-tooltip/>
|
|
|
+ <el-table-column label="跳转方式" prop="skipType" width="120" show-overflow-tooltip>
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span>{{scope.row.skipType?'新窗口':'当前窗口'}}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="登录验证" prop="isAuth" width="120" show-overflow-tooltip>
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span>{{scope.row.isAuth?'是':'否'}}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="认证方式" prop="authMode" width="120" show-overflow-tooltip>
|
|
|
<template slot-scope="scope">
|
|
|
- <el-switch
|
|
|
- @click.native="tableButton(5,scope.row)"
|
|
|
- class="switch captcha-img"
|
|
|
- :active-value="true"
|
|
|
- :inactive-value="false"
|
|
|
- active-color="#0183FA"
|
|
|
- inactive-color="#999"
|
|
|
- v-model="scope.row.state"
|
|
|
- active-text="启用"
|
|
|
- inactive-text="停用"
|
|
|
- disabled
|
|
|
- ></el-switch>
|
|
|
+ <span>{{scope.row.authMode==0?'无':(scope.row.authMode==1?'携参':(scope.row.authMode==2?'cookie':''))}}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="创建时间" prop="createTime" width="200" show-overflow-tooltip>
|
|
@@ -70,17 +46,17 @@
|
|
|
<span>{{ parseTime(scope.row.createTime,"{y}-{m}-{d} {h}:{i}") }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="操作" width="200" show-overflow-tooltip v-if="tableButtonType">
|
|
|
+ <el-table-column label="操作" width="160" show-overflow-tooltip v-if="tableButtonType">
|
|
|
<template slot-scope="scope">
|
|
|
<div class="table-button-box">
|
|
|
<p class="table-button-null"></p>
|
|
|
<p class="table-button-p"
|
|
|
@click="tableButton(2,scope.row)"
|
|
|
- v-hasPermiRouter="['demo:demo:edit']"
|
|
|
+ v-hasPermiRouter="['system:link:edit']"
|
|
|
>编辑</p>
|
|
|
<p class="table-button-p"
|
|
|
@click="tableButton(3,scope.row)"
|
|
|
- v-hasPermiRouter="['demo:demo:del']"
|
|
|
+ v-hasPermiRouter="['system:link:del']"
|
|
|
>删除</p>
|
|
|
<p class="table-button-null"></p>
|
|
|
</div>
|
|
@@ -96,146 +72,20 @@
|
|
|
/>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <el-dialog class="externalLink-dialog" :title="dialogForm.id?'编辑':'新增'"
|
|
|
- :visible.sync="externalLinkDialogType" v-if="externalLinkDialogType" width="1240px" height="700"
|
|
|
- append-to-body :close-on-click-modal="false" @close="dialogOff()">
|
|
|
- <div class="externalLink-dialog-max-big-box">
|
|
|
- <el-form :model="dialogForm" class="dialogForm" ref="dialogForm"
|
|
|
- :rules="rules" style="width:100%;" label-width="100px">
|
|
|
- <div class="externalLink-dialog-big-box">
|
|
|
- <div class="externalLink-dialog-left-box">
|
|
|
- <el-form-item label="名称:" prop="linkName">
|
|
|
- <el-input
|
|
|
- maxLength="20"
|
|
|
- v-model="dialogForm.linkName"
|
|
|
- placeholder="请输入名称"
|
|
|
- clearable
|
|
|
- style="width: 280px"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="链接地址:" prop="linkUrl">
|
|
|
- <el-input
|
|
|
- maxLength="50"
|
|
|
- v-model="dialogForm.linkUrl"
|
|
|
- placeholder="请输入链接地址"
|
|
|
- clearable
|
|
|
- style="width: 280px"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="跳转类型:" prop="skipType">
|
|
|
- <el-radio-group v-model="dialogForm.skipType">
|
|
|
- <el-radio :label="false" style="width:70px;">当前窗口</el-radio>
|
|
|
- <el-radio :label="true" style="width:70px;">新窗口</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="登录验证:" prop="isAuth">
|
|
|
- <el-radio-group v-model="dialogForm.isAuth">
|
|
|
- <el-radio :label="false" style="width:70px;">否</el-radio>
|
|
|
- <el-radio :label="true" style="width:70px;">是</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="认证方式:" prop="authMode">
|
|
|
- <el-radio-group v-model="dialogForm.authMode">
|
|
|
- <el-radio :label=0 style="width:70px;">无</el-radio>
|
|
|
- <el-radio :label=2 style="width:70px;">cookie</el-radio>
|
|
|
- <el-radio :label=1 style="width:70px;">携参</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="请求地址:" prop="reqApi" v-if="dialogForm.isAuth">
|
|
|
- <el-input
|
|
|
- maxLength="20"
|
|
|
- v-model="dialogForm.reqApi"
|
|
|
- placeholder="请输入请求地址"
|
|
|
- clearable
|
|
|
- style="width: 280px"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="请求类型:" prop="reqMethod" v-if="dialogForm.isAuth">
|
|
|
- <el-radio-group v-model="dialogForm.reqMethod">
|
|
|
- <el-radio label="post" style="width:60px;">POST</el-radio>
|
|
|
- <el-radio label="get" style="width:60px;">GET</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
- <div class="externalLink-dialog-center-box scrollbar-box" v-if="dialogForm.isAuth">
|
|
|
- <el-form-item label="请求参数:" prop="authMode">
|
|
|
- <div class="for-custom-parameter-max-big-box" v-for="(item,index) in dialogForm.requestArgument" :key="index">
|
|
|
- <div class="input-box">
|
|
|
- <el-select v-model="item.type" placeholder="请选择参数类型" clearable size="small">
|
|
|
- <el-option
|
|
|
- v-for="dict in typeOptions"
|
|
|
- :key="dict.value"
|
|
|
- :label="dict.name"
|
|
|
- :value="dict.value"
|
|
|
- />
|
|
|
- </el-select>
|
|
|
- <el-input class="top-border" v-if="item.type != 5" maxLength="20"
|
|
|
- v-model="item.key" placeholder="请输入key"/>
|
|
|
- <el-input class="top-border" v-if="item.type == 1" maxLength="50"
|
|
|
- v-model="item.value" placeholder="请输入value"/>
|
|
|
- <el-select class="top-border" v-model="item.num" v-if="item.type == 5" placeholder="请选择时间戳长度" clearable size="small">
|
|
|
- <el-option key="10" label="10位时间戳" value="10"/>
|
|
|
- <el-option key="13" label="13位时间戳" value="13"/>
|
|
|
- </el-select>
|
|
|
- </div>
|
|
|
- <div class="del-button-box" @click="delRequestArgument(index)">
|
|
|
- <p class="del-button-null"></p>
|
|
|
- <p class="del-button el-icon-remove"></p>
|
|
|
- <p class="del-button-null"></p>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <p class="el-icon-circle-plus-outline add-button" @click="addRequestArgument" v-if="!dialogForm.requestArgument[4]"></p>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
- <div class="externalLink-dialog-right-box scrollbar-box" v-if="dialogForm.authMode == '1'">
|
|
|
- <el-form-item label="携带参数:" prop="authMode">
|
|
|
- <div class="for-custom-parameter-max-big-box" v-for="(item,index) in dialogForm.carryArgument" :key="index">
|
|
|
- <div class="input-box">
|
|
|
- <el-select v-model="item.type" placeholder="请选择参数类型" clearable size="small">
|
|
|
- <el-option
|
|
|
- v-for="dict in typeOptions"
|
|
|
- :key="dict.value"
|
|
|
- :label="dict.name"
|
|
|
- :value="dict.value"
|
|
|
- />
|
|
|
- </el-select>
|
|
|
- <el-input class="top-border" v-if="item.type != 5" maxLength="20"
|
|
|
- v-model="item.key" placeholder="请输入key"/>
|
|
|
- <el-input class="top-border" v-if="item.type == 1" maxLength="50"
|
|
|
- v-model="item.value" placeholder="请输入value"/>
|
|
|
- <el-select class="top-border" v-model="item.num" v-if="item.type == 5" placeholder="请选择时间戳长度" clearable size="small">
|
|
|
- <el-option key="10" label="10位时间戳" value="10"/>
|
|
|
- <el-option key="13" label="13位时间戳" value="13"/>
|
|
|
- </el-select>
|
|
|
- </div>
|
|
|
- <div class="del-button-box" @click="delCarryArgument(index)">
|
|
|
- <p class="del-button-null"></p>
|
|
|
- <p class="del-button el-icon-remove"></p>
|
|
|
- <p class="del-button-null"></p>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <p class="el-icon-circle-plus-outline add-button" @click="addCarryArgument" v-if="!dialogForm.carryArgument[4]"></p>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- </el-form>
|
|
|
- </div>
|
|
|
- <div slot="footer" class="dialog-footer dialog-footer-box">
|
|
|
- <p class="dialog-footer-button-null"></p>
|
|
|
- <p class="dialog-footer-button-info" @click="dialogOff">取消</p>
|
|
|
- <p class="dialog-footer-button-primary" @click="dialogSubmit">提交</p>
|
|
|
- <p class="dialog-footer-button-null"></p>
|
|
|
- </div>
|
|
|
- </el-dialog>
|
|
|
+ <addPage v-if="pageType == 2" :propsData="propsData"></addPage>
|
|
|
</div>
|
|
|
</template>
|
|
|
<script>
|
|
|
- import { systemLinkList,systemLinkAdd,systemLinkUpdate,systemLinkDelete } from "@/api/serviceCenter/index";
|
|
|
+ import { systemLinkList,systemLinkDelete, } from "@/api/serviceCenter/index";
|
|
|
+ import addPage from "./addPage.vue";
|
|
|
export default {
|
|
|
name: 'index',
|
|
|
+ components: {
|
|
|
+ addPage
|
|
|
+ },
|
|
|
data () {
|
|
|
return {
|
|
|
- tableButtonType:this.hasPermiDom(['demo:demo:detail','demo:demo:edit','demo:demo:del',]),
|
|
|
+ tableButtonType:this.hasPermiDom(['system:link:edit','system:link:del']),
|
|
|
//页面状态
|
|
|
pageType:1,
|
|
|
//页面遮罩
|
|
@@ -246,8 +96,7 @@
|
|
|
queryParams:{
|
|
|
page:1,
|
|
|
pageSize:20,
|
|
|
- queryParamsData1:"",
|
|
|
- queryParamsData2 :null,
|
|
|
+ searchValue:"",
|
|
|
},
|
|
|
//时间数据
|
|
|
dateRange:[],
|
|
@@ -257,50 +106,9 @@
|
|
|
total:0,
|
|
|
//组件传参
|
|
|
propsData:{},
|
|
|
- //弹窗参数
|
|
|
- externalLinkDialogType:false,
|
|
|
- dialogForm:{},
|
|
|
- rules:{
|
|
|
- linkName:[
|
|
|
- { required: true, message: '请输入名称', trigger: 'blur' },
|
|
|
- { required: true, message: "请输入名称", validator: this.spaceJudgment, trigger: "blur" }
|
|
|
- ],
|
|
|
- linkUrl:[
|
|
|
- { required: true, message: '请输入链接地址', trigger: 'blur' },
|
|
|
- { required: true, message: "请输入链接地址", validator: this.spaceJudgment, trigger: "blur" }
|
|
|
- ],
|
|
|
- skipType:[
|
|
|
- { required: true, message: '请选择跳转类型', trigger: 'blur' },
|
|
|
- { required: true, message: "请选择跳转类型", validator: this.spaceJudgment, trigger: "blur" }
|
|
|
- ],
|
|
|
- isAuth:[
|
|
|
- { required: true, message: '请选择登录验证', trigger: 'blur' },
|
|
|
- { required: true, message: "请选择登录验证", validator: this.spaceJudgment, trigger: "blur" }
|
|
|
- ],
|
|
|
- authMode:[
|
|
|
- { required: true, message: '请选择认证方式', trigger: 'blur' },
|
|
|
- { required: true, message: "请选择认证方式", validator: this.spaceJudgment, trigger: "blur" }
|
|
|
- ],
|
|
|
- reqMethod:[
|
|
|
- { required: true, message: '请选择请求类型', trigger: 'blur' },
|
|
|
- { required: true, message: "请选择请求类型", validator: this.spaceJudgment, trigger: "blur" }
|
|
|
- ],
|
|
|
- reqApi:[
|
|
|
- { required: true, message: '请输入请求地址', trigger: 'blur' },
|
|
|
- { required: true, message: "请输入请求地址", validator: this.spaceJudgment, trigger: "blur" }
|
|
|
- ],
|
|
|
- },
|
|
|
- typeOptions:[
|
|
|
- {name:'数据',value:'1'},
|
|
|
- {name:'cookie',value:'2'},
|
|
|
- {name:'localStorage',value:'3'},
|
|
|
- {name:'sessionStorage',value:'4'},
|
|
|
- {name:'timestamp',value:'5'},//13位10位
|
|
|
- ],
|
|
|
}
|
|
|
},
|
|
|
created () {
|
|
|
-
|
|
|
},
|
|
|
mounted () {
|
|
|
this.getList();
|
|
@@ -317,8 +125,7 @@
|
|
|
this.$set(this,'queryParams',{
|
|
|
page:1,
|
|
|
pageSize:20,
|
|
|
- queryParamsData1:"",
|
|
|
- queryParamsData2 :null,
|
|
|
+ searchValue:"",
|
|
|
});
|
|
|
this.getList();
|
|
|
},
|
|
@@ -337,24 +144,37 @@
|
|
|
let self = this;
|
|
|
if(type == 1){
|
|
|
//新增
|
|
|
- this.dialogFormReset();
|
|
|
- this.$set(this,'externalLinkDialogType',true);
|
|
|
+ this.$set(this,'propsData',{
|
|
|
+ linkName:'',
|
|
|
+ linkUrl:'',
|
|
|
+ skipType:false,
|
|
|
+ isAuth:false,
|
|
|
+ reqApi:'',
|
|
|
+ reqMethod:'post',
|
|
|
+ paramType:'JSON',
|
|
|
+ authMode:0,
|
|
|
+ requestArgument:[],
|
|
|
+ carryArgument:[],
|
|
|
+ });
|
|
|
+ this.$set(this,'pageType',2);
|
|
|
}else if(type == 2){
|
|
|
- //详情
|
|
|
+ //编辑
|
|
|
let params = JSON.parse(row.params)
|
|
|
let obj = {
|
|
|
+ linkId:row.linkId,
|
|
|
linkName:row.linkName,
|
|
|
linkUrl:row.linkUrl,
|
|
|
skipType:row.skipType,
|
|
|
isAuth:row.isAuth,
|
|
|
authMode:row.authMode,
|
|
|
+ paramType:row.reqMethod == 'post'?row.paramType:'',
|
|
|
reqApi:row.isAuth?row.reqApi:'',
|
|
|
reqMethod:row.isAuth?row.reqMethod:'',
|
|
|
requestArgument:params.requestArgument,
|
|
|
carryArgument:params.carryArgument,
|
|
|
};
|
|
|
- this.$set(this,'dialogForm',JSON.parse(JSON.stringify(obj)));
|
|
|
- this.$set(this,'externalLinkDialogType',true);
|
|
|
+ this.$set(this,'propsData',JSON.parse(JSON.stringify(obj)));
|
|
|
+ this.$set(this,'pageType',2);
|
|
|
}else if(type == 3){
|
|
|
//删除
|
|
|
this.$confirm('是否确认删除?', "警告", {
|
|
@@ -363,197 +183,16 @@
|
|
|
type: "warning"
|
|
|
}).then(function() {
|
|
|
}).then(() => {
|
|
|
- systemLinkDelete({id:row.id}).then(response => {
|
|
|
+ systemLinkDelete({linkId:row.linkId}).then(response => {
|
|
|
self.msgSuccess(response.message)
|
|
|
self.getList();
|
|
|
});
|
|
|
}).catch(() => {});
|
|
|
+ }else if(type == 4){
|
|
|
+ this.$set(this,'pageType',1);
|
|
|
+ self.getList();
|
|
|
}
|
|
|
},
|
|
|
- //弹窗关闭
|
|
|
- dialogOff(){
|
|
|
- this.$set(this,'externalLinkDialogType',false);
|
|
|
- },
|
|
|
- //提交接口
|
|
|
- dialogSubmit(){
|
|
|
- let self = this;
|
|
|
- this.$refs["dialogForm"].validate(valid => {
|
|
|
- if (valid) {
|
|
|
- //检查请求参数
|
|
|
- if(this.dialogForm.isAuth){
|
|
|
- if(!this.dialogForm.requestArgument[0]){
|
|
|
- this.msgError('请添加请求参数')
|
|
|
- return
|
|
|
- }
|
|
|
- for(let i=0;i<self.dialogForm.requestArgument.length;i++){
|
|
|
- if(!self.dialogForm.requestArgument[i].type){
|
|
|
- this.msgError('请选择第 '+(i+1)+' 条,请求参数的参数类型')
|
|
|
- return
|
|
|
- }else if(self.dialogForm.requestArgument[i].type == 1){
|
|
|
- if(!self.dialogForm.requestArgument[i].key){
|
|
|
- this.msgError('请输入第 '+(i+1)+' 条,请求参数的key')
|
|
|
- return
|
|
|
- }else if(!self.dialogForm.requestArgument[i].value){
|
|
|
- this.msgError('请输入第 '+(i+1)+' 条,请求参数的value')
|
|
|
- return
|
|
|
- }
|
|
|
- }else if(self.dialogForm.requestArgument[i].type == 2 ||
|
|
|
- self.dialogForm.requestArgument[i].type == 3 ||
|
|
|
- self.dialogForm.requestArgument[i].type == 4){
|
|
|
- if(!self.dialogForm.requestArgument[i].key){
|
|
|
- this.msgError('请输入第 '+(i+1)+' 条,请求参数的key')
|
|
|
- return
|
|
|
- }
|
|
|
- }else if(self.dialogForm.requestArgument[i].type == 5){
|
|
|
- if(!self.dialogForm.requestArgument[i].num){
|
|
|
- this.msgError('请选择第 '+(i+1)+' 条,请求参数的时间戳长度')
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- //检查携带参数
|
|
|
- if(this.dialogForm.authMode == 1){
|
|
|
- if(!this.dialogForm.carryArgument[0]){
|
|
|
- this.msgError('请添加携带参数')
|
|
|
- return
|
|
|
- }
|
|
|
- for(let i=0;i<self.dialogForm.carryArgument.length;i++){
|
|
|
- if(!self.dialogForm.carryArgument[i].type){
|
|
|
- this.msgError('请选择第 '+(i+1)+' 条,携带参数的参数类型')
|
|
|
- return
|
|
|
- }else if(self.dialogForm.carryArgument[i].type == 1){
|
|
|
- if(!self.dialogForm.carryArgument[i].key){
|
|
|
- this.msgError('请输入第 '+(i+1)+' 条,携带参数的key')
|
|
|
- return
|
|
|
- }else if(!self.dialogForm.carryArgument[i].value){
|
|
|
- this.msgError('请输入第 '+(i+1)+' 条,携带参数的value')
|
|
|
- return
|
|
|
- }
|
|
|
- }else if(self.dialogForm.carryArgument[i].type == 2 ||
|
|
|
- self.dialogForm.carryArgument[i].type == 3 ||
|
|
|
- self.dialogForm.carryArgument[i].type == 4){
|
|
|
- if(!self.dialogForm.carryArgument[i].key){
|
|
|
- this.msgError('请输入第 '+(i+1)+' 条,携带参数的key')
|
|
|
- return
|
|
|
- }
|
|
|
- }else if(self.dialogForm.carryArgument[i].type == 5){
|
|
|
- if(!self.dialogForm.carryArgument[i].num){
|
|
|
- this.msgError('请选择第 '+(i+1)+' 条,携带参数的时间戳长度')
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- //数据处理
|
|
|
- let requestArgument = [];
|
|
|
- let carryArgument = [];
|
|
|
- this.dialogForm.requestArgument.forEach((item)=>{
|
|
|
- let minObj = {
|
|
|
- type:item.type
|
|
|
- }
|
|
|
- if(item.type == 1){
|
|
|
- minObj.key = item.key;
|
|
|
- minObj.value = item.value;
|
|
|
- }else if(item.type == 2 || item.type == 3 || item.type == 4){
|
|
|
- minObj.key = item.key;
|
|
|
- }else if(item.type == 5){
|
|
|
- minObj.num = item.num;
|
|
|
- }
|
|
|
- requestArgument.push(minObj)
|
|
|
- })
|
|
|
- this.dialogForm.carryArgument.forEach((item)=>{
|
|
|
- let minObj = {
|
|
|
- type:item.type
|
|
|
- }
|
|
|
- if(item.type == 1){
|
|
|
- minObj.key = item.key;
|
|
|
- minObj.value = item.value;
|
|
|
- }else if(item.type == 2 || item.type == 3 || item.type == 4){
|
|
|
- minObj.key = item.key;
|
|
|
- }else if(item.type == 5){
|
|
|
- minObj.num = item.num;
|
|
|
- }
|
|
|
- carryArgument.push(minObj)
|
|
|
- })
|
|
|
- let params = {
|
|
|
- requestArgument:requestArgument,
|
|
|
- carryArgument:carryArgument,
|
|
|
- }
|
|
|
- let obj = {
|
|
|
- linkName:this.dialogForm.linkName,
|
|
|
- linkUrl:this.dialogForm.linkUrl,
|
|
|
- skipType:this.dialogForm.skipType,
|
|
|
- isAuth:this.dialogForm.isAuth,
|
|
|
- authMode:this.dialogForm.authMode,
|
|
|
- reqApi:this.dialogForm.isAuth?this.dialogForm.reqApi:'',
|
|
|
- reqMethod:this.dialogForm.isAuth?this.dialogForm.reqMethod:'',
|
|
|
- params:JSON.stringify(params),
|
|
|
- };
|
|
|
- if(this.dialogForm.id){
|
|
|
- obj.id = this.dialogForm.id
|
|
|
- this.systemLinkUpdate(obj);
|
|
|
- }else{
|
|
|
- this.systemLinkAdd(obj);
|
|
|
- }
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- //重置弹窗数据
|
|
|
- dialogFormReset(){
|
|
|
- this.$set(this,'dialogForm',{
|
|
|
- linkName:'',
|
|
|
- linkUrl:'',
|
|
|
- skipType:false,
|
|
|
- isAuth:false,
|
|
|
- reqApi:'',
|
|
|
- reqMethod:'post',
|
|
|
- authMode:0,
|
|
|
- requestArgument:[],
|
|
|
- carryArgument:[],
|
|
|
- });
|
|
|
- },
|
|
|
- //新增请求参数
|
|
|
- addRequestArgument(){
|
|
|
- this.dialogForm.requestArgument.push({
|
|
|
- type:'',
|
|
|
- })
|
|
|
- },
|
|
|
- //删除请求参数
|
|
|
- delRequestArgument(index){
|
|
|
- this.dialogForm.requestArgument.splice(index,1);
|
|
|
- },
|
|
|
- //新增携带参数
|
|
|
- addCarryArgument(){
|
|
|
- this.dialogForm.carryArgument.push({
|
|
|
- type:'',
|
|
|
- key:'',
|
|
|
- value:'',
|
|
|
- num:'',
|
|
|
- })
|
|
|
- },
|
|
|
- //删除携带参数
|
|
|
- delCarryArgument(index){
|
|
|
- this.dialogForm.carryArgument.splice(index,1);
|
|
|
- },
|
|
|
- //新增接口
|
|
|
- systemLinkAdd(obj){
|
|
|
- systemLinkAdd(obj).then(response => {
|
|
|
- this.msgSuccess(response.message)
|
|
|
- this.$set(this,'externalLinkDialogType',false);
|
|
|
- this.dialogFormReset();
|
|
|
- this.getList();
|
|
|
- });
|
|
|
- },
|
|
|
- //编辑接口
|
|
|
- systemLinkUpdate(obj){
|
|
|
- systemLinkUpdate(obj).then(response => {
|
|
|
- this.msgSuccess(response.message)
|
|
|
- this.$set(this,'externalLinkDialogType',false);
|
|
|
- this.dialogFormReset();
|
|
|
- this.getList();
|
|
|
- });
|
|
|
- },
|
|
|
},
|
|
|
}
|
|
|
</script>
|