Commit 5248a159 by WH

Merge remote-tracking branch 'origin/settle-test-20230110' into settle-test-20230110

parents 3ef6ba4d 7ed79ee0
......@@ -163,6 +163,16 @@ export default {
handleChangePurpos() {
this.queryHndtypCodeTableList(this.root.trnName);
},
buildLiaccv () {
let params = {
...buildFn.buildCommonData(this.model, this.trnName),
liaccvg: this.model.liaccv.liaccvg,
oldamt: this.model.liaccv.oldamt,
chgamt: this.model.liaccv.chgamt,
concur: this.model.liaccv.concur,
};
return params
},
// 公共组件setmod处理方式改变触发联动
changeSetmodModel (emitParams) {
let reqParams = {}
......
......@@ -351,6 +351,7 @@ export default class Gitopn {
liaall: new Pub().data.Liaall,
liaccv: new Pub().data.Liaccv,
docpan: new Pub().data.Docpan,
doctre: new Pub().data.Doctre,
};
}
}
......@@ -21,7 +21,7 @@
<!--PD000001 -->
<el-tab-pane label="保证金" name="ccvpan">
<c-content>
<m-ccvpan :model="model" :codes="codes" />
<m-ccvpan :model="model" :codes="codes" :buildLiaccv="buildLiaccv" />
</c-content>
</el-tab-pane>
......
......@@ -79,9 +79,7 @@ export default {
},
toGitopn() {
// 点击开立,清空从待经办进来的时候带的行参数
this.updateToHandleRowData({
row_gitopn: {}
})
localStorage.setItem('row_gitopn', null)
this.$router.history.push('/business-new/gitopn');
},
toGetopn() {
......
......@@ -568,7 +568,6 @@
</template>
<script>
import event from '../event'
import { mapMutations } from 'vuex';
export default {
inject: ["root"],
props: ["model", "codes"],
......@@ -662,9 +661,7 @@ export default {
]
};
},
methods: {
...mapMutations(['updateToHandleRowData'])
},
methods: {},
mounted () {},
};
</script>
......
import Utils from '~/utils/index';
import Api from '~/service/Api';
import moment from 'moment'
export default {
methods: {
//重置
......@@ -65,8 +66,8 @@ export default {
}
let params = {
ownref: this.model.trncorco.ownref,
inidattil: this.model.trncorco.inidattil,
inidatfro: this.model.trncorco.inidatfro,
inidattil: moment(this.model.trncorco.inidattil).format('YYYY-MM-DD'),
inidatfro: moment(this.model.trncorco.inidatfro).format('YYYY-MM-DD'),
usrcon: this.model.usrcon,
relflg: this.model.trncorco.relflg,
bchcon: this.model.bchcon,
......
......@@ -99,7 +99,7 @@
<el-row>
<c-col :span="24" style="">
<el-table :data="stmData.data" :columns="stmData.columns" style="width:100%" :max-height="maxHeight">
<el-table :data="stmData.data" :columns="stmData.columns" style="width:100%">
<el-table-column
v-for="(item, key) in stmData.columns"
:key="key"
......@@ -196,12 +196,17 @@
methods: {
getInidatfro(){
let datetime = new Date();
datetime = datetime.setDate(datetime.getDate() - 1);
datetime = datetime.setDate(datetime.getDate() - 10);
this.model.trncorco.inidatfro = new Date(datetime);
}
},
created() {
this.getInidatfro();
mounted() {
//适配不同页面下的table高度
//其中159为form表单高度,不同页面高度不同,可以考虑获取dom高度
// this.maxHeight = (document.body.clientHeight || document.documentElement.clientHeight) - 60 - 40 - 40 - 42 - 40 - 159 - 10 - 37 - 60;
this.$nextTick(() => {
this.getInidatfro();
})
},
computed: {
reload() {
......@@ -214,12 +219,6 @@
this.handleSearch()
}
}
},
created() {
//适配不同页面下的table高度
//其中159为form表单高度,不同页面高度不同,可以考虑获取dom高度
this.maxHeight = (document.body.clientHeight || document.documentElement.clientHeight) - 60 - 40 - 40 - 42 - 40 - 159 - 10 - 37 - 60;
}
};
</script>
......
......@@ -321,8 +321,9 @@ export default {
methods: {
...Event,
async onLiaccvAdd() {
let rulePath = '/service/liaccv/getFcdList';
let liaccvRequest = this.buildLiaccv(this.root);
let liaccvRequest = this.root.buildLiaccv();
let objtyp = liaccvRequest.rec.objtyp;
let rulePath = `/service/${ objtyp.toLowerCase() }/getFcdList`;
let rtnmsg = await Api.post(rulePath, liaccvRequest);
if (rtnmsg.respCode == SUCCESS) {
this.dialogTableVisible = true;
......@@ -330,8 +331,9 @@ export default {
}
},
async pickDepItem(idx, row) {
let rulePath = '/service/liaccv/addLiaccvg';
let liaccvRequest = this.buildLiaccv(this.root);
let liaccvRequest = this.root.buildLiaccv();
let objtyp = liaccvRequest.rec.objtyp;
let rulePath = `/service/${ objtyp.toLowerCase() }/addLiaccvg`;
liaccvRequest.fcdVo = row;
let rtnmsg = await Api.post(rulePath, liaccvRequest);
if (rtnmsg.respCode == SUCCESS) {
......@@ -343,8 +345,9 @@ export default {
let fcdVo = {
inr: row.fcdinr,
};
let rulePath = '/service/liaccv/deleteLiaccvg';
let liaccvRequest = this.buildLiaccv(this.root);
let liaccvRequest = this.root.buildLiaccv();
let objtyp = liaccvRequest.rec.objtyp;
let rulePath = `/service/${ objtyp.toLowerCase() }/deleteLiaccvg`;
liaccvRequest.fcdVo = fcdVo;
let rtnmsg = await Api.post(rulePath, liaccvRequest);
if (rtnmsg.respCode == SUCCESS) {
......
......@@ -15,6 +15,10 @@ export default class Publics {
Liaall: new Liaall().data,
Liaccv: new Liaccv().data,
Docpan: new Docpan().data,
Doctre: {
tableData1: [],
tableData2: [],
}
};
}
}
......@@ -11,7 +11,7 @@
<el-divider></el-divider>
</c-col>
<c-col :span="24">
<el-table :border="true" :data="model.doctre.tableData1">
<el-table :border="true" :data="model.doctre.tableData1 || []">
<el-table-column label="类型" width="auto" prop="rol"></el-table-column>
<el-table-column label="名称" width="auto" prop="pandsc"></el-table-column>
<el-table-column label="创建交易" width="auto" prop="inifrm"></el-table-column>
......
......@@ -65,6 +65,7 @@ export default {
loading.close();
return
}
loading.close();
const tab = this.showBackendErrors(errorRules)
if (tab) {
// tab切换之后,需出发tab-click的事件
......@@ -77,7 +78,6 @@ export default {
message: "校核失败",
type: "error",
});
loading.close();
return
}
}
......@@ -89,12 +89,13 @@ export default {
type: 'error',
});
this.$nextTick(() => {
console.log('========', this.$refs['modelForm'])
let isError = document.querySelectorAll('.is-error')
let fields = this.$refs['modelForm'].fields
fields.map((fieldItem) => {
if (fieldItem.validateState === 'error') {
let errorComponentName = fieldItem.$options.componentName
console.log('fieldItem===', fieldItem)
// console.log('fieldItem===', fieldItem)
// 切换tab
if (errorComponentName === 'ElTabPane') {
fieldItem.$parent.currentName = fieldItem.name
......
......@@ -81,7 +81,7 @@ export default {
let rtnmsg = await Api.post('/service/trnrel/relrow', params);
if (rtnmsg.respCode === SUCCESS) {
let errorMsg = '';
let fieldErrorsFlag = JSON.stringify(rtnmsg.data.fieldErrors) == '{}';
let fieldErrorsFlag = !rtnmsg.data.fieldErrors;
if (!fieldErrorsFlag) {
let errorMsgkey = '';
let errorMsgVal = '';
......@@ -109,7 +109,7 @@ export default {
}
} else {
let errorMsg = '';
let fieldErrorsFlag = JSON.stringify(rtnmsg.data.fieldErrors) == '{}';
let fieldErrorsFlag = !rtnmsg.data.fieldErrors;
if (!fieldErrorsFlag) {
let errorMsgkey = '';
let errorMsgVal = '';
......
import Api from "~/service/Api"
// export function queryById(data) {
// return Api.post("/manager/pts/queryById", data)
// }
export function queryById(extkey) {
return Api.post("/service/pts/queryById", {extkey})
}
export function queryByPage(data) {
return Api.post("/service/pts/queryByPage", data)
}
export function queryByPage2(data) {
return Api.post("/service/pts/queryByPage2", data)
}
export function insert(data) {
return Api.post("/service/pts/insert", data)
}
export function edit(data) {
return Api.post("/service/pts/edit", data)
}
export function deleteById(data) {
return Api.post("/service/pts/deleteById", data)
}
......@@ -304,6 +304,10 @@ import Infptm from "~/views/Statics/Ptm/views/Infptm"
import Dbiptm from "~/views/Statics/Ptm/views/Dbiptm"
import Dbeptm from "~/views/Statics/Ptm/views/Dbeptm"
import Infpts from "~/views/Statics/Pts/views/Infpts"
import Dbipts from "~/views/Statics/Pts/views/Dbipts"
import Dbepts from "~/views/Statics/Pts/views/Dbepts"
import Inflgb from "~/views/Statics/Lgb/views/Inflgb"
import Dbilgb from "~/views/Statics/Lgb/views/Dbilgb"
import Dbalgb from "~/views/Statics/Lgb/views/Dbalgb"
......@@ -700,6 +704,10 @@ const BusRouter = [
{ path: 'infptm', component:Infptm, name: 'StaticsInfptm', meta: { title: '银行密押查询' } },
{ path: 'dbeptm/:inr', component: Dbeptm, name: 'StaticsDbeptm', meta: { title: (tag) => { return '银行密押更新: ' + tag.params.inr } } },
// { path: 'Infpts', component: Infpts, name: 'StaticsInfpts', meta: { title: '客户管户机构管理查询' } },
// { path: 'dbipts/:extkey', component: Dbipts, name: 'StaticsDbipts', meta: { title: (tag) => { return '客户更新详情: ' + tag.params.extkey } } },
// { path: 'dbepts/:extkey', component: Dbipts, name: 'StaticsDbepts', meta: { title: (tag) => { return '客户信息修改: ' + tag.params.extkey } } },
{ path: 'infatp', component: Infatp, name: 'StaticsInfatp', meta: { title: '交易配置信息查询' } },
{ path: 'dbaatp', component: Dbaatp, name: 'StaticsDbaatp', meta: { title: '交易配置信息新增' } },
......
......@@ -39,7 +39,10 @@ export default {
let params = window.opener["params"];
let blob = params.blob
let docnam = params.docnam
var a = document.createElement("a"); //创建一个<a></a>标
this.fileDownLoad(docnam,blob)
},
fileDownLoad(docnam,blob){
let a = document.createElement("a"); //创建一个<a></a>标
a.href = URL.createObjectURL(blob); // 将流文件写入a标签的href属性值
a.download = docnam; //设置文件名
a.style.display = "none"; // 障眼法藏起来a标签
......@@ -50,7 +53,20 @@ export default {
async downLoadPdf () {
let params = window.opener["params"];
let docnam = params.docnam
let res = await Api.post('/service/gitopn/download', this.wrapper(docnam));
let rtnmsg = await Api.post('/service/gitopn/download', this.wrapper(docnam));
if (rtnmsg.respCode == SUCCESS) {
let base64Str = rtnmsg.data.download;
let bstr = window.atob(base64Str); // 解码 base-64 编码的字符串,base-64 编码使用方法是 btoa()
let length = bstr.length;
let u8arr = new Uint8Array(length); // 创建初始化为0的,包含length个元素的无符号整型数组
while (length--) {
u8arr[length] = bstr.charCodeAt(length); // 返回在指定的位置的字符的 Unicode 编码
}
let blob = new Blob([u8arr]);
let index = docnam.lastIndexOf(".");
docnam = docnam.substring(0,index)+".pdf";
this.fileDownLoad(docnam,blob)
}
}
}
};
......
......@@ -195,6 +195,7 @@ export default {
{ inifrm: "infbch", ininam: "机构信息查询", pntmiu: "10" },
{ inifrm: 'infoit', ininam: '消息信息查询OIT', pntmiu: '10' },
{ inifrm: 'infptm', ininam: '银行密押查询', pntmiu: '10' },
// { inifrm: 'infpts', ininam: '客户管户机构管理查询', pntmiu: '10' },
{ inifrm: "infcty", ininam: "国别信息查询", pntmiu: "10" },
{ inifrm: "infcur", ininam: "币种信息查询", pntmiu: "10" },
{ inifrm: "inffec", ininam: "费率信息查询", pntmiu: "10" },
......
export default class Pts {
constructor() {
this.data = {
extkey: "",
nam: "",
branch: "",
bchname: "",
}
}
}
export const Pattern = {
"extkey": [
{ "type": "string", "trigger": "blur" },
{ "max": 55, "message": "最大长度16个字符", "trigger": "blur" }
],
"nam": [
{ "type": "string", "trigger": "blur" },
{ "max": 140, "message": "最大长度40个字符", "trigger": "blur" }
],
"branch": [
{ "type": "string", "trigger": "blur" },
{ "max": 144, "message": "最大长度144个字符", "trigger": "blur" }
],
"bchname": [
{ "type": "string", "trigger": "blur" },
{ "max": 100, "message": "最大长度40个字符", "trigger": "blur" }
],
}
<template>
<m-pts ref="pts" title="dbepts" type="edit"></m-pts>
</template>
<script>
import Dbipts from "~/views/Statics/Pts/views/Dbipts";
export default {
name: "StaticsDbepts",
components: {
"m-pts": Dbipts
},
data() {
return {
rules:{required:false}
};
},
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<div class="eibs-tab">
<c-row>
<c-col :span="12" class="col-left">
<c-col :span="24">
<el-form-item label="客户号" prop="extkey">
<c-input
v-model="model.extkey"
placeholder="请输入extkey"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="客户名称" prop="nam">
<c-input
v-model="model.nam"
placeholder="请输入nam"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="机构号" prop="branch">
<c-input
v-model="model.branch"
placeholder="branch"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="机构号" prop="bchname">
<c-input
v-model="model.bchname"
placeholder="bchname"
></c-input>
</el-form-item>
</c-col>
</c-col>
</c-row>
<!-- <c-col :span="24">-->
<!-- </c-col>-->
</div>
</template>
<script>
import codes from "~/config/CodeTable";
export default {
name: "",
props: ["model"],
data() {
return {};
},
methods: {
getCodesByKey(key) {
return codes[key] ?? [];
},
},
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<div class="eContainer">
<c-page :title="title">
<el-form
ref="modelForm"
label-width="180px"
size="small"
label-position="right"
:model="model"
:rules="rules"
:validate-on-rule-change="false"
>
<c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="changePosition">
<el-tab-pane label="基本信息" name="info">
<c-content>
<m-pts-info :model="model" />
</c-content>
</el-tab-pane>
</c-tabs>
</el-form>
<div style="text-align: center">
<c-button
type="primary"
style="margin-right: 10px"
@click="commitEdit"
>提 交</c-button
>
<c-button type="primary" @click="goBack">返 回</c-button>
</div>
</c-page>
</div>
</template>
<script>
import Utils from "~/utils";
import Pts, { Pattern } from "../../model/Pts.js";
import PtsInfo from "./PtsInfo.vue";
import { add, edit, deleteById,queryById } from "~/service/test/pts.js";
export default {
name: "StaticsDbipts",
components: {
"m-pts-info": PtsInfo,
},
provide() {
return {
root: this,
};
},
props: {
type: {
type: String,
default: "info"
},
title: {
type: String,
default: "dbipts"
}
},
data() {
return {
tabVal: "PtsInfo",
model: new Pts().data,
tabVal: "pts",
rules: Pattern,
tabPosition:"tab-pts",
extkey:"",
nam:"",
branch:"",
bchname:"",
};
},
computed: {
isDisabled() {
return this.type === "info" || this.type === "delete";
},
},
created() {
if (this.type !== "add") {
const extkey = this.$route.params.extkey;
window.console.log(this.type)
queryById(extkey).then((res)=> {
if (res.extkey) {
this.model = res;
} else {
this.$message.error("客户不存在")
}
});
}
},
methods: {
commitEdit() {
this.$refs.modelForm.validate((validated) => {
if (validated) {
window.console.log("123")
edit(this.model)
.then((res) => {
this.$message.success("代码修改保存成功!");
this.goBack()
})
.catch((err) => {
this.$message.error("代码修改保存失败!");
});
}
});
},
goBack(update) {
this.$store.dispatch("TagsView/delView", this.$route);
this.$router.push({ name: "StaticsInfpts", params: { update } });
},
changePosition(tab,event){
this.tabPosition=event.target.getAttribute('id');
console.log(this.tabPosition)
},
},
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<div class="eibs-tab">
<!-- ----------左 ---------->
<c-col :span="12" class="col-left">
<c-col :span="24">
<el-form-item label="客户号" prop="extkey">
<c-input v-model="model.extkey" placeholder="请输入extkey"></c-input>
</el-form-item>
</c-col>
</c-col>
<!------------- 右 ---------->
<c-col :span="12" class="col-right">
<el-form-item label="当前管户机构" prop="bchlst">
<c-select
v-model="model.bchtyp"
style="width: 100%"
placeholder="请输入管户机构"
:code="getCodesByKey('bchlst')"
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12" style="text-align: right">
<el-button
type="primary"
icon="el-icon-search"
size="small"
@click="onSearch()"
>查询
</el-button>
</c-col>
</c-col>
<c-col :span="24">
<c-paging-table
:data="ptyData"
:columns="ptyColumns"
:pageNumber="model.pageNum"
:pageSize="model.pageSize"
:total="model.total"
v-on:queryFunc="queryFunc"
:border="true"
>
<c-table-column fixed="right" prop="op" label="操作" width="240px">
<template slot-scope="{ scope }">
<c-button
style="margin-left: 0"
size="small"
@click="infptsInfo(scope.$index, scope.row)"
>详情</c-button
>
<c-button
style="margin-left: 5px"
size="small"
type="primary"
@click="infptsEdit(scope.$index, scope.row)"
>修改</c-button
>
</template>
</c-table-column>
</c-paging-table>
<c-paging-table
:data="ptaData"
:columns="ptaColumns"
:pageNumber="model.pageNum"
:pageSize="model.pageSize"
:total="model.total"
v-on:queryFunc="queryFunc"
:border="true"
>
</c-paging-table>
</c-col>
<c-col :span="24" class="col-left">
<c-col :span="12">
<el-form-item label="客户经办机构" prop="bchkeyinr">
<c-input v-model="model.bchkeyinr" placeholder="" disabled></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24" class="col-left">
<c-col :span="12">
<el-form-item label="客户所属机构" prop="branchinr">
<c-input v-model="model.branchinr" placeholder="" disabled></c-input>
</el-form-item>
</c-col>
</c-col>
</div>
</template>
<script>
import codes from "~/config/CodeTable";
import { queryById,queryByPage,queryByPage2 } from "~/service/test/pts.js";
export default {
name: "",
props: ["model"],
inject: ["root"],
data() {
return {
ptyData: [],
ptyColumns: [
{ label: "客户号", prop: "extkey", width: "auto" },
{ label: "客户名称", prop: "nam", width: "auto" },
{ label: "机构号", prop: "branch", width: "auto" },
{ label: "机构名称", prop: "bchname", width: "auto" },
],
ptaData: [],
ptaColumns: [
{ label: "客户号", prop: "objkey", width: "auto" },
{ label: "客户名称", prop: "nam", width: "auto" },
{ label: "所属机构", prop: "branch", width: "auto" },
{ label: "机构名称", prop: "bchname", width: "auto" },
{ label: "经办机构", prop: "bchname", width: "auto" },
{ label: "机构名称", prop: "bchname", width: "auto" },
],
};
},
computed: {},
activated() {
const { update } = this.extkey;
if (update) {
this.onInfptySearch();
}
},
methods: {
handleReset() {
this.root.$refs.modelForm.resetFields();
},
onSearch() {
this.model.pageNum = 1;
this.model.pageSize = 5;
this.onInfptsSearch();
this.onInfptsSearch2();
},
onInfptsSearch() {
queryByPage(this.model).then(res => {
/**
* pageNumber: 0
* pageSize: 0
* total:
* totalPage: 0
*/
const list = res.list
this.ptyData = list
window.console.log(list);
this.model.pageNum = res.pageNumber
this.model.pageSize = res.pageSize
this.model.total = res.total
})
},
infptsEdit(index, row) {
this.$router.push(`/statics/dbepts/${row.extkey}`)
},
onInfptsSearch2() {
queryByPage2(this.model).then(res => {
/**
* pageNumber: 0
* pageSize: 0
* total:
* totalPage: 0
*/
const list = res.list
this.ptaData = list
this.model.total = res.total
})
},
infptsInfo(index, row) {
this.$router.push(`/statics/dbipts/${row.extkey}`)
},
queryFunc(pageNumber, pageSize) {
this.model.pageNum = pageNumber;
this.model.pageSize = pageSize;
this.onInfptySearch();
},
ptytypeChange(val) {
this.model.ptytyp = val;
},
getCodesByKey(key) {
return codes[key] ?? [];
},
},
};
</script>
<style scoped>
.table-button-item-list {
padding: 0;
margin: 0;
}
.table-button-item-list li {
list-style: none;
padding: 5px 0;
text-align: center;
color: #606266;
cursor: pointer;
}
</style>
<template>
<div class="eContainer">
<c-page title="客户管户机构管理">
<el-form
:model="model"
ref="modelForm"
label-width="120px"
label-position="right"
size="small"
>
<c-tabs v-model="tabVal" ref="elment" type="card">
<!--PD000039 -->
<el-tab-pane label="客户查询" name="infsea">
<c-content>
<m-infsea :model="model" ref="infsea"/>
</c-content>
</el-tab-pane>
</c-tabs>
</el-form>
</c-page>
</div>
</template>
<script>
import Infsea from "./Infsea";
export default {
name: "StaticsInfpts",
components: {
"m-infsea": Infsea,
},
provide() {
return {
root: this,
};
},
data() {
return {
tabVal: "infsea",
model: {
// pts
inr: "",
objtyp: "",
ptyinr: "",
bchlst:"",
nam:"",
branch:"",
bchname:"",
BCHKEYINR:"",
ROW_ID:"",
// adr
extkey: "",
// pta
ownref: "",
// paging
pageNum: 1,
pageSize: 5,
total: 0
},
};
},
};
</script>
<style></style>
......@@ -51,6 +51,11 @@ import Infptm from "./Ptm/views/Infptm"
import Dbiptm from "./Ptm/views/Dbiptm"
import Dbeptm from "./Ptm/views/Dbeptm"
import Infpts from "./Pts/views/Infpts"
import Dbipts from "./Pts/views/Dbipts"
import Dbepts from "./Pts/views/Dbepts"
import Dbaswm from "./Swm/views/Dbaswm";
import Dbdswm from "./Swm/views/Dbdswm";
import Dbeswm from "./Swm/views/Dbeswm";
......@@ -237,6 +242,10 @@ const StaticsRouter = [
{ path: 'infptm', component:Infptm, name: 'StaticsInfptm', meta: { title: '银行密押查询' } },
{ path: 'dbeptm/:inr', component: Dbeptm, name: 'StaticsDbeptm', meta: { title: (tag) => { return '银行密押更新: ' + tag.params.inr } } },
{ path: 'Infpts', component: Infpts, name: 'StaticsInfpts', meta: { title: '客户管户机构管理' } },
{ path: 'dbipts/:extkey', component: Dbipts, name: 'StaticsDbipts', meta: { title: (tag) => { return '客户更新详情: ' + tag.params.extkey } } },
{ path: 'dbepts/:extkey', component: Dbipts, name: 'StaticsDbepts', meta: { title: (tag) => { return '客户信息修改: ' + tag.params.extkey } } },
{ path: 'inffec', component: Inffec, name: 'StaticsInffec', meta: { title: '费率查询' } },
{ path: 'dbafec', component: Dbafec, name: 'StaticsDbafec', meta: { title: '费率新增' } },
{ path: 'dbifec/:inr', component: Dbifec, name: 'StaticsDbifec', meta: { title: (tag) => { return '费率详情: ' + tag.params.inr } } },
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment