Commit 28caff8a by zhouqian

Merge branch 'development-202206' into 'development-202206'

Development 202206

See merge request zhouqian/vue-gjjs!3
parents 4192ae08 92d4fd8d
import Api from "~/service/Api"
export function queryByPage(data) {
return Api.post("/test/cur/queryByPage", data)
}
export function queryDetailById(inr) {
return Api.post(`/test/cur/queryDetailById?inr=${inr}`)
}
export function add(data) {
return Api.post("/test/cur/add", data)
}
export function edit(data) {
return Api.post("/test/cur/edit", data)
}
export function deleteById(inr) {
return Api.post(`/test/cur/deleteById?inr=${inr}`)
}
// export function addAdrData(inr, data) {
// return Api.post(`/test/cur/addAdrData?inr=${inr}`, data)
// }
// export function updateAdrData(inr, data) {
// return Api.post(`/test/cur/updateAdrData?inr=${inr}`, data)
// }
// export function deleteAdrData(data) {
// return Api.post(`/test/cur/deleteAdrData`, data)
// }
<template>
<m-cur ref="cur" title="dbacur" type="add"></m-cur>
</template>
<script>
import Dbicur from "~/views/Statics/Dbicur";
export default {
name: "StaticsDbacur",
components: {
"m-cur": Dbicur
},
data() {
return {};
},
mounted() {
// this.$refs.cur.rules['ptaList'] = [
// { type: 'array', required: true, min: 1, message: '地址信息栏不能为空' }
// ]
}
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<m-cur title="dbdcur" type="delete"></m-cur>
</template>
<script>
import Dbicur from "~/views/Statics/Dbicur";
export default {
name: "StaticsDbdcur",
components: {
"m-cur": Dbicur
},
data() {
return {};
},
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<m-cur title="dbecur" type="edit"></m-cur>
</template>
<script>
import Dbicur from "~/views/Statics/Dbicur";
export default {
name: "StaticsDbecur",
components: {
"m-cur": Dbicur
},
data() {
return {};
},
};
</script>
<style>
</style>
\ No newline at end of file
......@@ -42,19 +42,22 @@
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="机构类型" prop="bchtyp">
<c-select
v-model="model.bchtyp"
placeholder="请输入机构类型"
style="width:100%"
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<p style="font-size:12px;">(1-经办行;2-非经办行;3-总行押汇中心;4-押汇中心XX组﹔5-押汇中心XX1组;6-收单行)</p>
<c-col :span="11" :offset="1">
<span style="font-size:12px;">(1-经办行;2-非经办行;3-总行押汇中心;4-押汇中心XX组﹔5-押汇中心XX1组;6-收单行)</span>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="12">
......@@ -67,8 +70,14 @@
</el-form-item>
</c-col>
<c-col :span="12">
<p style="font-size:12px;">(机构编码,如总行单证中心的机构编码为“08350000")</p>
<c-col :span="7" :offset="1">
<span style="font-size:12px;">(机构编码,如总行单证中心的机构编码为“08350000")</span>
</c-col>
<c-col :span="3" :offset="1">
<el-form-item>
<c-checkbox v-model="model.zmqflg">自贸区标志</c-checkbox>
</el-form-item>
</c-col>
</c-col>
......@@ -125,12 +134,12 @@
</el-form-item>
</c-col>
<c-col :span="12">
<p style="font-size:12px;">(两行地址)</p>
<c-col :span="11" :offset="1">
<span style="font-size:12px;">(两行地址)</span>
</c-col>
</c-col>
<c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="" prop="adr2">
<c-input
......@@ -153,8 +162,8 @@
</el-form-item>
</c-col>
<c-col :span="12">
<p style="font-size:12px;">(两行地址)</p>
<c-col :span="11" :offset="1">
<span style="font-size:12px;">(两行地址)</span>
</c-col>
</c-col>
......@@ -290,7 +299,7 @@
</c-col>
<c-col :span="11" :offset="1">
<p style="font-size:12px;">经办行自身用“AA”标识,其他代办机构用“AB"等标识,代办机构标识符不要重复</p>
<span style="font-size:12px;">经办行自身用“AA”标识,其他代办机构用“AB"等标识,代办机构标识符不要重复</span>
</c-col>
</c-col>
......@@ -306,7 +315,7 @@
</c-col>
<c-col :span="11" :offset="1">
<p style="font-size:12px;">("0”-总行单证中心;“1”-分行或总行直属支行;“2”-二级分行或分行下属支行)</p>
<span style="font-size:12px;">("0”-总行单证中心;“1”-分行或总行直属支行;“2”-二级分行或分行下属支行)</span>
</c-col>
</c-col>
......@@ -340,7 +349,6 @@
</el-form-item>
</c-col>
</c-col>
</c-col>
</c-content>
</div>
</template>
......@@ -350,7 +358,16 @@ export default {
name: "",
props: ["model"],
data() {
return {};
return {
bchtyp: [
{label:"经办行",value:"1" },
{label:"非经办行",value:"2" },
{label:"总行押汇中心",value:"3" },
{label:"押汇中心XX组",value:"4" },
{ label: "押汇中心XX1组", value: "5" },
{label:"收单行",value:"6" },
],
};
},
};
</script>
......
......@@ -14,15 +14,15 @@
<c-tabs v-model="tabVal" ref="elment" type="card">
<el-tab-pane label="BCH" name="bchp0">
<m-bchp0 :model="model" :codes="codes" />
<m-bchp0 :model="model" />
</el-tab-pane>
<el-tab-pane label="Related clients" name="bchp1">
<m-bchp1 :model="model" :codes="codes" />
<m-bchp1 :model="model" />
</el-tab-pane>
<el-tab-pane label="Authorization" name="bchp2">
<m-bchp2 :model="model" :codes="codes" />
<m-bchp2 :model="model" />
</el-tab-pane>
</c-tabs>
</el-form>
......@@ -175,49 +175,6 @@ export default {
},
};
// export default {
// name: "StaticsDbibch",
// components: {
// "m-bchp0": Bchp0,
// "m-bchp1": Bchp1,
// "m-bchp2": Bchp2,
// },
// provide() {
// return {
// root: this,
// };
// },
// mixins: [commonProcess], // 里面包含了Default、Check等的公共处理
// data() {
// return {
// tabVal: "bchp0",
// trnName: "dbibch",
// model: new Dbibch().data,
// checkRules: Check,
// defaultRules: Default,
// pattern: Pattern,
// rules: null,
// codes: { ...CodeTable },
// };
// },
// methods: {
// // tabClick(tab) {
// // this.tabClick();
// // }
// },
// created: async function () {
// console.log("进入dbibch交易");
// let rtnmsg = await this.init({});
// if (rtnmsg.respCode == SUCCESS) {
// this.updateModel(rtnmsg.data);
// //TODO 处理数据逻辑
// } else {
// this.$notify.error({ title: "错误", message: "服务请求失败!" });
// }
// },
// };
</script>
<style>
......
<template>
<div class="eibs-tab">
<c-table :list="model.actList" :columnsConfig="columns"></c-table>
</div>
</template>
<script>
export default {
props: ['model'],
data() {
return {
columns: [
{ label: "typ", prop: "typ", width: "auto" },
{ label: "cur", prop: "cur", width: "auto" },
{ label: "extkey", prop: "extkey", width: "auto" },
{ label: "trmtyp", prop: "trmtyp", width: "auto" },
{ label: "nam", prop: "nam", width: "auto" },
],
};
}
};
</script>
<style>
</style>
\ No newline at end of file
export default class Pty {
constructor() {
this.data = {
inr: "",
extkey: "",
nam: "",
bic: "",
bicaut: "",
bid: "",
blz: "",
clc: "",
dpt: "",
eml: "",
fax1: "",
fax2: "",
nam1: "",
nam2: "",
nam3: "",
str1: "",
str2: "",
loczip: "",
loctxt: "",
loc2: "",
loccty: "",
cortyp: "",
pob: "",
pobzip: "",
pobtxt: "",
tel1: "",
tel2: "",
tid: "",
tlx: "",
tlxaut: "",
uil: "",
ver: "",
manmod: "",
rtgflg: "",
tarflg: "",
dtacid: "",
dtecid: "",
etgextkey: "",
adr1: "",
adr2: "",
adr3: "",
adr4: "",
discod: "",
namelc: "",
adrelc: "",
dtgcid: "",
// pat
inrpat: "",
ptyinrpat: "",
nampat: "",
pripat: "",
enopat: "",
objtyppat: "",
objinrpat: "",
objkeypat: "",
usgpat: "",
verpat: "",
bicpat: "",
adrstapat: "",
ptytyppat: "",
ptyextkeypat: "",
tidpat: "",
etgextkeypat: "",
branchinrpat: "",
bchkeyinrpat: "",
nam1pat: "",
issbchinfpat: "",
opnflgpat: "",
}
}
}
export const Pattern = {
"usgpat": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 3, "message": "最大长度3个字符", "trigger": "blur" }
],
"adrstapat": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 1, "message": "最大长度1个字符", "trigger": "blur" }
],
"inr": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 8, "message": "最大长度8个字符", "trigger": "blur" }
],
"extkey": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 16, "message": "最大长度16个字符", "trigger": "blur" }
],
"nam": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 40, "message": "最大长度40个字符", "trigger": "blur" }
],
"bic": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 11, "message": "最大长度11个字符", "trigger": "blur" }
],
"bicaut": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 1, "message": "最大长度1个字符", "trigger": "blur" }
],
"bid": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 35, "message": "最大长度35个字符", "trigger": "blur" }
],
"blz": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 8, "message": "最大长度8个字符", "trigger": "blur" }
],
"clc": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 35, "message": "最大长度35个字符", "trigger": "blur" }
],
"dpt": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 35, "message": "最大长度35个字符", "trigger": "blur" }
],
"eml": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 80, "message": "最大长度80个字符", "trigger": "blur" }
],
"fax1": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 20, "message": "最大长度20个字符", "trigger": "blur" }
],
"fax2": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 20, "message": "最大长度20个字符", "trigger": "blur" }
],
"nam1": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 35, "message": "最大长度35个字符", "trigger": "blur" }
],
"nam2": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 35, "message": "最大长度35个字符", "trigger": "blur" }
],
"nam3": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 35, "message": "最大长度35个字符", "trigger": "blur" }
],
"str1": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 35, "message": "最大长度35个字符", "trigger": "blur" }
],
"str2": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 35, "message": "最大长度35个字符", "trigger": "blur" }
],
"loczip": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 10, "message": "最大长度10个字符", "trigger": "blur" }
],
"loctxt": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 25, "message": "最大长度25个字符", "trigger": "blur" }
],
"loc2": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 35, "message": "最大长度35个字符", "trigger": "blur" }
],
"loccty": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 2, "message": "最大长度2个字符", "trigger": "blur" }
],
"cortyp": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 3, "message": "最大长度3个字符", "trigger": "blur" }
],
"pob": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 35, "message": "最大长度35个字符", "trigger": "blur" }
],
"pobzip": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 10, "message": "最大长度10个字符", "trigger": "blur" }
],
"pobtxt": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 25, "message": "最大长度25个字符", "trigger": "blur" }
],
"tel1": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 20, "message": "最大长度20个字符", "trigger": "blur" }
],
"tel2": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 20, "message": "最大长度20个字符", "trigger": "blur" }
],
"tid": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 23, "message": "最大长度23个字符", "trigger": "blur" }
],
"tlx": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 20, "message": "最大长度20个字符", "trigger": "blur" }
],
"tlxaut": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 1, "message": "最大长度1个字符", "trigger": "blur" }
],
"uil": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 2, "message": "最大长度2个字符", "trigger": "blur" }
],
"ver": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 4, "message": "最大长度4个字符", "trigger": "blur" }
],
"manmod": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 1, "message": "最大长度1个字符", "trigger": "blur" }
],
"rtgflg": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 1, "message": "最大长度1个字符", "trigger": "blur" }
],
"tarflg": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 1, "message": "最大长度1个字符", "trigger": "blur" }
],
"dtacid": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 23, "message": "最大长度23个字符", "trigger": "blur" }
],
"dtecid": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 23, "message": "最大长度23个字符", "trigger": "blur" }
],
"etgextkey": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 8, "message": "最大长度8个字符", "trigger": "blur" }
],
"adr1": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 40, "message": "最大长度40个字符", "trigger": "blur" }
],
"adr2": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 40, "message": "最大长度40个字符", "trigger": "blur" }
],
"adr3": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 40, "message": "最大长度40个字符", "trigger": "blur" }
],
"adr4": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 40, "message": "最大长度40个字符", "trigger": "blur" }
],
"discod": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 6, "message": "最大长度6个字符", "trigger": "blur" }
],
"namelc": [
{ "type": "string", "trigger": "blur" },
{ "max": 216, "message": "最大长度216个字符", "trigger": "blur" }
],
"adrelc": [
{ "type": "string", "trigger": "blur" },
{ "max": 216, "message": "最大长度216个字符", "trigger": "blur" }
],
"dtgcid": [
{ "type": "string", "trigger": "blur" },
{ "max": 23, "message": "最大长度23个字符", "trigger": "blur" }
]
}
<template>
<div class="eibs-tab">
<div style="text-align: right">
<c-button size="small" type="primary" @click="adrAdd()"> 新增 </c-button>
</div>
<el-form-item label="" label-width="0" prop="ptaList">
<c-table :columnsConfig="columns" :list="model.ptaList">
<c-table-column fixed="right" prop="op" label="操作" width="200px">
<template slot-scope="{ scope }">
<button
class="el-button el-button--default el-button--small"
style="margin-left: 0"
size="small"
:disabled="false"
@click.prevent="adrInfo(scope.$index, scope.row)"
>
<span>详情</span>
</button>
<c-button
style="margin-left: 5px"
size="small"
type="primary"
@click="adrEdit(scope.$index, scope.row)"
>
修改
</c-button>
<c-button
style="margin-left: 5px"
size="small"
type="primary"
@click="adrDelete(scope.$index, scope.row)"
>
删除
</c-button>
</template>
</c-table-column>
</c-table>
</el-form-item>
<el-dialog
:title="
'地址信息:' +
(operate === 'details' ? '详情' : operate === 'edit' ? '修改' : '新增')
"
:visible.sync="adrDialog"
top="10vh"
width="80%"
:destroy-on-close="true"
:before-close="handleClose"
>
<m-adr-info ref="adr" :adr="adr" :operate="operate"></m-adr-info>
<span slot="footer" class="dialog-footer">
<button
class="el-button el-button--default el-button--small"
style="margin-left: 0"
size="small"
:disabled="false"
@click.prevent="cancel"
>
<span>取 消</span>
</button>
<c-button type="primary" @click="cancel" v-if="operate === 'details'"
>确 定</c-button
>
<c-button type="primary" @click="editAdr" v-if="operate === 'edit'"
>保 存</c-button
>
<c-button type="primary" @click="saveAdr" v-if="operate === 'add'"
>保 存</c-button
>
</span>
</el-dialog>
</div>
</template>
<script>
import Adr from "./Adr.js";
import AdrInfo from "./AdrInfo.vue";
import {
addAdrData,
updateAdrData,
deleteAdrData,
} from "~/service/test/pty.js";
export default {
name: "AdrList",
components: {
"m-adr-info": AdrInfo,
},
inject: ["root"],
props: ["model"],
data() {
return {
adrDialog: false,
adr: null,
operate: "",
operateIdx: 0,
columns: [
{ label: "usgpat", prop: "usgpat", width: "auto" },
{ label: "adrstapat", prop: "adrstapat", width: "auto" },
{ label: "extkey", prop: "extkey", width: "auto" },
{ label: "bic", prop: "bic", width: "auto" },
{ label: "nam1", prop: "nam1", width: "auto" },
{ label: "nam2", prop: "nam2", width: "auto" },
{ label: "nam3", prop: "nam3", width: "auto" },
{ label: "str1", prop: "str1", width: "auto" },
{ label: "str2", prop: "str2", width: "auto" },
{ label: "adr1", prop: "adr1", width: "auto" },
{ label: "adr2", prop: "adr2", width: "auto" },
{ label: "adr3", prop: "adr3", width: "auto" },
],
};
},
methods: {
/**
* 详情
*/
adrInfo(index, row) {
this.adr = { ...row };
this.operate = "details";
this.operateIdx = index;
this.adrDialog = true;
},
/**
* 新增
*/
adrAdd() {
this.adr = new Adr().data;
this.operate = "add";
this.adrDialog = true;
},
/**
* 修改
*/
adrEdit(index, row) {
this.adr = { ...row };
this.operate = "edit";
this.operateIdx = index;
this.adrDialog = true;
},
/**
* 删除
*/
adrDelete(index, row) {
this.$confirm("是否真的删除?", "提示", {
confirmButtonText: "确认",
cancelButtonText: "取消",
type: "warning",
}).then((res) => {
deleteAdrData(row).then((res) => {
if (res) {
this.model.ptaList.splice(index, 1);
this.$message.success("删除成功!");
} else {
this.$message.error("删除失败!");
}
});
});
},
cancel() {
this.handleClose();
},
editAdr() {
this.$refs.adr.$refs.modelForm.validate((validated) => {
if (validated) {
updateAdrData(this.model.inr, this.adr)
.then((res) => {
if (res.inr) {
this.$message.success("修改地址信息成功!");
// this.model.ptaList.splice(this.operateIdx, 1, this.adr);
this.model.ptaList = res.ptaList;
this.handleClose();
}
})
.catch((error) => {
this.$message.error("修改地址信息失败!");
});
}
});
},
/**
* Adr新增有2种情况
* 1. pty的新增界面下,此时pty的inr为空,adr需要在pty插入之后,才能执行新增,
* 所以我们在这里不能直接调用新增接口,将adr添加到ptaList中,随着这个pty一起传入接口。
* 2. pty的修改界面下,可直接新增 ;
*/
saveAdr() {
for (const key in this.adr) {
if (Object.hasOwnProperty.call(this.adr, key)) {
const v = this.adr[key];
if (typeof v === 'string' && v === '') {
this.adr[key] = " "
}
}
}
if (this.root.type === "add") {
this.model.ptaList.push(this.adr);
this.handleClose();
} else {
this.$refs.adr.$refs.modelForm.validate((validated) => {
if (validated) {
addAdrData(this.model.inr, this.adr)
.then((res) => {
if (res && res.inr) {
this.$message.success("保存地址信息成功!");
this.model.ptaList = res.ptaList;
this.handleClose();
}
})
.catch((error) => {
this.$message.error("保存地址信息失败!");
});
}
});
}
},
handleClose(done) {
this.adrDialog = false;
if (done && typeof done === "function") {
done();
}
},
},
};
</script>
<style></style>
export default class Cur {
constructor() {
this.data = {
inr: "",
cod: "",
newcur: "",
altcod: "",
dec: "",
seq: "",
acc1: "",
acc2: "",
bsrmar: "",
sqrmar: "",
glbrat: "",
dif: "",
bas: "",
rndunt: "",
begdat: "",
enddat: "",
odrintday: "",
dbtday: "",
cdtday: "",
maxcur: "",
maxamt: "",
ver: "",
etgextkey: "",
}
}
}
export const Pattern = {
"inr": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 8, "message": "最大长度8个字符", "trigger": "blur" }
],
"cod": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 3, "message": "最大长度3个字符", "trigger": "blur" }
],
"newcur": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 3, "message": "最大长度3个字符", "trigger": "blur" }
],
"altcod": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 3, "message": "最大长度3个字符", "trigger": "blur" }
],
"dec": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,1}$/, "message": "整数不能超过1位", "trigger": "blur" }
],
"seq": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,2}$/, "message": "整数不能超过2位", "trigger": "blur" }
],
"acc1": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 16, "message": "最大长度16个字符", "trigger": "blur" }
],
"acc2": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 16, "message": "最大长度16个字符", "trigger": "blur" }
],
"bsrmar": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,14}(\.\d{1,6})?$/, "message": "整数不能超过14位,小数不能超过6位", "trigger": "blur" }
],
"sqrmar": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,14}(\.\d{1,6})?$/, "message": "整数不能超过14位,小数不能超过6位", "trigger": "blur" }
],
"glbrat": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,14}(\.\d{1,6})?$/, "message": "整数不能超过14位,小数不能超过6位", "trigger": "blur" }
],
"dif": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,8}(\.\d{1,2})?$/, "message": "整数不能超过8位,小数不能超过2位", "trigger": "blur" }
],
"bas": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,4}$/, "message": "整数不能超过4位", "trigger": "blur" }
],
"rndunt": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,8}(\.\d{1,3})?$/, "message": "整数不能超过8位,小数不能超过3位", "trigger": "blur" }
],
"begdat": [
{ "type": "date", "trigger": "blur" }
],
"enddat": [
{ "type": "date", "trigger": "blur" }
],
"odrintday": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,4}$/, "message": "整数不能超过4位", "trigger": "blur" }
],
"dbtday": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,3}$/, "message": "整数不能超过3位", "trigger": "blur" }
],
"cdtday": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,3}$/, "message": "整数不能超过3位", "trigger": "blur" }
],
"maxcur": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 3, "message": "最大长度3个字符", "trigger": "blur" }
],
"maxamt": [
{ "required": true, "message": "必输项", "trigger": "blur" },
{ "pattern": /^-?\d{0,18}(\.\d{1,3})?$/, "message": "整数不能超过18位,小数不能超过3位", "trigger": "blur" }
],
"ver": [
{ "required": true, "message": "必输项", "type": "string", "trigger": "blur" },
{ "max": 4, "message": "最大长度4个字符", "trigger": "blur" }
],
}
\ No newline at end of file
<template>
<div class="eibs-tab">
<c-table :list="model.ptcList" :columnsConfig="columns"></c-table>
</div>
</template>
<script>
export default {
props: ["model"],
data() {
return {
columns: [
{ label: "gen", prop: "gen", width: "auto" },
{ label: "nam", prop: "nam", width: "auto" },
{ label: "dep", prop: "dep", width: "auto" },
{ label: "teloff", prop: "teloff", width: "auto" },
{ label: "eml", prop: "eml", width: "auto" },
{ label: "telfax", prop: "telfax", width: "auto" },
],
};
},
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<div class="eibs-tab">
<c-col :span="24">
<div>汇率信息</div>
</c-col>
<c-col :span="24">
<c-table :list="model.ptyratList" :columnsConfig="ptyratColumns"></c-table>
</c-col>
<c-col :span="24">
<div>费率信息</div>
</c-col>
<c-col :span="24">
<c-table :list="model.fecList" :columnsConfig="fecColumns"></c-table>
</c-col>
</div>
</template>
<script>
export default {
props: ["model"],
data() {
return {
ptyratColumns: [
{ label: "cur", prop: "cur", width: "auto" },
{ label: "buytyp", prop: "buytyp", width: "auto" },
{ label: "buyrat", prop: "buyrat", width: "auto" },
{ label: "seltyp", prop: "seltyp", width: "auto" },
{ label: "selrat", prop: "selrat", width: "auto" },
],
fecColumns: [
{ label: "codFee", prop: "codFee", width: "auto" },
{ label: "begdat", prop: "begdat", width: "auto" },
{ label: "enddat", prop: "enddat", width: "auto" },
{ label: "calcbs", prop: "calcbs", width: "auto" },
{ label: "mincur", prop: "mincur", width: "auto" },
{ label: "minamt", prop: "minamt", width: "auto" },
{ label: "maxamt", prop: "maxamt", width: "auto" },
{ label: "untamt", prop: "untamt", width: "auto" },
{ label: "ratcal", prop: "ratcal", width: "auto" },
],
};
},
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<div class="eContainer">
<c-page :title="title">
<el-form ref="modelForm" label-width="120px" size="small" label-position="right" :model="model" :rules="rules"
:validate-on-rule-change="false" :disabled="isDisabled">
<c-tabs v-model="tabVal" ref="elment" type="card">
<el-tab-pane label="基本信息" name="pty">
<c-content>
<m-pty-info :model="model" />
</c-content>
</el-tab-pane>
<el-tab-pane label="地址信息" name="pta,adr">
<c-content>
<m-adr-list :model="model" />
</c-content>
</el-tab-pane>
<el-tab-pane label="账号信息" name="act">
<c-content>
<m-act-info :model="model" />
</c-content>
</el-tab-pane>
<el-tab-pane label="联系人信息" name="ptc">
<c-content>
<m-ptc-info :model="model" />
</c-content>
</el-tab-pane>
<el-tab-pane label="汇率/费率信息" name="ptyrat,fec,fee">
<c-content>
<m-rat-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="commitAdd" v-if="type === 'add'">提 交</c-button>
<c-button type="primary" style="margin-right: 10px" @click="commitEdit" v-if="type === 'edit'">提 交</c-button>
<c-button type="primary" style="margin-right: 10px" @click="commitDelete" v-if="type === 'delete'">提 交
</c-button>
<c-button type="primary" @click="goBack">返 回</c-button>
</div>
</c-page>
</div>
</template>
<script>
import Utils from "~/utils";
import Cur, { Pattern } from "./Cur.js";
import PtyInfo from "./PtyInfo.vue";
import AdrList from "./AdrList.vue";
import ActInfo from "./ActInfo.vue";
import PtcInfo from "./PtcInfo.vue";
import RatInfo from "./RatInfo.vue";
import { queryDetailById, add, edit, deleteById } from "~/service/test/cur.js";
export default {
name: "StaticsDbicur",
components: {
"m-pty-info": PtyInfo,
"m-adr-list": AdrList,
"m-act-info": ActInfo,
"m-ptc-info": PtcInfo,
"m-rat-info": RatInfo,
},
provide() {
return {
root: this,
};
},
props: {
type: {
type: String,
default: "info"
},
title: {
type: String,
default: "dbipty"
}
},
data() {
return {
model: new Cur().data,
tabVal: "pty",
rules: Pattern,
};
},
computed: {
isDisabled() {
return this.type === "info" || this.type === "delete";
},
},
created() {
if (this.type !== "add") {
const inr = this.$route.params.inr;
queryDetailById(inr).then((res) => {
if (res.inr) {
this.model = res;
} else {
this.$message.error("客户不存在")
}
});
}
},
methods: {
commitAdd() {
this.$refs.modelForm.validate((validated) => {
if (validated) {
add(this.model)
.then((res) => {
this.$message.success("保存成功!");
this.goBack(true)
})
.catch((err) => {
this.$message.error("保存失败!");
});
} else {
Utils.formValidateTips(this.$refs.modelForm.fields)
}
});
},
commitEdit() {
this.$refs.modelForm.validate((validated) => {
if (validated) {
edit(this.model)
.then((res) => {
this.$message.success("保存成功!");
this.goBack()
})
.catch((err) => {
this.$message.error("保存失败!");
});
} else {
Utils.formValidateTips(this.$refs.modelForm.fields)
}
});
},
commitDelete() {
this.$confirm("是否确认删除?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
deleteById(this.model.inr)
.then((res) => {
this.$message.success("删除成功!");
this.goBack(true)
})
.catch((err) => {
this.$message.error("删除失败!");
});
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
});
});
},
/**
* update 是否更新infpty的查询列表
*/
goBack(update) {
this.$store.dispatch("TagsView/delView", this.$route);
this.$router.push({ name: "StaticsInfpty", params: { update } });
},
},
};
</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="cod">
<c-select v-model="model.cod" placeholder="请输入货币代码" style="width: 100%">
</c-select>
</el-form-item>
</c-col>
</c-col>
<!------------- 右 ---------->
<c-col :span="12" class="col-right">
<c-col :span="24">
<el-form-item label="货币描述" prop="cod">
<c-select v-model="model.seanam" placeholder="请输入货币描述" style="width: 100%">
</c-select>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24" style="text-align: right; height: 36.8px">
<el-button size="small" @click="handleReset">重置</el-button>
<el-button type="primary" icon="el-icon-search" size="small" @click="onInfcurSearch">查询
</el-button>
</c-col>
<c-col :span="24">
<c-paging-table :data="curData" :columns="curColumns" :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="curInfo(scope.$index, scope.row)">详情</c-button>
<c-button style="margin-left: 5px" size="small" type="primary" @click="curEdit(scope.$index, scope.row)">修改
</c-button>
<c-button size="small" style="margin-left: 5px" @click="curDelete(scope.$index, scope.row)">删除</c-button>
<!-- <el-popover placement="top-start" width="50" trigger="click">
<ul class="table-button-item-list">
<li>
<c-button size="small" style="margin-left: 0">指派</c-button>
</li>
<li>
<c-button size="small" style="margin-left: 0">删除</c-button>
</li>
</ul>
<a slot="reference" href="javascript:void(0)" style="margin-left: 5px">
<i class="el-icon-more"></i>
</a>
</el-popover> -->
</template>
</c-table-column>
</c-paging-table>
</c-col>
</div>
</template>
<script>
import codes from "~/config/CodeTable";
import { queryByPage } from "~/service/test/cur.js";
export default {
name: "",
props: ["model"],
inject: ["root"],
data() {
return {
curData: [],
curColumns: [
{ label: '币种', prop: 'extkey', width: '200' },
{ label: '描述', prop: '', width: '636' },
],
};
},
methods: {
handleReset() {
this.root.$refs.modelForm.resetFields();
},
async handleReset() {
this.model.cod = ""
this.model.seanam = ""
},
onInfcurSearch() {
queryByPage(this.model).then(res => {
/**
* pageNumber: 0
* pageSize: 0
* total: 69
* totalPage: 0
*/
const list = res.list
this.curData = list
this.model.pageNum = res.pageNumber
this.model.pageSize = res.pageSize
this.model.total = res.total
})
},
async onInfbutSearow() {
let rtnmsg = await this.executeRule("infbut.searow")
if (rtnmsg.respCode == SUCCESS) {
console.log(rtnmsg.data);
//TODO 处理数据逻辑
this.updateModel(rtnmsg.data);
this.stmData.data = rtnmsg.data.infbut_dspstm.rows;
}
else {
this.$notify.error({ title: '错误', message: '服务请求失败!' });
}
},
// onInfcurSearch() {
// queryByPage(this.model).then(res => {
// /**
// * pageNumber: 0
// * pageSize: 0
// * total: 69
// * totalPage: 0
// */
// const list = res.list
// this.curData = list
// this.model.pageNum = res.pageNumber
// this.model.pageSize = res.pageSize
// this.model.total = res.total
// })
// },
queryFunc(pageNumber, pageSize) {
this.model.pageNum = pageNumber
this.model.pageSize = pageSize
this.onInfcurSearch()
},
curtypeChange(val) {
this.model.curtyp = val;
},
getCodesByKey(key) {
return codes[key] ?? [];
},
curAdd() {
this.$router.push(`/statics/dbacur`)
},
curInfo(index, row) {
this.$router.push(`/statics/dbicur/${row.inr}`)
},
curEdit(index, row) {
this.$router.push(`/statics/dbecur/${row.inr}`)
},
curDelete(index, row) {
this.$router.push(`/statics/dbdcur/${row.inr}`)
},
},
};
</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>
<!-- <el-tab-pane label="货币" name="curpo">
<c-content>
<m-curpo :model="model" ref="curpo" />
</c-content>
</el-tab-pane> -->
</c-tabs>
</el-form>
</c-page>
</div>
</template>
<script>
import Infsea from "./Infsea";
export default {
name: "StaticsInfcur",
components: {
"m-infsea": Infsea,
},
provide() {
return {
root: this,
};
},
data() {
return {
tabVal: "infsea",
model: {
// cur
cod: "",
seanam: "",
},
};
},
};
</script>
<style>
</style>
......@@ -32,6 +32,18 @@ import Dbagtx from "./Dbagtx";
import Dbegtx from "./Dbegtx";
import Dbdgtx from "./Dbdgtx";
import Infcur from "./Infcur";
import Dbacur from "./Dbacur";
import Dbicur from "./Dbicur";
import Dbecur from "./Dbecur";
import Dbdcur from "./Dbdcur";
import Infbch from "./Infbch";
import Dbibch from "./Dbibch";
import Dbabch from "./Dbabch";
import Dbebch from "./Dbebch";
import Dbdbch from "./Dbdbch";
const StaticsRouter = [
{ path: 'infpty', component: Infpty, name: 'StaticsInfpty', meta: { title: '客户查询' } },
{ path: 'dbapty', component: Dbapty, name: 'StaticsDbapty', meta: { title: '客户新增' } },
......@@ -67,6 +79,18 @@ const StaticsRouter = [
{ path: 'dbigtx/:inr', component: Dbigtx, name: 'StaticsDbigtx', meta: { title: (tag) => { return '保函文本详情: ' + tag.params.inr } } },
{ path: 'dbegtx/:inr', component: Dbegtx, name: 'StaticsDbegtx', meta: { title: (tag) => { return '保函文本修改: ' + tag.params.inr } } },
{ path: 'dbdgtx/:inr', component: Dbdgtx, name: 'StaticsDbdgtx', meta: { title: (tag) => { return '保函文本删除: ' + tag.params.inr } } },
{ path: 'infcur', component: Infcur, name: 'StaticsInfcur', meta: { title: '币种查询' } },
{ path: 'dbacur', component: Dbacur, name: 'StaticsDbacur', meta: { title: '币种新增' } },
{ path: 'dbicur/:inr', component: Dbicur, name: 'StaticsDbicur', meta: { title: (tag) => { return '币种详情: ' + tag.params.inr } } },
{ path: 'dbecur/:inr', component: Dbecur, name: 'StaticsDbecur', meta: { title: (tag) => { return '币种修改: ' + tag.params.inr } } },
{ path: 'dbdcur/:inr', component: Dbdcur, name: 'StaticsDbdcur', meta: { title: (tag) => { return '币种删除: ' + tag.params.inr } } },
{ path: 'infbch', component: Infbch, name: 'StaticsInfbch', meta: { title: '客户查询' } },
{ path: 'dbabch', component: Dbabch, name: 'StaticsDbabch', meta: { title: '客户新增' } },
{ path: 'dbibch/:inr', component: Dbibch, name: 'StaticsDbibch', meta: { title: (tag) => { return '客户详情: ' + tag.params.inr } } },
{ path: 'dbebch/:inr', component: Dbebch, name: 'StaticsDbebch', meta: { title: (tag) => { return '客户修改: ' + tag.params.inr } } },
{ path: 'dbdbch/:inr', component: Dbdbch, name: 'StaticsDbdbch', meta: { title: (tag) => { return '客户删除: ' + tag.params.inr } } },
]
export default StaticsRouter
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