Commit 5317b66a by wangguangchao

fxteop交易提交

parent 05c6f4b5
......@@ -8,7 +8,7 @@ const BusRouter = [
{ path: 'fttpcm', component: ()=>import("./Fttpcm/views"), name: 'Fttpcm', meta: { title: 'Fttpcm' } ,module:'Funds'},
{ path: 'fttpcn', component: ()=>import("./Fttpcn/views"), name: 'Fttpcn', meta: { title: 'Fttpcn' } ,module:'Funds'},
{ path: 'fxtatt', component: ()=>import("./Fxtatt/views"), name: 'Fxtatt', meta: { title: 'Fxtatt' } ,module:'Funds'},
{ path: 'fxteop', component: ()=>import("./Fxteop/views"), name: 'Fxteop', meta: { title: 'Fxteop' } ,module:'Funds'},
{ path: 'fxteop', component: ()=>import("./Fxteop/views"), name: 'Fxteop', meta: { title: '代客外汇买卖录入' } ,module:'Funds'},
{ path: 'fxteqo', component: ()=>import("./Fxteqo/views"), name: 'Fxteqo', meta: { title: 'Fxteqo' } ,module:'Funds'},
{ path: 'fxtfcm', component: ()=>import("./Fxtfcm/views"), name: 'Fxtfcm', meta: { title: 'Fxtfcm' } ,module:'Funds'},
{ path: 'fxtfcn', component: ()=>import("./Fxtfcn/views"), name: 'Fxtfcn', meta: { title: 'Fxtfcn' } ,module:'Funds'},
......
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,
},
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
/**
* Fxteop Default规则
*/
import Api from "~/service/Api";
import Utils from "~/utils/index"
import commonFunctions from '~/mixin/commonFunctions.js';
import Api from '~/service/Api';
import moment from 'moment';
import commonDepend from "~/mixin/commonDepend";
export default {
"fxtp.cnychk" :Utils.defaultFunction,
"fxtp.frgchk" :Utils.defaultFunction,
"fxdgrp.apl.dbfadrblkcn" :Utils.defaultFunction,
"fxtp.usr.extkey" :Utils.defaultFunction,
"fxdgrp.cbs.nom1.cur" :Utils.defaultFunction,
"fxdgrp.cbs.max.cur" :Utils.defaultFunction,
"fxtp.calflg" :Utils.defaultFunction,
"fxdgrp.rec.rat" :Utils.defaultFunction,
"fxdgrp.cbs.nom1.amt" :Utils.defaultFunction,
"fxdgrp.cbs.max.amt" :Utils.defaultFunction,
"fxdgrp.apl.pts.adrblk" :Utils.defaultFunction,
"fxdgrp.rec.dsp2" :Utils.defaultFunction,
"fxdgrp.rec.acc2" :Utils.defaultFunction,
"fxdgrp.rec.fxtyp" :Utils.defaultFunction,
"fxdgrp.rec.dsp" :Utils.defaultFunction,
"fxdgrp.apl.pts.extkey" :Utils.defaultFunction,
"fxdgrp.rec.ownref" :Utils.defaultFunction,
"fxdgrp.rec.opndat" :Utils.defaultFunction,
"fxdgrp.rec.acc" :Utils.defaultFunction,
mixins: [commonFunctions, commonDepend],
methods: {
},
}
//你可以添加自动default处理
import Api from "~/service/Api"
import Utils from "~/utils"
export default {
async onFxtpButgetref(){
let rtnmsg = await this.executeRule("fxtp.butgetref")
if(rtnmsg.respCode == SUCCESS)
{
//TODO 处理数据逻辑
}
else
{
this.$notify.error({title: '错误',message: '服务请求失败!'});
}
},
async onAplpDet(){
let rtnmsg = await this.executeRule("aplp.det")
if(rtnmsg.respCode == SUCCESS)
{
//TODO 处理数据逻辑
}
else
{
this.$notify.error({title: '错误',message: '服务请求失败!'});
}
},
}
\ No newline at end of file
export default {
"fxdgrp.rec.ownref":[
{type: "string", required: false, 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"}
],
"fxtp.usr.extkey":[
{type: "string", required: false, message: "必输项"},
{max: 8,message:"长度不能超过8"}
],
"fxtp.usrget.sdamod.seainf":[
{type: "string", required: false, message: "必输项"},
{max: 3,message:"长度不能超过3"}
],
"fxtp.aplp.ptsget.sdamod.dadsnd":[
{type: "string", required: false, message: "必输项"},
{max: 16,message:"长度不能超过16"}
],
"fxdgrp.apl.pts.extkey":[
{type: "string", required: false, message: "必输项"},
{max: 16,message:"长度不能超过16"}
],
"fxtp.aplp.ptsget.sdamod.seainf":[
{type: "string", required: false, message: "必输项"},
{max: 3,message:"长度不能超过3"}
],
"fxdgrp.apl.pts.adrblk":[
{type: "string", required: true, message: "必输项"},
{max: 35,message:"长度不能超过35"}
],
"fxdgrp.apl.dbfadrblkcn":[
{type: "string", required: true, message: "必输项"},
{max: 35,message:"长度不能超过35"}
],
"fxdgrp.cbs.max.amt":[
{type: "number", required: false, message: "必输项"},
{max: 18,message:"整数位不能超过14位"},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"fxdgrp.cbs.nom1.amt":[
{type: "number", required: false, message: "必输项"},
{max: 18,message:"整数位不能超过14位"},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"fxdgrp.rec.rat":[
{type: "string", required: false, message: "必输项"},
{max: 12,message:"长度不能超过12"}
],
"fxdgrp.rec.quoref":[
{type: "string", required: false, message: "必输项"},
{max: 16,message:"长度不能超过16"}
],
"fxdgrp.rec.midrat":[
{type: "string", required: false, message: "必输项"},
{max: 12,message:"长度不能超过12"}
],
"fxdgrp.rec.fudref":[
{type: "string", required: false, message: "必输项"},
{max: 16,message:"长度不能超过16"}
],
"fxdgrp.rec.opndat":[
{type: "date", required: false, message: "输入正确的日期"}
],
"fxdgrp.rec.valdat":[
{type: "date", required: false, message: "输入正确的日期"}
],
"fxdgrp.blk.remark":[
{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";
export default class Fxteop{
constructor () {
......@@ -62,7 +63,9 @@ export default class Fxteop{
cshflg:"", // 钞汇标志 .fxtp.cshflg
calflg:"", // Calculate .fxtp.calflg
},
pageId: "" // ctx的key
setmod: new Pub().data.Setmod,
docpan: new Pub().data.Docpan,
trndia: new Pub().data.Trndia,
}
}
}
\ No newline at end of file
<template>
<div class="eibs-tab">
<!-- S0000002 : 外汇买卖业务参考号 -->
<c-col :span="24">
<!-- ==================左边================ -->
<c-col :span="12" style="padding-right: 20px">
<c-col :span="24">
<c-form-item label="外汇买卖业务参考号" prop="fxdgrp.rec.ownref">
<c-fullbox>
<c-input v-model="model.fxdgrp.rec.ownref" maxlength="16" placeholder="请输入外汇买卖业务参考号" disabled>
</c-input>
<template slot="footer">
<c-button style="margin: 0 0" size="small" type="primary" :disabled="model.fxdgrp.apl.pts.ptainr === ''"
@click="getOwnref">
获取
</c-button>
</template>
</c-fullbox>
</c-form-item>
</c-col>
<c-col :span="24">
<c-form-item label="业务负责人" prop="fxtp.usr.extkey">
<c-input v-model="model.fxtp.usr.extkey" placeholder="请输入业务负责人" />
</c-form-item>
</c-col>
<c-col :span="24">
<c-form-item label="外汇买卖类型" prop="fxdgrp.rec.fxtyp">
<c-select v-model="model.fxdgrp.rec.fxtyp" style="width:100%" :placeholder="请输入外汇买卖类型" dbCode="">
</c-select>
</c-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="平盘金额" prop="fxdgrp.cbs.max.cur">
<c-select-cur v-model="model.fxdgrp.cbs.max.cur" style="width: 100%" dbCode="curtxt"> </c-select-cur>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label-width="5px" prop="fxdgrp.cbs.max.amt">
<c-input-currency
:currency="model.fxdgrp.cbs.max.cur"
v-model="model.fxdgrp.cbs.max.amt"></c-input-currency>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="对应人民币金额" prop="fxdgrp.cbs.nom1.cur">
<c-select-cur v-model="model.fxdgrp.cbs.nom1.cur" style="width: 100%" dbCode="curtxt"> </c-select-cur>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label-width="5px" prop="fxdgrp.cbs.nom1.amt">
<c-input-currency
disabled
:currency="model.fxdgrp.cbs.nom1.cur"
v-model="model.fxdgrp.cbs.nom1.amt"></c-input-currency>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="登记日期" prop="fxdgrp.rec.opndat">
<c-date-picker type="date" v-model="model.fxdgrp.rec.opndat" style="width:100%" placeholder="请输入登记日期">
</c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="买入外币账号" prop="fxdgrp.rec.dsp">
<c-col :span="12">
<c-select v-model="model.fxdgrp.rec.dsp" style="width:100%" :placeholder="请输入" dbCode="">
</c-select>
</c-col>
<c-col :span="12">
<c-select v-model="model.fxdgrp.rec.acc" style="width:100%" :placeholder="请输入买入外币账号" dbCode="">
</c-select>
</c-col>
</el-form-item>
</c-col>
<c-col :span="24">
<c-form-item label="备注" prop="fxdgrp.blk.remark">
<c-input type="textarea" v-model="model.fxdgrp.blk.remark" maxlength="140" :rows="4" style="width:100%" placeholder="请输入备注">
</c-input>
</c-form-item>
</c-col>
</c-col>
<!-- ==================右边================ -->
<c-col :span="12" style="padding-right: 20px">
<c-col :span="24">
<c-form-item label="名称" prop="fxdgrp.rec.nam">
<c-input v-model="model.fxdgrp.rec.nam" placeholder="请输入名称"/>
</c-form-item>
</c-col>
<c-col :span="24">
<el-card class="box-card">
<c-ptap :model="model" :requiredExtkey="true" :disabledExtkey="false" :disabled="false" :isAdrblk="true" :haveAdrLabel="true"
:isShowCard="false" :argadr="{title: '外汇买卖申请人',grp: 'fxdgrp', rol: 'apl',}"
:label="{labelExtkey:'外汇买卖申请人',labelNam:'名称',labelAdrblk:'地址'}" ptytyp="C">
</c-ptap>
</el-card>
</c-col>
<c-col :span="24">
<el-form-item label="起息日" prop="fxdgrp.rec.valdat">
<c-date-picker type="date" v-model="model.fxdgrp.rec.valdat" style="width:100%" placeholder="请输入起息日">
</c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="卖出外币账号" prop="fxdgrp.rec.dsp2">
<c-col :span="12">
<c-select v-model="model.fxdgrp.rec.dsp2" style="width:100%" :placeholder="请输入" dbCode="">
</c-select>
</c-col>
<c-col :span="12">
<c-select v-model="model.fxdgrp.rec.acc2" style="width:100%" :placeholder="请输入卖出外币账号" dbCode="">
</c-select>
</c-col>
</el-form-item>
</c-col>
</c-col>
</c-col>
<!-- <c-col :span="12">
<c-form-item :label="$t('fxteop.S0000002')" prop="fxdgrp.rec.ownref">
<c-input v-model="model.fxdgrp.rec.ownref" maxlength="16" :placeholder="$t('other.please_enter')+$t('fxteop.S0000002')"></c-input>
</c-form-item>
......@@ -13,22 +131,21 @@
{{$t('fxteop.C0000015')}}
</c-button>
</c-col>
<!-- S0000003 : 名称 -->
<c-col :span="12">
<c-form-item :label="$t('fxteop.S0000003')" prop="fxdgrp.rec.nam">
<c-input v-model="model.fxdgrp.rec.nam" maxlength="40" :placeholder="$t('other.please_enter')+$t('fxteop.S0000003')"></c-input>
</c-form-item>
</c-col>
<!-- S0000006 : 外汇买卖申请人 -->
<!-- S0000016 : 编号 -->
<c-col :span="12">
<c-form-item :label="$t('fxteop.S0000006')" prop="fxdgrp.apl.pts.ref">
<c-input v-model="model.fxdgrp.apl.pts.ref" maxlength="20" :placeholder="$t('other.please_enter')+$t('fxteop.S0000006')"></c-input>
</c-form-item>
</c-col>
<!-- S0000004 : 业务负责人 -->
<c-col :span="12">
<c-form-item :label="$t('fxteop.S0000004')" prop="fxtp.usr.extkey">
......@@ -65,7 +182,7 @@
{{$t('ptsp.CF000081')}}
</c-button>
</c-col>
<!-- S0000005 : 外汇买卖类型 -->
<c-col :span="12">
<el-form-item :label="$t('fxteop.S0000005')" prop="fxdgrp.rec.fxtyp">
......@@ -131,22 +248,21 @@
<c-col :span="12">
<c-checkbox v-model="model.fxtp.cnychk">{{$t('fxtp.C0000101')}}</c-checkbox>
</c-col>
<!-- S0000060 : 对外牌价 -->
<c-col :span="12">
<c-form-item :label="$t('fxtp.S0000060')" prop="fxdgrp.rec.rat">
<c-input v-model="model.fxdgrp.rec.rat" :placeholder="$t('other.please_enter')+$t('fxtp.S0000060')"></c-input>
</c-form-item>
</c-col>
<!-- S0000062 : 询价编号 -->
<c-col :span="12">
<c-form-item :label="$t('fxtp.S0000062')" prop="fxdgrp.rec.quoref">
<c-input v-model="model.fxdgrp.rec.quoref" maxlength="16" :placeholder="$t('other.please_enter')+$t('fxtp.S0000062')"></c-input>
</c-form-item>
</c-col>
<!-- S0000091 : 钞汇标志 -->
<!-- S0000061 : 中间价 -->
<c-col :span="12">
<c-form-item :label="$t('fxtp.S0000061')" prop="fxdgrp.rec.midrat">
......@@ -160,28 +276,28 @@
</c-select>
</el-form-item>
</c-col>
<!-- S0000063 : 资金部编号 -->
<c-col :span="12">
<c-form-item :label="$t('fxtp.S0000063')" prop="fxdgrp.rec.fudref">
<c-input v-model="model.fxdgrp.rec.fudref" maxlength="16" :placeholder="$t('other.please_enter')+$t('fxtp.S0000063')"></c-input>
</c-form-item>
</c-col>
<!-- S0000007 : 登记日期 -->
<c-col :span="12">
<el-form-item :label="$t('fxteop.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('fxteop.S0000007')"></c-date-picker>
</el-form-item>
</c-col>
<!-- S0000008 : 起息日 -->
<c-col :span="12">
<el-form-item :label="$t('fxteop.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('fxteop.S0000008')"></c-date-picker>
</el-form-item>
</c-col>
<!-- S0000013 : 买入外币账号 -->
<c-col :span="12">
<el-form-item :label="$t('fxteop.S0000013')" prop="fxdgrp.rec.dsp">
......@@ -196,7 +312,7 @@
</c-select>
</el-form-item>
</c-col>
<!-- S0000014 : 卖出外币账号 -->
<c-col :span="12">
<el-form-item :label="$t('fxteop.S0000014')" prop="fxdgrp.rec.dsp2">
......@@ -211,20 +327,21 @@
</c-select>
</el-form-item>
</c-col>
<!-- S0000012 : 备注 -->
<c-col :span="12">
<c-form-item :label="$t('fxteop.S0000012')" prop="fxdgrp.blk.remark">
<c-input type="textarea" v-model="model.fxdgrp.blk.remark" maxlength="35" show-word-limit :placeholder="$t('other.please_enter')+$t('fxteop.S0000012')" ></c-input>
</c-form-item>
</c-col>
</c-col> -->
</div>
</template>
<script>
import Api from "~/service/Api"
import commonProcess from "~/mixin/commonProcess";
import CodeTable from "~/config/CodeTable"
import Event from "../model/Event"
import event from "../event";
export default {
inject: ['root'],
......
<template>
<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">
<c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="myTabClick">
<!--fxteop PD000001 Exchange -->
<el-tab-pane :label="$t('fxteop.PD000001')" name="ovwp">
<el-tab-pane label="概览" name="ovwp">
<m-ovwp :model="model" :codes="codes"/>
</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>
</el-form>
<c-function-btn
:handleCheck="handleCheck"
:handleStash="handleStash"
:handleSubmit="handleSubmit"
@handleSureWarning="handleSureWarning"
ref="commonBtn"></c-function-btn>
</c-page>
</div>
</template>
<script>
......@@ -15,23 +32,31 @@ import Api from "~/service/Api"
import CodeTable from "~/config/CodeTable"
import Fxteop from "../model"
import commonProcess from "~/mixin/commonProcess"
import Check from "../model/Check"
import Default from "../model/Default"
import Pattern from "../model/Pattern"
import Ovwp from "./Ovwp"
import Setpan from "~/components/business/setmod/views";
import Docpan from "~/components/business/docpan/views";
import operationFunc from "~/mixin/operationFunc";
import commonDepend from "~/mixin/commonDepend";
import event from "../event";
import buildFn from "../event/buildCommons.js";
import Check from "../model/check";
import Default from "../model/default";
export default {
name: "Fxteop",
components:{
"m-ovwp" : Ovwp,
"m-setpan": Setpan,
"m-docpan": Docpan,
},
provide() {
return {
root: this
}
},
mixins: [commonProcess], // 里面包含了Default、Check等的公共处理
mixins: [commonProcess,operationFunc,commonDepend,event,buildFn], // 里面包含了Default、Check等的公共处理
data(){
return {
tabVal: "ovwp",
......@@ -40,34 +65,25 @@ export default {
model: new Fxteop().data,
checkRules: Check,
defaultRules: Default,
pattern: Pattern,
rules: null,
codes: {
},
rules: {},
codes: { ...CodeTable },
}
},
methods:{
myTabClick(tab){
this.tabClick(tab)
/**
* do it yourself
**/
}
},
created:async function(){
mounted() {
console.log("进入fxteop交易");
let rtnmsg = {}; // await this.init({})
if(rtnmsg.respCode == SUCCESS)
{
this.updateModel(rtnmsg.data)
//TODO 处理数据逻辑
}
else
{
this.$notify.error({title: '错误',message: '服务请求失败!'});
}
}
let params = {
transName: this.trnName,
fxdgrp: {
rec: {
inr: this.$route.query.inr || "",
},
},
};
this.init(params)
},
}
</script>
<style>
......
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