Commit 9115ae45 by jianglong

新增fxtfcn交易

parent cecb4f90
import Utils from "~/utils";
export default {
methods: {
buildPtspta(ptsptaObj) {
let pts = ptsptaObj.pts;
return {
rol: pts.rol,
name: pts.nam,
ptyinr: pts.ptyinr,
ptainr: pts.ptainr,
extkey: pts.extkey,
dftdsp: pts.dftdsp,
dftcur: pts.dftcur,
dftact: pts.dftact,
dftfeecur: pts.dftfeecur,
dftactptainr: pts.dftactptainr,
glggrpflg: pts.glggrpflg,
adrblk: pts.adrblk,
pts,
};
},
buildCommonData(model, trnName) {
let ptsptaList = Utils.formatPtspta(model.fxdgrp, this.buildPtspta);
return {
rec: {
objtyp: "FXD",
objinr: model.fxdgrp.rec.inr,
ownref: model.fxdgrp.rec.ownref,
fxtyp:model.fxdgrp.rec.fxtyp,
swtflg:model.swtflg,
cancur:model.cancur,
canamt:model.canamt,
},
cbsMap: {
MAX: model.fxdgrp.cbs.max,
NOM1: model.fxdgrp.cbs.nom1,
},
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : "ZL",
};
},
},
};
import commonFunctions from '~/mixin/commonFunctions.js';
import Api from '~/service/Api';
export default {
mixins: [commonFunctions],
methods: {
async getOwnref() {
}
}
}
\ No newline at end of file
import Utils from "~/utils" export default {
"fxtfcn.canamt":[
/** {type: "number", required: false, message: "必输项"},
* Fxtfcn Check规则 {max: 18,message:"整数位不能超过14位"},
*/ {pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
let checkObj = { ],
"canamt" :null,
"fxdgrp.apl.pts.adrblk" :null,
"fxtp.usr.extkey" :null,
"fxdgrp.cbs.opn2.amt" :null,
"fxdgrp.act.pts.adrblk" :null,
"fxdgrp.act.pts.extkey" :null,
"fxdgrp.rec.ownref" :null,
"fxdgrp.apl.pts.extkey" :null,
"mtabut.clsflg" :null,
}
for (const key in checkObj) {
if (Object.hasOwnProperty.call(checkObj, key)) {
checkObj[key] = checkObj[key] ? checkObj[key] : Utils.reflectCheck(key)
}
}
export default checkObj
}
\ No newline at end of file
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 Fxdgrp from '~/components/business/commonModel/fxdgrp';
export default class Fxtfcn{ export default class Fxtfcn{
constructor () { constructor () {
this.data = { this.data = {
fxdgrp:{ fxdgrp: new Fxdgrp().data,
rec:{ fxtp:{
ownref:"", // 平盘业务参考号 .fxdgrp.rec.ownref frgchk:"X"
nam:"", // 名称 .fxdgrp.rec.nam },
fxtyp:"", // 平盘类型 .fxdgrp.rec.fxtyp cancur:"",
opndat:"", // 平盘日期 .fxdgrp.rec.opndat canamt:0,
valdat:"", // 起息日 .fxdgrp.rec.valdat oldactinr:"",
}, relcur:"",
apl:{ relamt:0,
pts:new Pts().data, f21:"",
dbfadrblkcn:"", // Chinese address .fxdgrp.apl.dbfadrblkcn acc2:"", // APLACC's Account .acc2
}, acc1:"",
blk:{ cancuruse:"",
remark:"", // 备注 .fxdgrp.blk.remark canamtuse:0,
},
cbs:{ aplacc:{
opn2:{ pts:new Pts().data,
cur:"", // Orig.Amount .fxdgrp.cbs.opn2.cur },
amt:"", // Balance .fxdgrp.cbs.opn2.amt setmod: new Pub().data.Setmod,
}, docpan: new Pub().data.Docpan,
nom1:{ trndia: new Pub().data.Trndia,
amt:"", // Balance .fxdgrp.cbs.nom1.amt }
cur:"", // 待销账金额 .fxdgrp.cbs.nom1.cur
},
},
act:{
pts:new Pts().data,
dbfadrblkcn:"", // Chinese address .fxdgrp.act.dbfadrblkcn
},
},
fxtp:{
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
},
actp:{
ptsget:{
sdamod:{
seainf:"", // .fxtp.actp.ptsget.sdamod.seainf
dadsnd:"", // Drag Drop Sender .fxtp.actp.ptsget.sdamod.dadsnd
},
},
},
},
mtabut:{
clsflg:"", // Close Flag .mtabut.clsflg
},
canamt:"", // Cancel Amount .canamt
cancur:"", // 实际销账金额 .cancur
pageId: "" // ctx的key
}
} }
} }
\ No newline at end of file
<template> <template>
<div class="eibs-tab"> <div class="eibs-tab">
<!-- S0000002 : 平盘业务参考号 --> <c-col :span="24">
<!-- ==================左边================ -->
<c-col :span="12"> <c-col :span="12" style="padding-right: 20px">
<c-form-item :label="$t('fxtfcn.S0000002')" prop="fxdgrp.rec.ownref"> <c-col :span="24">
<c-input v-model="model.fxdgrp.rec.ownref" maxlength="16" :placeholder="$t('other.please_enter')+$t('fxtfcn.S0000002')"></c-input> <c-form-item label="业务编号" prop="fxdgrp.rec.ownref">
</c-form-item> <c-fullbox>
</c-col> <c-input v-model="model.fxdgrp.rec.ownref" maxlength="16" placeholder="请输入业务编号" disabled>
<!-- S0000003 : 名称 --> </c-input>
<c-col :span="12"> </c-fullbox>
<c-form-item :label="$t('fxtfcn.S0000003')" prop="fxdgrp.rec.nam"> </c-form-item>
<c-input v-model="model.fxdgrp.rec.nam" maxlength="40" :placeholder="$t('other.please_enter')+$t('fxtfcn.S0000003')"></c-input> </c-col>
</c-form-item>
</c-col> <c-col :span="24">
<!-- S0000006 : 平盘对手 --> <c-form-item label="经办人" prop="fxdgrp.rec.usr">
<c-fullbox>
<c-col :span="12"> <c-input disabled v-model="model.fxdgrp.rec.usr" placeholder="请输入业务负责人" ></c-input>
<c-form-item :label="$t('fxtfcn.S0000006')" prop="fxdgrp.apl.pts.ref"> <template slot="footer">
<c-input v-model="model.fxdgrp.apl.pts.ref" maxlength="20" :placeholder="$t('other.please_enter')+$t('fxtfcn.S0000006')"></c-input> <c-button style="margin: 0 5px" size="small" type="primary">
</c-form-item> i
</c-col> </c-button>
<!-- S0000004 : 资金部负责人 --> </template>
</c-fullbox>
<c-col :span="12"> </c-form-item>
<c-form-item :label="$t('fxtfcn.S0000004')" prop="fxtp.usr.extkey">
<c-input v-model="model.fxtp.usr.extkey" maxlength="8" :placeholder="$t('other.please_enter')+$t('fxtfcn.S0000004')"></c-input> </c-col>
</c-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12"> <el-form-item label="平盘类型" prop="fxdgrp.rec.fxtyp">
<c-form-item label="" prop="fxtp.usrget.sdamod.seainf"> <c-select disabled v-model="model.fxdgrp.rec.fxtyp" style="width:100%" :code="codes.fxt_fxtyp" :filterKey="['FS', 'FB']">
<c-input v-model="model.fxtp.usrget.sdamod.seainf" :placeholder="$t('other.please_enter')+''"></c-input> </c-select>
</c-form-item> </el-form-item>
</c-col> </c-col>
<c-col :span="12"> <c-col :span="24">
<c-form-item label="Drag Drop Sender" prop="fxtp.aplp.ptsget.sdamod.dadsnd"> <c-col :span="12">
<c-input v-model="model.fxtp.aplp.ptsget.sdamod.dadsnd" :placeholder="$t('other.please_enter')+'Drag Drop Sender'"></c-input> <el-form-item label="待销账金额" prop="fxdgrp.cbs.nom1.cur">
</c-form-item> <c-select-cur disabled v-model="model.fxdgrp.cbs.nom1.cur" style="width: 100%" dbCode="curtxt"> </c-select-cur>
</c-col> </el-form-item>
</c-col>
<c-col :span="12"> <c-col :span="12">
<c-form-item label="External Key of Address" prop="fxdgrp.apl.pts.extkey"> <el-form-item label-width="5px" prop="fxdgrp.cbs.nom1.amt">
<c-input v-model="model.fxdgrp.apl.pts.extkey" maxlength="16" :placeholder="$t('other.please_enter')+'External Key of Address'"></c-input> <c-input-currency
</c-form-item> disabled
</c-col> :currency="model.fxdgrp.cbs.nom1.cur"
v-model="model.fxdgrp.cbs.nom1.amt"></c-input-currency>
<c-col :span="12"> </el-form-item>
<c-form-item label="" prop="fxtp.aplp.ptsget.sdamod.seainf"> </c-col>
<c-input v-model="model.fxtp.aplp.ptsget.sdamod.seainf" :placeholder="$t('other.please_enter')+''"></c-input> </c-col>
</c-form-item>
</c-col> <c-col :span="24">
<c-col :span="12">
<c-col :span="12"> <el-form-item label="销账金额" prop="cancur">
<c-button size="small" type="primary" @click="onAplpDet"> <c-select-cur disabled v-model="model.cancur" style="width: 100%" dbCode="curtxt"> </c-select-cur>
{{$t('ptsp.CF000081')}} </el-form-item>
</c-button> </c-col>
</c-col> <c-col :span="12">
<!-- S0000005 : 平盘类型 --> <el-form-item label-width="5px" prop="canamt">
<c-input-currency
<c-col :span="12">
<el-form-item :label="$t('fxtfcn.S0000005')" prop="fxdgrp.rec.fxtyp"> :currency="model.cancur"
<c-select v-model="model.fxdgrp.rec.fxtyp" style="width:100%" :placeholder="$t('other.please_enter')+$t('fxtfcn.S0000005')"> v-model="model.canamt"></c-input-currency>
</c-select> </el-form-item>
</el-form-item> </c-col>
</c-col> </c-col>
<c-col :span="12"> <c-col :span="24">
<c-form-item label="Address Block" prop="fxdgrp.apl.pts.adrblk"> <el-form-item label="成交日" prop="fxdgrp.rec.opndat">
<c-input type="textarea" v-model="model.fxdgrp.apl.pts.adrblk" maxlength="35" show-word-limit :placeholder="$t('other.please_enter')+'Address Block'" ></c-input> <c-date-picker disabled type="date" v-model="model.fxdgrp.rec.opndat" style="width:100%" placeholder="请输入成交日">
</c-form-item> </c-date-picker>
</c-col> </el-form-item>
</c-col>
<c-col :span="12"> <c-col :span="24">
<c-form-item label="Chinese address" prop="fxdgrp.apl.dbfadrblkcn"> <el-form-item label="起息日" prop="fxdgrp.rec.valdat">
<c-input type="textarea" v-model="model.fxdgrp.apl.dbfadrblkcn" maxlength="35" show-word-limit :placeholder="$t('other.please_enter')+'Chinese address'" ></c-input> <c-date-picker disabled type="date" v-model="model.fxdgrp.rec.valdat" style="width:100%" placeholder="请输入起息日">
</c-form-item> </c-date-picker>
</c-col> </el-form-item>
</c-col>
<c-col :span="12"> <c-col :span="24">
<c-form-item :label="$t('fxtfcn.S0000015')" prop="fxdgrp.cbs.nom1.cur"> <c-form-item label="备注" prop="fxdgrp.blk.remark">
<c-input v-model="model.fxdgrp.cbs.nom1.cur" maxlength="3" :placeholder="$t('other.please_enter')+$t('fxtfcn.S0000015')"></c-input> <c-input disabled type="textarea" v-model="model.fxdgrp.blk.remark" maxlength="140" :rows="4" style="width:100%" placeholder="请输入备注">
</c-form-item> </c-input>
</c-col> </c-form-item>
</c-col>
<c-col :span="12">
<c-form-item label="Balance" prop="fxdgrp.cbs.nom1.amt">
<c-input v-model="model.fxdgrp.cbs.nom1.amt" :placeholder="$t('other.please_enter')+'Balance'"></c-input>
</c-form-item>
</c-col>
<!-- S0000015 : 待销账金额 -->
<!-- S0000017 : 实际销账金额 -->
<c-col :span="12">
<c-form-item :label="$t('fxtfcn.S0000017')" prop="cancur">
<c-input v-model="model.cancur" maxlength="3" :placeholder="$t('other.please_enter')+$t('fxtfcn.S0000017')"></c-input>
</c-form-item>
</c-col>
<c-col :span="12">
<c-form-item label="Cancel Amount" prop="canamt">
<c-input v-model="model.canamt" :placeholder="$t('other.please_enter')+'Cancel Amount'"></c-input>
</c-form-item>
</c-col>
<!-- S0000007 : 平盘日期 -->
<c-col :span="12">
<el-form-item :label="$t('fxtfcn.S0000007')" prop="fxdgrp.rec.opndat">
<c-date-picker type="date" v-model="model.fxdgrp.rec.opndat" style="width:100%" :placeholder="$t('other.please_enter')+$t('fxtfcn.S0000007')"></c-date-picker>
</el-form-item>
</c-col>
<!-- S0000018 : Account Bank -->
<c-col :span="12">
<c-form-item label="Drag Drop Sender" prop="fxtp.actp.ptsget.sdamod.dadsnd">
<c-input v-model="model.fxtp.actp.ptsget.sdamod.dadsnd" :placeholder="$t('other.please_enter')+'Drag Drop Sender'"></c-input>
</c-form-item>
</c-col>
<!-- S0000008 : 起息日 -->
<c-col :span="12">
<el-form-item :label="$t('fxtfcn.S0000008')" prop="fxdgrp.rec.valdat">
<c-date-picker type="date" v-model="model.fxdgrp.rec.valdat" style="width:100%" :placeholder="$t('other.please_enter')+$t('fxtfcn.S0000008')"></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="12">
<c-form-item label="External Key of Address" prop="fxdgrp.act.pts.extkey">
<c-input v-model="model.fxdgrp.act.pts.extkey" maxlength="16" :placeholder="$t('other.please_enter')+'External Key of Address'"></c-input>
</c-form-item>
</c-col>
<c-col :span="12">
<c-form-item label="" prop="fxtp.actp.ptsget.sdamod.seainf">
<c-input v-model="model.fxtp.actp.ptsget.sdamod.seainf" :placeholder="$t('other.please_enter')+''"></c-input>
</c-form-item>
</c-col>
<c-col :span="12">
<c-button size="small" type="primary" @click="onActpDet">
{{$t('ptsp.CF000081')}}
</c-button>
</c-col>
<c-col :span="12">
<c-form-item label="Address Block" prop="fxdgrp.act.pts.adrblk">
<c-input type="textarea" v-model="model.fxdgrp.act.pts.adrblk" maxlength="35" show-word-limit :placeholder="$t('other.please_enter')+'Address Block'" ></c-input>
</c-form-item>
</c-col>
<c-col :span="12">
<c-form-item label="Chinese address" prop="fxdgrp.act.dbfadrblkcn">
<c-input type="textarea" v-model="model.fxdgrp.act.dbfadrblkcn" maxlength="35" show-word-limit :placeholder="$t('other.please_enter')+'Chinese address'" ></c-input>
</c-form-item>
</c-col> </c-col>
<!-- S0000009 : 备注 --> <!-- ==================右边================ -->
<c-col :span="12" style="padding-right: 20px">
<c-col :span="12"> <c-col :span="24">
<c-form-item :label="$t('fxtfcn.S0000009')" prop="fxdgrp.blk.remark"> <c-form-item label="业务名称" prop="fxdgrp.rec.nam">
<c-input type="textarea" v-model="model.fxdgrp.blk.remark" maxlength="35" show-word-limit :placeholder="$t('other.please_enter')+$t('fxtfcn.S0000009')" ></c-input> <c-input v-model="model.fxdgrp.rec.nam" maxlength="40" disabled></c-input>
</c-form-item> </c-form-item>
</c-col>
<c-col :span="24">
<el-card class="box-card">
<c-ptap :model="model" :requiredExtkey="true" :disabledExtkey="true" :disabled="true" :isAdrblk="true" :haveAdrLabel="true"
:isShowCard="false"
:argadr="{title: '平盘对手', grp: 'fxdgrp', rol: 'apl',}"
:label="{labelExtkey:'平盘对手',labelNam:'名称',labelAdrblk:'地址',}"
ptytyp="B">
</c-ptap>
</el-card>
</c-col>
<c-col :span="24">
<el-card class="box-card">
<c-ptap :model="model" :requiredExtkey="true" :disabledExtkey="true" :disabled="true" :isAdrblk="true" :haveAdrLabel="true"
:isShowCard="false"
:argadr="{title: '我行账户行', grp: 'fxdgrp', rol: 'act',}"
:label="{labelExtkey:'我行账户行',labelNam:'名称',labelAdrblk:'地址',}"
ptytyp="B">
</c-ptap>
</el-card>
</c-col>
</c-col> </c-col>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.mtabut.clsflg">{{$t('mtabut.CF000215')}}</c-checkbox>
</c-col>
<c-col :span="12">
<c-form-item :label="$t('fxtfcn.S0000019')" prop="fxdgrp.cbs.opn2.cur">
<c-input v-model="model.fxdgrp.cbs.opn2.cur" maxlength="3" :placeholder="$t('other.please_enter')+$t('fxtfcn.S0000019')"></c-input>
</c-form-item>
</c-col>
<c-col :span="12">
<c-form-item label="Balance" prop="fxdgrp.cbs.opn2.amt">
<c-input v-model="model.fxdgrp.cbs.opn2.amt" :placeholder="$t('other.please_enter')+'Balance'"></c-input>
</c-form-item>
</c-col>
<!-- S0000019 : Orig.Amount -->
</div> </div>
</template> </template>
<script> <script>
import Api from "~/service/Api" import Api from "~/service/Api"
import commonProcess from "~/mixin/commonProcess"; import commonProcess from "~/mixin/commonProcess";
import CodeTable from "~/config/CodeTable" import CodeTable from "~/config/CodeTable"
...@@ -190,7 +136,7 @@ import Event from "../model/Event" ...@@ -190,7 +136,7 @@ import Event from "../model/Event"
export default { export default {
inject: ['root'], inject: ['root'],
props:["model","codes"], props:["model","codes"],
mixins: [commonProcess], mixins: [Event,commonProcess],
data(){ data(){
return { return {
......
<template> <template>
<div class="eContainer"> <div class="eContainer">
<c-page title="外币兑换销账">
<el-form :model="model" :rules="rules" ref="modelForm" label-width="150px" label-position="right" size="small" :validate-on-rule-change="false"> <el-form :model="model" :rules="rules" 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"> <c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="myTabClick">
<!--fxtfcn PD000001 Cancellation --> <!--fxtfcn PD000001 Cancellation -->
<el-tab-pane :label="$t('fxtfcn.PD000001')" name="canp"> <el-tab-pane label="业务信息" name="canp">
<c-content>
<m-canp :model="model" :codes="codes"/> <m-canp :model="model" :codes="codes"/>
</c-content>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="费用/账务" name="setpan">
<c-content>
<m-setpan :codes="codes" :model="model" />
</c-content>
</el-tab-pane>
<el-tab-pane label="报文/面函" name="docpan">
<c-content>
<m-docpan :codes="codes" :model="model" />
</c-content>
</el-tab-pane>
</c-tabs> </c-tabs>
</el-form> </el-form>
<c-function-btn
:handleCheck="handleCheck"
:handleStash="handleStash"
:handleSubmit="handleSubmit"
@handleSureWarning="handleSureWarning"
ref="commonBtn"
></c-function-btn>
</c-page>
</div> </div>
</template> </template>
<script> <script>
...@@ -15,6 +39,13 @@ import Api from "~/service/Api" ...@@ -15,6 +39,13 @@ import Api from "~/service/Api"
import CodeTable from "~/config/CodeTable" import CodeTable from "~/config/CodeTable"
import Fxtfcn from "../model" import Fxtfcn from "../model"
import commonProcess from "~/mixin/commonProcess" import commonProcess from "~/mixin/commonProcess"
import Setpan from "~/components/business/setmod/views";
import Docpan from "~/components/business/docpan/views";
import buildFn from "../event/buildCommons.js";
import operationFunc from "~/mixin/operationFunc";
import commonDepend from "~/mixin/commonDepend";
import event from "../event";
import Check from "../model/Check" import Check from "../model/Check"
import Default from "../model/Default" import Default from "../model/Default"
import Pattern from "../model/Pattern" import Pattern from "../model/Pattern"
...@@ -25,24 +56,26 @@ export default { ...@@ -25,24 +56,26 @@ export default {
name: "Fxtfcn", name: "Fxtfcn",
components:{ components:{
"m-canp" : Canp, "m-canp" : Canp,
"m-setpan": Setpan,
"m-docpan": Docpan,
}, },
provide() { provide() {
return { return {
root: this root: this
} }
}, },
mixins: [commonProcess], // 里面包含了Default、Check等的公共处理 mixins: [commonProcess,operationFunc,commonDepend,event,buildFn], // 里面包含了Default、Check等的公共处理
data(){ data(){
return { return {
tabVal: "canp", tabVal: "canp",
trnName: "fxtfcn", trnName: "fxtfcn",
trnType: "", trnType: "",
model: new Fxtfcn().data, model: new Fxtfcn().data,
checkRules: Check, // checkRules: Check,
defaultRules: Default, // defaultRules: Default,
pattern: Pattern, // pattern: Pattern,
rules: null, rules: Check,
codes: { codes: {...CodeTable
}, },
} }
}, },
...@@ -55,18 +88,16 @@ export default { ...@@ -55,18 +88,16 @@ export default {
} }
}, },
created:async function(){ created:async function(){
console.log("进入fxtfcn交易"); console.log("进入fxtfcn交易.."+this.trnName);
let rtnmsg = {}; // await this.init({}) let params = {
if(rtnmsg.respCode == SUCCESS) transName: this.trnName,
{ fxdgrp: {
this.updateModel(rtnmsg.data) rec: {
//TODO 处理数据逻辑 inr: this.$route.query.inr || "",
},
} },
else };
{ this.init(params)
this.$notify.error({title: '错误',message: '服务请求失败!'});
}
} }
} }
</script> </script>
......
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