Commit 993f883d by zhoujunpeng

Merge branch 'develop' of http://192.168.0.110:11080/isc-v3.1/isc-web-vue into develop

parents 25f15f37 aa3798b0
...@@ -4,45 +4,47 @@ export default class Fxdgrp { ...@@ -4,45 +4,47 @@ export default class Fxdgrp {
constructor() { constructor() {
this.data = { this.data = {
rec: { rec: {
ownref: "", // 结售汇业务参考号 .fxtp.fxdgrp.rec.ownref ownref: "", // 结售汇业务参考号 fxdgrp.rec.ownref
nam: "", // 名称 .fxtp.fxdgrp.rec.nam nam: "", // 名称 fxdgrp.rec.nam
fxtyp: "", // 结售汇类型 .fxtp.fxdgrp.rec.fxtyp fxtyp: "", // 结售汇类型 fxdgrp.rec.fxtyp
opndat: "", // 登记日期 .fxtp.fxdgrp.rec.opndat opndat: "", // 登记日期 fxdgrp.rec.opndat
valdat: "", // 起息日 .fxtp.fxdgrp.rec.valdat valdat: "", // 起息日 fxdgrp.rec.valdat
rat: "", // 对外牌价 .fxtp.fxdgrp.rec.rat rat: 0.000000, // 对外牌价 fxdgrp.rec.rat
midrat: "", // 中间价 .fxtp.fxdgrp.rec.midrat midrat: 0.000000, // 中间价 fxdgrp.rec.midrat
quoref: "", // 询价编号 .fxtp.fxdgrp.rec.quoref quoref: "", // 询价编号 fxdgrp.rec.quoref
fudref: "", // 资金部编号 .fxtp.fxdgrp.rec.fudref fudref: "", // 资金部编号 fxdgrp.rec.fudref
setdat: "", // 远期交割日 .fxtp.fxdgrp.rec.setdat setdat: "", // 远期交割日 fxdgrp.rec.setdat
setdatfrm: "", // 择期交割起始日 .fxtp.fxdgrp.rec.setdatfrm setdatfrm: "", // 择期交割起始日 fxdgrp.rec.setdatfrm
setdatto: "", // 择期交割截止日 .fxtp.fxdgrp.rec.setdatto setdatto: "", // 择期交割截止日 fxdgrp.rec.setdatto
trnman: "", // 交易主体 .fxtp.fxdgrp.rec.trnman trnman: "", // 交易主体 fxdgrp.rec.trnman
trdint: "", // 结售汇类型 .fxtp.fxdgrp.rec.trdint trdint: "", // 结售汇类型 fxdgrp.rec.trdint
trdout: "", // 结售汇类型 .fxtp.fxdgrp.rec.trdout trdout: "", // 结售汇类型 fxdgrp.rec.trdout
acc: "", // 外币结算账号 .fxtp.fxdgrp.rec.acc acc: "", // 外币结算账号 fxdgrp.rec.acc
acc2: "", // 本币结算账号 .fxtp.fxdgrp.rec.acc2 acc2: "", // 本币结算账号 fxdgrp.rec.acc2
dsp: "", // 外币结算账号 .fxtp.fxdgrp.rec.dsp dsp: "", // 外币结算账号 fxdgrp.rec.dsp
dsp2: "", // 本币结算账号 .fxtp.fxdgrp.rec.dsp2 dsp2: "", // 本币结算账号 fxdgrp.rec.dsp2
usr: "", // 业务经办人 fxdgrp.rec.usr
ownusr: "", // Clearing Department Responsible User fxdgrp.rec.ownusr
}, },
blk: { blk: {
remark: "", // 备注 .fxtp.fxdgrp.blk.remark remark: "", // 备注 fxdgrp.blk.remark
}, },
cbs: { cbs: {
max: { max: {
cur: "", // Currency .fxtp.fxdgrp.cbs.max.cur cur: "", // Currency fxdgrp.cbs.max.cur
amt: "", // Balance .fxtp.fxdgrp.cbs.max.amt amt: "", // Balance fxdgrp.cbs.max.amt
}, },
nom1: { nom1: {
cur: "", // Currency .fxtp.fxdgrp.cbs.nom1.cur cur: "", // Currency fxdgrp.cbs.nom1.cur
amt: "", // Balance .fxtp.fxdgrp.cbs.nom1.amt amt: "", // Balance fxdgrp.cbs.nom1.amt
}, },
opn1: { opn1: {
cur: "", // Currency .fxtp.fxdgrp.cbs.nom1.cur cur: "", // Currency fxdgrp.cbs.nom1.cur
amt: "", // Balance .fxtp.fxdgrp.cbs.nom1.amt amt: "", // Balance fxdgrp.cbs.nom1.amt
}, },
opn2: { opn2: {
cur: "", // Currency .fxtp.fxdgrp.cbs.nom1.cur cur: "", // Currency fxdgrp.cbs.nom1.cur
amt: "", // Balance .fxtp.fxdgrp.cbs.nom1.amt amt: "", // Balance fxdgrp.cbs.nom1.amt
}, },
}, },
apl: { apl: {
......
...@@ -4847,8 +4847,8 @@ const CodeTable = { ...@@ -4847,8 +4847,8 @@ const CodeTable = {
msgtyp3: [ msgtyp3: [
{label: "MT", value: "sf2"}, {label: "MT", value: "sf2"},
{label: "ISO", value: "iso"}, {label: "ISO", value: "iso"},
{label: "FMT", value: "xml"}, {label: "FMT", value: "txt"},
{label: "CIPS", value: "txt"}, {label: "CIPS", value: "xml"},
], ],
mylx: [ mylx: [
{label: "服务贸易", value: "F"}, {label: "服务贸易", value: "F"},
...@@ -9516,22 +9516,16 @@ const CodeTable = { ...@@ -9516,22 +9516,16 @@ const CodeTable = {
{label: "失败", value: "FAIL"}, {label: "失败", value: "FAIL"},
{label: "异常", value: "ERROR"}, {label: "异常", value: "ERROR"},
], ],
sta1: [{label: "Newly build", value: "H"}, sta1: [
{label: "Pending", value: "W"}, {label: "新建", value: "N"},
{label: "Processed", value: "D"}, {label: "待处理", value: "W"},
{label: "Closed volume", value: "F"}, {label: "己处理", value: "D"},
{label: "Redistribute", value: "R"}, {label: "忽略处理", value: "F"},
{label: "Automatic processing", value: "A"}, {label: "重新分发", value: "R"},
{label: "To be processed manually", value: "X"}, {label: "待验证", value: "V"},
{label: "Processing error", value: "E"}, {label: "禁止处理", value: "B"},
{label: "Interface intermediate status", value: "O"}, {label: "待复核", value: "Q"},
{label: "To be rechecked manually", value: "V"}, {label: "取消忽略", value: "G"},
{label: "Message discarding", value: "G"},
{label: "Return message editing", value: "C"},
{label: "Message waiting for release", value: "L"},
{label: "Suspected blacklist", value: "B"},
{label: "Suspected blacklist", value: "Y"},
{label: "Large forehead position does not match", value: "P"},
], ],
elctyp: [ elctyp: [
{value: "102", label: "elcs.102.001.01"}, {value: "102", label: "elcs.102.001.01"},
...@@ -9831,22 +9825,6 @@ const CodeTable = { ...@@ -9831,22 +9825,6 @@ const CodeTable = {
{label: "头寸调拨", value: "PT"}, {label: "头寸调拨", value: "PT"},
{label: "资金拆出", value: "LO"}, {label: "资金拆出", value: "LO"},
], ],
fxt_fxtyp: [
{label: "远期结汇", value: "UB"},
{label: "即期结汇", value: "SB"},
{label: "择期结汇", value: "NB"},
{label: "代客外汇买入", value: "XB"},
{label: "外汇平盘买入", value: "BX"},
{label: "择期售汇", value: "NS"},
{label: "兑换平盘卖出", value: "FS"},
{label: "平盘买入", value: "LB"},
{label: "远期售汇", value: "US"},
{label: "代客外汇卖出", value: "XS"},
{label: "即期售汇", value: "SS"},
{label: "外汇平盘卖出", value: "SX"},
{label: "平盘卖出", value: "LS"},
{label: "兑换平盘买入", value: "FB"},
],
mttyp: [ mttyp: [
{label: "100", value: "100"}, {label: "100", value: "100"},
{label: "103", value: "103"}, {label: "103", value: "103"},
......
...@@ -35,12 +35,12 @@ if (process.env.NODE_ENV === 'production') {//生产模式 ...@@ -35,12 +35,12 @@ if (process.env.NODE_ENV === 'production') {//生产模式
baseData = { baseData = {
"hostFunds":"localhost:31096", "hostFunds":"localhost:31096",
"hostPublic": "localhost:31081", "hostPublic": "192.168.0.114:31081",
"hostReport": "192.168.0.114:31090", "hostReport": "192.168.0.114:31090",
"host": "localhost:31091", "host": "192.168.0.114:31091",
"hostAdmin": "192.168.0.114:31092", "hostAdmin": "192.168.0.114:31092",
"hostBusiness": "localhost:31093", "hostBusiness": "192.168.0.114:31093",
"hostRemittance": "localhost:31094", "hostRemittance": "192.168.0.114:31094",
"hostFinance": "15.52.176.251:22002", "hostFinance": "15.52.176.251:22002",
"hostLc": "15.52.176.251:22002", "hostLc": "15.52.176.251:22002",
"hostDomlc": "15.52.176.251:22002", "hostDomlc": "15.52.176.251:22002",
......
...@@ -36,6 +36,7 @@ if (process.env.NODE_ENV === 'production') {//生产模式 ...@@ -36,6 +36,7 @@ if (process.env.NODE_ENV === 'production') {//生产模式
} }
} else {//开发模式 } else {//开发模式
baseData = { baseData = {
"hostFunds":"localhost:31096",
"host": "114.115.138.98:9391", "host": "114.115.138.98:9391",
"hostAdmin": "114.115.138.98:9388", "hostAdmin": "114.115.138.98:9388",
"hostBusiness": "15.52.176.251:8083", "hostBusiness": "15.52.176.251:8083",
......
...@@ -24,7 +24,7 @@ export default { ...@@ -24,7 +24,7 @@ export default {
this.load = true; this.load = true;
let rtnmsg = await Api.post("/gjzf/msgsel/query", { let rtnmsg = await Api.post("/gjzf/msgsel/query", {
...this.model.rcvp, ...this.model.rcvp,
dir: "<", dir: ">",
pageNum: this.pagination.pageNum, pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize, pageSize: this.pagination.pageSize,
rcvdatsta: moment(rcvdatsta).format("YYYY-MM-DD"), rcvdatsta: moment(rcvdatsta).format("YYYY-MM-DD"),
......
...@@ -24,7 +24,7 @@ export default { ...@@ -24,7 +24,7 @@ export default {
this.load = true; this.load = true;
let rtnmsg = await Api.post("/gjzf/msgsel/query", { let rtnmsg = await Api.post("/gjzf/msgsel/query", {
...this.model.sndp, ...this.model.sndp,
dir: ">", dir: "<",
pageNum: this.pagination.pageNum, pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize, pageSize: this.pagination.pageSize,
rcvdatsta: moment(rcvdatsta).format("YYYY-MM-DD"), rcvdatsta: moment(rcvdatsta).format("YYYY-MM-DD"),
......
import Api from "~/service/Api"; import Api from "~/service/Api";
import moment from "moment"; import moment from "moment";
import Msgsel from '../model';
export default { export default {
methods: { methods: {
async handleSearch() { async handleSearch() {
let rcvdatsta = this.model.sndp.rcvdatsta;
if (!rcvdatsta || rcvdatsta == "") {
this.$notify.error({
title: this.$t("financing.错误"),
message: this.$t("financing.查询开始日期必输!"),
});
return;
}
let rcvdatend = this.model.sndp.rcvdatend;
if (!rcvdatend || rcvdatend == "") {
this.$notify.error({
title: this.$t("financing.错误"),
message: this.$t("financing.查询结束日期必输!"),
});
return;
}
this.load = true;
let rtnmsg = await Api.post("/gjzf/msgsel/query", {
...this.model.sndp,
dir: "<",
pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize,
rcvdatsta: moment(rcvdatsta).format("YYYY-MM-DD"),
rcvdatend: moment(rcvdatend).format("YYYY-MM-DD"),
});
if (rtnmsg.respCode == SUCCESS) {
this.load = false;
this.stmData.data = [];
const {list} = rtnmsg.data;
const {codes:{sta1}} = this;
list.forEach(v=>{
for(let i in sta1){
if(sta1[i].value == v.sta){
v.sta = sta1[i].label;
}
}
})
this.stmData.data = list;
this.pagination = {
pageNum: rtnmsg.data.pageNum || 1,
pageSize: rtnmsg.data.pageSize || 10,
total: parseInt(rtnmsg.data.total),
};
} else {
this.$notify.error({
title: this.$t("financing.错误"),
message: this.$t("financing.服务请求失败!"),
});
}
this.load = false;
}, },
async handleReset() { async handleReset() {
this.model = new Msgsel().data;
}, },
// pageSize改变 // pageSize改变
handleSizeChange(val) { handleSizeChange(val) {
......
import Api from "~/service/Api" import Api from "~/service/Api"
import Pts from "~/page/Model/Common/Pts"
export default class Msgsel{ export default class Msgsel{
constructor () { constructor () {
...@@ -25,7 +24,7 @@ export default class Msgsel{ ...@@ -25,7 +24,7 @@ export default class Msgsel{
usrnam:"", // 操作员 .sndp.usrnam usrnam:"", // 操作员 .sndp.usrnam
starsp:"", // 处理状态标签 .sndp.starsp starsp:"", // 处理状态标签 .sndp.starsp
starsm:"", // 处理状态标签 .sndp.starsm starsm:"", // 处理状态标签 .sndp.starsm
sta:"", // 处理状态 .sndp.sta sta:"V", // 处理状态 .sndp.sta
dtlchg:"", // : .sndp.dtlchg dtlchg:"", // : .sndp.dtlchg
uetr:"", // : .sndp.uetr uetr:"", // : .sndp.uetr
gpi:"", // : .sndp.gpi gpi:"", // : .sndp.gpi
......
...@@ -6,29 +6,119 @@ ...@@ -6,29 +6,119 @@
<el-row> <el-row>
<c-col :span="24"> <c-col :span="24">
<c-col :span="8"> <c-col :span="8">
<el-form-item label="查询日期" prop="rcvdatsta" style="width: 100%">
<c-col :span="11">
<c-date-picker type="date" v-model="model.sndp.rcvdatsta" style="width: 100%"></c-date-picker>
</c-col>
<c-col :span="2" style="text-align: center">
<label style="display: inline-block; width: 100%">-</label>
</c-col>
<c-col :span="11">
<c-date-picker type="date" v-model="model.sndp.rcvdatend" style="width: 100%"></c-date-picker>
</c-col>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="报文标准" prop="" style="width: 100%"> <el-form-item label="报文标准" prop="" style="width: 100%">
<c-select v-model="model.sndp.msgtyp" style="width: 100%" <c-select v-model="model.sndp.msgtyp" style="width: 100%"
:code="codes.msgtyp3"/> :code="codes.msgtyp3"/>
</el-form-item> </el-form-item>
</c-col> </c-col>
<c-col :span="8"> <c-col :span="8">
<el-form-item label="报文类型" prop="subtype" style="width: 100%"> <el-form-item label="报文类型" prop="subtype" style="width: 100%">
<el-select v-model="model.sndp.subtyp" > <el-select v-model="model.sndp.subtyp">
<el-option v-for="code in subtypCodes" :key="code.label" :label="code.label" :value="code.value"> <el-option v-for="code in subtypCodes" :key="code.label" :label="code.label" :value="code.value">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</c-col> </c-col>
<c-col :span="8">
<el-form-item label="发报行BIC" prop="" style="width: 100%">
<c-input v-model="model.sndp.sndbak" style="width: 100%" />
</el-form-item>
</c-col>
</c-col> </c-col>
</el-row> </el-row>
<!-- 可控展示区 --> <!-- 可控展示区 -->
<el-row v-show="searchSlot.searchToggle"> <el-row v-show="searchSlot.searchToggle">
<c-col :span="24">
<c-col :span="8">
<el-form-item label="发报行BIC" prop="" style="width: 100%">
<c-input v-model="model.sndp.sndbak" style="width: 100%"/>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="收报行BIC" prop="" style="width: 100%">
<c-input v-model="model.sndp.revbak" style="width: 100%"/>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="账户行BIC" prop="" style="width: 100%">
<c-input v-model="model.sndp.actbic" style="width: 100%"/>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="8">
<el-form-item label="20域编号" prop="" style="width: 100%">
<c-input v-model="model.sndp.ownref" style="width: 100%"/>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="21域编号" prop="" style="width: 100%">
<c-input v-model="model.sndp.othref" style="width: 100%"/>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="币种" prop="" style="width: 100%">
<c-select v-model="model.sndp.cur" :code="codes.cur" style="width: 100%"/>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="8">
<el-form-item label="账号" prop="" style="width: 100%">
<c-input v-model="model.sndp.act" style="width: 100%"/>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="费用明细" prop="" style="width: 100%">
<c-select :code="codes.dtlchg" v-model="model.sndp.dtlchg" style="width: 100%"/>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item
:label="$t('lc.金额区间')"
style="width: 100%"
>
<c-col :span="11">
<c-input
v-model="model.sndp.amtmin"
:placeholder="$t('lc.请输入金额下限')"
style="width: 100%"
></c-input>
</c-col>
<c-col :span="2" style="text-align: center">
<label style="display: inline-block; width: 100%">-</label>
</c-col>
<c-col :span="11">
<c-input
v-model="model.sndp.amtmax"
:placeholder="$t('lc.请输入金额上限')"
style="width: 100%"
></c-input>
</c-col>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="8">
<el-form-item label="处理状态" prop="" style="width: 100%">
<c-select :code="codes.sta1.filter(s=>s.value==='V')" disabled v-model="model.sndp.sta" style="width: 100%"/>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="操作员" prop="" style="width: 100%">
<c-input v-model="model.sndp.usrnam" style="width: 100%"/>
</el-form-item>
</c-col>
</c-col>
</el-row> </el-row>
</template> </template>
</c-list-search> </c-list-search>
...@@ -58,6 +148,17 @@ ...@@ -58,6 +148,17 @@
<el-table-column v-for="(item, key) in stmData.columns" :key="key" :label="item.label" :prop="item.prop" <el-table-column v-for="(item, key) in stmData.columns" :key="key" :label="item.label" :prop="item.prop"
:min-width="item.width"> :min-width="item.width">
</el-table-column> </el-table-column>
<el-table-column fixed="right" prop="op" label="操作" width="140px">
<template slot="header">
<c-col :span="11" style="text-align: center">
<span>操作</span>
</c-col>
</template>
<template slot-scope="scope">
<c-button style="margin-left: 0" type='primary' size="small" slot="reference">复核
</c-button>
</template>
</el-table-column>
</el-table> </el-table>
<el-pagination layout="total, sizes, prev, pager, next, jumper" :total="pagination.total" <el-pagination layout="total, sizes, prev, pager, next, jumper" :total="pagination.total"
...@@ -103,6 +204,11 @@ export default { ...@@ -103,6 +204,11 @@ export default {
width: "120px" width: "120px"
}, },
{ {
label: "G渠道",
prop: "sweflg",
width: "120px"
},
{
label: "币种", label: "币种",
prop: "cur", prop: "cur",
width: "120px" width: "120px"
...@@ -118,13 +224,8 @@ export default { ...@@ -118,13 +224,8 @@ export default {
width: "120px" width: "120px"
}, },
{ {
label: "费用明细", label: "子系统",
prop: "dtlchg", prop: "nxtchncod",
width: "120px"
},
{
label: "报文类型",
prop: "subtyp",
width: "120px" width: "120px"
}, },
{ {
...@@ -133,29 +234,24 @@ export default { ...@@ -133,29 +234,24 @@ export default {
width: "120px" width: "120px"
}, },
{ {
label: "处理状态", label: "账户行BIC(53域)",
prop: "sta", prop: "t53bic",
width: "120px" width: "160px"
},
{
label: "账户行BIC(53域)",
prop: "actbic",
width: "120px"
}, },
{ {
label: "账户行BIC(54域)", label: "账户行BIC(54域)",
prop: "actbic", prop: "actbic",
width: "250px" width: "160px"
}, },
{ {
label: "发报行BIC", label: "发报行BIC",
prop: "sndbic", prop: "sndbic",
width: "150px" width: "120px"
}, },
{ {
label: "收报行BIC", label: "收报行BIC",
prop: "rcvbic", prop: "rcvbic",
width: "150px" width: "120px"
}, },
{ {
label: "报文标准", label: "报文标准",
...@@ -163,18 +259,28 @@ export default { ...@@ -163,18 +259,28 @@ export default {
width: "150px" width: "150px"
}, },
{ {
label: "GPI标识", label: "报文类型",
prop: "gpi", prop: "subtyp",
width: "150px" width: "120px"
}, },
{ {
label: "子系统", label: "发送时间",
prop: "", prop: "snddattim",
width: "150px" width: "120px"
},
{
label: "回执状态",
prop: "rspsta",
width: "120px"
},
{
label: "处理状态",
prop: "sta",
width: "120px"
}, },
{ {
label: "处理时间", label: "操作员",
prop: "sttdattim", prop: "usrnam",
width: "150px" width: "150px"
}, },
], ],
...@@ -200,7 +306,7 @@ export default { ...@@ -200,7 +306,7 @@ export default {
handler: function (newTyp, oldTyp) { handler: function (newTyp, oldTyp) {
// 把已经选择的 subtyp 重置 // 把已经选择的 subtyp 重置
this.model.sndp.subtyp = ''; this.model.sndp.subtyp = '';
const { codes } = this; const {codes} = this;
if (newTyp === 'sf2') { if (newTyp === 'sf2') {
this.subtypCodes = codes.mttyp; this.subtypCodes = codes.mttyp;
} else if (newTyp === 'iso') { } else if (newTyp === 'iso') {
......
<template> <template>
<div class="eibs-tab"> <div class="eibs-tab">
<el-row style="background-color: white;width :100%;height:100px;padding-top: 30px;"> <el-row style="background-color: white;width :100%;height:100px;padding-top: 30px;">
<c-col :span="24"> <c-col :span="24">
<c-col :span="8" > <c-col :span="8">
<el-form-item label="报文标准" prop="" style="width: 100%"> <el-form-item label="报文标准" prop="" style="width: 100%">
<c-select v-model="model.msgp.typ" style="width: 100%" :code="codes.msgtyp3"/> <c-select v-model="model.msgp.typ" style="width: 100%" :code="codes.msgtyp3"/>
</el-form-item> </el-form-item>
</c-col> </c-col>
</c-col> </c-col>
</el-row> </el-row>
<el-row style="height:9000px;margin-top: 20px;"> <el-row style="height:9000px;margin-top: 20px;">
<div style="height: 100%"> <div style="height: 100%">
<iframe v-if="model.msgp.typ === 'MT'" src="http://localhost:8080/swifteditor" width="100%" ></iframe> <iframe v-if="model.msgp.typ === 'sf2'" src="http://localhost:8080/swifteditor" width="100%"></iframe>
<iframe v-else-if="model.msgp.typ === 'ISO'" src="http://localhost:8080/swiftiso-editor" width="100%"></iframe> <iframe v-else-if="model.msgp.typ === 'iso'" src="http://localhost:8080/swiftiso-editor" width="100%"></iframe>
</div> </div>
</el-row> </el-row>
</div> </div>
</template> </template>
<script> <script>
...@@ -131,7 +131,7 @@ export default { ...@@ -131,7 +131,7 @@ export default {
margin-right: 10px; margin-right: 10px;
} }
iframe{ iframe {
height: 900px; height: 900px;
} }
</style> </style>
import Api from "~/service/Api"; import Api from "~/service/Api";
import moment from "moment"; import moment from "moment";
import Oftopn from '../model';
export default { export default {
methods: { methods: {
async handleSearch() { async handleSearch() {
let rsptims = this.model.oftp.rel.rsptims;
if (!rsptims || rsptims === "") {
this.$notify.error({
title: this.$t("financing.错误"),
message: this.$t("financing.查询开始日期必输!"),
});
return;
}
let rsptime = this.model.oftp.rel.rsptime;
if (!rsptime || rsptime === "") {
this.$notify.error({
title: this.$t("financing.错误"),
message: this.$t("financing.查询结束日期必输!"),
});
return;
}
this.load = true;
// TODO rewrite url
let rtnmsg = await Api.post("/gjzf/msgsel/query", {
...this.model.oftp.rel,
pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize,
rsptims: moment(rsptims).format("YYYY-MM-DD"),
rsptime: moment(rsptime).format("YYYY-MM-DD"),
});
if (rtnmsg.respCode == SUCCESS) {
this.load = false;
this.stmData.data = [];
const {list} = rtnmsg.data;
this.stmData.data = list;
this.pagination = {
pageNum: rtnmsg.data.pageNum || 1,
pageSize: rtnmsg.data.pageSize || 10,
total: parseInt(rtnmsg.data.total),
};
} else {
this.$notify.error({
title: this.$t("financing.错误"),
message: this.$t("financing.服务请求失败!"),
});
}
this.load = false;
}, },
async handleReset() { async handleReset() {
this.model = new Oftopn().data;
}, },
// pageSize改变 // pageSize改变
handleSizeChange(val) { handleSizeChange(val) {
......
...@@ -6,29 +6,106 @@ ...@@ -6,29 +6,106 @@
<el-row> <el-row>
<c-col :span="24"> <c-col :span="24">
<c-col :span="8"> <c-col :span="8">
<el-form-item label="报文标准" prop="" style="width: 100%"> <el-form-item label="起止日期" style="width: 100%">
<c-col :span="11">
<c-date-picker type="date" v-model="model.oftp.rel.rsptims" style="width: 100%"></c-date-picker>
</c-col>
<c-col :span="2" style="text-align: center">
<label style="display: inline-block; width: 100%">-</label>
</c-col>
<c-col :span="11">
<c-date-picker type="date" v-model="model.oftp.rel.rsptime" style="width: 100%"></c-date-picker>
</c-col>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="报文标准" style="width: 100%">
<c-select v-model="model.oftp.rel.msgtyp" style="width: 100%" <c-select v-model="model.oftp.rel.msgtyp" style="width: 100%"
:code="codes.msgtyp3" /> :code="codes.msgtyp3" />
</el-form-item> </el-form-item>
</c-col> </c-col>
<c-col :span="8"> <c-col :span="8">
<el-form-item label="报文类型" prop="subtype" style="width: 100%"> <el-form-item label="报文类型" style="width: 100%">
<el-select v-model="model.oftp.rel.mty" > <el-select v-model="model.oftp.rel.mty" >
<el-option v-for="code in subtypCodes" :key="code.label" :label="code.label" :value="code.value"> <el-option v-for="code in subtypCodes" :key="code.label" :label="code.label" :value="code.value">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</c-col> </c-col>
<c-col :span="8">
<el-form-item label="发报行BIC" prop="" style="width: 100%">
<c-input v-model="model.oftp.rel.sedbak" style="width: 100%" />
</el-form-item>
</c-col>
</c-col> </c-col>
</el-row> </el-row>
<!-- 可控展示区 --> <!-- 可控展示区 -->
<el-row v-show="searchSlot.searchToggle"> <el-row v-show="searchSlot.searchToggle">
<c-col :span="24">
<c-col :span="8">
<el-form-item label="发报行BIC" style="width: 100%">
<c-input v-model="model.oftp.rel.sedbak" style="width: 100%" />
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="收报行BIC" style="width: 100%">
<c-input v-model="model.oftp.rel.revbak" style="width: 100%" />
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="账户行BIC" style="width: 100%">
<c-input v-model="model.oftp.rel.actbic" style="width: 100%" />
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="8">
<el-form-item label="借贷" style="width: 100%">
<c-select v-model="model.oftp.rel.dcflg" style="width: 100%" :code="codes.dcflg" />
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="币种" style="width: 100%">
<c-select v-model="model.oftp.rel.cur" style="width: 100%" :code="codes.cur" />
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item
:label="$t('lc.金额区间')"
style="width: 100%"
>
<c-col :span="11">
<c-input
v-model="model.oftp.rel.atmd"
:placeholder="$t('lc.请输入金额下限')"
style="width: 100%"
></c-input>
</c-col>
<c-col :span="2" style="text-align: center">
<label style="display: inline-block; width: 100%">-</label>
</c-col>
<c-col :span="11">
<c-input
v-model="model.oftp.rel.amtu"
:placeholder="$t('lc.请输入金额上限')"
style="width: 100%"
></c-input>
</c-col>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="8">
<el-form-item label="20域编号" style="width: 100%">
<c-input v-model="model.oftp.rel.ref" maxlength="40" >
</c-input>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="21域编号" style="width: 100%">
<c-input v-model="model.oftp.rel.relref" maxlength="40" >
</c-input>
</el-form-item>
</c-col>
</c-col>
</el-row> </el-row>
</template> </template>
</c-list-search> </c-list-search>
...@@ -88,32 +165,52 @@ export default { ...@@ -88,32 +165,52 @@ export default {
columns: [ columns: [
{ {
label: "报文种类", label: "报文种类",
prop: "num", prop: "mty",
width: "120px" width: "120px"
}, },
{ {
label: "收发时间", label: "收发时间",
prop: "num", prop: "rsptim",
width: "120px" width: "120px"
}, },
{ {
label: "G渠道", label: "G渠道",
prop: "num", prop: "sweflg",
width: "120px" width: "120px"
}, },
{ {
label: "记账类型", label: "记账类型",
prop: "num", prop: "typ",
width: "120px" width: "120px"
}, },
{ {
label: "收支", label: "收支",
prop: "num", prop: "dcflg",
width: "120px" width: "120px"
}, },
{ {
label: "金额", label: "金额",
prop: "num", prop: "amt",
width: "120px"
},
{
label: "币种",
prop: "cur",
width: "120px"
},
{
label: "关联状态",
prop: "sta",
width: "120px"
},
{
label: "处理状态",
prop: "area",
width: "120px"
},
{
label: "起息日",
prop: "valdat",
width: "120px" width: "120px"
}, },
{ {
...@@ -128,37 +225,42 @@ export default { ...@@ -128,37 +225,42 @@ export default {
}, },
{ {
label: "目标渠道", label: "目标渠道",
prop: "num", prop: "multimsg",
width: "120px" width: "120px"
}, },
{ {
label: "源渠道", label: "源渠道",
prop: "num", prop: "chk",
width: "120px"
},
{
label: "下一渠道",
prop: "kpatyp",
width: "120px" width: "120px"
}, },
{ {
label: "发报行BIC", label: "发报行BIC",
prop: "num", prop: "sedbak",
width: "120px" width: "120px"
}, },
{ {
label: "收报行BIC", label: "收报行BIC",
prop: "num", prop: "revbak",
width: "120px" width: "120px"
}, },
{ {
label: "账户行BIC", label: "账户行BIC",
prop: "num", prop: "actbic",
width: "120px" width: "120px"
}, },
{ {
label: "勾销标识", label: "勾销标识",
prop: "num", prop: "offsta",
width: "120px" width: "120px"
}, },
{ {
label: "最后处理时间", label: "最后处理时间",
prop: "num", prop: "lstdat",
width: "120px" width: "120px"
}], }],
data: [], data: [],
......
...@@ -27,6 +27,7 @@ export default { ...@@ -27,6 +27,7 @@ export default {
objtyp: "FXD", objtyp: "FXD",
objinr: model.fxdgrp.rec.inr, objinr: model.fxdgrp.rec.inr,
ownref: model.fxdgrp.rec.ownref, ownref: model.fxdgrp.rec.ownref,
fxtyp:model.fxdgrp.rec.fxtyp,
}, },
cbsMap: { cbsMap: {
MAX: model.fxdgrp.cbs.max, MAX: model.fxdgrp.cbs.max,
......
...@@ -5,7 +5,63 @@ export default { ...@@ -5,7 +5,63 @@ export default {
mixins: [commonFunctions], mixins: [commonFunctions],
methods: { methods: {
async getOwnref(){ async getOwnref(){
if (this.model.fxdgrp.rec.fxtyp == "") {
this.$notify.warning({
title: '提示',
message: '请先选择平盘类型!'
});
return;
}
const loading = this.loading();
let res = await Api.post(`/${this.moduleRouter()}/fxtfop/getRef`, this.model);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
this.model.fxdgrp.rec.ownref = res.data;
},
}
async defaultRateN1000() {
if (this.model.fxdgrp.cbs.max.cur == "") {
return;
}
if (this.model.fxdgrp.cbs.nom1.cur == "") {
return;
}
const loading = this.loading();
let res = await Api.post(`/${this.moduleRouter()}/fxtfop/defaultRateN1000`, this.model);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
// this.updateValueSet(res.codeSet);
this.model.fxdgrp.rec.midrat =res.data.fxdgrp.rec.midrat;
},
async defaultCalculateN1100() {
if (this.model.fxdgrp.cbs.max.cur == "") {
return;
}
if (this.model.fxdgrp.cbs.nom1.cur == "") {
return;
}
const loading = this.loading();
let res = await Api.post(`/${this.moduleRouter()}/fxtfop/defaultCalculateN1100`, this.model);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
// this.updateValueSet(res.codeSet);
this.model.fxdgrp.cbs.nom1.amt =res.data.fxdgrp.cbs.nom1.amt;
},
} }
} }
\ No newline at end of file
export default {
"fxdgrp.rec.ownref": [
{type: "string", required: true, message: "必输项"},
{max: 16, message: "长度不能超过16"}
],
"fxdgrp.rec.nam": [
{type: "string", required: false, message: "必输项"},
{max: 40, message: "长度不能超过40"}
],
"fxdgrp.apl.pts.ref": [
{type: "string", required: false, message: "必输项"},
{max: 20, message: "长度不能超过20"}
],
"fxdgrp.rec.usr": [
{type: "string", required: false, message: "必输项"},
{max: 8, message: "长度不能超过8"}
],
"fxdgrp.apl.pts.extkey": [
{type: "string", required: true, message: "必输项"},
{max: 16, message: "长度不能超过16"}
],
"fxdgrp.apl.pts.adrblk": [
{type: "string", required: true, message: "必输项"},
{max: 35*4, message: "长度不能超过35*4"}
],
"fxdgrp.cbs.max.amt": [
{type: "string", required: true, message: "必输项"},
{max: 18, message: "整数位不能超过14位"},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位"}
],
"fxdgrp.cbs.nom1.amt": [
{type: "string", required: false, message: "必输项"},
{max: 18, message: "整数位不能超过14位"},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位"}
],
"fxdgrp.rec.rat": [
{required: true, message: "必输项"},
{max: 14, message: "长度不能超过14"}
],
"fxdgrp.rec.midrat": [
{required: true, message: "必输项"},
],
"fxdgrp.rec.opndat": [
{type: "string", required: true, message: "输入正确的日期"}
],
"fxdgrp.rec.valdat": [
{type: "string", required: true, message: "输入正确的日期"}
],
"fxdgrp.blk.remark": [
{type: "string", required: false, message: "必输项"},
{max: 35, message: "长度不能超过35"}
],
}
\ No newline at end of file
import commonFunctions from "~/mixin/commonFunctions.js";
import commonDepend from "~/mixin/commonDepend";
export default {
mixins: [commonFunctions, commonDepend],
methods: {
},
};
import Api from "~/service/Api" import Pub from "~/components/business/commonModel/index.js";
import Pts from "~/page/Model/Common/Pts" import Fxdgrp from '~/components/business/commonModel/fxdgrp';
import Pub from "../../../../components/business/commonModel/index.js";
export default class Fxtfop{ export default class Fxtfop{
constructor () { constructor () {
this.data = { this.data = {
fxdgrp:{ fxdgrp: new Fxdgrp().data,
rec:{
ownref:"", // 业务编号 .fxdgrp.rec.ownref
nam:"", // 业务名称 .fxdgrp.rec.nam
fxtyp:"", // 平盘类型 .fxdgrp.rec.fxtyp
opndat:"", // 成交日 .fxdgrp.rec.opndat
valdat:"", // 起息日 .fxdgrp.rec.valdat
rat:"", // 平盘牌价 .fxdgrp.rec.rat
midrat:"", // 中间价 .fxdgrp.rec.midrat
ownusr:"",
},
apl:{
pts:new Pts().data,
},
blk:{
remark:"", // 备注 .fxdgrp.blk.remark
},
cbs:{
max:{
cur:"", // Currency .fxdgrp.cbs.max.cur
amt:"", // Balance .fxdgrp.cbs.max.amt
},
nom1:{
cur:"", // Currency .fxdgrp.cbs.nom1.cur
amt:"", // Balance .fxdgrp.cbs.nom1.amt
},
},
},
fxtp:{ fxtp:{
frgchk:"X"
}, },
setmod: new Pub().data.Setmod, setmod: new Pub().data.Setmod,
docpan: new Pub().data.Docpan, docpan: new Pub().data.Docpan,
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<c-input v-model="model.fxdgrp.rec.ownref" maxlength="16" placeholder="请输入业务编号" disabled> <c-input v-model="model.fxdgrp.rec.ownref" maxlength="16" placeholder="请输入业务编号" disabled>
</c-input> </c-input>
<template slot="footer"> <template slot="footer">
<c-button style="margin: 0 5px" size="small" type="primary" :disabled="model.fxdgrp.apl.pts.ptainr === ''" <c-button style="margin: 0 5px" size="small" type="primary" :disabled="getOwnrefFlg"
@click="getOwnref"> @click="getOwnref">
获取 获取
</c-button> </c-button>
...@@ -19,9 +19,9 @@ ...@@ -19,9 +19,9 @@
</c-col> </c-col>
<c-col :span="24"> <c-col :span="24">
<c-form-item label="业务负责人" prop="fxdgrp.rec.ownusr"> <c-form-item label="业务负责人" prop="fxdgrp.rec.usr">
<c-fullbox> <c-fullbox>
<c-input v-model="model.fxdgrp.rec.ownusr" placeholder="请输入业务负责人" disabled></c-input> <c-input v-model="model.fxdgrp.rec.usr" placeholder="请输入业务负责人" ></c-input>
<template slot="footer"> <template slot="footer">
<c-button style="margin: 0 5px" size="small" type="primary"> <c-button style="margin: 0 5px" size="small" type="primary">
i i
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
</c-col> </c-col>
<c-col :span="24"> <c-col :span="24">
<el-form-item label="平盘类型" prop="fxdgrp.rec.fxtyp"> <el-form-item label="平盘类型" prop="fxdgrp.rec.fxtyp">
<c-select v-model="model.fxdgrp.rec.fxtyp" style="width:100%" :code="codes.fxt_fxtyp"> <c-select v-model="model.fxdgrp.rec.fxtyp" style="width:100%" :code="codes.fxt_fxtyp" :filterKey="['FS', 'FB']">
</c-select> </c-select>
</el-form-item> </el-form-item>
</c-col> </c-col>
...@@ -68,7 +68,7 @@ ...@@ -68,7 +68,7 @@
</c-col> </c-col>
<c-col :span="24"> <c-col :span="24">
<c-form-item label="平盘牌价" prop="fxdgrp.rec.rat"> <c-form-item label="平盘牌价" prop="fxdgrp.rec.rat">
<c-input-currency v-model="model.fxdgrp.rec.rat" style="width:100%" :precision="6" disabled placeholder="请输入平盘牌价"> <c-input-currency v-model="model.fxdgrp.rec.rat" style="width:100%" :precision="6" placeholder="请输入平盘牌价">
</c-input-currency> </c-input-currency>
</c-form-item> </c-form-item>
</c-col> </c-col>
...@@ -95,7 +95,7 @@ ...@@ -95,7 +95,7 @@
<c-col :span="12" style="padding-right: 20px"> <c-col :span="12" style="padding-right: 20px">
<c-col :span="24"> <c-col :span="24">
<c-form-item label="业务名称" prop="fxdgrp.rec.nam"> <c-form-item label="业务名称" prop="fxdgrp.rec.nam">
<c-input v-model="model.fxdgrp.rec.nam" maxlength="40" ></c-input> <c-input v-model="defaultNam950" maxlength="40" disabled></c-input>
</c-form-item> </c-form-item>
</c-col> </c-col>
<c-col :span="24"> <c-col :span="24">
...@@ -104,7 +104,7 @@ ...@@ -104,7 +104,7 @@
:isShowCard="false" :isShowCard="false"
:argadr="{title: '平盘对手', grp: 'fxdgrp', rol: 'apl',}" :argadr="{title: '平盘对手', grp: 'fxdgrp', rol: 'apl',}"
:label="{labelExtkey:'平盘对手',labelNam:'名称',labelAdrblk:'地址',}" :label="{labelExtkey:'平盘对手',labelNam:'名称',labelAdrblk:'地址',}"
ptytyp="C"> ptytyp="B">
</c-ptap> </c-ptap>
</el-card> </el-card>
</c-col> </c-col>
...@@ -130,9 +130,80 @@ export default { ...@@ -130,9 +130,80 @@ export default {
props:["model","codes"], props:["model","codes"],
mixins: [event,commonProcess], mixins: [event,commonProcess],
data(){ data(){
return {} return {
}
}, },
created() {}
computed: {
getOwnrefFlg: function () {
//debugger
console.log(this.model)
return this.model.fxdgrp.rec.fxtyp == '' || this.model.fxdgrp.apl.pts.extkey == '' || this.model.fxdgrp.rec.ownref != '';
},
defaultNam950: function () {
//debugger;
let amount = this.moneyFormat(this.model.fxdgrp.cbs.max.amt, this.model.fxdgrp.cbs.max.cur)
return this.getCodelabel(this.model.fxdgrp.rec.fxtyp, "fxt_fxtyp") + ","
+ this.model.fxdgrp.cbs.max.cur + " " + amount;
},
},
methods: {
//获取码值
getCodelabel(value, codenam) {
const codeobj = this.codes[codenam].find(obj => obj.value === value)
return codeobj ? codeobj.label : value;
},
},
created: function () {
},
watch: {
//申请人变得 本外币下拉框需变化
'model.fxdgrp.apl.pts.ptyinr': {
handler(newValue) {
// if (newValue == "" || newValue == null) {
// this.model.fxdgrp.rec.acc = "";
// this.model.fxdgrp.rec.acc2 = "";
// this.model.accLst = [];
// this.model.accLst2 = [];
// return
// }
// this.defaultAccountsN1000();
},
},
'model.fxdgrp.cbs.max.cur': {
handler(newValue) {
if (newValue !== "" && newValue !== null) {
this.defaultRateN1000();
}
},
},
'model.fxdgrp.cbs.nom1.cur': {
handler(newValue) {
if (newValue !== "" && newValue !== null) {
this.defaultRateN1000();
}
},
},
'model.fxdgrp.cbs.max.amt': {
handler(newValue) {
if (newValue !== "" && newValue !== null) {
this.defaultCalculateN1100();
}
},
},
}
} }
</script> </script>
<style> <style>
......
...@@ -41,11 +41,12 @@ import Setpan from "~/components/business/setmod/views"; ...@@ -41,11 +41,12 @@ import Setpan from "~/components/business/setmod/views";
import Docpan from "~/components/business/docpan/views"; import Docpan from "~/components/business/docpan/views";
import buildFn from "../event/buildCommons.js"; import buildFn from "../event/buildCommons.js";
import Fxtfop from "../model/index"; import Fxtfop from "../model";
import operationFunc from "~/mixin/operationFunc"; import operationFunc from "~/mixin/operationFunc";
import commonDepend from "~/mixin/commonDepend"; import commonDepend from "~/mixin/commonDepend";
import Regp from "./Regp"; import Regp from "./Regp";
import event from "../event"; import event from "../event";
import Check from "../model/Check.js";
export default { export default {
name: "Fxtfop", name: "Fxtfop",
...@@ -64,8 +65,9 @@ export default { ...@@ -64,8 +65,9 @@ export default {
return { return {
tabVal: "regp", tabVal: "regp",
trnName: "fxtfop", trnName: "fxtfop",
trnType: "",
model: new Fxtfop().data, model: new Fxtfop().data,
rules: "", rules: Check,
codes: { ...CodeTable }, codes: { ...CodeTable },
} }
}, },
...@@ -74,18 +76,18 @@ export default { ...@@ -74,18 +76,18 @@ export default {
this.tabClick(tab) this.tabClick(tab)
} }
}, },
mounted() { created: async function () {
console.log("进入fxtfop交易"); console.log("进入fxtfop交易");
let params = { let params = {
transName: this.trnName, transName: this.trnName,
fxdgrp: { fxdgrp: {
rec: { rec: {
inr: this.$route.query.inr || "", inr: this.$route.query.inr || "",
}, },
}, },
}; };
// this.init(params) this.init(params)
}, },
} }
</script> </script>
<style> <style>
......
...@@ -27,6 +27,15 @@ export default { ...@@ -27,6 +27,15 @@ export default {
objtyp: "FXD", objtyp: "FXD",
objinr: model.fxdgrp.rec.inr, objinr: model.fxdgrp.rec.inr,
ownref: model.fxdgrp.rec.ownref, ownref: model.fxdgrp.rec.ownref,
fxtyp:model.fxdgrp.rec.fxtyp,
acc: model.fxdgrp.rec.acc,
acc2: model.fxdgrp.rec.acc2,
dsp: model.fxdgrp.rec.dsp,
dsp2: model.fxdgrp.rec.dsp2,
trdint: model.fxdgrp.rec.trdint,
trdout: model.fxdgrp.rec.trdout,
trnman: model.fxdgrp.rec.trnman,
rat: model.fxdgrp.rec.rat,
}, },
cbsMap: { cbsMap: {
MAX: model.fxdgrp.cbs.max, MAX: model.fxdgrp.cbs.max,
......
...@@ -5,6 +5,74 @@ import commonFunctions from "~/mixin/commonFunctions.js"; ...@@ -5,6 +5,74 @@ import commonFunctions from "~/mixin/commonFunctions.js";
export default { export default {
mixins: [commonFunctions], mixins: [commonFunctions],
methods: { methods: {
async getOwnref() {}, async getOwnref() {
if (this.model.fxdgrp.rec.fxtyp == "") {
this.$notify.warning({
title: '提示',
message: '请先选择结售汇类型!'
});
return;
}
const loading = this.loading();
let res = await Api.post(`/${this.moduleRouter()}/fxtlop/getRef`, this.model);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
this.model.fxdgrp.rec.ownref = res.data;
},
async defaultAccAndRate() {
this.defaultRateN1000();
console.log("defaultAccAndRate")
this.defaultCalculateN1100();
},
async defaultCalculateN1100() {
console.log("defaultCalculateN1100")
if (this.model.fxdgrp.rec.rat == "") {
return;
}
if (this.model.fxdgrp.cbs.max.cur == "") {
return;
}
if (this.model.fxdgrp.cbs.max.amt == "" || this.model.fxdgrp.cbs.max.amt == 0) {
return;
}
const loading = this.loading();
console.log( this.model);
let res = await Api.post(`/${this.moduleRouter()}/fxtlop/defaultCalculateN1100`, this.model);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
this.model.fxdgrp.cbs.max.amt = res.data.fxdgrp.cbs.max.amt;
this.model.fxdgrp.cbs.nom1.amt = res.data.fxdgrp.cbs.nom1.amt;
},
async defaultRateN1000() {
if (this.model.fxdgrp.rec.fxtyp == "") {
return;
}
if (this.model.fxdgrp.cbs.max.cur == "") {
return;
}
if (this.model.fxdgrp.apl.pts.ptyinr == "") {
return;
}
const loading = this.loading();
let res = await Api.post(`/${this.moduleRouter()}/fxtlop/defaultRateN1000`, this.model);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
this.model.fxdgrp.rec.rat = res.data.fxdgrp.rec.rat;
this.model.fxdgrp.rec.midrat = res.data.fxdgrp.rec.midrat;
},
}, },
}; };
import Api from "~/service/Api"; import Api from "~/service/Api";
import Pts from "~/page/Model/Common/Pts"; import Pts from "~/page/Model/Common/Pts";
import Pub from "~/components/business/commonModel/index.js"; import Pub from "~/components/business/commonModel/index.js";
import Fxdgrp from '~/components/business/commonModel/fxdgrp';
export default class Fxtlop { export default class Fxtlop {
constructor() { constructor() {
...@@ -8,57 +9,13 @@ export default class Fxtlop { ...@@ -8,57 +9,13 @@ export default class Fxtlop {
setmod: new Pub().data.Setmod, setmod: new Pub().data.Setmod,
docpan: new Pub().data.Docpan, docpan: new Pub().data.Docpan,
trndia: new Pub().data.Trndia, trndia: new Pub().data.Trndia,
fxdgrp: { fxdgrp: new Fxdgrp().data,
rec: {
ownref: "", // 业务编号 .fxdgrp.rec.ownref
nam: "", // 业务名称 .fxdgrp.rec.nam
fxtyp: "", // 平盘类型 .fxdgrp.rec.fxtyp
opndat: "", // 成交日 .fxdgrp.rec.opndat
valdat: "", // 起息日 .fxdgrp.rec.valdat
rat: "", // 平盘牌价 .fxdgrp.rec.rat
midrat: "", // 中间价 .fxdgrp.rec.midrat
},
apl: {
pts: new Pts().data,
dbfadrblkcn: "", // Chinese address .fxdgrp.apl.dbfadrblkcn
},
blk: {
remark: "", // 备注 .fxdgrp.blk.remark
},
cbs: {
max: {
cur: "", // Currency .fxdgrp.cbs.max.cur
amt: "", // Balance .fxdgrp.cbs.max.amt
},
nom1: {
cur: "", // Currency .fxdgrp.cbs.nom1.cur
amt: "", // Balance .fxdgrp.cbs.nom1.amt
},
},
},
fxtp: { fxtp: {
amtlab: "", // Amount Label .fxtp.amtlab amtlab: "", // Amount Label .fxtp.amtlab
cnylab: "", // Amount LabelCNY .fxtp.cnylab cnylab: "", // Amount LabelCNY .fxtp.cnylab
frgchk: "", // 外币 .fxtp.frgchk frgchk: "", // 外币 .fxtp.frgchk
cnychk: "", // 人民币 .fxtp.cnychk cnychk: "", // 人民币 .fxtp.cnychk
aplp: { }
ptsget: { }
sdamod: {
seainf: "", // .fxtp.aplp.ptsget.sdamod.seainf
dadsnd: "", // Drag Drop Sender .fxtp.aplp.ptsget.sdamod.dadsnd
},
},
},
usrget: {
sdamod: {
seainf: "", // .fxtp.usrget.sdamod.seainf
},
},
usr: {
extkey: "", // 业务负责人 .fxtp.usr.extkey
},
},
pageId: "", // ctx的key
};
} }
} }
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
style="margin: 0 0" style="margin: 0 0"
size="small" size="small"
type="primary" type="primary"
:disabled="model.fxdgrp.apl.pts.ptainr === ''" :disabled="getOwnrefFlg"
@click="getOwnref" @click="getOwnref"
> >
获取 获取
...@@ -28,11 +28,8 @@ ...@@ -28,11 +28,8 @@
</c-form-item> </c-form-item>
</c-col> </c-col>
<c-col :span="24"> <c-col :span="24">
<c-form-item label="业务负责人" prop="fxdgrp.rec.ownusr"> <c-form-item label="业务负责人" prop="fxdgrp.rec.usr">
<c-input <c-input v-model="model.fxdgrp.rec.usr" placeholder="请输入业务负责人" disabled></c-input>
v-model="model.fxdgrp.rec.ownusr"
placeholder="请输入业务负责人"
/>
</c-form-item> </c-form-item>
</c-col> </c-col>
<c-col :span="24"> <c-col :span="24">
...@@ -42,6 +39,7 @@ ...@@ -42,6 +39,7 @@
style="width: 100%" style="width: 100%"
placeholder="请输入平盘类型" placeholder="请输入平盘类型"
:code="codes.fxt_fxtyp" :code="codes.fxt_fxtyp"
:filterKey="['LB', 'LS']"
> >
</c-select> </c-select>
</el-form-item> </el-form-item>
...@@ -52,7 +50,8 @@ ...@@ -52,7 +50,8 @@
<c-select-cur <c-select-cur
v-model="model.fxdgrp.cbs.max.cur" v-model="model.fxdgrp.cbs.max.cur"
style="width: 100%" style="width: 100%"
:code="codes.bopcur" dbCode="curtxt"
@change="defaultAccAndRate"
> >
</c-select-cur> </c-select-cur>
</el-form-item> </el-form-item>
...@@ -140,7 +139,7 @@ ...@@ -140,7 +139,7 @@
<c-col :span="12" style="padding-right: 20px"> <c-col :span="12" style="padding-right: 20px">
<c-col :span="24"> <c-col :span="24">
<c-form-item :label="$t('fxtlop.业务名称')" prop="fxdgrp.rec.nam"> <c-form-item :label="$t('fxtlop.业务名称')" prop="fxdgrp.rec.nam">
<c-input v-model="model.fxdgrp.rec.nam" maxlength="40" ></c-input> <c-input v-model="defaultNam950" maxlength="40" disabled></c-input>
</c-form-item> </c-form-item>
</c-col> </c-col>
<c-col :span="24"> <c-col :span="24">
...@@ -192,6 +191,25 @@ export default { ...@@ -192,6 +191,25 @@ export default {
data() { data() {
return {}; return {};
}, },
computed:{
getOwnrefFlg: function () {
let flg = this.model.fxdgrp.rec.fxtyp == '' || this.model.fxdgrp.apl.pts.ptainr == ''
|| this.model.fxdgrp.cbs.max.cur == '' || this.model.fxdgrp.rec.ownref != ''
return flg;
},
defaultNam950: function () {
let amount = this.moneyFormat(this.model.fxdgrp.cbs.max.amt, this.model.fxdgrp.cbs.max.cur)
return this.getCodelabel(this.model.fxdgrp.rec.fxtyp, "fxt_fxtyp") + ","
+ this.model.fxdgrp.cbs.max.cur + " " + amount;
},
},
methods: {
//获取码值
getCodelabel(value, codenam) {
const codeobj = this.codes[codenam].find(obj => obj.value === value)
return codeobj ? codeobj.label : value;
},
},
created: function () {}, created: function () {},
}; };
</script> </script>
......
import Utils from "~/utils"; import Utils from "~/utils";
export default { export default {
methods: { methods: {
buildPtspta(ptsptaObj) { buildPtspta(ptsptaObj) {
let pts = ptsptaObj.pts; let pts = ptsptaObj.pts;
return { return {
rol: pts.rol, rol: pts.rol,
name: pts.nam, name: pts.nam,
ptyinr: pts.ptyinr, ptyinr: pts.ptyinr,
ptainr: pts.ptainr, ptainr: pts.ptainr,
extkey: pts.extkey, extkey: pts.extkey,
dftdsp: pts.dftdsp, dftdsp: pts.dftdsp,
dftcur: pts.dftcur, dftcur: pts.dftcur,
dftact: pts.dftact, dftact: pts.dftact,
dftfeecur: pts.dftfeecur, dftfeecur: pts.dftfeecur,
dftactptainr: pts.dftactptainr, dftactptainr: pts.dftactptainr,
glggrpflg: pts.glggrpflg, glggrpflg: pts.glggrpflg,
adrblk: pts.adrblk, adrblk: pts.adrblk,
pts, pts,
}; };
},
buildCommonData(model, trnName) {
let ptsptaList = Utils.formatPtspta(model.fxtp.fxdgrp, this.buildPtspta);
return {
rec: {
objtyp: "FXT",
objinr: model.fxtp.fxdgrp.rec.inr,
ownref: model.fxtp.fxdgrp.rec.ownref,
}, },
cbsMap: { buildCommonData(model, trnName) {
MAX: model.fxtp.fxdgrp.cbs.max, let ptsptaList = Utils.formatPtspta(model.fxdgrp, this.buildPtspta);
NOM1: model.fxtp.fxdgrp.cbs.nom1, return {
rec: {
objtyp: "FXD",
objinr: model.fxdgrp.rec.inr,
ownref: model.fxdgrp.rec.ownref,
fxtyp: model.fxdgrp.rec.fxtyp,
acc: model.fxdgrp.rec.acc,
acc2: model.fxdgrp.rec.acc2,
dsp: model.fxdgrp.rec.dsp,
dsp2: model.fxdgrp.rec.dsp2,
trdint: model.fxdgrp.rec.trdint,
trdout: model.fxdgrp.rec.trdout,
trnman: model.fxdgrp.rec.trnman,
rat: model.fxdgrp.rec.rat,
},
cbsMap: {
MAX: model.fxdgrp.cbs.max,
NOM1: model.fxdgrp.cbs.nom1,
},
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : "ZL",
};
}, },
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : "ZL",
};
}, },
},
}; };
import commonFunctions from '~/mixin/commonFunctions.js'; import commonFunctions from "~/mixin/commonFunctions.js";
import Api from '~/service/Api'; import Api from "~/service/Api";
export default { export default {
mixins: [commonFunctions], mixins: [commonFunctions],
methods: { methods: {
async getOwnref() { async getOwnref() {
if (this.model.fxdgrp.rec.fxtyp == "") {
this.$notify.warning({
title: "提示",
message: "请先选择结售汇类型!",
});
return;
}
const loading = this.loading();
let res = await Api.post(
`/${this.moduleRouter()}/fxtssb/getRef`,
this.model
);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
this.model.fxdgrp.rec.ownref = res.data;
},
} async defaultAccountsN1000() {
} if (this.model.fxdgrp.rec.fxtyp == "") {
} return;
\ No newline at end of file }
if (this.model.fxdgrp.cbs.max.cur == "") {
return;
}
if (this.model.fxdgrp.apl.pts.ptyinr == "") {
return;
}
const loading = this.loading();
let res = await Api.post(
`/${this.moduleRouter()}/fxtssb/defaultAccountsN1000`,
this.model
);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
// this.updateValueSet(res.codeSet);
this.accLst = res.codeSet["accLst"];
this.accLst2 = res.codeSet["acc2Lst"];
this.model.fxdgrp.rec.acc = res.data.fxdgrp.rec.acc;
this.model.fxdgrp.rec.acc2 = res.data.fxdgrp.rec.acc2;
},
async defaultRateN1000() {
if (this.model.fxdgrp.rec.fxtyp == "") {
return;
}
if (this.model.fxdgrp.cbs.max.cur == "") {
return;
}
if (this.model.fxdgrp.apl.pts.ptyinr == "") {
return;
}
const loading = this.loading();
let res = await Api.post(
`/${this.moduleRouter()}/fxtssb/defaultRateN1000`,
this.model
);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
this.model.fxdgrp.rec.rat = res.data.fxdgrp.rec.rat;
this.model.fxdgrp.rec.midrat = res.data.fxdgrp.rec.midrat;
},
async defaultAccAndRate() {
this.defaultAccountsN1000();
await this.defaultRateN1000();
this.defaultCalculateN1100();
},
async defaultCalculateN1100() {
if (this.model.fxdgrp.rec.rat == "") {
return;
}
if (this.model.fxdgrp.cbs.max.cur == "") {
return;
}
if (
this.model.fxdgrp.cbs.max.amt == "" ||
this.model.fxdgrp.cbs.max.amt == 0
) {
this.model.fxdgrp.cbs.nom1.amt = "0.00";
return;
}
const loading = this.loading();
let res = await Api.post(
`/${this.moduleRouter()}/fxtssb/defaultCalculateN1100`,
this.model
);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
this.model.fxdgrp.cbs.max.amt = res.data.fxdgrp.cbs.max.amt;
this.model.fxdgrp.cbs.nom1.amt = res.data.fxdgrp.cbs.nom1.amt;
},
},
};
export default { import JshmodCheck from "~/components/business/jshmod/model/check";
"fxtp.fxdgrp.rec.ownref":[
{type: "string", required: false, message: "必输项"},
{max: 16,message:"长度不能超过16"}
],
"fxtp.fxdgrp.rec.nam":[ export default function () {
{type: "string", required: false, message: "必输项"}, return {
{max: 40,message:"长度不能超过40"} ...new JshmodCheck(this).check,
], "fxdgrp.rec.ownref": [
"fxtp.fxdgrp.apl.pts.ref":[ { type: "string", required: true, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 16, message: "长度不能超过16" },
{max: 20,message:"长度不能超过20"} ],
], "fxdgrp.rec.nam": [
"fxtp.usrget.usr.extkey":[ { type: "string", required: false, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 40, message: "长度不能超过40" },
{max: 8,message:"长度不能超过8"} ],
], "fxdgrp.apl.pts.ref": [
"fxtp.usrget.sdamod.seainf":[ { type: "string", required: false, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 20, message: "长度不能超过20" },
{max: 3,message:"长度不能超过3"} ],
], "fxdgrp.rec.usr": [
"fxtp.aplp.ptsget.sdamod.dadsnd":[ { type: "string", required: false, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 8, message: "长度不能超过8" },
{max: 16,message:"长度不能超过16"} ],
], "fxdgrp.apl.pts.extkey": [
"fxtp.aplp.ptspta.pts.extkey":[ { type: "string", required: false, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 16, message: "长度不能超过16" },
{max: 16,message:"长度不能超过16"} ],
], "fxdgrp.apl.pts.adrblk": [
"fxtp.aplp.ptsget.sdamod.seainf":[ { type: "string", required: true, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 140, message: "长度不能超过140" },
{max: 3,message:"长度不能超过3"} ],
], "fxdgrp.cbs.max.cur": [
{ type: "string", required: true, message: "必输项" },
{ max: 3, message: "3" },
"fxtp.aplp.ptspta.pts.adrblk":[ ],
{type: "string", required: true, message: "必输项"}, "fxdgrp.cbs.max.amt": [
{max: 35,message:"长度不能超过35"} { type: "string", required: true, message: "必输项" },
], { max: 18, message: "整数位不能超过14位" },
"fxtp.aplp.ptspta.dbfadrblkcn":[ {
{type: "string", required: true, message: "必输项"}, pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/,
{max: 35,message:"长度不能超过35"} message: "小数位不能超过3位",
], },
],
"fxdgrp.cbs.nom1.amt": [
"fxtp.fxdgrp.cbs.max.amt":[ { type: "string", required: false, message: "必输项" },
{type: "number", required: false, message: "必输项"}, { max: 18, message: "整数位不能超过14位" },
{max: 18,message:"整数位不能超过14位"}, {
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" } pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/,
], message: "小数位不能超过3位",
},
],
"fxdgrp.rec.quoref": [
"fxtp.fxdgrp.cbs.nom1.amt":[ { type: "string", required: false, message: "必输项" },
{type: "number", required: false, message: "必输项"}, { max: 16, message: "长度不能超过16" },
{max: 18,message:"整数位不能超过14位"}, ],
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" } "fxdgrp.rec.fudref": [
], { type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" },
"fxtp.fxdgrp.rec.rat":[ ],
{type: "string", required: false, message: "必输项"}, "fxdgrp.rec.opndat": [{ required: true, message: "输入正确的日期" }],
{max: 12,message:"长度不能超过12"} "fxdgrp.rec.valdat": [{ required: true, message: "输入正确的日期" }],
], "fxdgrp.rec.setdat": [{ required: false, message: "输入正确的日期" }],
"fxtp.fxdgrp.rec.quoref":[ "fxdgrp.rec.setdatto": [{ required: false, message: "输入正确的日期" }],
{type: "string", required: false, message: "必输项"}, "fxdgrp.rec.setdatfrm": [{ required: false, message: "输入正确的日期" }],
{max: 16,message:"长度不能超过16"} "fxdgrp.blk.remark": [
], { type: "string", required: false, message: "必输项" },
"fxtp.fxdgrp.rec.midrat":[ { max: 35, message: "长度不能超过35" },
{type: "string", required: false, message: "必输项"}, ],
{max: 12,message:"长度不能超过12"} "fxdgrp.rec.dsp": [
], { type: "string", required: true, message: "必输项" },
{ max: 2, message: "长度不能超过2" },
"fxtp.fxdgrp.rec.fudref":[ ],
{type: "string", required: false, message: "必输项"}, "fxdgrp.rec.dsp2": [
{max: 16,message:"长度不能超过16"} { type: "string", required: true, message: "必输项" },
], { max: 2, message: "长度不能超过2" },
"fxtp.fxdgrp.rec.opndat":[ ],
{type: "date", required: false, message: "输入正确的日期"} "fxdgrp.rec.acc": [
], { type: "string", required: true, message: "必输项" },
"fxtp.fxdgrp.rec.valdat":[ { max: 21, message: "长度不能超过21" },
{type: "date", required: false, message: "输入正确的日期"} ],
], "fxdgrp.rec.acc2": [
"fxtp.fxdgrp.rec.setdat":[ { type: "string", required: true, message: "必输项" },
{type: "date", required: false, message: "输入正确的日期"} { max: 21, message: "长度不能超过21" },
], ],
"fxtp.fxdgrp.rec.setdatto":[ "fxdgrp.rec.trnman": [
{type: "date", required: false, message: "输入正确的日期"} { type: "string", required: true, message: "必输项" },
], { max: 2, message: "长度不能超过2" },
"fxtp.fxdgrp.rec.setdatfrm":[ ],
{type: "date", required: false, message: "输入正确的日期"} "fxdgrp.rec.trdint": [
], { type: "string", required: true, message: "必输项" },
"fxtp.fxdgrp.blk.remark":[ { max: 3, message: "长度不能超过3" },
{type: "string", required: true, message: "必输项"}, ],
{max: 35,message:"长度不能超过35"} };
], }
}
\ No newline at end of file
import Api from "~/service/Api"
import Pts from "~/page/Model/Common/Pts"
import Pub from "~/components/business/commonModel/index.js"; import Pub from "~/components/business/commonModel/index.js";
import Fxdgrp from '~/components/business/commonModel/fxdgrp';
export default class Fxtssb { export default class Fxtssb {
constructor() { constructor() {
this.data = { this.data = {
fxtp: { fxtp: {
fxdgrp: { amtlab: "", // Amount Label .fxtp.amtlab
rec: { cnylab: "", // Amount LabelCNY .fxtp.cnylab
ownref: "", // 结售汇业务参考号 .fxtp.fxdgrp.rec.ownref frgchk: "", // 外币 .fxtp.frgchk
nam: "", // 名称 .fxtp.fxdgrp.rec.nam cnychk: "", // 人民币 .fxtp.cnychk
fxtyp: "", // 结售汇类型 .fxtp.fxdgrp.rec.fxtyp cshflg: "", // 钞汇标志 .fxtp.cshflg
opndat: "", // 登记日期 .fxtp.fxdgrp.rec.opndat
valdat: "", // 起息日 .fxtp.fxdgrp.rec.valdat
rat: "", // 对外牌价 .fxtp.fxdgrp.rec.rat
midrat: "", // 中间价 .fxtp.fxdgrp.rec.midrat
quoref: "", // 询价编号 .fxtp.fxdgrp.rec.quoref
fudref: "", // 资金部编号 .fxtp.fxdgrp.rec.fudref
setdat: "", // 远期交割日 .fxtp.fxdgrp.rec.setdat
setdatfrm: "", // 择期交割起始日 .fxtp.fxdgrp.rec.setdatfrm
setdatto: "", // 择期交割截止日 .fxtp.fxdgrp.rec.setdatto
trnman: "", // 交易主体 .fxtp.fxdgrp.rec.trnman
trdint: "", // 结售汇类型 .fxtp.fxdgrp.rec.trdint
trdout: "", // 结售汇类型 .fxtp.fxdgrp.rec.trdout
acc: "", // 外币结算账号 .fxtp.fxdgrp.rec.acc
acc2: "", // 本币结算账号 .fxtp.fxdgrp.rec.acc2
dsp: "", // 外币结算账号 .fxtp.fxdgrp.rec.dsp
dsp2: "", // 本币结算账号 .fxtp.fxdgrp.rec.dsp2
},
cbs: {
max: {
cur: "", // Currency .fxtp.fxdgrp.cbs.max.cur
amt: "", // Balance .fxtp.fxdgrp.cbs.max.amt
},
nom1: {
cur: "", // Currency .fxtp.fxdgrp.cbs.nom1.cur
amt: "", // Balance .fxtp.fxdgrp.cbs.nom1.amt
},
},
apl: {
pts: new Pts().data,
},
blk: {
remark: "", // 备注 .fxtp.fxdgrp.blk.remark
},
},
amtlab: "", // Amount Label .fxtp.amtlab
cnylab: "", // Amount LabelCNY .fxtp.cnylab
frgchk: "", // 外币 .fxtp.frgchk
cnychk: "", // 人民币 .fxtp.cnychk
aplp: {
ptspta: {
pts: new Pts().data,
dbfadrblkcn: "", // Chinese address .fxtp.aplp.ptspta.dbfadrblkcn
},
ptsget: {
sdamod: {
seainf: "", // .fxtp.aplp.ptsget.sdamod.seainf
dadsnd: "", // Drag Drop Sender .fxtp.aplp.ptsget.sdamod.dadsnd
}, },
}, fxdgrp: new Fxdgrp().data,
}, setmod: new Pub().data.Setmod,
cshflg: "", // 钞汇标志 .fxtp.cshflg docpan: new Pub().data.Docpan,
usrget: { trndia: new Pub().data.Trndia,
sdamod: { jshmod: new Pub().data.Jshmod,
seainf: "", // .fxtp.usrget.sdamod.seainf }
},
usr: {
extkey: "", // User ID .fxtp.usrget.usr.extkey
},
},
},
fxdgrp: {
apl: {
pts: new Pts().data,
},
},
setmod: new Pub().data.Setmod,
docpan: new Pub().data.Docpan,
trndia: new Pub().data.Trndia,
} }
}
} }
\ No newline at end of file
<template> <template>
<div class="eContainer"> <div class="eContainer">
<c-page title="即期结汇"> <c-page title="即期结汇">
<el-form :model="model" :rules="rules" ref="modelForm" label-width="150px" label-position="right" size="small" <el-form
:validate-on-rule-change="false"> :model="model"
<c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="myTabClick"> :rules="rawRules"
ref="modelForm"
label-width="150px"
label-position="right"
size="small"
:validate-on-rule-change="false"
>
<c-tabs
v-model="tabVal"
ref="elment"
type="card"
@tab-click="myTabClick"
>
<el-tab-pane label="概要" name="ovwp"> <el-tab-pane label="概要" name="ovwp">
<c-content> <c-content>
<m-ovwp :model="model" :codes="codes" /> <m-ovwp :model="model" :codes="codes" />
...@@ -14,9 +26,14 @@ ...@@ -14,9 +26,14 @@
<m-setpan :codes="codes" :model="model" /> <m-setpan :codes="codes" :model="model" />
</c-content> </c-content>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="报文/面函" name="docpan"> <!-- <el-tab-pane label="报文/面函" name="docpan">-->
<!-- <c-content>-->
<!-- <m-docpan :codes="codes" :model="model" />-->
<!-- </c-content>-->
<!-- </el-tab-pane>-->
<el-tab-pane label="结售汇申报" name="jshmod">
<c-content> <c-content>
<m-docpan :codes="codes" :model="model" /> <m-jshmod :codes="codes" :model="model" ref="jshmod" />
</c-content> </c-content>
</el-tab-pane> </el-tab-pane>
</c-tabs> </c-tabs>
...@@ -32,10 +49,9 @@ ...@@ -32,10 +49,9 @@
</div> </div>
</template> </template>
<script> <script>
import Api from "~/service/Api" import CodeTable from "~/config/CodeTable";
import CodeTable from "~/config/CodeTable" import Fxtssb from "../model";
import Fxtssb from "../model" import Ovwp from "./Ovwp";
import Ovwp from "./Ovwp"
import Setpan from "~/components/business/setmod/views"; import Setpan from "~/components/business/setmod/views";
import Docpan from "~/components/business/docpan/views"; import Docpan from "~/components/business/docpan/views";
...@@ -44,33 +60,41 @@ import commonDepend from "~/mixin/commonDepend"; ...@@ -44,33 +60,41 @@ import commonDepend from "~/mixin/commonDepend";
import event from "../event"; import event from "../event";
import buildFn from "../event/buildCommons.js"; import buildFn from "../event/buildCommons.js";
import Check from "../model/Check.js"; import Check from "../model/Check.js";
import Jshmod from "~/components/business/jshmod/views/index";
export default { export default {
name: "Fxtssb", name: "Fxtssb",
components: { components: {
"m-ovwp": Ovwp, "m-ovwp": Ovwp,
"m-setpan": Setpan, "m-setpan": Setpan,
"m-docpan": Docpan, "m-docpan": Docpan,
"m-jshmod": Jshmod,
}, },
provide() { provide() {
return { return {
root: this root: this,
} };
}, },
mixins: [operationFunc, commonDepend, event, buildFn], mixins: [operationFunc, commonDepend, event, buildFn],
computed: {
rawRules() {
return { ...this.rules, ...Check.apply(this) };
},
},
data() { data() {
return { return {
tabVal: "ovwp", tabVal: "ovwp",
trnName: "fxtssb", trnName: "fxtssb",
trnType: "", trnType: "",
model: new Fxtssb().data, model: new Fxtssb().data,
rules: Check, rules: { },
codes: { ...CodeTable }, codes: { ...CodeTable },
} };
}, },
methods: { methods: {
myTabClick(tab) { myTabClick(tab) {
this.tabClick(tab) this.tabClick(tab);
} },
}, },
created: async function () { created: async function () {
console.log("进入fxtssb交易"); console.log("进入fxtssb交易");
...@@ -82,8 +106,8 @@ export default { ...@@ -82,8 +106,8 @@ export default {
}, },
}, },
}; };
this.init(params) this.init(params);
} },
} };
</script> </script>
<style></style> <style></style>
import Utils from "~/utils"; import Utils from "~/utils";
export default { export default {
methods: { methods: {
buildPtspta(ptsptaObj) { buildPtspta(ptsptaObj) {
let pts = ptsptaObj.pts; let pts = ptsptaObj.pts;
return { return {
rol: pts.rol, rol: pts.rol,
name: pts.nam, name: pts.nam,
ptyinr: pts.ptyinr, ptyinr: pts.ptyinr,
ptainr: pts.ptainr, ptainr: pts.ptainr,
extkey: pts.extkey, extkey: pts.extkey,
dftdsp: pts.dftdsp, dftdsp: pts.dftdsp,
dftcur: pts.dftcur, dftcur: pts.dftcur,
dftact: pts.dftact, dftact: pts.dftact,
dftfeecur: pts.dftfeecur, dftfeecur: pts.dftfeecur,
dftactptainr: pts.dftactptainr, dftactptainr: pts.dftactptainr,
glggrpflg: pts.glggrpflg, glggrpflg: pts.glggrpflg,
adrblk: pts.adrblk, adrblk: pts.adrblk,
pts, pts,
}; };
},
buildCommonData(model, trnName) {
let ptsptaList = Utils.formatPtspta(model.fxtp.fxdgrp, this.buildPtspta);
return {
rec: {
objtyp: "FXT",
objinr: model.fxtp.fxdgrp.rec.inr,
ownref: model.fxtp.fxdgrp.rec.ownref,
}, },
cbsMap: { buildCommonData(model, trnName) {
MAX: model.fxtp.fxdgrp.cbs.max, let ptsptaList = Utils.formatPtspta(model.fxdgrp, this.buildPtspta);
NOM1: model.fxtp.fxdgrp.cbs.nom1, return {
rec: {
objtyp: "FXD",
objinr: model.fxdgrp.rec.inr,
ownref: model.fxdgrp.rec.ownref,
fxtyp: model.fxdgrp.rec.fxtyp,
acc: model.fxdgrp.rec.acc,
acc2: model.fxdgrp.rec.acc2,
dsp: model.fxdgrp.rec.dsp,
dsp2: model.fxdgrp.rec.dsp2,
trdint: model.fxdgrp.rec.trdint,
trdout: model.fxdgrp.rec.trdout,
trnman: model.fxdgrp.rec.trnman,
rat: model.fxdgrp.rec.rat,
},
cbsMap: {
MAX: model.fxdgrp.cbs.max,
NOM1: model.fxdgrp.cbs.nom1,
},
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : "ZL",
};
}, },
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : "ZL",
};
}, },
},
}; };
import commonFunctions from '~/mixin/commonFunctions.js'; import commonFunctions from "~/mixin/commonFunctions.js";
import Api from '~/service/Api'; import Api from "~/service/Api";
export default { export default {
mixins: [commonFunctions], mixins: [commonFunctions],
methods: { methods: {
async getOwnref(){ async getOwnref() {
if (this.model.fxdgrp.rec.fxtyp == "") {
this.$notify.warning({
title: "提示",
message: "请先选择结售汇类型!",
});
return;
}
const loading = this.loading();
let res = await Api.post(
`/${this.moduleRouter()}/fxtsss/getRef`,
this.model
);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
this.model.fxdgrp.rec.ownref = res.data;
},
} async defaultAccountsN1000() {
} if (this.model.fxdgrp.rec.fxtyp == "") {
} return;
\ No newline at end of file }
if (this.model.fxdgrp.cbs.max.cur == "") {
return;
}
if (this.model.fxdgrp.apl.pts.ptyinr == "") {
return;
}
const loading = this.loading();
let res = await Api.post(
`/${this.moduleRouter()}/fxtsss/defaultAccountsN1000`,
this.model
);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
// this.updateValueSet(res.codeSet);
this.accLst = res.codeSet["accLst"];
this.accLst2 = res.codeSet["acc2Lst"];
this.model.fxdgrp.rec.acc = res.data.fxdgrp.rec.acc;
this.model.fxdgrp.rec.acc2 = res.data.fxdgrp.rec.acc2;
},
async defaultRateN1000() {
if (this.model.fxdgrp.rec.fxtyp == "") {
return;
}
if (this.model.fxdgrp.cbs.max.cur == "") {
return;
}
if (this.model.fxdgrp.apl.pts.ptyinr == "") {
return;
}
const loading = this.loading();
let res = await Api.post(
`/${this.moduleRouter()}/fxtsss/defaultRateN1000`,
this.model
);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
this.model.fxdgrp.rec.rat = res.data.fxdgrp.rec.rat;
this.model.fxdgrp.rec.midrat = res.data.fxdgrp.rec.midrat;
},
async defaultAccAndRate() {
this.defaultAccountsN1000();
await this.defaultRateN1000();
this.defaultCalculateN1100();
},
async defaultCalculateN1100() {
if (this.model.fxdgrp.rec.rat == "") {
return;
}
if (this.model.fxdgrp.cbs.max.cur == "") {
return;
}
if (
this.model.fxdgrp.cbs.max.amt == "" ||
this.model.fxdgrp.cbs.max.amt == 0
) {
this.model.fxdgrp.cbs.nom1.amt = "0.00";
return;
}
const loading = this.loading();
let res = await Api.post(
`/${this.moduleRouter()}/fxtsss/defaultCalculateN1100`,
this.model
);
loading.close();
if (res.respCode !== SUCCESS) {
this.$message.error(res.respMsg);
return;
}
this.model.fxdgrp.cbs.max.amt = res.data.fxdgrp.cbs.max.amt;
this.model.fxdgrp.cbs.nom1.amt = res.data.fxdgrp.cbs.nom1.amt;
},
},
};
export default { import JshmodCheck from "~/components/business/jshmod/model/check";
"fxtp.fxdgrp.rec.ownref":[
{type: "string", required: false, message: "必输项"},
{max: 16,message:"长度不能超过16"}
],
"fxtp.fxdgrp.rec.nam":[ export default function () {
{type: "string", required: false, message: "必输项"}, return {
{max: 40,message:"长度不能超过40"} ...new JshmodCheck(this).check,
], "fxdgrp.rec.ownref": [
"fxtp.fxdgrp.apl.pts.ref":[ { type: "string", required: false, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 16, message: "长度不能超过16" },
{max: 20,message:"长度不能超过20"} ],
], "fxdgrp.rec.nam": [
"fxtp.usrget.usr.extkey":[ { type: "string", required: false, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 40, message: "长度不能超过40" },
{max: 8,message:"长度不能超过8"} ],
], "fxdgrp.apl.pts.ref": [
"fxtp.usrget.sdamod.seainf":[ { type: "string", required: false, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 20, message: "长度不能超过20" },
{max: 3,message:"长度不能超过3"} ],
], "fxdgrp.rec.usr": [
"fxtp.aplp.ptsget.sdamod.dadsnd":[ { type: "string", required: false, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 8, message: "长度不能超过8" },
{max: 16,message:"长度不能超过16"} ],
], "fxdgrp.apl.pts.extkey": [
"fxtp.aplp.ptspta.pts.extkey":[ { type: "string", required: false, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 16, message: "长度不能超过16" },
{max: 16,message:"长度不能超过16"} ],
], "fxdgrp.apl.pts.adrblk": [
"fxtp.aplp.ptsget.sdamod.seainf":[ { type: "string", required: true, message: "必输项" },
{type: "string", required: false, message: "必输项"}, { max: 140, message: "长度不能超过140" },
{max: 3,message:"长度不能超过3"} ],
], "fxdgrp.cbs.max.cur": [
{ type: "string", required: true, message: "必输项" },
{ max: 3, message: "3" },
"fxtp.aplp.ptspta.pts.adrblk":[ ],
{type: "string", required: true, message: "必输项"}, "fxdgrp.cbs.max.amt": [
{max: 35,message:"长度不能超过35"} { type: "string", required: true, message: "必输项" },
], { max: 18, message: "整数位不能超过14位" },
"fxtp.aplp.ptspta.dbfadrblkcn":[ {
{type: "string", required: true, message: "必输项"}, pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/,
{max: 35,message:"长度不能超过35"} message: "小数位不能超过3位",
], },
],
"fxdgrp.cbs.nom1.amt": [
"fxtp.fxdgrp.cbs.max.amt":[ { type: "string", required: false, message: "必输项" },
{type: "number", required: false, message: "必输项"}, { max: 18, message: "整数位不能超过14位" },
{max: 18,message:"整数位不能超过14位"}, {
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" } pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/,
], message: "小数位不能超过3位",
},
],
"fxdgrp.rec.quoref": [
"fxtp.fxdgrp.cbs.nom1.amt":[ { type: "string", required: false, message: "必输项" },
{type: "number", required: false, message: "必输项"}, { max: 16, message: "长度不能超过16" },
{max: 18,message:"整数位不能超过14位"}, ],
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" } "fxdgrp.rec.fudref": [
], { type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" },
"fxtp.fxdgrp.rec.rat":[ ],
{type: "string", required: false, message: "必输项"}, "fxdgrp.rec.opndat": [{ required: true, message: "输入正确的日期" }],
{max: 12,message:"长度不能超过12"} "fxdgrp.rec.valdat": [{ required: true, message: "输入正确的日期" }],
], "fxdgrp.rec.setdat": [{ required: false, message: "输入正确的日期" }],
"fxtp.fxdgrp.rec.quoref":[ "fxdgrp.rec.setdatto": [{ required: false, message: "输入正确的日期" }],
{type: "string", required: false, message: "必输项"}, "fxdgrp.rec.setdatfrm": [{ required: false, message: "输入正确的日期" }],
{max: 16,message:"长度不能超过16"} "fxdgrp.blk.remark": [
], { type: "string", required: false, message: "必输项" },
"fxtp.fxdgrp.rec.midrat":[ { max: 35, message: "长度不能超过35" },
{type: "string", required: false, message: "必输项"}, ],
{max: 12,message:"长度不能超过12"} "fxdgrp.rec.dsp": [
], { type: "string", required: true, message: "必输项" },
{ max: 2, message: "长度不能超过2" },
"fxtp.fxdgrp.rec.fudref":[ ],
{type: "string", required: false, message: "必输项"}, "fxdgrp.rec.dsp2": [
{max: 16,message:"长度不能超过16"} { type: "string", required: true, message: "必输项" },
], { max: 2, message: "长度不能超过2" },
"fxtp.fxdgrp.rec.opndat":[ ],
{type: "date", required: false, message: "输入正确的日期"} "fxdgrp.rec.acc": [
], { type: "string", required: true, message: "必输项" },
"fxtp.fxdgrp.rec.valdat":[ { max: 21, message: "长度不能超过21" },
{type: "date", required: false, message: "输入正确的日期"} ],
], "fxdgrp.rec.acc2": [
"fxtp.fxdgrp.rec.setdat":[ { type: "string", required: true, message: "必输项" },
{type: "date", required: false, message: "输入正确的日期"} { max: 21, message: "长度不能超过21" },
], ],
"fxtp.fxdgrp.rec.setdatto":[ "fxdgrp.rec.trnman": [
{type: "date", required: false, message: "输入正确的日期"} { type: "string", required: true, message: "必输项" },
], { max: 2, message: "长度不能超过2" },
"fxtp.fxdgrp.rec.setdatfrm":[ ],
{type: "date", required: false, message: "输入正确的日期"} "fxdgrp.rec.trdout": [
], { type: "string", required: true, message: "必输项" },
"fxtp.fxdgrp.blk.remark":[ { max: 3, message: "长度不能超过3" },
{type: "string", required: true, message: "必输项"}, ],
{max: 35,message:"长度不能超过35"} };
], }
}
\ No newline at end of file
import Api from "~/service/Api"
import Pts from "~/page/Model/Common/Pts"
import Pub from "~/components/business/commonModel/index.js"; import Pub from "~/components/business/commonModel/index.js";
import Fxdgrp from '~/components/business/commonModel/fxdgrp';
export default class Fxtsss { export default class Fxtsss {
constructor() { constructor() {
this.data = { this.data = {
fxtp: { fxtp: {
fxdgrp: { amtlab: "", // Amount Label .fxtp.amtlab
rec: { cnylab: "", // Amount LabelCNY .fxtp.cnylab
ownref: "", // 结售汇业务参考号 .fxtp.fxdgrp.rec.ownref frgchk: "", // 外币 .fxtp.frgchk
nam: "", // 名称 .fxtp.fxdgrp.rec.nam cnychk: "", // 人民币 .fxtp.cnychk
fxtyp: "", // 结售汇类型 .fxtp.fxdgrp.rec.fxtyp cshflg: "", // 钞汇标志 .fxtp.cshflg
opndat: "", // 登记日期 .fxtp.fxdgrp.rec.opndat
valdat: "", // 起息日 .fxtp.fxdgrp.rec.valdat
rat: "", // 对外牌价 .fxtp.fxdgrp.rec.rat
midrat: "", // 中间价 .fxtp.fxdgrp.rec.midrat
quoref: "", // 询价编号 .fxtp.fxdgrp.rec.quoref
fudref: "", // 资金部编号 .fxtp.fxdgrp.rec.fudref
setdat: "", // 远期交割日 .fxtp.fxdgrp.rec.setdat
setdatfrm: "", // 择期交割起始日 .fxtp.fxdgrp.rec.setdatfrm
setdatto: "", // 择期交割截止日 .fxtp.fxdgrp.rec.setdatto
trnman: "", // 交易主体 .fxtp.fxdgrp.rec.trnman
trdint: "", // 结售汇类型 .fxtp.fxdgrp.rec.trdint
trdout: "", // 结售汇类型 .fxtp.fxdgrp.rec.trdout
acc: "", // 外币结算账号 .fxtp.fxdgrp.rec.acc
acc2: "", // 本币结算账号 .fxtp.fxdgrp.rec.acc2
dsp: "", // 外币结算账号 .fxtp.fxdgrp.rec.dsp
dsp2: "", // 本币结算账号 .fxtp.fxdgrp.rec.dsp2
},
cbs: {
max: {
cur: "", // Currency .fxtp.fxdgrp.cbs.max.cur
amt: "", // Balance .fxtp.fxdgrp.cbs.max.amt
}, },
nom1: { fxdgrp: new Fxdgrp().data,
cur: "", // Currency .fxtp.fxdgrp.cbs.nom1.cur setmod: new Pub().data.Setmod,
amt: "", // Balance .fxtp.fxdgrp.cbs.nom1.amt docpan: new Pub().data.Docpan,
}, trndia: new Pub().data.Trndia,
}, jshmod: new Pub().data.Jshmod,
apl: { }
pts: new Pts().data,
},
blk: {
remark: "", // 备注 .fxtp.fxdgrp.blk.remark
},
},
amtlab: "", // Amount Label .fxtp.amtlab
cnylab: "", // Amount LabelCNY .fxtp.cnylab
frgchk: "", // 外币 .fxtp.frgchk
cnychk: "", // 人民币 .fxtp.cnychk
aplp: {
ptspta: {
pts: new Pts().data,
dbfadrblkcn: "", // Chinese address .fxtp.aplp.ptspta.dbfadrblkcn
},
ptsget: {
sdamod: {
seainf: "", // .fxtp.aplp.ptsget.sdamod.seainf
dadsnd: "", // Drag Drop Sender .fxtp.aplp.ptsget.sdamod.dadsnd
},
},
},
cshflg: "", // 钞汇标志 .fxtp.cshflg
usrget: {
sdamod: {
seainf: "", // .fxtp.usrget.sdamod.seainf
},
usr: {
extkey: "", // User ID .fxtp.usrget.usr.extkey
},
},
},
fxdgrp: {
apl: {
pts: new Pts().data,
},
},
setmod: new Pub().data.Setmod,
docpan: new Pub().data.Docpan,
trndia: new Pub().data.Trndia,
} }
}
} }
\ No newline at end of file
<template> <template>
<div class="eContainer"> <div class="eContainer">
<c-page title="即期结汇"> <c-page title="即期结汇">
<el-form :model="model" :rules="rules" ref="modelForm" label-width="150px" label-position="right" size="small" <el-form
:validate-on-rule-change="false"> :model="model"
<c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="myTabClick"> :rules="rawRules"
ref="modelForm"
label-width="150px"
label-position="right"
size="small"
:validate-on-rule-change="false"
>
<c-tabs
v-model="tabVal"
ref="elment"
type="card"
@tab-click="myTabClick"
>
<!--fxtp PD000001 概要 --> <!--fxtp PD000001 概要 -->
<el-tab-pane :label="$t('fxtp.概要')" name="ovwp"> <el-tab-pane :label="$t('fxtp.概要')" name="ovwp">
<c-content> <c-content>
...@@ -15,9 +27,14 @@ ...@@ -15,9 +27,14 @@
<m-setpan :codes="codes" :model="model" /> <m-setpan :codes="codes" :model="model" />
</c-content> </c-content>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="报文/面函" name="docpan"> <!-- <el-tab-pane label="报文/面函" name="docpan">-->
<!-- <c-content>-->
<!-- <m-docpan :codes="codes" :model="model"/>-->
<!-- </c-content>-->
<!-- </el-tab-pane>-->
<el-tab-pane label="结售汇申报" name="jshmod">
<c-content> <c-content>
<m-docpan :codes="codes" :model="model" /> <m-jshmod :codes="codes" :model="model" ref="jshmod" />
</c-content> </c-content>
</el-tab-pane> </el-tab-pane>
</c-tabs> </c-tabs>
...@@ -33,10 +50,9 @@ ...@@ -33,10 +50,9 @@
</div> </div>
</template> </template>
<script> <script>
import Api from "~/service/Api" import CodeTable from "~/config/CodeTable";
import CodeTable from "~/config/CodeTable" import Fxtsss from "../model";
import Fxtsss from "../model" import Ovwp from "./Ovwp";
import Ovwp from "./Ovwp"
import Setpan from "~/components/business/setmod/views"; import Setpan from "~/components/business/setmod/views";
import Docpan from "~/components/business/docpan/views"; import Docpan from "~/components/business/docpan/views";
...@@ -45,33 +61,41 @@ import commonDepend from "~/mixin/commonDepend"; ...@@ -45,33 +61,41 @@ import commonDepend from "~/mixin/commonDepend";
import event from "../event"; import event from "../event";
import Check from "../model/Check.js"; import Check from "../model/Check.js";
import buildFn from "../event/buildCommons.js"; import buildFn from "../event/buildCommons.js";
import Jshmod from "~/components/business/jshmod/views/index";
export default { export default {
name: "Fxtsss", name: "Fxtsss",
components: { components: {
"m-ovwp": Ovwp, "m-ovwp": Ovwp,
"m-setpan": Setpan, "m-setpan": Setpan,
"m-docpan": Docpan, "m-docpan": Docpan,
"m-jshmod": Jshmod,
}, },
provide() { provide() {
return { return {
root: this root: this,
} };
}, },
mixins: [operationFunc, commonDepend, event, buildFn], mixins: [operationFunc, commonDepend, event, buildFn],
computed: {
rawRules() {
return { ...this.rules, ...Check.apply(this) };
},
},
data() { data() {
return { return {
tabVal: "ovwp", tabVal: "ovwp",
trnName: "fxtsss", trnName: "fxtsss",
trnType: "", trnType: "",
model: new Fxtsss().data, model: new Fxtsss().data,
rules: Check, rules: {},
codes: { ...CodeTable }, codes: { ...CodeTable },
} };
}, },
methods: { methods: {
myTabClick(tab) { myTabClick(tab) {
this.tabClick(tab) this.tabClick(tab);
} },
}, },
created: async function () { created: async function () {
console.log("进入fxtsss交易"); console.log("进入fxtsss交易");
...@@ -83,8 +107,8 @@ export default { ...@@ -83,8 +107,8 @@ export default {
}, },
}, },
}; };
this.init(params) this.init(params);
} },
} };
</script> </script>
<style></style> <style></style>
...@@ -6,6 +6,7 @@ export default { ...@@ -6,6 +6,7 @@ export default {
async handleSearch() { async handleSearch() {
console.log("serach......"); console.log("serach......");
console.log(this.activeTab )
let opndatfrom = this.model.infcon.opndatfrom; let opndatfrom = this.model.infcon.opndatfrom;
if (!opndatfrom || opndatfrom == "") { if (!opndatfrom || opndatfrom == "") {
this.$notify.error({ this.$notify.error({
...@@ -24,23 +25,29 @@ export default { ...@@ -24,23 +25,29 @@ export default {
} }
this.load = true; this.load = true;
let rtnmsg = await Api.post("/funds/fxdsel/query", { let rtnmsg = await Api.post("/funds/fxtsel/list"+this.activeTab , {
...this.model.infcon, ...this.model.infcon,
dir: ">",
pageNum: this.pagination.pageNum, pageNumber: this.pagination.pageNumber<=0?1:this.pagination.pageNumber,
pageSize: this.pagination.pageSize, pageSize: this.pagination.pageSize <=0?10: this.pagination.pageSize,
opndatfrom: moment(opndatfrom).format("YYYY-MM-DD"), opndatfrom: moment(opndatfrom).format("YYYY-MM-DD"),
opndatto: moment(opndatto).format("YYYY-MM-DD"), opndatto: moment(opndatto).format("YYYY-MM-DD"),
}); });
if (rtnmsg.respCode == SUCCESS) { if (rtnmsg.respCode == SUCCESS) {
this.load = false; this.load = false;
this.stmData.data = []; this.stmData.data = [];
this.stmData.data = rtnmsg.data.list; if (this.activeTab==="jsh"){
this.pagination = { this.stmData.data = rtnmsg.data.list;
pageNum: rtnmsg.data.pageNum || 1, }
pageSize: rtnmsg.data.pageSize || 10, else if(this.activeTab==="dhpp"){
total: rtnmsg.data.total, this.stmDataDh.data = rtnmsg.data.list;
}; }
else if(this.activeTab==="jshpp"){
this.stmDatajshpp.data = rtnmsg.data.list;
}
this.pagination.total = rtnmsg.data.total;
} else { } else {
this.$notify.error({ this.$notify.error({
title: this.$t("financing.错误"), title: this.$t("financing.错误"),
...@@ -73,15 +80,69 @@ export default { ...@@ -73,15 +80,69 @@ export default {
this.model.infcon.accmng = ""; this.model.infcon.accmng = "";
this.model.infcon.fxtyp = ""; this.model.infcon.fxtyp = "";
}, },
//首字母大写
toTitleCase(str){
return str.charAt(0).toUpperCase() + str.slice(1).toLowerCase()
},
// 处理
async handler(row) {
this.handleModel = row;
this.trnUrl = 'funds';
this.inifrm = 'fxtsel';
this.initdialog = true;
},
//双击表格数据
async TableDblRow(row) {
this.handler(row)
},
//点击页签
async handleClickTab(){
switch (this.activeTab){
case 'jsh':
this.titleNam = "结售汇交易列表"
break;
case 'dhpp':
this.titleNam = "外币兑换平盘交易列表"
break;
default:
this.titleNam = "交易列表"
break;
}
},
//单击表格数据
TableRowClick(row) {
this['selectedModel' + this.toTitleCase(this.activeTab)] = row
},
changeOwnref(){
},
async handleClick (btn,row) {
this.routerPush({
path: "/business/" + btn.code.toLowerCase(),
query: { inr: row.inr,pntinr: row.pntinr }
});
this.initdialog = false;
},
// pageSize改变 // pageSize改变
handleSizeChange(val) { handleSizeChange(val) {
this.pagination.pageNum = 1; this.pagination.pageNumber = 1;
this.pagination.pageSize = val; this.pagination.pageSize = val;
this.handleSearch(); this.handleSearch();
}, },
// 页码改变 // 页码改变
handleCurrentChange(val) { handleCurrentChange(val) {
this.pagination.pageNum = val; this.pagination.pageNumber = val;
this.handleSearch(); this.handleSearch();
}, },
...@@ -110,6 +171,139 @@ toFxtfop() { ...@@ -110,6 +171,139 @@ toFxtfop() {
}); });
}, },
// 详情
async details(row) {
const params = {
ownref: row.ownref,
shgref: row.shgref ? row.shgref.trim() : '',
};
const res = await Api.post('/manager/trn/getTrnListByOwnref', params);
if (res.respCode === SUCCESS) {
if (res.data.length === 1) {
if(this.oldRefId && this.$refs[this.oldRefId]){
this.$refs[this.oldRefId].showPopper = false;
}
this.display(res.data[0])
}else{
this.trnData.data = res.data;
this.oldRefId = 'popover_' + row.inr
this.$refs[this.oldRefId].showPopper = true;
}
}
},
closeDisplayDialog(){
if(this.oldRefId && this.$refs[this.oldRefId]){
this.$refs[this.oldRefId].showPopper = false;
}
},
//Info
toInfo(row,objtyp,subobjtyp){
this.routerPush({
path: "/business/fxdinf",
query: { inr: row.inr,objtyp:objtyp,pntinr:row.pntinr,subobjtyp:subobjtyp}
});
},
// 关闭详情弹框
closeDetailsDialog(refId) {
if(refId && this.$refs[refId]){
this.$refs[refId].showPopper = false;
}
},
// 关闭处理弹框
closeHandlerDialog() {
this.initdialog = false;
},
/**
* 打开详情页面
* @param row
*/
display(row) {
if(this.oldRefId && this.$refs[this.oldRefId]){
this.$refs[this.oldRefId].showPopper = false;
}
// 历史快照
if (row.inr.length == 8) {
this.routerPush({
path: '/business/HistoryRecord',
query: {
businessInr: row.inr,
businessType: 'TRN',
type:'view'
}
})
} else if (row.inr.length == 16) {
this.routerPush({
path: `/display/${row.inifrm.toLowerCase()}`,
query: {
businessInr: row.inr,
businessType: 'TRN'
}
});
}
},
checkData(row){
this.routerPush({
path: '/business-new/litdck',
query: {
inr: this.handleModel.inr,brdinr:row.inr
}
});
this.litdckdialog = false
this.$options.methods.closeHandlerDialog.call(this);
},
//修改弹窗状态
changeBtn(isVisible){
this.initdialog = isVisible;
},
//获取码表数据
getCodeTable(tbl,uil,value){
if(uil){
uil='EN'
}
let localCodes = localStorage.getItem('localCodes');
if (localCodes) {
let codeobj = JSON.parse(localCodes)[tbl + '_' + uil + '_COD'];
if(codeobj){
let codeobj = codeobj.filter(m => m.value === value);
return codeobj ? codeobj.label : value;
}else{
return value;
}
}else{
return value;
}
},
//获取码表数据
getCodelabel(value,codenam) {
const codeobj = this.model.dbCodes[codenam].find(obj => obj.value === value)
return codeobj ? codeobj.label : value;
},
async getdbCode(codeType, uil, codeNam) {
let params = {
codeType: codeType,
uil: uil ? uil : 'EN'
}
let rtnmsg = await Api.post("/manager/dic/listDicInfo", params)
if (rtnmsg.respCode === SUCCESS) {
let curList = rtnmsg.data.map(item => ({
value: item.codeValue,
label: item.codeName
}));
this.model.dbCodes[codeNam] = curList
}
},
}, },
}; };
...@@ -5,7 +5,7 @@ export default class inffxd { ...@@ -5,7 +5,7 @@ export default class inffxd {
this.data = { this.data = {
infcon: { infcon: {
seaownref: "", // 业务编号 .infcon.seaownref seaownref: "", // 业务编号 .infcon.seaownref
nam: "", // 业务名称 .infcon.nam seanam: "", // 业务名称 .infcon.nam
opndat: "", // opndat: "", //
opndatfrom: new Date((new Date).getTime() - (7 * 24 * 60 * 60 * 1000)), // 有效日期自 .infcon.opndatfrom opndatfrom: new Date((new Date).getTime() - (7 * 24 * 60 * 60 * 1000)), // 有效日期自 .infcon.opndatfrom
opndatto: new Date(), // Open Date to .infcon.opndatto opndatto: new Date(), // Open Date to .infcon.opndatto
......
<template>
<Xxdinf></Xxdinf>
</template>
<script>
import Xxdinf from "~/page/Statics/Xxdinf/views";
export default {
name: "Info-Fxd",
components: { Xxdinf },
created() { },
mounted() { }
};
</script>
<style></style>
\ No newline at end of file
...@@ -119,6 +119,12 @@ const DisplayRouter = [ ...@@ -119,6 +119,12 @@ const DisplayRouter = [
component: () => import("./InfoFtd.vue"), component: () => import("./InfoFtd.vue"),
meta: {keepAlive: true, title: "Info-资金拆借"} meta: {keepAlive: true, title: "Info-资金拆借"}
}, },
{
name: "InfoFxd",
path: "fxdinf",
component: () => import("./InfoFxd.vue"),
meta: {keepAlive: true, title: "Info-结售汇/兑换平盘交易"}
},
]; ];
export default DisplayRouter; export default DisplayRouter;
\ No newline at end of file
...@@ -217,6 +217,9 @@ export default { ...@@ -217,6 +217,9 @@ export default {
case 'MCD': case 'MCD':
trnUrl = '/Derivative/mctsel' trnUrl = '/Derivative/mctsel'
break; break;
case 'FXD':
trnUrl = '/funds/fxtsel'
break;
default: default:
break; break;
} }
......
...@@ -57,6 +57,9 @@ ...@@ -57,6 +57,9 @@
<div v-else-if="obj.objtyp === 'MCD' "> <div v-else-if="obj.objtyp === 'MCD' ">
<m-mcdovwp :model="model" :codes="codes" /> <m-mcdovwp :model="model" :codes="codes" />
</div> </div>
<div v-else-if="obj.objtyp === 'FXD' ">
<m-fxdovwp :model="model" :codes="codes" />
</div>
<div v-else-if="obj.objtyp === 'CPD' && obj.paytyp === 'I'"> <div v-else-if="obj.objtyp === 'CPD' && obj.paytyp === 'I'">
<m-cpdovwp :model="model" :codes="codes" /> <m-cpdovwp :model="model" :codes="codes" />
</div> </div>
...@@ -212,6 +215,7 @@ import trdOvwp from "~/page/Financing/Trtopn/views/ovwp"; ...@@ -212,6 +215,7 @@ import trdOvwp from "~/page/Financing/Trtopn/views/ovwp";
import bpdOvwp from "~/page/Financing/Bptopn/views/Ovwp"; import bpdOvwp from "~/page/Financing/Bptopn/views/Ovwp";
import dfdOvwp from "~/page/Financing/Dftame/views/Ovwp1"; import dfdOvwp from "~/page/Financing/Dftame/views/Ovwp1";
import mcdOvwp from "~/page/Derivative/Mctopn/views/Ovwp"; import mcdOvwp from "~/page/Derivative/Mctopn/views/Ovwp";
import fxdOvwp from "~/page/Funds/Fxtfop/views/Regp";
import cptOvwp from "~/page/Remittance/Cptopn/views/Ovwp"; import cptOvwp from "~/page/Remittance/Cptopn/views/Ovwp";
import cpdOvwp from "~/page/Remittance/Cptadv/views/Ovwp"; import cpdOvwp from "~/page/Remittance/Cptadv/views/Ovwp";
import jsdopnOvwp from "~/page/Derivative/Jstopn/views/Ovwp"; import jsdopnOvwp from "~/page/Derivative/Jstopn/views/Ovwp";
...@@ -253,6 +257,7 @@ export default { ...@@ -253,6 +257,7 @@ export default {
"m-bpdovwp": bpdOvwp, "m-bpdovwp": bpdOvwp,
"m-dfdovwp": dfdOvwp, "m-dfdovwp": dfdOvwp,
"m-mcdovwp": mcdOvwp, "m-mcdovwp": mcdOvwp,
"m-fxdovwp": fxdOvwp,
"m-cpdovwp": cpdOvwp, "m-cpdovwp": cpdOvwp,
"m-cptovwp": cptOvwp, "m-cptovwp": cptOvwp,
"m-jsdopnOvwp": jsdopnOvwp, "m-jsdopnOvwp": jsdopnOvwp,
......
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