Commit ef566c49 by WF1020

Merge branch 'settle-test-20230110' of http://114.115.138.98:8900/fukai/vue-gjjs…

Merge branch 'settle-test-20230110' of http://114.115.138.98:8900/fukai/vue-gjjs into settle-test-20230110
parents 47dd0c0f a1c75a10
export default {
buildPtspta (ptsptaObj) {
let pts = ptsptaObj.pts;
let ptspta = {
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
};
return ptspta;
},
buildCommonData (model, trnName) {
let ptsptaList = [];
if (model.brdgrp.apl.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.apl));
}
if (model.brdgrp.ben.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.ben));
}
let dataObj = {
rec: {
objtyp: 'lid',
ownref: model.brdgrp.rec.ownref,
opndat: model.brdgrp.rec.opndat,
expdat: model.brdgrp.rec.expdat,
branchInr: model.brdgrp.rec.branchInr,
hndtyp: model.brdgrp.rec.hndtyp,
gartyp: model.brdgrp.rec.gartyp,
fingua: model.brdgrp.rec.fingua,
fromflg: model.brdgrp.rec.fromflg,
othersno: model.brdgrp.rec.othersno,
sndto: model.brdgrp.rec.sndto,
swiftflg: model.brtp.swiftflg,
brduil: model.brdgrp.rec.brduil,
purpos: model.brdgrp.rec.purpos,
revflg: model.brdgrp.rec.revflg,
cnfsta: model.brdgrp.rec.cnfsta,
},
cbsMap: {
MAX: model.brdgrp.cbs.max,
OPN1: model.brdgrp.cbs.opn1,
MAC: model.brdgrp.cbs.mac,
MAC2: model.brdgrp.cbs.mac2,
OPC2: model.brdgrp.cbs.opc2,
CNF: model.brdgrp.cbs.cnf,
},
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : 'ZL'
};
return dataObj
},
buildSetfeg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaall: model.liaall,
liaccv: model.liaccv,
// doceot: model.trnmod.trndoc.doceot,
};
return params
},
buildSetglg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
setfeg: model.setmod.setfeg,
liaall: model.liaall,
liaccv: model.liaccv,
};
return params
},
buildGlentry (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
setfog: model.setmod.setfog,
setfeg: model.setmod.setfeg,
setglg: model.setmod.setglg,
};
return params
},
buildEngp (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
};
return params
},
buildDocpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
};
return params
},
buildCcvpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaccvg: model.liaccv.liaccvg,
oldamt: model.liaccv.oldamt,
chgamt: model.liaccv.chgamt,
concur: model.liaccv.concur,
};
return params
},
buildLimitbody (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'GID',
objinr: model.gidgrp.rec.objinr,
ownref: model.gidgrp.rec.ownref,
},
};
return params
},
buildDoctre (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'lid',
objinr: model.brdgrp.rec.objinr,
ownref: model.brdgrp.rec.ownref,
swiftflg: model.brtp.swiftflg,
},
};
return params
},
// 公共组件setmod中dsp字段改变,触发联动时候的入参
buildSetgllAccts (model, trnName, setglg) {
let params = {
...this.buildCommonData(model, trnName),
setglg
};
return params
}
}
import Api from '~/service/Api';
import commonFunctions from '~/mixin/commonFunctions.js';
import buildFn from './buildCommons.js';
import setmod from '~/components/business/setmod/event';
import glentry from '~/components/business/glentry/event';
import engp from '~/components/business/engp/event';
import docpan from '~/components/business/docpan/event';
import ccvpan from '~/components/business/ccvpan/event';
import limitbody from '~/components/business/limitbody/event';
import doctre from '~/components/business/doctre/event';
import Utils from "~/utils"
export default {
mixins: [commonFunctions],
methods: {
...setmod,
...glentry,
...engp,
...docpan,
...ccvpan,
...limitbody,
...doctre,
async init () {
const params = {
spt: JSON.parse(localStorage.getItem('row_' + this.trnName))
}
const res = await Api.post('/service/betacc/init', {
...params,
transName: this.trnName,
userId: window.sessionStorage.userId || 'ZL',
brdgrp:{
rec:{
inr:this.$route.query.inr
}
}
});
if (!res.data) {
return
}
this.copyValueFromVoData(this.model, res.data)
this.copyValueFromVoData(this.model.setmod.setfeg, res.data.setfeg)
this.copyValueFromVoData(this.model.setmod.setfog, res.data.setfog)
this.copyValueFromVoData(this.model.setmod.setglg, res.data.setglg)
},
// 兼容处理在前端model中定义了字段,后端返回的数据中不存在字段的问题
copyValueFromVoData (model, data) {
let keysList = Object.keys(model)
keysList.map((key) => {
if (data[key]) {
if (Utils.typeOf(model[key]) === 'Object') {
this.copyValueFromVoData(model[key], data[key])
} else {
this.$set(model, key, data[key])
}
}
})
},
async tabClick(tab) {
if (this.isInDisplay) {
return;
}
let name = tab.name;
switch (name) {
case 'ccvpan':
let ccvpanRequest = buildFn.buildCcvpan(this.model, this.trnName);
this.processLiaccv(ccvpanRequest);
break;
case 'engp':
let engpRequest = buildFn.buildEngp(this.model, this.trnName);
this.processLiaall(engpRequest);
break;
case 'setmod':
let setfegRequest = buildFn.buildSetfeg(this.model, this.trnName);
// 此处利用回调是为了等setfeg的接口调用完成后才去获取setglg参数,由于setglg参数依赖于setfeg函数的返回值
this.processSetpan(setfegRequest, () => {
return buildFn.buildSetglg(this.model, this.trnName);
});
break;
case 'docpan':
let docpanRequest = buildFn.buildDocpan(this.model, this.trnName);
this.processTrndoc(docpanRequest);
break;
case 'glepan':
let glentryRequest = buildFn.buildGlentry(this.model, this.trnName);
this.processGlentry(glentryRequest);
break;
case 'limitbody':
let limitbodyRequest = buildFn.buildLimitbody(this.model, this.trnName);
this.processLimitbody(limitbodyRequest);
break;
case 'doctre':
let doctreRequest = buildFn.buildDoctre(this.model, this.trnName);
this.processDoctre(doctreRequest);
break;
default:
return;
}
},
// 点击获取按钮拉取当前key字段下的表单数据
queryFormData(key) {
console.log(key);
},
// 业务信息=》基本信息=》保函编号-----获取保函编号
async queryOwnref() {
let params = {
ptainr: this.model.gidgrp.apl.pts.ptainr,
businessType: 'LG',
tbl: 'LG',
};
const loading = this.loading();
let res = await Api.post('/service/betacc/getOwnRef', params);
if (res.respCode == SUCCESS) {
loading.close();
this.model.gidgrp.rec.ownref = res.data;
}
},
// 获取brtacp弹框表格数据
async queryGridEtyPromptDialogData(type, ptytyp) {
let params = {
userId: window.sessionStorage.userId || 'ZL',
ptytyp: ptytyp,
extkey: this.model.gidgrp[type.toLowerCase()].pts.extkey,
};
let res = await Api.post('/service/ptspta/list', params);
if (res.respCode == SUCCESS) {
this.root.$refs['etyDialog'].show = true;
this.root.promptData.data = res.data.ptaInfos;
this.root.promptData.type = type;
}
},
// 选中brtacp弹框表格的行数据
async selectGridEtyPromptData(row) {
let params = {
...row,
};
let res = await Api.post('/service/ptspta/fetch', params);
if (res.respCode == SUCCESS) {
this.$set(this.model.gidgrp, row.role.toLowerCase(), res.data);
}
},
// 业务信息=》基本信息=》支出目的
purposChange(key, value) {
this.handleChangeForm(key, value);
},
// 初始化保函开立类型码表下拉列表
async queryHndtypCodeTableList(trnName) {
let params = {
gitp: {
swiftflg: this.model.gitp.swiftflg,
},
gidgrp: {
rec: {
purpos: this.model.gidgrp.rec.purpos,
},
},
transName: trnName.toUpperCase(),
};
let res = await Api.post('/service/betacc/initHndtyp', params);
if (res.respCode == SUCCESS) {
this.$set(this.codes, 'voHndtyp', res.data);
}
},
// 是否SWIFT格式修改--联动保函开立类型
handleChangeSwiftflg() {
this.queryHndtypCodeTableList(this.root.trnName);
},
// 支出目的修改--联动保函开立类型
handleChangePurpos() {
this.queryHndtypCodeTableList(this.root.trnName);
},
buildLiaccv () {
let params = {
...buildFn.buildCommonData(this.model, this.trnName),
liaccvg: this.model.liaccv.liaccvg,
oldamt: this.model.liaccv.oldamt,
chgamt: this.model.liaccv.chgamt,
concur: this.model.liaccv.concur,
};
return params
},
// 公共组件setmod处理方式改变触发联动
changeSetmodModel (emitParams) {
let reqParams = {}
switch (emitParams.code) {
case 'processMethods':
reqParams = buildFn.buildSetglg(this.model, this.trnName);
this.calcPayDetail(reqParams)
break
case 'changeDsp':
let index = emitParams.index;
let setglgRequest = buildFn.buildSetglg(this.model, this.trnName);
setglgRequest.setglg = {setgll: emitParams.list};
this.setgllAccts(setglgRequest, index);
break
default:
return
}
}
},
};
export default {
'liaall.misamt' :null,
'liaall.limmod.limpts.oth.pts.extkey' :null,
'liaall.limmod.ownref' :null,
'bedgrp.apl.pts.nam' :null,
'liaall.limmod.ecifno' :null,
'bedgrp.prb.pts.nam' :null,
'liaall.limmod.limpts.oth.pts.nam' :null,
'setmod.dspflg' :null,
'setmod.redamt' :null,
'aamset.utlamt2' :null,
'liaall.limmod.limpts.wrk.pts.nam' :null,
'liaall.limmod.limpts.wrk.pts.extkey' :null,
'mtabut.coninf.conexedat' :null,
'liaall.limmod.limpts.nonrevflg1' :null,
'setmod.docamt' :null,
'betp.furide' :null,
'bedgrp.iss.pts.nam' :null,
'betp.ledget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.rec.ownref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'betp.ledget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.cbs.opn1.cur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.cbs.opn1.amt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
],
'betp.recget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'bedgrp.rec.ownref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'betp.recget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'bedgrp.rec.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'bedgrp.cbs.max.amt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
],
'bedgrp.prb.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'bedgrp.cbs.opn1.cur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'bedgrp.cbs.opn1.amt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
],
'bedgrp.prb.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'bedgrp.iss.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'bedgrp.iss.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'bedgrp.rec.matdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'bedgrp.rec.rcvdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'bedgrp.rec.predat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'bedgrp.apl.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'bedgrp.rec.docsta': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'bedgrp.apl.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'trnmod.swiadd.strinf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'bedgrp.rec.disdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'setmod.docamt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
],
'setmod.redamt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
],
'aamset.utlamt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
],
'aamset.utlamt2': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
],
'snadat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'setmod.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'setmod.zmqacc': [
{ type: 'string', required: false, message: '必输项' },
{ max: 20, message: '长度不能超过20' }
],
'liaall.outamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.outpct': [
{ type: 'string', required: false, message: '必输项' },
{ max: 6, message: '长度不能超过6' }
],
'liaall.concur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'liaall.misamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.exttotoldamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.exttotamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'trnmod.trndoc.advnam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'trnmod.trndoc.amdapl': [
{ type: 'string', required: true, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'trnmod.trndoc.advdoc': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'trnmod.trndoc.filrecv': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'trnmod.trndoc.doctrestm': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'trnmod.trndoc.condocstm': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'trnmod.trndoc.rcvatt.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'mtabut.coninf.oitinf.oit.inftxt': [
{ type: 'string', required: true, message: '必输项' },
{ max: 60, message: '长度不能超过60' }
],
'mtabut.coninf.oitset.oit.inftxt': [
{ type: 'string', required: true, message: '必输项' },
{ max: 60, message: '长度不能超过60' }
],
'mtabut.coninf.conexedat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'mtabut.coninf.usr.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 8, message: '长度不能超过8' }
],
'liaall.limmod.ecifno': [
{ type: 'string', required: false, message: '必输项' },
{ max: 22, message: '长度不能超过22' }
],
'liaall.limmod.ownref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.wrkp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.othp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.limpts.wrk.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.wrkp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'liaall.limmod.limpts.oth.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.othp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'liaall.limmod.comamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.limmod.limpts.wrk.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'liaall.limmod.limpts.oth.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'liaall.limmod.ccvamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.limmod.limpts.pfcod1': [
{ type: 'string', required: false, message: '必输项' },
{ max: 14, message: '长度不能超过14' }
],
'liaall.limmod.limpts.pfcod2': [
{ type: 'string', required: false, message: '必输项' },
{ max: 14, message: '长度不能超过14' }
],
}
import Pts from '~/components/business/commonModel/Pts';
import Pub from '~/components/business/commonModel/index.js';
export default class Betacc {
constructor() {
this.data = {
betp: {
furide: '',
adaflg: '',
cre752flg: ''
},
setmod: {
redamt: '',
doccur: '',
docamt: ''
},
ledgrp: {
rec: {
ownref: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
}
}
},
aamset: {
utlamt: '',
utlamt2: ''
},
mtabut: {
coninf: {
usr: {
extkey: ''
}
}
},
snadat: '',
bedgrp: {
rec: {
predat: '',
rcvdat: '',
doctypcod: '',
docsta: '',
ownref: '',
matdat: '',
disdat: '',
nam: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
},
opn2: {
cur: ''
},
max: {
cur: '',
amt: ''
}
}
},
trnmod: {
swiadd: {
strinf: ''
}
},
setmod: new Pub().data.Setmod,
mtabut: new Pub().data.Mtabut,
trnmod: new Pub().data.Trnmod,
liaall: new Pub().data.Liaall,
liaccv: new Pub().data.Liaccv,
docpan: new Pub().data.Docpan,
};
}
}
<template>
<div class="eibs">
<!-- left -->
<c-col :span="12" style="padding-right: 20px;">
<c-col :span="24">
<el-form-item label="出口信用证编号" prop="ledgrp.rec.ownref" style="width: 100%">
<c-fullbox>
<c-input v-model="model.ledgrp.rec.ownref" maxlength="16" placeholder="请输入出口信用证编号" disabled></c-input>
<template slot="footer">
<c-button style="margin-left: 10px; padding: 0 12px" size="small" type="primary" @click="onSeainf"
icon="el-icon-info">
</c-button>
</template>
</c-fullbox>
</el-form-item>
<!-- <c-col :span="2" :offset="1" style="text-align: right">
<c-button
style="margin: 0 0"
size="small"
type="primary"
:disabled="!this.flag && model.ledgrp.rec.ownref == ''? false:true"
@click="onDetpButgetref"
>
获取
</c-button>
</c-col> -->
</c-col>
<c-col :span="24">
<el-form-item label="出口单据编号" prop="bedgrp.rec.ownref" style="width: 100%">
<c-fullbox>
<c-input v-model="model.bedgrp.rec.ownref" maxlength="16" placeholder="请输入出口单据编号" disabled></c-input>
<template slot="footer">
<c-button style="margin-left: 10px; padding: 0 12px" size="small" type="primary" @click="onSeainf"
icon="el-icon-info">
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<!-- <c-col :span="2" :offset="1" style="text-align: right">
<c-button
style="margin: 0 0"
size="small"
type="primary"
:disabled="!this.flag && model.bedgrp.rec.ownref == ''? false:true"
@click="onDetpButgetref"
>
获取
</c-button>
</c-col> -->
<c-col :span="24">
<el-form-item label="单据金额" prop="bedgrp.cbs.max.cur">
<c-fullbox>
<c-input v-model="model.bedgrp.cbs.max.cur" maxlength="3" style="width: 50%" placeholder="请输入单据金额"
disabled></c-input>
<c-input-currency v-model="model.bedgrp.cbs.max.amt" style="width: 50%" placeholder="请输入金额"
disabled></c-input-currency>
<template slot="footer">
<c-checkbox v-model="model.betp.adaflg" style="margin-left: 10px" disabled>附加金额</c-checkbox>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="单据余额" prop="bedgrp.cbs.opn1.cur">
<c-input v-model="model.bedgrp.cbs.opn1.cur" maxlength="3" placeholder="请输入金额" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="bedgrp.cbs.opn1.amt">
<c-input-currency v-model="model.bedgrp.cbs.opn1.amt" placeholder="请输入金额" disabled></c-input-currency>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据类型" prop="bedgrp.rec.doctypcod">
<c-select v-model="model.bedgrp.rec.doctypcod" style="width: 100%" placeholder="请输入单据类型" disabled>
<el-option v-for="item in codes.doctypcod1" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="到期日" prop="bedgrp.rec.matdat">
<c-date-picker type="date" v-model="model.bedgrp.rec.matdat" style="width: 100%" placeholder="请选择到期日"
disabled></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="收到日期" prop="bedgrp.rec.rcvdat">
<c-date-picker type="date" v-model="model.bedgrp.rec.rcvdat" style="width: 100%" placeholder="请选择收到日期"
disabled></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="交单日期" prop="bedgrp.rec.predat">
<c-date-picker type="date" v-model="model.bedgrp.rec.predat" style="width: 100%" placeholder="请选择日期"
disabled></c-date-picker>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据状态" prop="bedgrp.rec.docsta">
<c-select v-model="model.bedgrp.rec.docsta" style="width: 100%" placeholder="请选择单据状态" disabled
:code="codes.docsta">
</c-select>
</el-form-item>
</c-col>
</c-col>
<!-- right -->
<c-col :span="12" style="padding-left: 20px;">
<c-col :span="24">
<c-col :span="12">
<el-form-item label="信用证余额" prop="ledgrp.cbs.opn1.cur">
<c-input v-model="model.ledgrp.cbs.opn1.cur" maxlength="3" placeholder="请输入信用证余额" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="ledgrp.cbs.opn1.amt">
<c-input-currency-min v-model="model.ledgrp.cbs.opn1.amt" placeholder="请输入金额" disabled></c-input-currency-min>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据简略信息" prop="bedgrp.rec.nam">
<c-input v-model="model.bedgrp.rec.nam" maxlength="40" placeholder="请输入简略信息" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptsmsg :model="model" :argadr="{
title: '交单人',
grp: 'bedgrp',
rol: 'prb',
}" :disabled="true" :enRef="false" :enNam="false"></c-ptsmsg>
</c-col>
<c-col :span="24">
<c-ptsmsg :model="model" :argadr="{
title: '开证行',
grp: 'bedgrp',
rol: 'iss',
}" :disabled="true" :enRef="false" :enNam="false"></c-ptsmsg>
</c-col>
<c-col :span="24">
<c-ptsmsg :model="model" :argadr="{
title: '申请人',
grp: 'bedgrp',
rol: 'apl',
}" :disabled="true" :enRef="false" :enNam="false"></c-ptsmsg>
</c-col>
</c-col>
<!-- <c-col :span="24">
<el-form-item style="margin-left: 0px">
<el-divider />
</el-form-item>
</c-col> -->
<!-- next part -->
<!-- left -->
<c-col :span="12" style="padding-right: 20px;">
<c-col :span="24">
<el-form-item label="到期日修订说明" prop="trnmod.swiadd.strinf">
<c-input type="textarea" v-model="model.trnmod.swiadd.strinf" maxlength="35" show-word-limit
placeholder="请输入说明"></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="承兑金额" prop="setmod.doccur">
<c-input v-model="model.setmod.doccur" maxlength="3" placeholder="请输入承兑金额" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="setmod.docamt">
<c-input-currency v-model="model.setmod.docamt" placeholder="请输入金额" disabled></c-input-currency>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="单据部分金额" prop="bedgrp.cbs.opn2.cur">
<c-input v-model="model.bedgrp.cbs.opn2.cur" maxlength="3" placeholder="请输入单据部分金额" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="aamset.utlamt">
<c-input-currency v-model="model.aamset.utlamt" placeholder="请输入金额" disabled></c-input-currency>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="附加金额" prop="bedgrp.cbs.opn2.cur">
<c-input v-model="model.bedgrp.cbs.opn2.cur" maxlength="3" placeholder="请输入附加金额" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="aamset.utlamt2">
<c-input-currency v-model="model.aamset.utlamt2" placeholder="请输入金额" disabled></c-input-currency>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="发送索偿电日期" prop="snadat">
<c-date-picker type="date" v-model="model.snadat" style="width: 100%" placeholder="请选择发送索偿电日期"></c-date-picker>
</el-form-item>
</c-col>
</c-col>
<!-- right -->
<c-col :span="12" style="padding-left: 20px;">
<c-col :span="18">
<el-form-item label="进一步识别" prop="betp.furide">
<c-select v-model="model.betp.furide" maxlength="10" style="width: 100%" placeholder="请选择进一步识别"
:disabled="!cre752flg" :code="codes.furide"></c-select>
</el-form-item>
</c-col>
<c-col :span="6">
<c-checkbox v-model="cre752flg" style="margin-left: 10px">MT 752</c-checkbox>
</c-col>
<c-col :span="24">
<el-form-item label="通知日期" prop="bedgrp.rec.disdat">
<c-date-picker type="date" v-model="model.bedgrp.rec.disdat" style="width: 100%" placeholder="请选择通知日期"
disabled></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="折扣金额" prop="setmod.doccur">
<c-input v-model="model.setmod.doccur" maxlength="3" placeholder="请输入折扣金额" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="setmod.redamt">
<c-input-currency v-model="model.setmod.redamt" placeholder="请输入金额"></c-input-currency>
</el-form-item>
</c-col>
</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/Betacc/Event";
import Ptsmsg from "~/views/Public/Ptsmsg";
export default {
components: { "c-ptsmsg": Ptsmsg },
inject: ["root"],
props: ["model", "codes"],
mixins: [commonProcess],
data() {
return {};
},
computed: {
cre752flg: {
get() {
return this.model.betp.cre752flg != "";
},
set(val) {
this.model.betp.cre752flg = val ? "X" : "";
this.model.betp.furide = "";
},
},
flag() {
return this.model.mtabut.coninf.usr.extkey == "";
},
},
methods: { ...Event },
created: function () { },
};
</script>
<style></style>
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames" @change="handleChange">
<el-collapse-item title="承兑" name="accp">
<m-accp :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import Api from "~/service/Api";
import commonProcess from "~/mixin/commonProcess";
import CodeTable from "~/config/CodeTable";
import Event from "~/model/Gitcrj/Event";
import Accp from "./Accp"
export default {
components: {
"m-accp": Accp,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [commonProcess],
data() {
return {
activeNames: ["accp"],
};
},
methods: { ...Event },
created:
function () { },
};
</script>
<style></style>
<template>
<div class="eContainer">
<c-page title="出口信用证单据承兑">
<!-- <c-bus-button :$pntvm="this"></c-bus-button> -->
<!-- <c-function-btn>
<el-button size="small">流程附言</el-button>
<el-button size="small">交易历史</el-button>
<el-button size="small">备忘录</el-button>
<el-button size="small">影像信息</el-button>
<el-button size="small">保存模板</el-button> -->
<!-- <el-button size="small">使用模板</el-button> -->
<!-- <el-button size="small">制裁信息</el-button>
<el-button size="small">拆分报文</el-button> -->
<!-- <el-button size="small">智能提示</el-button>
</c-function-btn> -->
<el-form :model="model" :rules="rules" ref="modelForm" label-width="120px" label-position="right" size="small"
:validate-on-rule-change="false">
<c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="tabClick">
<!--PD000033 -->
<el-tab-pane label="业务信息" name="ovwp">
<c-content>
<m-ovwp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000001 -->
<el-tab-pane label="统一授信" name="limitbody">
<c-content>
<m-limitbody :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="表外记账" name="engp">
<c-content>
<!-- 表外记账 -->
<m-engp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="费用/账务" name="setmod">
<c-content>
<m-setmod
:model="model"
:codes="codes"
@changeSetmodModel="changeSetmodModel"
/>
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="会计分录" name="glepan">
<c-content>
<m-glentry :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000510 -->
<el-tab-pane label="备查/附言" name="addbcb">
<c-content>
<div class="eibs-tab">
<m-addbcb :model="model" :codes="codes" />
</div>
</c-content>
</el-tab-pane>
<!--PD000529 -->
<el-tab-pane label="报文/面函" name="docpan">
<c-content>
<m-docpan :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000546 -->
<el-tab-pane label="附件信息" name="doctre">
<c-content>
<m-doctre :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
</c-tabs>
</el-form>
<c-function-btn :handleSubmit="handleSubmit" :handleCheck="handleCheck" :handleStash="handleStash">
</c-function-btn>
</c-page>
</div>
</template>
<script>
import CodeTable from "~/config/CodeTable";
import Betacc from "~/model/Betacc";
import commonProcess from "~/mixin/commonProcess";
import commonFuncs from "~/mixin/commonFuncs";
import Check from "~/model/Betacc/Check";
import Default from "~/model/Betacc/Default";
import Pattern from "~/model/Betacc/Pattern";
import Accp from "./Accp";
import Engp from "~/views/Public/Engp";
import Doctre from "~/views/Public/Doctre";
import Setpan from "~/views/Public/Setpan";
import Coninfp from "~/components/business/coninfp/views";
import Docpan from "~/components/business/docpan/views";
import Limitbody from "~/components/business/limitbody/views";
import Ovwp from "./Ovwp";
export default {
name: "Betacc",
components: {
"m-accp": Accp,
"m-setpan": Setpan,
"m-engp": Engp,
"m-docpan": Docpan,
"m-doctre": Doctre,
"m-coninfp": Coninfp,
"m-limitbody": Limitbody,
"m-ovwp": Ovwp,
},
provide() {
return {
root: this,
};
},
mixins: [operationFunc, event],
data() {
return {
tabVal: "ovwp",
trnName: "betacc",
model: new Betacc().data,
rules: formRules,
codes: {
...CodeTable,
},
activeNames: ["engp"],
};
},
methods: {}
};
</script>
<style></style>
export default {
buildPtspta (ptsptaObj) {
let pts = ptsptaObj.pts;
let ptspta = {
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
};
return ptspta;
},
buildCommonData (model, trnName) {
let ptsptaList = [];
if (model.brdgrp.apl.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.apl));
}
if (model.brdgrp.ben.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.ben));
}
let dataObj = {
rec: {
objtyp: 'lid',
ownref: model.brdgrp.rec.ownref,
opndat: model.brdgrp.rec.opndat,
expdat: model.brdgrp.rec.expdat,
branchInr: model.brdgrp.rec.branchInr,
hndtyp: model.brdgrp.rec.hndtyp,
gartyp: model.brdgrp.rec.gartyp,
fingua: model.brdgrp.rec.fingua,
fromflg: model.brdgrp.rec.fromflg,
othersno: model.brdgrp.rec.othersno,
sndto: model.brdgrp.rec.sndto,
swiftflg: model.brtp.swiftflg,
brduil: model.brdgrp.rec.brduil,
purpos: model.brdgrp.rec.purpos,
revflg: model.brdgrp.rec.revflg,
cnfsta: model.brdgrp.rec.cnfsta,
},
cbsMap: {
MAX: model.brdgrp.cbs.max,
OPN1: model.brdgrp.cbs.opn1,
MAC: model.brdgrp.cbs.mac,
MAC2: model.brdgrp.cbs.mac2,
OPC2: model.brdgrp.cbs.opc2,
CNF: model.brdgrp.cbs.cnf,
},
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : 'ZL'
};
return dataObj
},
buildSetfeg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaall: model.liaall,
liaccv: model.liaccv,
// doceot: model.trnmod.trndoc.doceot,
};
return params
},
buildSetglg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
setfeg: model.setmod.setfeg,
liaall: model.liaall,
liaccv: model.liaccv,
};
return params
},
buildGlentry (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
setfog: model.setmod.setfog,
setfeg: model.setmod.setfeg,
setglg: model.setmod.setglg,
};
return params
},
buildEngp (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
};
return params
},
buildDocpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
};
return params
},
buildCcvpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaccvg: model.liaccv.liaccvg,
oldamt: model.liaccv.oldamt,
chgamt: model.liaccv.chgamt,
concur: model.liaccv.concur,
};
return params
},
buildLimitbody (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'GID',
objinr: model.gidgrp.rec.objinr,
ownref: model.gidgrp.rec.ownref,
},
};
return params
},
buildDoctre (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'lid',
objinr: model.brdgrp.rec.objinr,
ownref: model.brdgrp.rec.ownref,
swiftflg: model.brtp.swiftflg,
},
};
return params
},
// 公共组件setmod中dsp字段改变,触发联动时候的入参
buildSetgllAccts (model, trnName, setglg) {
let params = {
...this.buildCommonData(model, trnName),
setglg
};
return params
}
}
import Api from '~/service/Api';
import commonFunctions from '~/mixin/commonFunctions.js';
import buildFn from './buildCommons.js';
import setmod from '~/components/business/setmod/event';
import glentry from '~/components/business/glentry/event';
import engp from '~/components/business/engp/event';
import docpan from '~/components/business/docpan/event';
import ccvpan from '~/components/business/ccvpan/event';
import limitbody from '~/components/business/limitbody/event';
import doctre from '~/components/business/doctre/event';
import Utils from "~/utils"
export default {
mixins: [commonFunctions],
methods: {
...setmod,
...glentry,
...engp,
...docpan,
...ccvpan,
...limitbody,
...doctre,
async init () {
const params = {
spt: JSON.parse(localStorage.getItem('row_' + this.trnName))
}
const res = await Api.post('/service/betcan/init', {
...params,
transName: this.trnName,
userId: window.sessionStorage.userId || 'ZL',
brdgrp:{
rec:{
inr:this.$route.query.inr
}
}
});
if (!res.data) {
return
}
this.copyValueFromVoData(this.model, res.data)
this.copyValueFromVoData(this.model.setmod.setfeg, res.data.setfeg)
this.copyValueFromVoData(this.model.setmod.setfog, res.data.setfog)
this.copyValueFromVoData(this.model.setmod.setglg, res.data.setglg)
},
// 兼容处理在前端model中定义了字段,后端返回的数据中不存在字段的问题
copyValueFromVoData (model, data) {
let keysList = Object.keys(model)
keysList.map((key) => {
if (data[key]) {
if (Utils.typeOf(model[key]) === 'Object') {
this.copyValueFromVoData(model[key], data[key])
} else {
this.$set(model, key, data[key])
}
}
})
},
async tabClick(tab) {
if (this.isInDisplay) {
return;
}
let name = tab.name;
switch (name) {
case 'ccvpan':
let ccvpanRequest = buildFn.buildCcvpan(this.model, this.trnName);
this.processLiaccv(ccvpanRequest);
break;
case 'engp':
let engpRequest = buildFn.buildEngp(this.model, this.trnName);
this.processLiaall(engpRequest);
break;
case 'setmod':
let setfegRequest = buildFn.buildSetfeg(this.model, this.trnName);
// 此处利用回调是为了等setfeg的接口调用完成后才去获取setglg参数,由于setglg参数依赖于setfeg函数的返回值
this.processSetpan(setfegRequest, () => {
return buildFn.buildSetglg(this.model, this.trnName);
});
break;
case 'docpan':
let docpanRequest = buildFn.buildDocpan(this.model, this.trnName);
this.processTrndoc(docpanRequest);
break;
case 'glepan':
let glentryRequest = buildFn.buildGlentry(this.model, this.trnName);
this.processGlentry(glentryRequest);
break;
case 'limitbody':
let limitbodyRequest = buildFn.buildLimitbody(this.model, this.trnName);
this.processLimitbody(limitbodyRequest);
break;
case 'doctre':
let doctreRequest = buildFn.buildDoctre(this.model, this.trnName);
this.processDoctre(doctreRequest);
break;
default:
return;
}
},
// 点击获取按钮拉取当前key字段下的表单数据
queryFormData(key) {
console.log(key);
},
// 业务信息=》基本信息=》保函编号-----获取保函编号
async queryOwnref() {
let params = {
ptainr: this.model.gidgrp.apl.pts.ptainr,
businessType: 'LG',
tbl: 'LG',
};
const loading = this.loading();
let res = await Api.post('/service/betcan/getOwnRef', params);
if (res.respCode == SUCCESS) {
loading.close();
this.model.gidgrp.rec.ownref = res.data;
}
},
// 获取brtacp弹框表格数据
async queryGridEtyPromptDialogData(type, ptytyp) {
let params = {
userId: window.sessionStorage.userId || 'ZL',
ptytyp: ptytyp,
extkey: this.model.gidgrp[type.toLowerCase()].pts.extkey,
};
let res = await Api.post('/service/ptspta/list', params);
if (res.respCode == SUCCESS) {
this.root.$refs['etyDialog'].show = true;
this.root.promptData.data = res.data.ptaInfos;
this.root.promptData.type = type;
}
},
// 选中brtacp弹框表格的行数据
async selectGridEtyPromptData(row) {
let params = {
...row,
};
let res = await Api.post('/service/ptspta/fetch', params);
if (res.respCode == SUCCESS) {
this.$set(this.model.gidgrp, row.role.toLowerCase(), res.data);
}
},
// 业务信息=》基本信息=》支出目的
purposChange(key, value) {
this.handleChangeForm(key, value);
},
// 初始化保函开立类型码表下拉列表
async queryHndtypCodeTableList(trnName) {
let params = {
gitp: {
swiftflg: this.model.gitp.swiftflg,
},
gidgrp: {
rec: {
purpos: this.model.gidgrp.rec.purpos,
},
},
transName: trnName.toUpperCase(),
};
let res = await Api.post('/service/betcan/initHndtyp', params);
if (res.respCode == SUCCESS) {
this.$set(this.codes, 'voHndtyp', res.data);
}
},
// 是否SWIFT格式修改--联动保函开立类型
handleChangeSwiftflg() {
this.queryHndtypCodeTableList(this.root.trnName);
},
// 支出目的修改--联动保函开立类型
handleChangePurpos() {
this.queryHndtypCodeTableList(this.root.trnName);
},
buildLiaccv () {
let params = {
...buildFn.buildCommonData(this.model, this.trnName),
liaccvg: this.model.liaccv.liaccvg,
oldamt: this.model.liaccv.oldamt,
chgamt: this.model.liaccv.chgamt,
concur: this.model.liaccv.concur,
};
return params
},
// 公共组件setmod处理方式改变触发联动
changeSetmodModel (emitParams) {
let reqParams = {}
switch (emitParams.code) {
case 'processMethods':
reqParams = buildFn.buildSetglg(this.model, this.trnName);
this.calcPayDetail(reqParams)
break
case 'changeDsp':
let index = emitParams.index;
let setglgRequest = buildFn.buildSetglg(this.model, this.trnName);
setglgRequest.setglg = {setgll: emitParams.list};
this.setgllAccts(setglgRequest, index);
break
default:
return
}
}
},
};
export default {
'liaall.misamt' :null,
'liaall.limmod.limpts.oth.pts.extkey' :null,
'liaall.limmod.ownref' :null,
'liaall.limmod.ecifno' :null,
'liaall.limmod.limpts.oth.pts.nam' :null,
'setmod.dspflg' :null,
'liaall.limmod.limpts.wrk.pts.nam' :null,
'liaall.limmod.limpts.wrk.pts.extkey' :null,
'mtabut.coninf.conexedat' :null,
'liaall.limmod.limpts.nonrevflg1' :null,
'setmod.docamt' :null,
'betp0.ledget.sdamod.dadsnd':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'ledgrp.rec.ownref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'betp0.ledget.sdamod.seainf':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'ledgrp.cbs.opn1.cur':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'ledgrp.cbs.opn1.amt':[
{type: 'string', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{ pattern: /(^-?\d+$)|(^\.\d{1,3}$)|(^-?\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'betp0.recget.sdamod.dadsnd':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'bedgrp.rec.ownref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'betp0.recget.sdamod.seainf':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'bedgrp.rec.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'bedgrp.cbs.max.amt':[
{type: 'string', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'bedgrp.ben.pts.ref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'bedgrp.cbs.opn1.cur':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'bedgrp.cbs.opn1.amt':[
{type: 'string', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'bedgrp.cbs.opn2.amt':[
{type: 'string', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'bedgrp.ben.pts.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'bedgrp.iss.pts.ref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'bedgrp.rec.doctypcod':[
{type: 'string', required: false, message: '必输项'},
{max: 1,message:'长度不能超过1'}
],
'bedgrp.iss.pts.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'bedgrp.rec.matdat':[
{type: 'date', required: false, message: '输入正确的日期'}
],
'bedgrp.rec.orddat':[
{type: 'date', required: false, message: '输入正确的日期'}
],
'bedgrp.rec.rcvdat':[
{type: 'date', required: false, message: '输入正确的日期'}
],
'bedgrp.rec.predat':[
{type: 'date', required: false, message: '输入正确的日期'}
],
'bedgrp.apl.pts.ref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'bedgrp.rec.docsta':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'bedgrp.apl.pts.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'strinf':[
{type: 'string', required: false, message: '必输项'},
{max: 1750,message:'长度不能超过1750'}
],
'liaall.outamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.outpct':[
{type: 'string', required: false, message: '必输项'},
{max: 6,message:'长度不能超过6'}
],
'liaall.concur':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'liaall.misamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.exttotoldamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.exttotamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'setmod.ref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'setmod.docamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'setmod.zmqacc':[
{type: 'string', required: false, message: '必输项'},
{max: 20,message:'长度不能超过20'}
],
'mtabut.coninf.oitinf.oit.inftxt':[
{type: 'string', required: true, message: '必输项'},
{max: 60,message:'长度不能超过60'}
],
'mtabut.coninf.oitset.oit.inftxt':[
{type: 'string', required: true, message: '必输项'},
{max: 60,message:'长度不能超过60'}
],
'mtabut.coninf.conexedat':[
{type: 'date', required: false, message: '输入正确的日期'}
],
'mtabut.coninf.usr.extkey':[
{type: 'string', required: false, message: '必输项'},
{max: 8,message:'长度不能超过8'}
],
'trnmod.trndoc.advnam':[
{type: 'string', required: false, message: '必输项'},
{max: 50,message:'长度不能超过50'}
],
'trnmod.trndoc.amdapl':[
{type: 'string', required: true, message: '必输项'},
{max: 50,message:'长度不能超过50'}
],
'trnmod.trndoc.advdoc':[
{type: 'string', required: false, message: '必输项'},
{max: 1,message:'长度不能超过1'}
],
'trnmod.trndoc.filrecv':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'trnmod.trndoc.doctrestm':[
{type: 'string', required: false, message: '必输项'},
{max: 1,message:'长度不能超过1'}
],
'trnmod.trndoc.condocstm':[
{type: 'string', required: false, message: '必输项'},
{max: 1,message:'长度不能超过1'}
],
'trnmod.trndoc.rcvatt.seainf':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'liaall.limmod.ecifno':[
{type: 'string', required: false, message: '必输项'},
{max: 22,message:'长度不能超过22'}
],
'liaall.limmod.ownref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'liaall.limmod.wrkp.ptsget.sdamod.dadsnd':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'liaall.limmod.othp.ptsget.sdamod.dadsnd':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'liaall.limmod.limpts.wrk.pts.extkey':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'liaall.limmod.wrkp.ptsget.sdamod.seainf':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'liaall.limmod.limpts.oth.pts.extkey':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'liaall.limmod.othp.ptsget.sdamod.seainf':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'liaall.limmod.comamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.limmod.limpts.wrk.pts.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'liaall.limmod.limpts.oth.pts.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'liaall.limmod.ccvamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.limmod.limpts.pfcod1':[
{type: 'string', required: false, message: '必输项'},
{max: 14,message:'长度不能超过14'}
],
'liaall.limmod.limpts.pfcod2':[
{type: 'string', required: false, message: '必输项'},
{max: 14,message:'长度不能超过14'}
],
}
import Pts from '~/components/business/commonModel/Pts';
import Pub from '~/components/business/commonModel/index.js';
export default class Betcan {
constructor() {
this.data = {
sndmsg: '',
ledgrp: {
rec: {
ownref: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
}
}
},
rebkpflg: '',
strinf: '',
bedgrp: {
rec: {
predat: '',
rcvdat: '',
doctypcod: '',
docsta: '',
ownref: '',
orddat: '',
matdat: '',
nam: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
},
opn2: {
amt: ''
},
max: {
cur: '',
amt: ''
}
},
iss: {
pts: {
ref: '',
nam: ''
}
},
ben: {
pts: {
ref: '',
nam: ''
}
},
apl: {
pts: {
ref: '',
nam: ''
}
}
},
setmod: new Pub().data.Setmod,
mtabut: new Pub().data.Mtabut,
trnmod: new Pub().data.Trnmod,
liaall: new Pub().data.Liaall,
liaccv: new Pub().data.Liaccv,
docpan: new Pub().data.Docpan,
};
}
}
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames" @change="handleChange">
<!--el-collapse-item title="备查表" name="addbcb">
<m-addbcb :model="model" :codes="codes" />
</el-collapse-item-->
<el-collapse-item title="附言" name="coninfp">
<m-coninfp :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import Api from "~/service/Api";
import commonProcess from "~/mixin/commonProcess";
import Utils from "~/utils";
import Event from "~/model/Betcan/Event";
import Coninfp from "~/views/Public/Coninfp";
export default {
components: {
"m-coninfp": Coninfp,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [commonProcess],
data() {
return {
activeNames: ["coninfp"],
};
},
methods: {
...Event,
handleChange(val) {
console.log(val);
},
},
created: function () { },
};
</script>
<style>
</style>
<template>
<div class="eibs">
<!-- ======================= 左边 ========================= -->
<c-col :span="12" style="padding-right: 20px">
<!--SF000044 : Reference参考号 Export L/C Ref. -->
<c-col :span="24">
<el-form-item label="出口信用证编号" prop="ledgrp.rec.ownref">
<c-fullbox>
<c-input v-model="model.ledgrp.rec.ownref" maxlength="16" placeholder="请输入编号" style="width: 95%"
:disabled="true" @keyup.enter.native="eventFunction(
'ledgrp.rec.ownref'
)">
</c-input>
<template slot="footer">
<c-button style="margin: 0 0 0 0; padding: 0 12px" size="small" type="primary" @click="onSeainf">
<i class="el-icon-info" style="font-size:15px"></i>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<!-- SF000053 : 单据编号 单据参考号-->
<el-form-item label="单据编号" prop="bedgrp.rec.ownref">
<c-fullbox>
<c-input v-model="model.bedgrp.rec.ownref" maxlength="16" placeholder="请输入单据编号" style="width: 95%" disabled>
</c-input>
<template slot="footer">
<c-button style="margin: 0 0 0 0; padding: 0 12px" size="small" type="primary" @click="onSeainf">
<i class="el-icon-info" style="font-size:15px"></i>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="10">
<el-form-item label="单据金额" prop="bedgrp.cbs.max.cur">
<c-select v-model="model.bedgrp.cbs.max.cur" style="width: 100%" placeholder="请选择币种"
@keyup.enter.native="maxCurEvent" :code="codes.curtxt" disabled>
</c-select>
</el-form-item>
</c-col>
<c-col :span="7">
<el-form-item label="" label-width="5px" prop="bedgrp.cbs.max.amt">
<c-input-currency v-model="model.bedgrp.cbs.max.amt" style="text-align: left; width: 100%"
placeholder="请输入金额" @keyup.enter.native="
defaultFunction(
'bedgrp.cbs.max.amt',
model.bedgrp.cbs.max.amt
)
" disabled></c-input-currency>
</el-form-item>
</c-col>
<c-col :span="7">
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="10">
<el-form-item label="单据余额" prop="bedgrp.cbs.opn1.cur">
<c-select v-model="model.bedgrp.cbs.opn1.cur" maxlength="3" placeholder="请选择币种" style="width: 100%" disabled
:code="codes.curtxt"></c-select>
</el-form-item>
</c-col>
<c-col :span="7">
<el-form-item label="" label-width="5px" prop="bedgrp.cbs.opn1.amt">
<c-input-currency v-model="model.bedgrp.cbs.opn1.amt" style="text-align: left; width: 100%"
placeholder="请输入金额" disabled></c-input-currency>
</el-form-item>
</c-col>
<c-col :span="7">
<c-form-item label="" label-width="5px" prop="bedgrp.cbs.opn2.amt">
<c-input v-model="model.bedgrp.cbs.opn2.amt" placeholder="请输入" class="m-input-currency" disabled>
</c-input>
</c-form-item>
</c-col>
</c-col>
<!-- Document Type 单据类型-->
<c-col :span="24">
<el-form-item label="单据类型" prop="bedgrp.rec.doctypcod">
<c-select v-model="model.bedgrp.rec.doctypcod" maxlength="1" style="width: 100%" placeholder="请选择单据类型"
:code="codes.doctypcod1" disabled>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="到期日" prop="bedgrp.rec.matdat">
<c-date-picker type="date" v-model="model.bedgrp.rec.matdat" style="width: 100%" placeholder="请选择到期日"
value-format="yyyy-MM-dd" :disabled="true"></c-date-picker>
</el-form-item>
</c-col>
<!-- SF000079 : 寄单日期 -->
<c-col :span="12">
<el-form-item label="订单日期" prop="bedgrp.rec.orddat">
<c-date-picker type="date" v-model="model.bedgrp.rec.orddat" style="width: 100%" value-format="yyyy-MM-dd"
placeholder="请选择寄单日期" :disabled="true"></c-date-picker>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<!-- Received on SF000046 :到单日期-->
<c-col :span="12">
<el-form-item label="收到日期" prop="bedgrp.rec.rcvdat">
<c-date-picker type="date" v-model="model.bedgrp.rec.rcvdat" style="width: 100%" placeholder="请选择收到日期"
value-format="yyyy-MM-dd" :disabled="true"></c-date-picker>
</el-form-item>
</c-col>
<!-- Presented on SF000049 :提示日期 -->
<c-col :span="12">
<el-form-item label="交单日期" prop="bedgrp.rec.predat">
<c-date-picker type="date" v-model="model.bedgrp.rec.predat" style="width: 100%" placeholder="请选择提示日期"
value-format="yyyy-MM-dd" :disabled="true"></c-date-picker>
</el-form-item>
</c-col>
</c-col>
<!-- Document Status SF000056 :单据状态 -->
<c-col :span="24">
<el-form-item label="单据状态" prop="bedgrp.rec.docsta">
<c-select v-model="model.bedgrp.rec.docsta" maxlength="40" style="width: 100%" placeholder="请输入单据状态"
:code="codes.docsta" disabled></c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<c-form-item label="受益人陈述" prop="strinf">
<c-input type="textarea" v-model="model.strinf" maxlength="1750" show-word-limit :rows="5"
placeholder="请输入内容"></c-input>
</c-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="预订程序" prop="rebkpflg">
<c-select v-model="model.rebkpflg" style="width: 100%" placeholder="请选择" :code="codes.rebkpflg">
</c-select>
</el-form-item>
</c-col>
</c-col>
<c-col :span="12" style="padding-left: 20px">
<c-col :span="24">
<c-col :span="12">
<el-form-item label="信用证余额" prop="ledgrp.cbs.opn1.cur">
<c-select v-model="model.ledgrp.cbs.opn1.cur" maxlength="3" placeholder="请选择币种" :code="codes.curtxt"
disabled></c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="ledgrp.cbs.opn1.amt">
<c-input v-model="model.ledgrp.cbs.opn1.amt" placeholder="请输入信用证余额" disabled class="m-input-currency">
</c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据简略信息" prop="bedgrp.rec.nam">
<c-input text-align="middle" v-model="model.bedgrp.rec.nam" maxlength="40" placeholder="请输入" disabled>
</c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-form-item label="受益人参考号" prop="bedgrp.ben.pts.ref">
<c-input v-model="model.bedgrp.ben.pts.ref" maxlength="16" placeholder="请输入受益人" disabled></c-input>
</c-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="" prop="bedgrp.ben.pts.nam">
<c-input v-model="model.bedgrp.ben.pts.nam" maxlength="40" placeholder="请输入" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="开证行参考号" prop="bedgrp.iss.pts.ref">
<c-input v-model="model.bedgrp.iss.pts.ref" maxlength="16" placeholder="请输入开证行" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="" prop="bedgrp.iss.pts.nam">
<c-input v-model="model.bedgrp.iss.pts.nam" maxlength="40" placeholder="请输入" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="申请人参考号" prop="bedgrp.apl.pts.ref">
<c-input v-model="model.bedgrp.apl.pts.ref" maxlength="16" placeholder="请输入申请人" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="" prop="bedgrp.apl.pts.nam">
<c-input v-model="model.bedgrp.apl.pts.nam" maxlength="40" placeholder="请输入" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item>
<c-checkbox v-model="model.sndmsg" class="checkbox-left">发送消息</c-checkbox>
</el-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/Betcan/Event'
export default {
inject: ['root'],
props: ['model', 'codes'],
mixins: [commonProcess],
data() {
return {}
},
methods: { ...Event, onSeainf() { } },
created: function () { },
}
</script>
<style>
</style>
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames" @change="handleChange">
<el-collapse-item title="取消信息" name="canp">
<m-canp :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import Api from "~/service/Api";
import commonProcess from "~/mixin/commonProcess";
import CodeTable from "~/config/CodeTable";
import Event from "~/model/Betcan/Event";
import Canp from "./Canp";
export default {
components: {
"m-canp": Canp,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [commonProcess],
data() {
return {
activeNames: ["canp"],
};
},
methods: {
...Event,
handleChange(val) {
console.log(val);
},
},
created: function () { },
};
</script>
<style>
.marginLable {
padding-left: 160px;
}
</style>
<template>
<div class="eContainer">
<c-page title="出口信用证单据闭卷">
<el-form :model="model" :rules="rules" ref="modelForm" label-width="120px" label-position="right" size="small"
:validate-on-rule-change="false">
<c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="tabClick">
<el-tab-pane label="业务信息" name="ovwp">
<c-content>
<m-ovwp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000001 -->
<el-tab-pane label="统一授信" name="limitbody">
<c-content>
<m-limitbody :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="表外记账" name="engp">
<c-content>
<!-- 表外记账 -->
<m-engp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="费用/账务" name="setmod">
<c-content>
<m-setmod
:model="model"
:codes="codes"
@changeSetmodModel="changeSetmodModel"
/>
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="会计分录" name="glepan">
<c-content>
<m-glentry :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000510 -->
<el-tab-pane label="备查/附言" name="addbcb">
<c-content>
<m-addbcb :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<el-tab-pane label="报文/面函" name="docpan">
<c-content>
<m-docpan :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--trndoc PD000546 Attachments -->
<el-tab-pane label="附件" name="doctre">
<c-content>
<m-doctre :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
</c-tabs>
</el-form>
<c-grid-ety-prompt-dialog ref="etyDialog" :promptData="promptData" v-on:select-ety="selectEty">
</c-grid-ety-prompt-dialog>
<c-function-btn :handleSubmit="handleSubmit" :handleCheck="handleCheck" :handleStash="handleStash">
<!-- <el-button size="small">用户确认</el-button>
<el-button size="small">检核</el-button>
<el-button size="small">日志</el-button>
<el-button size="small">inc to Ben</el-button>
<el-button size="small">imgyge</el-button>
<el-button size="small">img</el-button>
<el-button size="small">His.img</el-button> -->
</c-function-btn>
</c-page>
</div>
</template>
<script>
import Betcan from "~/model/Betcan";
import event from '../event';
import operationFunc from "~/mixin/operationFunc";
import formRules from '../model/check'
import Ovwp from './Ovwp'
import Canp from './Canp'
import Addbcb from "./Addbcb"
import Limitbody from "~/components/business/limitbody/views";
import Engp from "~/components/business/engp/views";
import Setmod from "~/components/business/setmod/views";
// import Glepan from "~/components/business/glepan/views";
import Docpan from "~/components/business/docpan/views";
import Doctre from "~/components/business/doctre/views";
export default {
name: 'Betcan',
components: {
'm-ovwp': Ovwp,
'm-canp': Canp,
'm-limitbody': Limitbody,
'm-engp': Engp,
"m-ccvpan": Ccvpan,
"m-setmod": Setmod,
"m-glentry": Glentry,
// 'm-glepan': Glepan,
'm-addbcb': Addbcb,
'm-docpan': Docpan,
'm-doctre': Doctre,
},
provide() {
return {
root: this,
}
},
mixins: [operationFunc, event],
data() {
return {
tabVal: 'ovwp',
trnName: 'betcan',
trnType: '',
model: new Betcan().data,
rules: formRules,
codes: {
...CodeTable
},
activeNames: ["setpan"],
}
},
methods: {},
mounted () {
this.init()
},
}
</script>
<style>
</style>
export default {
buildPtspta (ptsptaObj) {
let pts = ptsptaObj.pts;
let ptspta = {
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
};
return ptspta;
},
buildCommonData (model, trnName) {
let ptsptaList = [];
if (model.gidgrp.apl.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.gidgrp.apl));
}
if (model.gidgrp.adv.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.gidgrp.adv));
}
if (model.gidgrp.ben.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.gidgrp.ben));
}
let dataObj = {
rec: {
objtyp: 'LID',
ownref: model.brdgrp.rec.ownref,
opndat: model.brdgrp.rec.opndat,
expdat: model.brdgrp.rec.expdat,
branchInr: model.brdgrp.rec.branchInr,
hndtyp: model.brdgrp.rec.hndtyp,
gartyp: model.brdgrp.rec.gartyp,
fingua: model.brdgrp.rec.fingua,
// segtyp: model.brdgrp.ghd.segtyp,
fromflg: model.brdgrp.rec.fromflg,
othersno: model.brdgrp.rec.othersno,
sndto: model.brdgrp.rec.sndto,
// swiftflg: model.gitp.swiftflg,
giduil: model.brdgrp.rec.giduil,
purpos: model.brdgrp.rec.purpos,
revflg: model.brdgrp.rec.revflg,
cnfsta: model.brdgrp.rec.cnfsta,
},
cbsMap: {
MAX: model.brdgrp.cbs.max,
OPN1: model.brdgrp.cbs.opn1,
MAC: model.brdgrp.cbs.mac,
MAC2: model.brdgrp.cbs.mac2,
OPC2: model.brdgrp.cbs.opc2,
CNF: model.brdgrp.cbs.cnf,
},
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : 'ZL'
};
return dataObj
},
buildSetfeg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaall: model.liaall,
liaccv: model.liaccv,
// doceot: model.trnmod.trndoc.doceot,
};
return params
},
buildSetglg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
setfeg: model.setmod.setfeg,
liaall: model.liaall,
liaccv: model.liaccv,
};
return params
},
buildGlentry (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
setfog: model.setmod.setfog,
setfeg: model.setmod.setfeg,
setglg: model.setmod.setglg,
};
return params
},
buildEngp (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
};
return params
},
buildDocpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
};
return params
},
buildCcvpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaccvg: model.liaccv.liaccvg,
oldamt: model.liaccv.oldamt,
chgamt: model.liaccv.chgamt,
concur: model.liaccv.concur,
};
return params
},
buildLimitbody (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'LID',
objinr: model.brdgrp.rec.objinr,
ownref: model.brdgrp.rec.ownref,
},
};
return params
},
buildDoctre (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'LID',
objinr: model.brdgrp.rec.objinr,
ownref: model.brdgrp.rec.ownref,
// swiftflg: model.gitp.swiftflg,
},
};
return params
},
// 公共组件setmod中dsp字段改变,触发联动时候的入参
buildSetgllAccts (model, trnName, setglg) {
let params = {
...this.buildCommonData(model, trnName),
setglg
};
return params
}
}
\ No newline at end of file
import Api from '~/service/Api';
import commonFunctions from '~/mixin/commonFunctions.js';
import buildFn from './buildCommons.js';
import setmod from '~/components/business/setmod/event';
import glentry from '~/components/business/glentry/event';
import engp from '~/components/business/engp/event';
import docpan from '~/components/business/docpan/event';
import ccvpan from '~/components/business/ccvpan/event';
import limitbody from '~/components/business/limitbody/event';
import doctre from '~/components/business/doctre/event';
import Utils from "~/utils"
export default {
mixins: [commonFunctions],
methods: {
...setmod,
...glentry,
...engp,
...docpan,
...ccvpan,
...limitbody,
...doctre,
async init () {
const params = {
spt: JSON.parse(localStorage.getItem('row_' + this.trnName))
}
const res = await Api.post('/service/brtdcr/init', {
transName: this.trnName,
userId: window.sessionStorage.userId || 'ZL',
// brdinr: this.$route.query.inr,
brdgrp:{
rec:{
inr: this.$route.query.inr
}
},
});
if (!res.data) {
return
}
this.copyValueFromVoData(this.model, res.data)
this.copyValueFromVoData(this.model.setmod.setfeg, res.data.setfeg)
this.copyValueFromVoData(this.model.setmod.setfog, res.data.setfog)
this.copyValueFromVoData(this.model.setmod.setglg, res.data.setglg)
},
// 兼容处理在前端model中定义了字段,后端返回的数据中不存在字段的问题
copyValueFromVoData (model, data) {
let keysList = Object.keys(model)
keysList.map((key) => {
if (data[key]) {
if (Utils.typeOf(model[key]) === 'Object') {
this.copyValueFromVoData(model[key], data[key])
} else {
this.$set(model, key, data[key])
}
}
})
},
async tabClick(tab) {
if (this.isInDisplay) {
return;
}
let name = tab.name;
switch (name) {
case 'ccvpan':
let ccvpanRequest = buildFn.buildCcvpan(this.model, this.trnName);
this.processLiaccv(ccvpanRequest);
break;
case 'engp':
let engpRequest = buildFn.buildEngp(this.model, this.trnName);
this.processLiaall(engpRequest);
break;
case 'setmod':
let setfegRequest = buildFn.buildSetfeg(this.model, this.trnName);
// 此处利用回调是为了等setfeg的接口调用完成后才去获取setglg参数,由于setglg参数依赖于setfeg函数的返回值
this.processSetpan(setfegRequest, () => {
return buildFn.buildSetglg(this.model, this.trnName);
});
break;
case 'docpan':
let docpanRequest = buildFn.buildDocpan(this.model, this.trnName);
this.processTrndoc(docpanRequest);
break;
case 'glepan':
let glentryRequest = buildFn.buildGlentry(this.model, this.trnName);
this.processGlentry(glentryRequest);
break;
case 'limitbody':
let limitbodyRequest = buildFn.buildLimitbody(this.model, this.trnName);
this.processLimitbody(limitbodyRequest);
break;
case 'doctre':
let doctreRequest = buildFn.buildDoctre(this.model, this.trnName);
this.processDoctre(doctreRequest);
break;
default:
return;
}
},
// 点击获取按钮拉取当前key字段下的表单数据
queryFormData(key) {
console.log(key);
},
// 业务信息=》基本信息=》保函编号-----获取保函编号
async queryOwnref() {
let params = {
ptainr: this.model.gidgrp.apl.pts.ptainr,
businessType: 'LG',
tbl: 'LG',
};
const loading = this.loading();
let res = await Api.post('/service/brtdcr/getOwnRef', params);
if (res.respCode == SUCCESS) {
loading.close();
this.model.gidgrp.rec.ownref = res.data;
}
},
// 获取brtdcr弹框表格数据
async queryGridEtyPromptDialogData(type, ptytyp) {
let params = {
userId: window.sessionStorage.userId || 'ZL',
ptytyp: ptytyp,
extkey: this.model.brdgrp[type.toLowerCase()].pts.extkey,
};
let res = await Api.post('/service/ptspta/list', params);
if (res.respCode == SUCCESS) {
this.root.$refs['etyDialog'].show = true;
this.root.promptData.data = res.data.ptaInfos;
this.root.promptData.type = type;
}
},
// 选中brtdcr弹框表格的行数据
async selectGridEtyPromptData(row) {
let params = {
...row,
};
let res = await Api.post('/service/ptspta/fetch', params);
if (res.respCode == SUCCESS) {
this.$set(this.model.gidgrp, row.role.toLowerCase(), res.data);
}
},
// 业务信息=》基本信息=》支出目的
purposChange(key, value) {
this.handleChangeForm(key, value);
},
// 初始化保函开立类型码表下拉列表
async queryHndtypCodeTableList(trnName) {
let params = {
gitp: {
swiftflg: this.model.gitp.swiftflg,
},
gidgrp: {
rec: {
purpos: this.model.gidgrp.rec.purpos,
},
},
transName: trnName.toUpperCase(),
};
let res = await Api.post('/service/brtdcr/initHndtyp', params);
if (res.respCode == SUCCESS) {
this.$set(this.codes, 'voHndtyp', res.data);
}
},
// 是否SWIFT格式修改--联动保函开立类型
handleChangeSwiftflg() {
this.queryHndtypCodeTableList(this.root.trnName);
},
// 支出目的修改--联动保函开立类型
handleChangePurpos() {
this.queryHndtypCodeTableList(this.root.trnName);
},
buildLiaccv () {
let params = {
...buildFn.buildCommonData(this.model, this.trnName),
liaccvg: this.model.liaccv.liaccvg,
oldamt: this.model.liaccv.oldamt,
chgamt: this.model.liaccv.chgamt,
concur: this.model.liaccv.concur,
};
return params
},
// 公共组件setmod处理方式改变触发联动
changeSetmodModel (emitParams) {
let reqParams = {}
switch (emitParams.code) {
case 'processMethods':
reqParams = buildFn.buildSetglg(this.model, this.trnName);
this.calcPayDetail(reqParams)
break
case 'changeDsp':
let index = emitParams.index;
let setglgRequest = buildFn.buildSetglg(this.model, this.trnName);
setglgRequest.setglg = {setgll: emitParams.list};
this.setgllAccts(setglgRequest, index);
break
default:
return
}
}
},
};
export default {
"liaall.limmod.limpts.nonrevflg1" :null,
"mtabut.clsflg" :null,
"betp.ledget.sdamod.dadsnd": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"ledgrp.rec.ownref": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"betp.ledget.sdamod.seainf": [
{ type: "string", required: false, message: "必输项" },
{ max: 3, message: "长度不能超过3" }
],
"ledgrp.cbs.opn1.cur": [
{ type: "string", required: false, message: "必输项" },
{ max: 3, message: "长度不能超过3" }
],
"ledgrp.cbs.opn1.amt": [
{ type: "string", required: false, message: "必输项" },
{ max: 18, message: "整数位不能超过14位" },
{ pattern: /(^-?\d+$)|(^\.\d{1,3}$)|(^-?\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"betp.recget.sdamod.dadsnd": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"bedgrp.rec.ownref": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"betp.recget.sdamod.seainf": [
{ type: "string", required: false, message: "必输项" },
{ max: 3, message: "长度不能超过3" }
],
"bedgrp.rec.nam": [
{ type: "string", required: false, message: "必输项" },
{ max: 40, message: "长度不能超过40" }
],
"bedgrp.cbs.max.amt": [
{ type: "string", required: false, message: "必输项" },
{ max: 18, message: "整数位不能超过14位" },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"bedgrp.prb.pts.ref": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"bedgrp.cbs.opn1.cur": [
{ type: "string", required: false, message: "必输项" },
{ max: 3, message: "长度不能超过3" }
],
"bedgrp.cbs.opn1.amt": [
{ type: "number", required: false, message: "必输项" },
{ max: 18, message: "整数位不能超过14位" },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"bedgrp.prb.pts.nam": [
{ type: "string", required: false, message: "必输项" },
{ max: 40, message: "长度不能超过40" }
],
"bedgrp.iss.pts.ref": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"bedgrp.iss.pts.nam": [
{ type: "string", required: false, message: "必输项" },
{ max: 40, message: "长度不能超过40" }
],
"bedgrp.rec.matdat": [
{ type: "date", required: false, message: "输入正确的日期" }
],
"bedgrp.rec.rcvdat": [
{ type: "date", required: false, message: "输入正确的日期" }
],
"bedgrp.rec.predat": [
{ type: "date", required: false, message: "输入正确的日期" }
],
"bedgrp.apl.pts.ref": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"bedgrp.rec.docsta": [
{ type: "string", required: false, message: "必输项" },
{ max: 40, message: "长度不能超过40" }
],
"bedgrp.apl.pts.nam": [
{ type: "string", required: false, message: "必输项" },
{ max: 40, message: "长度不能超过40" }
],
"betp.othp.ptsget.sdamod.dadsnd": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"bedgrp.oth.pts.extkey": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"betp.othp.ptsget.sdamod.seainf": [
{ type: "string", required: false, message: "必输项" },
{ max: 3, message: "长度不能超过3" }
],
"bedgrp.oth.namelc": [
{ type: "string", required: true, message: "必输项" },
{ max: 35, message: "长度不能超过35" }
],
"bedgrp.oth.pts.adrblk": [
{ type: "string", required: true, message: "必输项" },
{ type: "string", max: 999, message: "长度不能超过35" }
],
"bedgrp.oth.dbfadrblkcn": [
{ type: "string", required: true, message: "必输项" },
{ max: 35, message: "长度不能超过35" }
],
"bedgrp.oth.adrelc": [
{ type: "string", required: true, message: "必输项" },
{ max: 35, message: "长度不能超过35" }
],
"betp.prbp.ptsget.sdamod.dadsnd": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"bedgrp.prb.pts.extkey": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"betp.prbp.ptsget.sdamod.seainf": [
{ type: "string", required: false, message: "必输项" },
{ max: 3, message: "长度不能超过3" }
],
"trnmod.trndoc.addstr750": [
{ type: "string", required: false, message: "必输项" },
{ max: 35, message: "长度不能超过35" }
],
"bedgrp.prb.namelc": [
{ type: "string", required: true, message: "必输项" },
{ max: 35, message: "长度不能超过35" }
],
"bedgrp.prb.pts.adrblk": [
{ type: "string", required: true, message: "必输项" },
{ type: "string", max: 999, message: "长度不能超过35" }
],
"bedgrp.prb.dbfadrblkcn": [
{ type: "string", required: true, message: "必输项" },
{ max: 35, message: "长度不能超过35" }
],
"bedgrp.prb.adrelc": [
{ type: "string", required: true, message: "必输项" },
{ max: 35, message: "长度不能超过35" }
],
"bedgrp.blk.intdis": [
{ type: "string", required: false, message: "必输项" },
{ max: 65, message: "长度不能超过65" }
],
"bedgrp.blk.docins": [
{ type: "string", required: false, message: "必输项" },
{ max: 35, message: "长度不能超过35" }
],
"bedgrp.blk.disdoc": [
{ type: "string", required: false, message: "必输项" },
{ max: 35, message: "长度不能超过35" }
],
"bedgrp.blk.docdis": [
{ type: "string", required: false, message: "必输项" },
{ max: 50, message: "长度不能超过50" }
],
"liaall.outamt": [
{ type: "number", required: false, message: "必输项" },
{ max: 18, message: "整数位不能超过14位" },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"liaall.outpct": [
{ type: "string", required: false, message: "必输项" },
{ max: 6, message: "长度不能超过6" }
],
"liaall.concur": [
{ type: "string", required: false, message: "必输项" },
{ max: 3, message: "长度不能超过3" }
],
"liaall.misamt": [
{ type: "number", required: false, message: "必输项" },
{ max: 18, message: "整数位不能超过14位" },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"liaall.exttotoldamt": [
{ type: "number", required: false, message: "必输项" },
{ max: 18, message: "整数位不能超过14位" },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"liaall.exttotamt": [
{ type: "number", required: false, message: "必输项" },
{ max: 18, message: "整数位不能超过14位" },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"liaall.limmod.ecifno": [
{ type: "string", required: false, message: "必输项" },
{ max: 22, message: "长度不能超过22" }
],
"liaall.limmod.ownref": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"liaall.limmod.wrkp.ptsget.sdamod.dadsnd": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"liaall.limmod.othp.ptsget.sdamod.dadsnd": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"liaall.limmod.limpts.wrk.pts.extkey": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"liaall.limmod.wrkp.ptsget.sdamod.seainf": [
{ type: "string", required: false, message: "必输项" },
{ max: 3, message: "长度不能超过3" }
],
"liaall.limmod.limpts.oth.pts.extkey": [
{ type: "string", required: false, message: "必输项" },
{ max: 16, message: "长度不能超过16" }
],
"liaall.limmod.othp.ptsget.sdamod.seainf": [
{ type: "string", required: false, message: "必输项" },
{ max: 3, message: "长度不能超过3" }
],
"liaall.limmod.comamt": [
{ type: "number", required: false, message: "必输项" },
{ max: 18, message: "整数位不能超过14位" },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"liaall.limmod.limpts.wrk.pts.nam": [
{ type: "string", required: false, message: "必输项" },
{ max: 40, message: "长度不能超过40" }
],
"liaall.limmod.limpts.oth.pts.nam": [
{ type: "string", required: false, message: "必输项" },
{ max: 40, message: "长度不能超过40" }
],
"liaall.limmod.ccvamt": [
{ type: "number", required: false, message: "必输项" },
{ max: 18, message: "整数位不能超过14位" },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"liaall.limmod.limpts.pfcod1": [
{ type: "string", required: false, message: "必输项" },
{ max: 14, message: "长度不能超过14" }
],
"liaall.limmod.limpts.pfcod2": [
{ type: "string", required: false, message: "必输项" },
{ max: 14, message: "长度不能超过14" }
],
"trnmod.trndoc.advnam": [
{ type: "string", required: false, message: "必输项" },
{ max: 50, message: "长度不能超过50" }
],
"trnmod.trndoc.amdapl": [
{ type: "string", required: true, message: "必输项" },
{ max: 50, message: "长度不能超过50" }
],
"trnmod.trndoc.advdoc": [
{ type: "string", required: false, message: "必输项" },
{ max: 1, message: "长度不能超过1" }
],
"mtabut.coninf.oitinf.oit.inftxt": [
{ type: "string", required: true, message: "必输项" },
{ max: 60, message: "长度不能超过60" }
],
"mtabut.coninf.oitset.oit.inftxt": [
{ type: "string", required: true, message: "必输项" },
{ max: 60, message: "长度不能超过60" }
],
"mtabut.coninf.conexedat": [
{ type: "date", required: false, message: "输入正确的日期" }
],
"mtabut.coninf.usr.extkey": [
{ type: "string", required: false, message: "必输项" },
{ max: 8, message: "长度不能超过8" }
],
}
\ No newline at end of file
import Pts from '~/components/business/commonModel/Pts';
import Pub from '~/components/business/commonModel/index.js';
export default class Betcan {
constructor() {
this.data = {
betp: {
adaflg: '',
oth:{
pts: new Pts().data,
}
},
advdisflg: '',
ledgrp: {
rec: {
ownref: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
}
},
prb: {
pts: new Pts().data,
},
apl:{
pts: new Pts().data,
},
ben:{
pts: new Pts().data,
},
oth:{
pts: new Pts().data,
},
acb:{
pts: new Pts().data,
},
},
rejpenins: '',
advrefflg: '',
bedgrp: {
blk: {
docdisflg: '',
disdoc: '',
docdis: '',
docins: '',
intdis: ''
},
rec: {
predat: '',
rcvdat: '',
doctypcod: '',
docsta: '',
ownref: '',
payrol: '',
matdat: '',
nam: '',
docprbrol: '',
advdocflg: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
},
max: {
cur: '',
amt: ''
}
},
prb: {
pts: new Pts().data,
},
apl:{
pts: new Pts().data,
},
ben:{
pts: new Pts().data,
},
oth:{
pts: new Pts().data,
},
acb:{
pts: new Pts().data,
},
},
setmod: new Pub().data.Setmod,
mtabut: new Pub().data.Mtabut,
trnmod: new Pub().data.Trnmod,
liaall: new Pub().data.Liaall,
liaccv: new Pub().data.Liaccv,
docpan: new Pub().data.Docpan,
};
}
}
\ No newline at end of file
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames" >
<el-collapse-item title="附言" name="coninfp">
<m-coninfp :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import event from "../event";
import Coninfp from "~/components/business/coninfp/views";
export default {
components: {
"m-coninfp": Coninfp,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {
activeNames: ["coninfp"],
};
},
methods: {},
created: function () {},
};
</script>
<style>
</style>
<template>
<div class="eibs">
<!-- ======================= 左边 ========================= -->
<c-col :span="12" style="padding-right: 20px">
<c-col :span="24">
<el-form-item label="内部不符点" prop="bedgrp.blk.intdis" style="width: 100%">
<c-fullbox>
<c-input type="textarea" v-model="model.bedgrp.blk.intdis" maxlength="50" show-word-limit
placeholder="请输入内部不符点"></c-input>
<template slot="footer">
<c-button style="margin-left: 10px; padding: 0 10px" size="small" type="primary"
icon="el-icon-more"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="不符点" prop="bedgrp.blk.docdis" style="width: 100%">
<c-fullbox>
<c-input type="textarea" v-model="model.bedgrp.blk.docdis" maxlength="65" show-word-limit
placeholder="请输入Discrepancies" :disabled="!docdisflg"></c-input>
<template slot="footer">
<c-button style="margin-left: 10px; padding: 0 10px" size="small" type="primary" :disabled="!docdisflg"
icon="el-icon-more"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item>
<c-checkbox v-model="docdisflg" class="checkbox-left">不符点修改</c-checkbox>
</el-form-item>
</c-col>
<c-col :span="24">
<c-docpre :model="model" :argadr="{
path: 'bedgrp.blk.prsdoc',
grp: 'betp',
code: 'docpre',
}">
</c-docpre>
</c-col>
</c-col>
<!-- ======================右边====================== -->
<c-col :span="12" style="padding-left: 20px">
<c-col :span="24">
<el-form-item label="拒绝原因" prop="bedgrp.blk.docins" style="width: 100%">
<c-fullbox>
<c-input type="textarea" v-model="model.bedgrp.blk.docins" maxlength="50" show-word-limit
placeholder="请输入拒绝原因"></c-input>
<template slot="footer">
<c-button style="margin-left: 10px; padding: 0 10px" size="small" type="primary"
icon="el-icon-more"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="单据处理说明" prop="bedgrp.blk.disdoc" style="width: 100%">
<c-fullbox>
<c-input type="textarea" v-model="model.bedgrp.blk.disdoc" maxlength="65" show-word-limit
placeholder="请输入单据处理说明" disabled></c-input>
<template slot="footer">
<c-button style="margin-left: 10px; padding: 0 10px" size="small" type="primary" disabled
icon="el-icon-more"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="" prop="rejpenins">
<c-checkbox v-model="rejpenins" class="checkbox-left">拒绝复核指示</c-checkbox>
</el-form-item>
</c-col>
</c-col>
</div>
</template>
<script>
import Docpre from "~/views/Public/Docpre";
import event from "../event";
export default {
components: { "c-docpre": Docpre },
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {};
},
computed: {
docdisflg: {
get() {
return this.model.bedgrp.blk.docdisflg != "X";
},
set(val) {
this.model.bedgrp.blk.docdisflg = val ? "X" : "";
this.model.bedgrp.blk.docdis = "";
},
},
rejpenins: {
get() {
return this.model.rejpenins != "";
},
set(val) {
this.model.rejpenins = val ? "X" : "";
},
},
},
methods: {},
created: function () { },
};
</script>
<style>
.marginLable {
padding-left: 160px;
}
</style>
<template>
<div class="eibs">
<!-- ======================= 左边 ========================= -->
<c-col :span="12" style="padding-right: 20px">
<c-col :span="24">
<c-col :span="20">
<el-form-item label="出口信用证编号" prop="ledgrp.rec.ownref" style="width: 100%">
<c-input v-model="model.ledgrp.rec.ownref" maxlength="16" placeholder="请输入出口信用证编号" style="width: 95%"
disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="1">
<c-button style="margin: 0 10px 0 0; padding: 0 12px" size="small" type="primary">
<i class="el-icon-info" style="font-size:15px"></i>
</c-button>
<!-- </el-form-item> -->
</c-col>
<c-col :span="2" :offset="1">
<c-button style="margin: 0 0" size="small" type="primary"
:disabled="!this.flag && model.ledgrp.rec.ownref == '' ? false : true">
获取
</c-button>
<!-- </el-form-item> -->
</c-col>
<!-- </c-col> -->
</c-col>
<c-col :span="24">
<c-col :span="20">
<el-form-item label="出口单据编号" prop="bedgrp.rec.ownref" style="width: 100%">
<c-input v-model="model.bedgrp.rec.ownref" maxlength="16" placeholder="请输入出口单据编号" style="width: 95%"
disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="1">
<c-button style="margin: 0 10px 0 0; padding: 0 12px" size="small" type="primary">
<i class="el-icon-info" style="font-size:15px"></i>
</c-button>
</c-col>
<c-col :span="2" :offset="1" style="text-align: right">
<c-button style="margin: 0 0" size="small" type="primary"
:disabled="!this.flag && model.bedgrp.rec.ownref == '' ? false : true">
获取
</c-button>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据金额" prop="bedgrp.cbs.max.cur">
<c-fullbox>
<c-input v-model="model.bedgrp.cbs.max.cur" maxlength="3" style="width: 50%" placeholder="请输入单据金额" disabled>
</c-input>
<c-input v-model="model.bedgrp.cbs.max.amt" style="width: 50%" placeholder="请输入金额" disabled></c-input>
<template slot="footer">
<c-checkbox v-model="model.betp.adaflg" style="margin-left: 10px" disabled>附加金额</c-checkbox>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="单据余额" prop="bedgrp.cbs.opn1.cur">
<c-input v-model="model.bedgrp.cbs.opn1.cur" maxlength="3" placeholder="请输入" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="bedgrp.cbs.max.amt">
<c-input v-model="model.bedgrp.cbs.max.amt" placeholder="请输入金额" disabled></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据类型" prop="bedgrp.rec.doctypcod">
<c-select v-model="model.bedgrp.rec.doctypcod" style="width: 100%" placeholder="请输入单据类型" disabled>
<el-option v-for="item in codes.doctypcod1" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="到期日" prop="bedgrp.rec.matdat">
<c-date-picker type="date" v-model="model.bedgrp.rec.matdat" style="width: 100%" placeholder="请选择到期日"
disabled></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="收到日期" prop="bedgrp.rec.rcvdat">
<c-date-picker type="date" v-model="model.bedgrp.rec.rcvdat" style="width: 100%" placeholder="请选择收到日期"
disabled></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="交单日期" prop="bedgrp.rec.predat">
<c-date-picker type="date" v-model="model.bedgrp.rec.predat" style="width: 100%" placeholder="请选择交单日期"
disabled></c-date-picker>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据状态" prop="bedgrp.rec.docsta">
<c-select v-model="model.bedgrp.rec.docsta" style="width: 100%" placeholder="请选择单据状态" disabled
:code="codes.docsta">
</c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" prop="advrefflg">
<c-checkbox v-model="advrefflg" class="checkbox-left">收到拒绝通知</c-checkbox>
</el-form-item>
</c-col>
<c-col :span="10" :offset="2">
<el-form-item label="" prop="bedgrp.rec.advdocflg">
<c-checkbox v-model="model.bedgrp.rec.advdocflg" class="checkbox-left">收到返回单据</c-checkbox>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" prop="mtabut.clsflg">
<c-checkbox v-model="clsflg" disabled class="checkbox-left">关闭合同</c-checkbox>
</el-form-item>
</c-col>
<c-col :span="10" :offset="2">
<el-form-item label="" prop="advdisflg">
<c-checkbox v-model="advdisflg" class="checkbox-left">发送不符点通知(MT750)</c-checkbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label=":72:(MT750)" prop="trnmod.trndoc.addstr750">
<c-input type="textarea" v-model="model.trnmod.trndoc.addstr750" maxlength="35" show-word-limit
placeholder="请输入Tag 72(MT750)" :disabled="!advdisflg"></c-input>
</el-form-item>
</c-col>
</c-col>
<!-- ======================右边====================== -->
<c-col :span="12" style="padding-left: 20px">
<c-col :span="24">
<c-col :span="12">
<el-form-item label="信用证余额" prop="ledgrp.cbs.opn1.cur">
<c-input v-model="model.ledgrp.cbs.opn1.cur" maxlength="3" placeholder="请输入" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="ledgrp.cbs.opn1.amt">
<c-input v-model="model.ledgrp.cbs.opn1.amt" placeholder="请输入金额" disabled></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据简略信息" prop="bedgrp.rec.nam">
<c-input v-model="model.bedgrp.rec.nam" maxlength="40" placeholder="请输入单据简略信息" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptsmsg :model="model" :argadr="{
title: '交单人',
grp: 'bedgrp',
rol: 'prb',
}" :disabled="true" :enname="true" :enRef="false" :enNam="false"></c-ptsmsg>
</c-col>
<c-col :span="24">
<c-ptsmsg :model="model" :argadr="{
title: '开证行',
grp: 'bedgrp',
rol: 'iss',
}" :disabled="true" :enRef="false" :enNam="false"></c-ptsmsg>
</c-col>
<c-col :span="24">
<c-ptsmsg :model="model" :argadr="{
title: '申请人',
grp: 'bedgrp',
rol: 'apl',
}" :disabled="true" :enRef="false" :enNam="false"></c-ptsmsg>
</c-col>
<c-col :span="24">
<el-form-item label="付款人" prop="bedgrp.rec.payrol">
<c-select v-model="model.bedgrp.rec.payrol" style="width: 100%" placeholder="请选择付款人" disabled>
<el-option v-for="item in codes.payrol" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptap :model="model" :argadr="{
title: '',
grp: 'bedgrp',
rol: 'oth',
}" :noRef="true" :disabled="true" :isAdrblk="true" :disabledExtkey="!(model.bedgrp.rec.payrol == 'OTH')">
</c-ptap>
</c-col>
<c-col :span="24">
<el-form-item label="交单行" prop="bedgrp.rec.docprbrol">
<c-select v-model="model.bedgrp.rec.docprbrol" style="width: 100%" placeholder="请输入交单行" disabled>
<el-option v-for="item in codes.docprbrol" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptap :model="model" :argadr="{
title: '',
grp: 'bedgrp',
rol: 'prb',
}" :noRef="true" :disabled="true" :isAdrblk="true" :disabledExtkey="true">
</c-ptap>
</c-col>
</c-col>
</div>
</template>
<script>
import event from "../event";
import Ptsmsg from "./Ptsmsg";
import Ptap from "~/views/Public/Ptap";
export default {
components: { "c-ptsmsg": Ptsmsg, "c-ptap": Ptap },
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {};
},
computed: {
flag() {
return this.model.mtabut.coninf.usr.extkey == "";
},
advrefflg: {
get() {
return this.model.advrefflg != "";
},
set(val) {
this.model.advrefflg = val ? "X" : "";
},
},
clsflg: {
get() {
return this.model.mtabut.clsflg == "C";
},
set(val) {
this.model.mtabut.clsflg = val ? "C" : "O";
},
},
advdisflg: {
get() {
return this.model.advdisflg != "";
},
set(val) {
this.model.advdisflg = val ? "X" : "";
},
},
},
methods: {},
created: function () {},
};
</script>
<style>
</style>
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames" >
<el-collapse-item title="详情信息" name="betdcrs">
<m-betdcrs :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="不符点/拒绝信息" name="betdcrd">
<m-betdcrd :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import event from "../event";
import Betdcrs from "./Betdcrs";
import Betdcrd from "./Betdcrd";
export default {
components: {
"m-betdcrs": Betdcrs,
"m-betdcrd": Betdcrd,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {
activeNames: ["betdcrs"],
};
},
methods: {},
created: function () { },
};
</script>
<style>
.marginLable {
padding-left: 160px;
}
</style>
\ No newline at end of file
<template>
<!-- <div class="eibs-tab"> -->
<div>
<c-col v-if="!enRef" :span="24">
<el-form-item :label="argadr.title + ' 编号'" :prop="`${argadr.grp}.${argadr.rol}.pts.ref`">
<c-input
v-model="model[argadr.grp][argadr.rol].pts.ref"
maxlength="16"
:placeholder="'请输入' + argadr.title + '编号'"
:disabled="disabled"
></c-input>
</el-form-item>
</c-col>
<c-col v-else :span="24">
<el-form-item :label="argadr.title + '参考号'" :prop="`${argadr.grp}.${argadr.rol}.pts.ref`">
<c-input
v-model="model[argadr.grp][argadr.rol].pts.ref"
maxlength="16"
:placeholder="'请输入' + argadr.title + '参考号'"
:disabled="disabled"
></c-input>
</el-form-item>
</c-col>
<c-col v-if="!enNam" :span="24">
<el-form-item :label="argadr.title + '名称'" :prop="`${argadr.grp}.${argadr.rol}.pts.nam`">
<c-input
v-model="model[argadr.grp][argadr.rol].pts.nam"
maxlength="40"
:placeholder="'请输入' + argadr.title + '名称'"
:disabled="disabled || disabled1"
></c-input>
</el-form-item>
</c-col>
<c-col v-else :span="24">
<el-form-item :label="argadr.title + '名称'" :prop="`${argadr.grp}.${argadr.rol}.pts.nam`">
<c-input
v-model="model[argadr.grp][argadr.rol].pts.nam"
maxlength="40"
:placeholder="'请输入' + argadr.title + '名称'"
:disabled="disabled || disabled1"
></c-input>
</el-form-item>
</c-col>
</div>
</template>
<script>
import event from "../event"
export default {
inject: ["root"],
mixins: [event],
props: {
model: {
type: Object,
default: undefined,
},
codes: {},
argadr: {
type: Object,
default: function () {
return {
title: "", //角色名称
rol: "", //角色
grp: "", //所属模块
};
},
},
disabled: {
//名称地址是否灰显
type: Boolean,
default: false,
},
disabled1: {
//名称是否灰显
type: Boolean,
default: false,
},
enRef: {
//英文编号
type: Boolean,
default: false,
},
enNam: {
//英文名称
type: Boolean,
default: false,
},
},
data() {
return {
data: [],
};
},
watch: {},
// methods: { ...Event },
created: function () {},
};
</script>
<style>
</style>
<template>
<div class="eContainer">
<c-page title="出口信用证电提不符点/拒付">
<el-form :model="model" :rules="rules" ref="modelForm" label-width="120px" label-position="right" size="small"
:validate-on-rule-change="false">
<c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="tabClick">
<el-tab-pane label="业务信息" name="ovwp">
<c-content>
<m-ovwp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<el-tab-pane label="统一授信" name="limitbody">
<c-content>
<m-limitbody :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<el-tab-pane label="表外记账" name="engp">
<c-content>
<!-- 表外记账 -->
<m-engp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<el-tab-pane label="费用/账务" name="setmod">
<c-content>
<m-setmod
:model="model"
:codes="codes"
@changeSetmodModel="changeSetmodModel"
/>
</c-content>
</el-tab-pane>
<el-tab-pane label="会计分录" name="glepan">
<c-content>
<m-glentry :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<el-tab-pane label="备查/附言" name="addbcb">
<c-content>
<m-addbcb :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<el-tab-pane label="报文/面函" name="docpan">
<c-content>
<m-docpan :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--trndoc PD000546 Attachments -->
<el-tab-pane label="附件信息" name="doctre">
<c-content>
<m-doctre :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
</c-tabs>
</el-form>
<c-grid-ety-prompt-dialog ref="doxpDialog" :isPty="false" :promptData="promptData">
</c-grid-ety-prompt-dialog>
<c-function-btn :handleSubmit="handleSubmit" :handleCheck="handleCheck" :handleStash="handleStash">
</c-function-btn>
</c-page>
</div>
</template>
<script>
import CodeTable from "~/config/CodeTable";
import Betdcr from "../model";
import commonProcess from "~/mixin/commonProcess";
import commonFuncs from "~/mixin/commonFuncs";
import formRules from '../model/check'
import Ovwp from "./Ovwp";
import Limitbody from "~/components/business/limitbody/views";
import Engp from "~/components/business/engp/views";
import Setmod from "~/components/business/setmod/views";
import Glentry from "~/components/business/glentry/views";
import Addbcb from "./Addbcb";
import Docpan from "~/components/business/docpan/views";
import Doctre from "~/components/business/doctre/views";
import operationFunc from "~/mixin/operationFunc";
import event from "../event";
export default {
name: "Betdcr",
components: {
"m-ovwp": Ovwp,
"m-limitbody": Limitbody,
"m-engp": Engp,
"m-setmod": Setmod,
"m-glentry": Glentry,
"m-addbcb": Addbcb,
"m-docpan": Docpan,
"m-doctre": Doctre,
},
provide() {
return {
root: this,
};
},
mixins: [operationFunc, event], // 里面包含了Default、Check等的公共处理
data() {
return {
tabVal: "ovwp",
activeNames: ["engp"],
trnName: "betdcr",
model: new Betdcr().data,
rules: formRules,
codes: {
...CodeTable,
},
};
},
methods: {},
mounted () {
this.init()
},
};
</script>
<style>
</style>
export default {
buildPtspta (ptsptaObj) {
let pts = ptsptaObj.pts;
let ptspta = {
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
};
return ptspta;
},
buildCommonData (model, trnName) {
let ptsptaList = [];
if (model.brdgrp.apl.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.apl));
}
if (model.brdgrp.ben.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.ben));
}
let dataObj = {
rec: {
objtyp: 'lid',
ownref: model.brdgrp.rec.ownref,
opndat: model.brdgrp.rec.opndat,
expdat: model.brdgrp.rec.expdat,
branchInr: model.brdgrp.rec.branchInr,
hndtyp: model.brdgrp.rec.hndtyp,
gartyp: model.brdgrp.rec.gartyp,
fingua: model.brdgrp.rec.fingua,
fromflg: model.brdgrp.rec.fromflg,
othersno: model.brdgrp.rec.othersno,
sndto: model.brdgrp.rec.sndto,
swiftflg: model.brtp.swiftflg,
brduil: model.brdgrp.rec.brduil,
purpos: model.brdgrp.rec.purpos,
revflg: model.brdgrp.rec.revflg,
cnfsta: model.brdgrp.rec.cnfsta,
},
cbsMap: {
MAX: model.brdgrp.cbs.max,
OPN1: model.brdgrp.cbs.opn1,
MAC: model.brdgrp.cbs.mac,
MAC2: model.brdgrp.cbs.mac2,
OPC2: model.brdgrp.cbs.opc2,
CNF: model.brdgrp.cbs.cnf,
},
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : 'ZL'
};
return dataObj
},
buildSetfeg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaall: model.liaall,
liaccv: model.liaccv,
// doceot: model.trnmod.trndoc.doceot,
};
return params
},
buildSetglg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
setfeg: model.setmod.setfeg,
liaall: model.liaall,
liaccv: model.liaccv,
};
return params
},
buildGlentry (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
setfog: model.setmod.setfog,
setfeg: model.setmod.setfeg,
setglg: model.setmod.setglg,
};
return params
},
buildEngp (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
};
return params
},
buildDocpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
};
return params
},
buildCcvpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaccvg: model.liaccv.liaccvg,
oldamt: model.liaccv.oldamt,
chgamt: model.liaccv.chgamt,
concur: model.liaccv.concur,
};
return params
},
buildLimitbody (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'GID',
objinr: model.gidgrp.rec.objinr,
ownref: model.gidgrp.rec.ownref,
},
};
return params
},
buildDoctre (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'lid',
objinr: model.brdgrp.rec.objinr,
ownref: model.brdgrp.rec.ownref,
swiftflg: model.brtp.swiftflg,
},
};
return params
},
// 公共组件setmod中dsp字段改变,触发联动时候的入参
buildSetgllAccts (model, trnName, setglg) {
let params = {
...this.buildCommonData(model, trnName),
setglg
};
return params
}
}
import Api from '~/service/Api';
import commonFunctions from '~/mixin/commonFunctions.js';
import buildFn from './buildCommons.js';
import setmod from '~/components/business/setmod/event';
import glentry from '~/components/business/glentry/event';
import engp from '~/components/business/engp/event';
import docpan from '~/components/business/docpan/event';
import ccvpan from '~/components/business/ccvpan/event';
import limitbody from '~/components/business/limitbody/event';
import doctre from '~/components/business/doctre/event';
import Utils from "~/utils"
export default {
mixins: [commonFunctions],
methods: {
...setmod,
...glentry,
...engp,
...docpan,
...ccvpan,
...limitbody,
...doctre,
async init () {
const params = {
spt: JSON.parse(localStorage.getItem('row_' + this.trnName))
}
const res = await Api.post('/service/betrcl/init', {
...params,
transName: this.trnName,
userId: window.sessionStorage.userId || 'ZL',
brdgrp:{
rec:{
inr:this.$route.query.inr
}
}
});
if (!res.data) {
return
}
this.copyValueFromVoData(this.model, res.data)
this.copyValueFromVoData(this.model.setmod.setfeg, res.data.setfeg)
this.copyValueFromVoData(this.model.setmod.setfog, res.data.setfog)
this.copyValueFromVoData(this.model.setmod.setglg, res.data.setglg)
},
// 兼容处理在前端model中定义了字段,后端返回的数据中不存在字段的问题
copyValueFromVoData (model, data) {
let keysList = Object.keys(model)
keysList.map((key) => {
if (data[key]) {
if (Utils.typeOf(model[key]) === 'Object') {
this.copyValueFromVoData(model[key], data[key])
} else {
this.$set(model, key, data[key])
}
}
})
},
async tabClick(tab) {
if (this.isInDisplay) {
return;
}
let name = tab.name;
switch (name) {
case 'ccvpan':
let ccvpanRequest = buildFn.buildCcvpan(this.model, this.trnName);
this.processLiaccv(ccvpanRequest);
break;
case 'engp':
let engpRequest = buildFn.buildEngp(this.model, this.trnName);
this.processLiaall(engpRequest);
break;
case 'setmod':
let setfegRequest = buildFn.buildSetfeg(this.model, this.trnName);
// 此处利用回调是为了等setfeg的接口调用完成后才去获取setglg参数,由于setglg参数依赖于setfeg函数的返回值
this.processSetpan(setfegRequest, () => {
return buildFn.buildSetglg(this.model, this.trnName);
});
break;
case 'docpan':
let docpanRequest = buildFn.buildDocpan(this.model, this.trnName);
this.processTrndoc(docpanRequest);
break;
case 'glepan':
let glentryRequest = buildFn.buildGlentry(this.model, this.trnName);
this.processGlentry(glentryRequest);
break;
case 'limitbody':
let limitbodyRequest = buildFn.buildLimitbody(this.model, this.trnName);
this.processLimitbody(limitbodyRequest);
break;
case 'doctre':
let doctreRequest = buildFn.buildDoctre(this.model, this.trnName);
this.processDoctre(doctreRequest);
break;
default:
return;
}
},
// 点击获取按钮拉取当前key字段下的表单数据
queryFormData(key) {
console.log(key);
},
// 业务信息=》基本信息=》保函编号-----获取保函编号
async queryOwnref() {
let params = {
ptainr: this.model.gidgrp.apl.pts.ptainr,
businessType: 'LG',
tbl: 'LG',
};
const loading = this.loading();
let res = await Api.post('/service/betrcl/getOwnRef', params);
if (res.respCode == SUCCESS) {
loading.close();
this.model.gidgrp.rec.ownref = res.data;
}
},
// 获取brtacp弹框表格数据
async queryGridEtyPromptDialogData(type, ptytyp) {
let params = {
userId: window.sessionStorage.userId || 'ZL',
ptytyp: ptytyp,
extkey: this.model.gidgrp[type.toLowerCase()].pts.extkey,
};
let res = await Api.post('/service/ptspta/list', params);
if (res.respCode == SUCCESS) {
this.root.$refs['etyDialog'].show = true;
this.root.promptData.data = res.data.ptaInfos;
this.root.promptData.type = type;
}
},
// 选中brtacp弹框表格的行数据
async selectGridEtyPromptData(row) {
let params = {
...row,
};
let res = await Api.post('/service/ptspta/fetch', params);
if (res.respCode == SUCCESS) {
this.$set(this.model.gidgrp, row.role.toLowerCase(), res.data);
}
},
// 业务信息=》基本信息=》支出目的
purposChange(key, value) {
this.handleChangeForm(key, value);
},
// 初始化保函开立类型码表下拉列表
async queryHndtypCodeTableList(trnName) {
let params = {
gitp: {
swiftflg: this.model.gitp.swiftflg,
},
gidgrp: {
rec: {
purpos: this.model.gidgrp.rec.purpos,
},
},
transName: trnName.toUpperCase(),
};
let res = await Api.post('/service/betrcl/initHndtyp', params);
if (res.respCode == SUCCESS) {
this.$set(this.codes, 'voHndtyp', res.data);
}
},
// 是否SWIFT格式修改--联动保函开立类型
handleChangeSwiftflg() {
this.queryHndtypCodeTableList(this.root.trnName);
},
// 支出目的修改--联动保函开立类型
handleChangePurpos() {
this.queryHndtypCodeTableList(this.root.trnName);
},
buildLiaccv () {
let params = {
...buildFn.buildCommonData(this.model, this.trnName),
liaccvg: this.model.liaccv.liaccvg,
oldamt: this.model.liaccv.oldamt,
chgamt: this.model.liaccv.chgamt,
concur: this.model.liaccv.concur,
};
return params
},
// 公共组件setmod处理方式改变触发联动
changeSetmodModel (emitParams) {
let reqParams = {}
switch (emitParams.code) {
case 'processMethods':
reqParams = buildFn.buildSetglg(this.model, this.trnName);
this.calcPayDetail(reqParams)
break
case 'changeDsp':
let index = emitParams.index;
let setglgRequest = buildFn.buildSetglg(this.model, this.trnName);
setglgRequest.setglg = {setgll: emitParams.list};
this.setgllAccts(setglgRequest, index);
break
default:
return
}
}
},
};
export default {
'liaall.misamt' :null,
'liaall.limmod.limpts.oth.pts.extkey' :null,
'rmbclm.rmbrmb.pts.extkey' :null,
'liaall.limmod.ownref' :null,
'bedgrp.apl.pts.nam' :null,
'rmbclm.acwacw.pts.extkey' :null,
'liaall.limmod.ecifno' :null,
'bedgrp.prb.pts.nam' :null,
'liaall.limmod.limpts.oth.pts.nam' :null,
'rmbclm.acwacw.pts.adrblk' :null,
'setmod.dspflg' :null,
'liaall.tenstm' :null,
'payinstxt' :null,
'aamset.utlamt2' :null,
'liaall.limmod.limpts.wrk.pts.nam' :null,
'rmbclm.bebbeb.adrelc' :null,
'liaall.limmod.limpts.wrk.pts.extkey' :null,
'rmbclm.acwacw.namelc' :null,
'mtabut.coninf.conexedat' :null,
'rmbclm.clmrmbflg' :null,
'liaall.limmod.limpts.nonrevflg1' :null,
'rmbclm.bebbeb.namelc' :null,
'rmbclm.rmbrmb.pts.adrblk' :null,
'setmod.docamt' :null,
'rmbclm.rmbrmb.adrelc' :null,
'rmbclm.bebbeb.pts.adrblk' :null,
'rmbclm.acwacw.adrelc' :null,
'bedgrp.iss.pts.nam' :null,
'rmbclm.rmbrmb.namelc' :null,
'rmbclm.bebbeb.pts.extkey' :null,
'betp.ledget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.rec.ownref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'betp.ledget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.cbs.opn1.cur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.cbs.opn1.amt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^-?\d+$)|(^\.\d{1,3}$)|(^-?\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'betp.recget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'bedgrp.rec.ownref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'betp.recget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'bedgrp.rec.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'bedgrp.cbs.max.amt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'bedgrp.prb.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'bedgrp.cbs.opn1.cur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'bedgrp.cbs.opn1.amt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'bedgrp.prb.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'bedgrp.iss.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'bedgrp.iss.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'bedgrp.rec.matdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'bedgrp.rec.rcvdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'bedgrp.rec.predat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'bedgrp.apl.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'bedgrp.rec.docsta': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'bedgrp.apl.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'liaall.tenstm': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'aamset.utlamt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'aamset.utlamt2': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'payinstxt': [
{ type: 'string', required: false, message: '必输项' },
{ type: 'string',max: 300, message: '长度不能超过300' }
],
'bedgrp.rec.lescom': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'trnmod.trndoc.nar754': [
{ type: 'string', required: false, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'liaall.outamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.outpct': [
{ type: 'string', required: false, message: '必输项' },
{ max: 6, message: '长度不能超过6' }
],
'liaall.concur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'liaall.misamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.exttotoldamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.exttotamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'trnmod.trndoc.advnam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'trnmod.trndoc.amdapl': [
{ type: 'string', required: true, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'trnmod.trndoc.advdoc': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'trnmod.trndoc.filrecv': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'trnmod.trndoc.doctrestm': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'trnmod.trndoc.condocstm': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'trnmod.trndoc.rcvatt.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'mtabut.coninf.oitinf.oit.inftxt': [
{ type: 'string', required: true, message: '必输项' },
{ max: 60, message: '长度不能超过60' }
],
'mtabut.coninf.oitset.oit.inftxt': [
{ type: 'string', required: true, message: '必输项' },
{ max: 60, message: '长度不能超过60' }
],
'mtabut.coninf.conexedat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'mtabut.coninf.usr.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 8, message: '长度不能超过8' }
],
'rmbclm.rmbrmb.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.rmbp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.rmbrmb.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.rmbp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'rmbclm.rmbrmb.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.rmbrmb.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ type: 'string',max: 999, message: '长度不能超过35' }
],
'rmbclm.rmbrmb.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.rmbrmb.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.acwacw.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.acwp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.acwacw.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.acwp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'rmbclm.acwacw.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.acwacw.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.acwacw.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.acwacw.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.bebbeb.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.bebp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.bebbeb.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.bebp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'rmbclm.bebbeb.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.bebbeb.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.bebbeb.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.bebbeb.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.valdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'liaall.limmod.ecifno': [
{ type: 'string', required: false, message: '必输项' },
{ max: 22, message: '长度不能超过22' }
],
'liaall.limmod.ownref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.wrkp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.othp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.limpts.wrk.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.wrkp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'liaall.limmod.limpts.oth.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.othp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'liaall.limmod.comamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.limmod.limpts.wrk.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'liaall.limmod.limpts.oth.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'liaall.limmod.ccvamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.limmod.limpts.pfcod1': [
{ type: 'string', required: false, message: '必输项' },
{ max: 14, message: '长度不能超过14' }
],
'liaall.limmod.limpts.pfcod2': [
{ type: 'string', required: false, message: '必输项' },
{ max: 14, message: '长度不能超过14' }
],
'setmod.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'setmod.docamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'setmod.zmqacc': [
{ type: 'string', required: false, message: '必输项' },
{ max: 20, message: '长度不能超过20' }
],
}
import Pts from '~/components/business/commonModel/Pts';
import Pub from '~/components/business/commonModel/index.js';
export default class Betrcl {
constructor() {
this.data = {
betp: {
adaflg: ''
},
ledgrp: {
rec: {
ownref: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
}
}
},
aamset: {
utlamt: '',
utlamt2: ''
},
mtabut: {
coninf: {
usr: {
extkey: ''
}
}
},
rmbclm: {
valdat: '',
clmrmbflg: '',
rmbrol: ''
},
liaall: {
tenstm: {
rows: ||=''
},
tensetstm: ''
},
bedgrp: {
rec: {
predat: '',
rcvdat: '',
doctypcod: '',
docsta: '',
ownref: '',
lescom: '',
matdat: '',
nam: ''
},
cbs: {
opn1: {
cur: ''
},
opn2: {
cur: ''
},
max: {
cur: '',
amt: ''
}
}
},
trnmod: {
trndoc: {
nar754: ''
}
},
payinstxt: '',
setmod: new Pub().data.Setmod,
mtabut: new Pub().data.Mtabut,
trnmod: new Pub().data.Trnmod,
liaall: new Pub().data.Liaall,
liaccv: new Pub().data.Liaccv,
docpan: new Pub().data.Docpan,
};
}
}
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames" @change="handleChange">
<el-collapse-item title="索汇信息" name="rclp">
<c-content>
<m-rclp :model="model" :codes="codes" />
</c-content>
</el-collapse-item>
<el-collapse-item title="索汇详情" name="remp" v-if="model.rmbclm.clmrmbflg != ''">
<c-content>
<m-remp :model="model" :codes="codes" />
</c-content>
</el-collapse-item>
<!-- <el-tab-pane
v-if="model.rmbclm.clmrmbflg"
label="索汇详情"
name="remp">
<m-remp :model="model" :codes="codes" />
</el-tab-pane> -->
</el-collapse>
</div>
</template>
<script>
import Api from "~/service/Api";
import commonProcess from "~/mixin/commonProcess";
import CodeTable from "~/config/CodeTable";
import Event from "~/model/Gitcrj/Event";
import Rclp from "./Rclp"
import Remp from "./Remp"
export default {
components:{
"m-rclp" : Rclp,
"m-remp" : Remp,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [commonProcess],
data() {
return {
activeNames: ["rclp"],
};
},
methods: { ...Event },
created:
function () {},
};
</script>
<style>
</style>
<template>
<div class="eibs-tab">
<!-- left -->
<c-col :span="11">
<c-col :span="24">
<c-col :span="20">
<el-form-item
label="出口信用证编号"
prop="ledgrp.rec.ownref"
style="width: 100%"
>
<c-input
v-model="model.ledgrp.rec.ownref"
maxlength="16"
placeholder="请输入出口信用证编号"
style="width: 95%"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="1">
<c-button
style="margin: 0 10px 0 0; padding: 0 12px"
size="small"
type="primary"
@click="onSeainf"
>
<i class="el-icon-info" style="font-size:15px"></i>
</c-button>
<!-- </el-form-item> -->
</c-col>
<c-col :span="2" :offset="1" style="text-align: right">
<c-button
style="margin: 0 0"
size="small"
type="primary"
:disabled="!this.flag && model.ledgrp.rec.ownref == ''? false:true"
@click="onDetpButgetref"
>
获取
</c-button>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="20">
<el-form-item
label="出口单据编号"
prop="bedgrp.rec.ownref"
style="width: 100%"
>
<c-input
v-model="model.bedgrp.rec.ownref"
maxlength="16"
placeholder="请输入出口单据编号"
style="width: 95%"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="1">
<c-button
style="margin: 0 10px 0 0; padding: 0 12px"
size="small"
type="primary"
@click="onSeainf"
>
<i class="el-icon-info" style="font-size:15px"></i>
</c-button>
</c-col>
<c-col :span="2" :offset="1" style="text-align: right">
<c-button
style="margin: 0 0"
size="small"
type="primary"
:disabled="!this.flag && model.bedgrp.rec.ownref == ''? false:true"
@click="onDetpButgetref"
>
获取
</c-button>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据金额" prop="bedgrp.cbs.max.cur">
<c-fullbox>
<c-input
v-model="model.bedgrp.cbs.max.cur"
maxlength="3"
style="width: 50%"
placeholder="请输入单据金额"
disabled
></c-input>
<c-input
v-model="model.bedgrp.cbs.max.amt"
style="width: 50%"
placeholder="请输入金额"
disabled
></c-input>
<template slot="footer">
<c-checkbox
v-model="model.betp.adaflg"
style="margin-left: 10px"
disabled
>附加金额</c-checkbox
>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="单据余额" prop="bedgrp.cbs.opn1.cur">
<c-input
v-model="model.bedgrp.cbs.opn1.cur"
maxlength="3"
placeholder="请输入"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="bedgrp.cbs.max.amt">
<c-input
v-model="model.bedgrp.cbs.max.amt"
placeholder="请输入金额"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据类型" prop="bedgrp.rec.doctypcod">
<c-select
v-model="model.bedgrp.rec.doctypcod"
style="width: 100%"
placeholder="请输入单据类型"
disabled
>
<el-option
v-for="item in codes.doctypcod1"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="到期日" prop="bedgrp.rec.matdat">
<c-date-picker
type="date"
v-model="model.bedgrp.rec.matdat"
style="width: 100%"
placeholder="请选择到期日"
disabled
></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="收到日期" prop="bedgrp.rec.rcvdat">
<c-date-picker
type="date"
v-model="model.bedgrp.rec.rcvdat"
style="width: 100%"
placeholder="请选择收到日期"
disabled
></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="交单日期" prop="bedgrp.rec.predat">
<c-date-picker
type="date"
v-model="model.bedgrp.rec.predat"
style="width: 100%"
placeholder="请选择交单日期"
disabled
></c-date-picker>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据状态" prop="bedgrp.rec.docsta">
<c-select
v-model="model.bedgrp.rec.docsta"
style="width: 100%"
placeholder="请选择单据状态"
disabled
>
<el-option
v-for="item in codes.docsta"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</c-select>
</el-form-item>
</c-col>
</c-col>
<!-- right -->
<c-col :span="11" :offset="1">
<c-col :span="24">
<c-col :span="12">
<el-form-item label="信用证余额" prop="ledgrp.cbs.opn1.cur">
<c-input
v-model="model.ledgrp.cbs.opn1.cur"
maxlength="3"
placeholder="请输入信用证余额"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="ledgrp.cbs.opn1.amt">
<c-input
v-model="model.ledgrp.cbs.opn1.amt"
placeholder="请输入金额"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="单据简略信息" prop="bedgrp.rec.nam">
<c-input
v-model="model.bedgrp.rec.nam"
maxlength="40"
placeholder="请输入Name"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptsmsg
:model="model"
:argadr="{
title: '交单人',
grp: 'bedgrp',
rol: 'prb',
}"
:disabled="true"
:enRef="false"
:enNam="false"
></c-ptsmsg>
</c-col>
<c-col :span="24">
<c-ptsmsg
:model="model"
:argadr="{
title: '开证行',
grp: 'bedgrp',
rol: 'iss',
}"
:disabled="true"
:enRef="false"
:enNam="false"
></c-ptsmsg>
</c-col>
<c-col :span="24">
<c-ptsmsg
:model="model"
:argadr="{
title: '申请人',
grp: 'bedgrp',
rol: 'apl',
}"
:disabled="true"
:enRef="false"
:enNam="false"
></c-ptsmsg>
</c-col>
</c-col>
<!-- <c-col :span="24">
<el-form-item style="margin-left: 0px">
<el-divider />
</el-form-item>
</c-col> -->
<!-- next part -->
<c-col :span="24" style="margin-bottom: 35px">
<c-istream-table
ref="table"
:list="model.liaall.tenstm.rows || []"
:columns="stmData.columns"
:showSelection="true"
v-on:multipleSelect="multipleSelect"
prop="liaall.tenstm"
>
</c-istream-table>
</c-col>
<!-- left -->
<c-col :span="11">
<c-col :span="24">
<c-col :span="12">
<el-form-item label="单据部分金额" prop="bedgrp.cbs.opn2.cur">
<c-input
v-model="model.bedgrp.cbs.opn2.cur"
maxlength="3"
placeholder="请输入单据部分金额"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="aamset.utlamt">
<c-input
v-model="model.aamset.utlamt"
placeholder="请输入单据部分金额"
disabled
@change="eventFunction(
'aamset.utlamt'
)"
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="附加金额" prop="bedgrp.cbs.opn2.cur">
<c-input
v-model="model.bedgrp.cbs.opn2.cur"
maxlength="3"
placeholder="请输入附加金额"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="aamset.utlamt2">
<c-input
v-model="model.aamset.utlamt2"
placeholder="请输入附加金额"
disabled
@change="eventFunction(
'aamset.utlamt2'
)"
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="" prop="rmbclm.clmrmbflg">
<c-checkbox v-model="clmrmbflg"
>Claim Reimbursement(e.g via MT 742)</c-checkbox
>
</el-form-item>
</c-col>
</c-col>
<!-- right -->
<c-col :span="11" :offset="1">
<c-col :span="24">
<c-form-item label="扣除佣金" prop="bedgrp.rec.lescom">
<c-input
v-model="model.bedgrp.rec.lescom"
placeholder="请输入内容"
></c-input>
</c-form-item>
</c-col>
<c-col :span="24">
<c-form-item label="描述内容(77A)" prop="trnmod.trndoc.nar754">
<c-input
type="textarea"
v-model="model.trnmod.trndoc.nar754"
maxlength="35"
show-word-limit
placeholder="请输入77A场内容"
></c-input>
</c-form-item>
</c-col>
</c-col>
<!-- bottom -->
<c-col :span="24">
<el-form-item
label="给开证行/可用银行的付款指示"
prop="payinstxt"
style="width: 100%"
>
<c-fullbox>
<c-input
type="textarea"
v-model="model.payinstxt"
maxlength="300"
show-word-limit
placeholder="请输入付款指示"
></c-input>
<template slot="footer">
<c-button
style="margin-left: 10px; padding: 0 10px"
size="small"
type="primary"
@click="showGridPromptDialog('payins.buttxmsel',null,null,{TXT:'payinstxt'},{TXT:false},'doxpDialog')"
>
...
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
</div>
</template>
<script>
import Api from "~/service/Api";
import commonProcess from "~/mixin/commonProcess";
import CodeTable from "~/config/CodeTable";
import Event from "~/model/Betrcl/Event";
import Ptsmsg from "~/views/Public/Ptsmsg";
export default {
components: { "c-ptsmsg": Ptsmsg },
inject: ["root"],
props: ["model", "codes"],
mixins: [commonProcess],
data() {
return {
stmData: {
columns: [
'1 1 "类型" 250',
'2 2 "Dbt" 250',
'3 3 "Cdt" 250',
'4 4 "币种" 250',
'5 5 "金额" 250 2 8 1 4',
// '6 6 "Mat.Dat." 250 4 7 1',
{
index: 6,
position: 6,
width: 250,
render: (item, scope) => {
return scope.row[item.prop] === "null"
? ""
: scope.row[item.prop];
},
label: "Mat.Dat.",
},
],
data: [],
},
};
},
computed: {
clmrmbflg: {
get() {
return this.model.rmbclm.clmrmbflg === "X";
},
set(val) {
this.model.rmbclm.clmrmbflg = val ? "X" : "";
},
},
flag() {
return this.model.mtabut.coninf.usr.extkey == "";
},
},
mounted() {
this.$nextTick(() => {});
},
methods: {
...Event,
async multipleSelect(selection) {
if (selection.length > 1) {
this.$notify({
title: "错误",
message: "您不能选择多个期限",
type: "error",
});
} else {
let chkIds;
if (selection.length === 0) {
chkIds = []
// this.model.liaall.tensetstm.rows = []
// this.model.liaall.tenstm.rows = []
} else {
chkIds = [selection[0] + 1]
}
//
console.log(this.model.liaall.tensetstm);
let params = { chkDst: "liaall.tenstm", chkIds };
const rtnmsg = await this.executeRule("liaall.tenstm", params);
if (rtnmsg.respCode == SUCCESS) {
this.updateModel(rtnmsg.data);
} else {
this.$notify.error({ title: "错误", message: "服务请求失败!" });
}
}
// console.log(selection);
// if (selection) {
// let selIds = selection.map((x) => x + 1);
// let params = { selDst: "liaall.tenstm", selIds };
// const rtnmsg = await this.executeRule("liaall.tenstm", params);
// if (rtnmsg.respCode == SUCCESS) {
// this.updateModel(rtnmsg.data);
// } else {
// this.$notify.error({ title: "错误", message: "服务请求失败!" });
// }
// }
},
},
created: function () {},
};
</script>
<style>
.messageLabel >>> .el-form-item__label {
text-align: left;
font-weight: bold;
font-size: 12px;
}
</style>
<template>
<div class="eibs-tab">
<!-- left -->
<c-col :span="11">
<c-col :span="24">
<el-form-item label="偿付行" prop="rmbclm.rmbrol">
<c-select
v-model="model.rmbclm.rmbrol"
style="width: 100%"
placeholder="请选择偿付行"
@change="selectOrCheckboxRule('rmbclm.rmbrol')"
>
<el-option
v-for="item in codes.rolall"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '',
grp: 'rmbclm',
rol: 'rmbrmb',
}"
:noRef="false"
:isAdrblk="true"
:disabled="true"
@onSeainf="onSeainf"
@onAplpDet="onBenpDet"
:disabledRef="rmbrolFlag"
:disabledExtkey="rmbrolFlag"
>
</c-ptap>
</c-col>
<c-col :span="24">
<el-form-item label="起息日" prop="rmbclm.valdat">
<c-date-picker
type="date"
v-model="model.rmbclm.valdat"
style="width: 100%"
placeholder="请选择日期"
></c-date-picker>
</el-form-item>
</c-col>
</c-col>
<!-- right -->
<c-col :span="11" :offset="1">
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '账户号',
grp: 'rmbclm',
rol: 'acwacw',
}"
:noRef="false"
:disabled="true"
:isAdrblk="true"
@onSeainf="onSeainf"
@onAplpDet="onBenpDet"
>
</c-ptap>
</c-col>
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '受益人银行',
grp: 'rmbclm',
rol: 'bebbeb',
}"
:noRef="false"
:disabled="true"
:isAdrblk="true"
@onSeainf="onSeainf"
@onAplpDet="onBenpDet"
>
</c-ptap>
</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/Betrcl/Event";
import Ptap from "~/views/Public/Ptap";
export default {
components: {"c-ptap": Ptap },
inject: ["root"],
props: ["model", "codes"],
mixins: [commonProcess],
data() {
return {};
},
computed:{
rmbrolFlag: {
get() {
return (
this.model.rmbclm.rmbrol == 'AVB' ||
this.model.rmbclm.rmbrol == 'ISS'
)
},
},
},
methods: { ...Event },
created: function () {},
};
</script>
<style>
</style>
<template>
<div class="eContainer">
<c-page title="出口信用证单据承兑">
<!-- <c-bus-button :$pntvm="this"></c-bus-button> -->
<!-- <el-button size="small">流程附言</el-button>
<el-button size="small">交易历史</el-button>
<el-button size="small">备忘录</el-button>
<el-button size="small">影像信息</el-button>
// <el-button size="small">保存模板</el-button>
// <el-button size="small">使用模板</el-button>
<el-button size="small">制裁信息</el-button>
// <el-button size="small">拆分报文</el-button>
<el-button size="small">智能提示</el-button>
</c-function-btn> -->
<el-form
:model="model"
:rules="rules"
ref="modelForm"
label-width="120px"
label-position="right"
size="small"
:validate-on-rule-change="false"
>
<c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="tabClick">
<!--PD000033 -->
<el-tab-pane label="业务信息" name="ovwp">
<c-content>
<m-ovwp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000001 -->
<el-tab-pane label="统一授信" name="limitbody">
<c-content>
<m-limitbody :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="表外记账" name="engp">
<c-content>
<!-- 表外记账 -->
<m-engp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="费用/账务" name="setmod">
<c-content>
<m-setmod
:model="model"
:codes="codes"
@changeSetmodModel="changeSetmodModel"
/>
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="会计分录" name="glepan">
<c-content>
<m-glentry :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<el-tab-pane label="备查/附言" name="coninfp">
<c-content>
<m-coninfp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000529 -->
<el-tab-pane label="报文/面函" name="docpan">
<c-content>
<m-docpan :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000546 -->
<el-tab-pane label="附件信息" name="doctre">
<c-content>
<m-doctre :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
</c-tabs>
</el-form>
<c-grid-ety-prompt-dialog
ref="doxpDialog"
:isPty="false"
:promptData="promptData"
@select-ety="selectMsg"
>
</c-grid-ety-prompt-dialog>
<c-function-btn
:handleSubmit="handleSubmit"
:handleCheck="handleCheck"
:handleStash="handleStash">
</c-function-btn>
</c-page>
</div>
</template>
<script>
import Api from "~/service/Api";
import CodeTable from "~/config/CodeTable";
import Betrcl from "~/model/Betrcl";
import commonProcess from "~/mixin/commonProcess";
import commonFuncs from "~/mixin/commonFuncs";
import Check from "~/model/Betrcl/Check";
import Default from "~/model/Betrcl/Default";
import Pattern from "~/model/Betrcl/Pattern";
import Ovwp from "./Ovwp";
import Remp from "./Remp";
import Engp from "~/views/Public/Engp";
import Doctre from "~/views/Public/Doctre";
import Setpan from "~/views/Public/Setpan";
import Coninfp from "~/views/Public/Coninfp";
import Docpan from "~/views/Public/Docpan";
import Limitbody from "~/views/Public/Limitbody";
export default {
name: "Betrcl",
components: {
"m-ovwp": Ovwp,
"m-engp": Engp,
"m-docpan": Docpan,
"m-doctre": Doctre,
"m-coninfp": Coninfp,
"m-remp": Remp,
"m-limitbody": Limitbody,
"m-setpan": Setpan,
},
provide() {
return {
root: this,
};
},
mixins: [commonProcess, commonFuncs], // 里面包含了Default、Check等的公共处理
data() {
return {
tabVal: "ovwp",
trnName: "betrcl",
trnType: "",
model: new Betrcl().data,
checkRules: Check,
defaultRules: Default,
pattern: Pattern,
rules: null,
codes: {
...CodeTable,
},
activeNames: ["engp"],
};
},
methods: {
tabClick(tab) {
this.tabClick(tab);
/**
* do it yourself
**/
},
},
created: async function () {
console.log("进入betrcl交易");
let rtnmsg = await this.init({});
if (rtnmsg.respCode == SUCCESS) {
this.updateModel(rtnmsg.data);
if (this.isInDisplay) {
this.restoreDisplay();
}
this.$refs.rclp.$refs.table.$refs.table.toggleAllSelection();
//TODO 处理数据逻辑
} else {
this.$notify.error({ title: "错误", message: "服务请求失败!" });
}
},
};
</script>
<style>
</style>
......@@ -117,7 +117,7 @@
root: this
}
},
mixins: [event,operationFunc,],
mixins: [event,operationFunc],
data(){
return {
tabVal: "ovwp",
......
......@@ -139,7 +139,6 @@ export default {
tabVal: "ovwp",
trnName: "brtdcr",
model: new Brtdcr().data,
// pattern: Pattern,
rules: formRules,
codes: {
...CodeTable
......
......@@ -75,7 +75,7 @@ export default class Brteus {
advtyp: '',
docsta: '',
ownref: '',
totamt: '',
totamt: '0',
totdat: '',
advdat: '',
stadat: '',
......@@ -119,6 +119,7 @@ export default class Brteus {
expdat: '',
ownref: '',
branchinr:"00000014",
inr: '',
},
cbs: {
opn1: {
......
......@@ -27,7 +27,8 @@ export default {
}
let dataObj = {
rec: {
objtyp: 'lid',
objtyp: 'brd',
objinr:model.brdgrp.rec.objinr,
ownref: model.brdgrp.rec.ownref,
opndat: model.brdgrp.rec.opndat,
expdat: model.brdgrp.rec.expdat,
......
......@@ -59,6 +59,8 @@ export default class Brtudp {
}
},
rec: {
inr:'',
branchinr:'',
tenmaxday: '',
predat: '',
relgodflg: '',
......@@ -239,6 +241,8 @@ export default class Brtudp {
},
lidgrp: {
rec: {
inr: '',
branchinr: '',
expdat: '',
ownref: ''
},
......
export default {
buildPtspta (ptsptaObj) {
let pts = ptsptaObj.pts;
let ptspta = {
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
};
return ptspta;
},
buildCommonData (model, trnName) {
let ptsptaList = [];
if (model.brdgrp.apl.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.apl));
}
if (model.brdgrp.ben.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.ben));
}
let dataObj = {
rec: {
objtyp: 'lid',
ownref: model.brdgrp.rec.ownref,
opndat: model.brdgrp.rec.opndat,
expdat: model.brdgrp.rec.expdat,
branchInr: model.brdgrp.rec.branchInr,
hndtyp: model.brdgrp.rec.hndtyp,
gartyp: model.brdgrp.rec.gartyp,
fingua: model.brdgrp.rec.fingua,
fromflg: model.brdgrp.rec.fromflg,
othersno: model.brdgrp.rec.othersno,
sndto: model.brdgrp.rec.sndto,
swiftflg: model.brtp.swiftflg,
brduil: model.brdgrp.rec.brduil,
purpos: model.brdgrp.rec.purpos,
revflg: model.brdgrp.rec.revflg,
cnfsta: model.brdgrp.rec.cnfsta,
},
cbsMap: {
MAX: model.brdgrp.cbs.max,
OPN1: model.brdgrp.cbs.opn1,
MAC: model.brdgrp.cbs.mac,
MAC2: model.brdgrp.cbs.mac2,
OPC2: model.brdgrp.cbs.opc2,
CNF: model.brdgrp.cbs.cnf,
},
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : 'ZL'
};
return dataObj
},
buildSetfeg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaall: model.liaall,
liaccv: model.liaccv,
// doceot: model.trnmod.trndoc.doceot,
};
return params
},
buildSetglg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
setfeg: model.setmod.setfeg,
liaall: model.liaall,
liaccv: model.liaccv,
};
return params
},
buildGlentry (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
setfog: model.setmod.setfog,
setfeg: model.setmod.setfeg,
setglg: model.setmod.setglg,
};
return params
},
buildEngp (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
};
return params
},
buildDocpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
};
return params
},
buildCcvpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaccvg: model.liaccv.liaccvg,
oldamt: model.liaccv.oldamt,
chgamt: model.liaccv.chgamt,
concur: model.liaccv.concur,
};
return params
},
buildLimitbody (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'GID',
objinr: model.gidgrp.rec.objinr,
ownref: model.gidgrp.rec.ownref,
},
};
return params
},
buildDoctre (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'lid',
objinr: model.brdgrp.rec.objinr,
ownref: model.brdgrp.rec.ownref,
swiftflg: model.brtp.swiftflg,
},
};
return params
},
// 公共组件setmod中dsp字段改变,触发联动时候的入参
buildSetgllAccts (model, trnName, setglg) {
let params = {
...this.buildCommonData(model, trnName),
setglg
};
return params
}
}
import Api from '~/service/Api';
import commonFunctions from '~/mixin/commonFunctions.js';
import buildFn from './buildCommons.js';
import setmod from '~/components/business/setmod/event';
import glentry from '~/components/business/glentry/event';
import engp from '~/components/business/engp/event';
import docpan from '~/components/business/docpan/event';
import ccvpan from '~/components/business/ccvpan/event';
import limitbody from '~/components/business/limitbody/event';
import doctre from '~/components/business/doctre/event';
import Utils from "~/utils"
export default {
mixins: [commonFunctions],
methods: {
...setmod,
...glentry,
...engp,
...docpan,
...ccvpan,
...limitbody,
...doctre,
async init () {
const params = {
spt: JSON.parse(localStorage.getItem('row_' + this.trnName))
}
const res = await Api.post('/service/letame/init', {
...params,
transName: this.trnName,
userId: window.sessionStorage.userId || 'ZL',
brdgrp:{
rec:{
inr:this.$route.query.inr
}
}
});
if (!res.data) {
return
}
this.copyValueFromVoData(this.model, res.data)
this.copyValueFromVoData(this.model.setmod.setfeg, res.data.setfeg)
this.copyValueFromVoData(this.model.setmod.setfog, res.data.setfog)
this.copyValueFromVoData(this.model.setmod.setglg, res.data.setglg)
},
// 兼容处理在前端model中定义了字段,后端返回的数据中不存在字段的问题
copyValueFromVoData (model, data) {
let keysList = Object.keys(model)
keysList.map((key) => {
if (data[key]) {
if (Utils.typeOf(model[key]) === 'Object') {
this.copyValueFromVoData(model[key], data[key])
} else {
this.$set(model, key, data[key])
}
}
})
},
async tabClick(tab) {
if (this.isInDisplay) {
return;
}
let name = tab.name;
switch (name) {
case 'ccvpan':
let ccvpanRequest = buildFn.buildCcvpan(this.model, this.trnName);
this.processLiaccv(ccvpanRequest);
break;
case 'engp':
let engpRequest = buildFn.buildEngp(this.model, this.trnName);
this.processLiaall(engpRequest);
break;
case 'setmod':
let setfegRequest = buildFn.buildSetfeg(this.model, this.trnName);
// 此处利用回调是为了等setfeg的接口调用完成后才去获取setglg参数,由于setglg参数依赖于setfeg函数的返回值
this.processSetpan(setfegRequest, () => {
return buildFn.buildSetglg(this.model, this.trnName);
});
break;
case 'docpan':
let docpanRequest = buildFn.buildDocpan(this.model, this.trnName);
this.processTrndoc(docpanRequest);
break;
case 'glepan':
let glentryRequest = buildFn.buildGlentry(this.model, this.trnName);
this.processGlentry(glentryRequest);
break;
case 'limitbody':
let limitbodyRequest = buildFn.buildLimitbody(this.model, this.trnName);
this.processLimitbody(limitbodyRequest);
break;
case 'doctre':
let doctreRequest = buildFn.buildDoctre(this.model, this.trnName);
this.processDoctre(doctreRequest);
break;
default:
return;
}
},
// 点击获取按钮拉取当前key字段下的表单数据
queryFormData(key) {
console.log(key);
},
// 业务信息=》基本信息=》保函编号-----获取保函编号
async queryOwnref() {
let params = {
ptainr: this.model.gidgrp.apl.pts.ptainr,
businessType: 'LG',
tbl: 'LG',
};
const loading = this.loading();
let res = await Api.post('/service/letame/getOwnRef', params);
if (res.respCode == SUCCESS) {
loading.close();
this.model.gidgrp.rec.ownref = res.data;
}
},
// 获取brtacp弹框表格数据
async queryGridEtyPromptDialogData(type, ptytyp) {
let params = {
userId: window.sessionStorage.userId || 'ZL',
ptytyp: ptytyp,
extkey: this.model.gidgrp[type.toLowerCase()].pts.extkey,
};
let res = await Api.post('/service/ptspta/list', params);
if (res.respCode == SUCCESS) {
this.root.$refs['etyDialog'].show = true;
this.root.promptData.data = res.data.ptaInfos;
this.root.promptData.type = type;
}
},
// 选中brtacp弹框表格的行数据
async selectGridEtyPromptData(row) {
let params = {
...row,
};
let res = await Api.post('/service/ptspta/fetch', params);
if (res.respCode == SUCCESS) {
this.$set(this.model.gidgrp, row.role.toLowerCase(), res.data);
}
},
// 业务信息=》基本信息=》支出目的
purposChange(key, value) {
this.handleChangeForm(key, value);
},
// 初始化保函开立类型码表下拉列表
async queryHndtypCodeTableList(trnName) {
let params = {
gitp: {
swiftflg: this.model.gitp.swiftflg,
},
gidgrp: {
rec: {
purpos: this.model.gidgrp.rec.purpos,
},
},
transName: trnName.toUpperCase(),
};
let res = await Api.post('/service/letame/initHndtyp', params);
if (res.respCode == SUCCESS) {
this.$set(this.codes, 'voHndtyp', res.data);
}
},
// 是否SWIFT格式修改--联动保函开立类型
handleChangeSwiftflg() {
this.queryHndtypCodeTableList(this.root.trnName);
},
// 支出目的修改--联动保函开立类型
handleChangePurpos() {
this.queryHndtypCodeTableList(this.root.trnName);
},
buildLiaccv () {
let params = {
...buildFn.buildCommonData(this.model, this.trnName),
liaccvg: this.model.liaccv.liaccvg,
oldamt: this.model.liaccv.oldamt,
chgamt: this.model.liaccv.chgamt,
concur: this.model.liaccv.concur,
};
return params
},
// 公共组件setmod处理方式改变触发联动
changeSetmodModel (emitParams) {
let reqParams = {}
switch (emitParams.code) {
case 'processMethods':
reqParams = buildFn.buildSetglg(this.model, this.trnName);
this.calcPayDetail(reqParams)
break
case 'changeDsp':
let index = emitParams.index;
let setglgRequest = buildFn.buildSetglg(this.model, this.trnName);
setglgRequest.setglg = {setgll: emitParams.list};
this.setgllAccts(setglgRequest, index);
break
default:
return
}
}
},
};
export default {
'setmod.dspflg': null,
'ledgrp.rec.revtyp': null,
'ledgrp.rec.avbby': null,
'ledgrp.rec.stacty': null,
'ledgrp.rec.avbwth': null,
'ledgrp.rec.lcrtyp': null,
'ledgrp.rec.apprul': null,
'liaall.limmod.limpts.nonrevflg1': null,
'ledgrp.rec.cnfdet': null,
'letamep.recget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letamep.recget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'trnmod.swiadd.amedat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'trnmod.swiadd.amenbr': [
{ type: 'number', required: false, message: '必输项' },
{ type: 'number', max: 999, message: '长度不能超过3' }
],
'letamep.amenbr': [
{ type: 'number', required: false, message: '必输项' },
{ type: 'number', max: 999, message: '长度不能超过3' }
],
'ledgrp.cbs.nom1.cur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'oldledgrp.cbs.nom1.amt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'oldledgrp.rec.nomtop': [
{ type: 'number', required: false, message: '必输项' },
{ type: 'number', max: 99, message: '长度不能超过2' }
],
'oldledgrp.rec.nomton': [
{ type: 'number', required: false, message: '必输项' },
{ type: 'number', max: 99, message: '长度不能超过2' }
],
'oldledgrp.cbs.max.cur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'oldledgrp.cbs.max.amt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'trnmod.swiadd.ameamt': [
{ required: false, message: '必输项' },
{ type: 'string', max: 18, message: '整数位不能超过14位' },
{ pattern: /(^(\+|\-)|\d+$)|(^(\+|\-)|\.\d{1,3}$)|(^(\+|\-)|\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'letamep.engamt': [
{ type: 'string', required: false, message: '必输项' },
{ 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位' }
],
'trnmod.swiadd.newamt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'trnmod.swiadd.newnomtop': [
{ type: 'number', required: false, message: '必输项' },
{ type: 'number', max: 99, message: '长度不能超过2' }
],
'trnmod.swiadd.newnomton': [
{ type: 'number', required: false, message: '必输项' },
{ type: 'number', max: 99, message: '长度不能超过2' }
],
'letamep.maxcur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'letamep.maxamt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'oldledgrp.rec.expdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'oldledgrp.rec.shpdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'trnmod.swiadd.newexpdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'trnmod.swiadd.newshpdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'trnmod.swiadd.shpper': [
{ type: 'string', required: true, message: '必输项' },
{ max: 390, message: '长度不能超过390' }
],
'oldledgrp.rec.prepers18': [
{ type: 'number', required: false, message: '必输项' },
{ type: 'number', max: 999, message: '长度不能超过3' }
],
'oldledgrp.rec.prepertxts18': [
{ type: 'string', required: false, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'trnmod.swiadd.shpfro': [
{ type: 'string', required: false, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'trnmod.swiadd.porloa': [
{ type: 'string', required: false, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'trnmod.swiadd.pordis': [
{ type: 'string', required: false, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'trnmod.swiadd.shpto': [
{ type: 'string', required: false, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'trnmod.swiadd.addamtcov': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.cbs.max2.cur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'trnmod.swiadd.addamt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'letp.recget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.rec.ownref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.recget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.rec.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'ledgrp.ben.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.benp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.usr.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 8, message: '长度不能超过8' }
],
'letp.usrget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.ben.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.benp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.ben.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.cbs.nom1.amt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'ledgrp.ben.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.ben.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.rec.nomtop': [
{ type: 'number', required: false, message: '必输项' },
{ type: 'number', max: 99, message: '长度不能超过2' }
],
'ledgrp.rec.nomton': [
{ type: 'number', required: false, message: '必输项' },
{ type: 'number', max: 99, message: '长度不能超过2' }
],
'ledgrp.ben.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.cbs.max.amt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'ledgrp.iss.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.issp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.rec.opndat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'ledgrp.rec.preadvdt': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'ledgrp.iss.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.issp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.iss.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.rec.shpdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'ledgrp.rec.advdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'ledgrp.iss.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.iss.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.rec.expdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'ledgrp.iss.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.rec.expplc': [
{ type: 'string', required: false, message: '必输项' },
{ max: 29, message: '长度不能超过29' }
],
'ledgrp.apl.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.aplp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.apl.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.aplp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.apl.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.rec.oppbnk': [
{ type: 'string', required: false, message: '必输项' },
{ max: 12, message: '长度不能超过12' }
],
'ledgrp.apl.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.apl.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.apl.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.rec.apprultxt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.blk.mixdet': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'letp.avbp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.avb.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.avbp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.avb.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.blk.avbwthtxt': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.avb.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.avb.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.avb.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.blk.preper': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.rec.prepers18': [
{ type: 'number', required: false, message: '必输项' },
{ type: 'number', max: 999, message: '长度不能超过3' }
],
'ledgrp.rec.prepertxts18': [
{ type: 'string', required: false, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.blk.defdet': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.blk.feetxt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 210, message: '长度不能超过210' }
],
'ledgrp.blk.dftat': [
{ type: 'string', required: true, message: '必输项' },
{ max: 105, message: '长度不能超过105' }
],
'letp.drwp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.drw.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.drwp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.drw.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.drw.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.drw.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.drw.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.rec.shpfro': [
{ type: 'string', required: false, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'ledgrp.rec.tenmaxday': [
{ type: 'number', required: false, message: '必输项' },
{ type: 'number', max: 9999, message: '长度不能超过4' }
],
'ledgrp.rec.porloa': [
{ type: 'string', required: false, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'ledgrp.rec.pordis': [
{ type: 'string', required: false, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'ledgrp.rec.shpto': [
{ type: 'string', required: false, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'ledgrp.blk.shpper': [
{ type: 'string', required: false, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'ledgrp.cbs.max2.amt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'ledgrp.cbs.opn2.amt': [
{ type: 'string', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'ledgrp.blk.addamtcov': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.adv.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.apb.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.advp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.apbp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.adv.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.advp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.apb.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.apbp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.adv.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.apb.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.adv.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.adv.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.apb.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.apb.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.adv.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.apb.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.a2b.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.rmb.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.a2bp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.rmbp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.a2b.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.a2bp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.rmb.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.rmbp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.a2b.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.rmb.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.a2b.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.a2b.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.rmb.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'ledgrp.rmb.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.a2b.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.rmb.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'ledgrp.con.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.conp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'ledgrp.con.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'letp.conp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.con.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'ledgrp.blk.lcrgodame': [
{ type: 'string', required: true, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'ledgrp.blk.lcrgod': [
{ type: 'string', required: true, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'letamep.lcrgodamep.usrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'letamep.lcrgodame.buttxmsel': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.blk.lcrdocame': [
{ type: 'string', required: true, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'ledgrp.blk.lcrdoc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'letamep.lcrdocamep.usrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'letamep.lcrdocame.buttxmsel': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.blk.adlcndame': [
{ type: 'string', required: true, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'ledgrp.blk.adlcnd': [
{ type: 'string', required: true, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'letamep.adlcndamep.usrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'letamep.adlcndame.buttxmsel': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'ledgrp.blk.insbnk': [
{ type: 'string', required: false, message: '必输项' },
{ max: 780, message: '长度不能超过780' }
],
'ledgrp.blk.insbnkame': [
{ type: 'string', required: true, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'trnmod.swiadd.insbnk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'ledgrp.rec.revtimes': [
{ type: 'string', required: false, message: '必输项' },
{ max: 2, message: '长度不能超过2' }
],
'ledgrp.rec.revnbr': [
{ type: 'string', required: false, message: '必输项' },
{ max: 2, message: '长度不能超过2' }
],
'ledgrp.rec.revdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'ledgrp.blk.revcls': [
{ type: 'string', required: true, message: '必输项' },
{ max: 390, message: '长度不能超过390' }
],
'ledgrp.blk.revnotes': [
{ type: 'string', required: true, message: '必输项' },
{ max: 210, message: '长度不能超过210' }
],
'liaall.outamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.outpct': [
{ type: 'string', required: false, message: '必输项' },
{ max: 6, message: '长度不能超过6' }
],
'liaall.concur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'liaall.misamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.exttotoldamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.exttotamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'setmod.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'setmod.docamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'setmod.zmqacc': [
{ type: 'string', required: false, message: '必输项' },
{ max: 20, message: '长度不能超过20' }
],
'setmod.glemod.gleshwstm': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'mtabut.coninf.oitinf.oit.inftxt': [
{ type: 'string', required: true, message: '必输项' },
{ max: 60, message: '长度不能超过60' }
],
'mtabut.coninf.oitset.oit.inftxt': [
{ type: 'string', required: true, message: '必输项' },
{ max: 60, message: '长度不能超过60' }
],
'mtabut.coninf.conexedat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'mtabut.coninf.usr.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 8, message: '长度不能超过8' }
],
'trnmod.trndoc.advnam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'trnmod.trndoc.amdapl': [
{ type: 'string', required: true, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'trnmod.trndoc.advdoc': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'trnmod.trndoc.filrecv': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'trnmod.trndoc.doctrestm': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'trnmod.trndoc.condocstm': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'trnmod.trndoc.rcvatt.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'liaall.limmod.ecifno': [
{ type: 'string', required: false, message: '必输项' },
{ max: 22, message: '长度不能超过22' }
],
'liaall.limmod.ownref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.wrkp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.othp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.limpts.wrk.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.wrkp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'liaall.limmod.limpts.oth.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'liaall.limmod.othp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'liaall.limmod.comamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.limmod.limpts.wrk.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'liaall.limmod.limpts.oth.pts.nam': [
{ type: 'string', required: false, message: '必输项' },
{ max: 40, message: '长度不能超过40' }
],
'liaall.limmod.ccvamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.limmod.limpts.pfcod1': [
{ type: 'string', required: false, message: '必输项' },
{ max: 14, message: '长度不能超过14' }
],
'liaall.limmod.limpts.pfcod2': [
{ type: 'string', required: false, message: '必输项' },
{ max: 14, message: '长度不能超过14' }
],
'ledgrp.blk.spcrcbame': [
{ type: 'string', required: true, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'ledgrp.blk.spcrcb': [
{ type: 'string', required: true, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'letamep.spcrcbamep.usrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'ledgrp.blk.spcbename': [
{ type: 'string', required: true, message: '必输项' },
{ max: 50, message: '长度不能超过50' }
],
'ledgrp.blk.spcben': [
{ type: 'string', required: true, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'letamep.spcbenamep.usrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 65, message: '长度不能超过65' }
],
'letp.leltb2b.litb2bstm': [
{ type: 'string', required: false, message: '必输项' },
{ max: 1, message: '长度不能超过1' }
],
'ledgrp.cbs.opn1.cur': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'letp.totamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'letp.trnopnamt': [
{ type: 'number', required: false, message: '必输项' },
{ max: 18, message: '整数位不能超过14位' },
{ pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'letp.trnshpdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'letp.trnexpdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
'letp.chkmsg': [
{ type: 'string', required: true, message: '必输项' },
{ max: 114, message: '长度不能超过114' }
],
'rmbclm.rmbrmb.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.rmbp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.rmbrmb.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.rmbp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'rmbclm.rmbrmb.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.rmbrmb.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'rmbclm.rmbrmb.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.rmbrmb.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.acwacw.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.acwp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.acwacw.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.acwp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'rmbclm.acwacw.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.acwacw.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'rmbclm.acwacw.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.acwacw.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.bebbeb.pts.ref': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.bebp.ptsget.sdamod.dadsnd': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.bebbeb.pts.extkey': [
{ type: 'string', required: false, message: '必输项' },
{ max: 16, message: '长度不能超过16' }
],
'rmbclm.bebp.ptsget.sdamod.seainf': [
{ type: 'string', required: false, message: '必输项' },
{ max: 3, message: '长度不能超过3' }
],
'rmbclm.bebbeb.namelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.bebbeb.pts.adrblk': [
{ type: 'string', required: true, message: '必输项' },
{ max: 140, message: '长度不能超过140' }
],
'rmbclm.bebbeb.dbfadrblkcn': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.bebbeb.adrelc': [
{ type: 'string', required: true, message: '必输项' },
{ max: 35, message: '长度不能超过35' }
],
'rmbclm.valdat': [
{ type: 'date', required: false, message: '输入正确的日期' }
],
}
\ No newline at end of file
import Pts from '~/components/business/commonModel/Pts';
import Pub from '~/components/business/commonModel/index.js';
export default class Letame {
constructor() {
this.data = {
number: '',
oldledgrp: {
rec: {
expdat: '',
nomton: '',
shpdat: '',
nomtop: '',
prepertxts18: '',
prepers18: ''
},
cbs: {
max: {
amt: ''
},
nom1: {
amt: ''
}
},
rol: {
pts: new Pts().data,
}
},
ledgrp: {
rec: {
ownref: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
}
},
prb: {
pts: new Pts().data,
},
apl:{
pts: new Pts().data,
},
ben:{
pts: new Pts().data,
},
oth:{
pts: new Pts().data,
},
acb:{
pts: new Pts().data,
},
a2b: {
pts: {
extkey: ''
}
},
blk: {
insbnk: '',
revnotes: '',
feetxt: '',
mixdet: '',
revcls: '',
adlcnd: '',
shpper: '',
addamtcov: '',
avbwthtxt: '',
defdet: '',
lcrdoc: '',
lcrgod: '',
lcrdocame: '',
dftat: '',
adlcndame: '',
lcrgodame: ''
},
rec: {
tenmaxday: '',
nomton: '',
expplc: '',
stacty: '',
revtyp: '',
revtimes: '',
opndat: '',
nomtop: '',
avbwth: '',
revflg: '',
spcbenflg: '',
dbtflg: '',
shpdat: '',
revdat: '',
nam: '',
prepertxts18: '',
redclsflg: '',
cnfins: '',
nomspc: '',
shptrss18: '',
spcrcbflg: '',
collflg: '',
inctrf: '',
shpfro: '',
lcrtyp: '',
nonban: '',
ownref: '',
teskeyunc: '',
preadvdt: '',
avbby: '',
pordis: '',
apprul: '',
shppar: '',
prepers18: '',
expdat: '',
shpto: '',
revnbr: '',
chato: '',
cnfdet: '',
revcum: '',
aplbnkdirsnd: '',
advdat: '',
porloa: '',
apprultxt: ''
},
con: {
pts: {
nam: ''
}
},
cbs: {
opn2: {
cur: '',
amt: ''
},
max: {
cur: '',
amt: ''
},
nom1: {
cur: '',
amt: ''
},
max2: {
cur: '',
amt: ''
}
},
rmb: {
rolsetflg: ''
},
iss: {
pts: {
ref: '',
nam: ''
}
},
drw: {
pts: {
extkey: '',
adrblk: ''
}
},
preadvflg: '',
avb: {
pts: {
extkey: ''
}
},
prb: {
pts: new Pts().data,
},
apl:{
pts: new Pts().data,
},
ben:{
pts: new Pts().data,
},
oth:{
pts: new Pts().data,
},
acb:{
pts: new Pts().data,
},
},
letp: {
usr: {
extkey: ''
},
aamp: {
aammod: {
addamtflg: ''
}
}
},
letamep: {
amenbr: '',
cre707flg: '',
lcrdocame: {
buttxmsel: ''
},
benaccflg: '',
lcrdocamep: {
modflg: '',
modmanflg: '',
usrblk: ''
},
adlcndame: {
buttxmsel: ''
},
lcrgodamep: {
modflg: '',
modmanflg: '',
usrblk: ''
},
maxamt: '',
adlcndamep: {
modflg: '',
modmanflg: '',
usrblk: ''
},
engamt: '',
lcrgodame: {
buttxmsel: ''
}
},
rmbclm: {
acwacw: {
pts: {
ref: ''
}
},
valdat: '',
rmbrmb: {
pts: {
ref: ''
}
},
bebbeb: {
pts: {
ref: ''
}
},
rmbrol: ''
},
gctp: {
recget: {
sdamod: {
seainf: '',
dadsnd: ''
}
},
aplmullab: '',
prechkdat: '',
prbp: {
ptsget: {
sdamod: {
seainf: '',
dadsnd: ''
}
}
},
liafldlab: '',
adaflg: '',
othp: {
ptsget: {
sdamod: {
seainf: '',
dadsnd: ''
}
}
},
explab: '',
lialab: '',
expfldlab: '',
ischktyp: '',
gidget: {
sdamod: {
seainf: '',
dadsnd: ''
}
}
},
gcdgrp: {
prb: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
rec: {
clmdat: '',
ownref: '',
payrol: '',
nam: '',
docprbrol: '',
},
oth: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
cbs: {
opn1: {
cur: '',
amt: ''
},
max: {
cur: '',
amt: ''
}
},
ben: {
pts: new Pts().data,
},
adv: {
pts: new Pts().data,
},
apl: {
pts: new Pts().data,
},
},
gidgrp: {
rec: {
expdat: '',
liadat: '',
ownref: '',
gartyp: ''
},
ghd: {
wahnum: '',
remark: '',
bustyp: '',
segtyp: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
}
},
ctr: {
pts: new Pts().data,
},
con: {
pts: new Pts().data,
},
iss: {
pts: new Pts().data,
},
ben: {
pts: new Pts().data,
},
atb: {
pts: new Pts().data,
},
avc: {
pts: new Pts().data,
},
adv: {
pts: new Pts().data,
},
apl: {
pts: new Pts().data,
},
},
betp: {
adaflg: '',
oth:{
pts: new Pts().data,
}
},
advdisflg: '',
ledgrp: {
rec: {
ownref: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
}
},
prb: {
pts: new Pts().data,
},
apl:{
pts: new Pts().data,
},
ben:{
pts: new Pts().data,
},
oth:{
pts: new Pts().data,
},
acb:{
pts: new Pts().data,
},
},
rejpenins: '',
advrefflg: '',
bedgrp: {
blk: {
docdisflg: '',
disdoc: '',
docdis: '',
docins: '',
intdis: ''
},
rec: {
predat: '',
rcvdat: '',
doctypcod: '',
docsta: '',
ownref: '',
payrol: '',
matdat: '',
nam: '',
docprbrol: '',
advdocflg: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
},
max: {
cur: '',
amt: ''
}
},
prb: {
pts: new Pts().data,
},
apl:{
pts: new Pts().data,
},
ben:{
pts: new Pts().data,
},
oth:{
pts: new Pts().data,
},
acb:{
pts: new Pts().data,
},
},
setmod: new Pub().data.Setmod,
mtabut: new Pub().data.Mtabut,
trnmod: new Pub().data.Trnmod,
liaall: new Pub().data.Liaall,
liaccv: new Pub().data.Liaccv,
docpan: new Pub().data.Docpan,
};
}
}
<template>
<div class="eibs">
<!-- ====================左边======================= -->
<c-col :span="12" style="padding-right: 20px;">
<c-col :span="13">
<el-form-item label="附加金额" prop="ledgrp.cbs.max2.cur">
<c-select
v-model="model.ledgrp.cbs.max2.cur"
style="width: 100%"
placeholder="请选择币种"
disabled
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="11">
<el-form-item label="" label-width="5px" prop="ledgrp.cbs.max2.amt">
<c-input
v-model="model.ledgrp.cbs.max2.amt"
placeholder="请输入金额"
class="m-input-currency"
disabled
@keyup.enter.native="$event.target.blur()"
></c-input>
</el-form-item>
</c-col>
<c-col :span="13">
<el-form-item label="附加金额余额" prop="ledgrp.cbs.opn2.cur">
<c-select
v-model="model.ledgrp.cbs.opn2.cur"
style="width: 100%"
placeholder="请选择币种"
disabled
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="11">
<el-form-item label="" label-width="5px" prop="ledgrp.cbs.opn2.amt">
<c-input
v-model="model.ledgrp.cbs.opn2.amt"
class="m-input-currency"
placeholder="请输入附加金额余额"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="金额覆盖" prop="ledgrp.blk.addamtcov">
<c-input
type="textarea"
v-model="model.ledgrp.blk.addamtcov"
maxlength="140"
show-word-limit
placeholder="请输入"
rows="4"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
</div>
</template>
<script>
import event from '../event'
export default {
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {}
},
methods: {},
created: function () {},
}
</script>
<style></style>
<template>
<div class="eibs">
<c-col :span="12">
<el-form-item label="附加条款历史记录" prop="ledgrp.blk.adlcndame">
<c-input type="textarea" v-model="model.ledgrp.blk.adlcndame" maxlength="50" show-word-limit
placeholder="请输入附加条款历史记录"></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="附加条款" prop="ledgrp.blk.adlcnd">
<c-input type="textarea" v-model="model.ledgrp.blk.adlcnd" maxlength="65" show-word-limit
placeholder="请输入附加条款"></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.ledgrp.rec.redclsflg">红/绿条款</c-checkbox>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.ledgrp.rec.spcbenflg">受益人特殊付款条款</c-checkbox>
</c-col>
<c-col :span="12">
<el-form-item label="阻止为添加/删除输入附加信息" prop="letamep.adlcndamep.usrblk">
<c-input type="textarea" v-model="model.letamep.adlcndamep.usrblk" maxlength="65" show-word-limit
placeholder="请输入阻止为添加/删除输入附加信息"></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.ledgrp.rec.spcrcbflg">银行专用特殊付款条款</c-checkbox>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.letamep.adlcndamep.modflg">修改要替换的文本</c-checkbox>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.letamep.adlcndamep.modmanflg">手动更新的修改字段</c-checkbox>
</c-col>
<c-col :span="12">
<el-form-item label="..." prop="letamep.adlcndame.buttxmsel">
<c-input v-model="model.letamep.adlcndame.buttxmsel" placeholder="请输入..."></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<c-button size="small" type="primary" @click="onAdlcndamepButdif">
显示不符点
</c-button>
</c-col>
<c-col :span="12">
<c-button size="small" type="primary" @click="onAdlcndamepButadd">
添加文本
</c-button>
</c-col>
<c-col :span="12">
<c-button size="small" icon="el-icon-delete" @click="onAdlcndamepButdel">
删除文本
</c-button>
</c-col>
</div>
</template>
<script>
import event from '../event'
export default {
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {}
},
methods: {},
created: function () { },
}
</script>
<style></style>
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames">
<el-collapse-item title="提示信息" name="coninfp">
<m-coninfp :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import event from '../event'
import Coninfp from "~/views/Public/Coninfp";
export default {
inject: ["root"],
components: {"m-coninfp": Coninfp,},
props: ["model", "codes"],
mixins: [event],
data() {
return {
activeNames: ["coninfp"],
};
},
methods: {},
created: function () {},
}
</script>
<style>
</style>
<template>
<div class="eibs">
<c-col :span="12" style="padding-right: 20px;">
<!-- ======================= 左边 ========================= -->
<c-col :span="24">
<el-form-item
label="信用证编号"
prop="ledgrp.rec.ownref"
style="width: 100%"
>
<c-fullbox>
<c-input
v-model="model.ledgrp.rec.ownref"
maxlength="16"
placeholder="请输入编号"
style="width: 95%"
:disabled="true"
>
</c-input>
<template slot="footer">
<c-button
style="margin: 0 0 0 0; padding: 0 10px"
size="small"
type="primary"
icon="el-icon-search"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="修改日期" prop="trnmod.swiadd.amedat">
<c-date-picker
type="date"
v-model="model.trnmod.swiadd.amedat"
style="width: 100%"
placeholder="请选择日期"
></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="13">
<el-form-item label="名义金额(原)" prop="ledgrp.cbs.nom1.cur">
<c-select
v-model="model.ledgrp.cbs.nom1.cur"
maxlength="3"
style="width: 100%"
placeholder="请选择币种"
:code="codes.curtxt1"
disabled
></c-select>
</el-form-item>
</c-col>
<c-col :span="11">
<el-form-item
label=""
label-width="5px"
prop="oldledgrp.cbs.nom1.amt"
>
<c-input
v-model="model.oldledgrp.cbs.nom1.amt"
placeholder="请输入金额"
style="width: 100%"
@keyup.enter.native="$event.target.blur()"
class="m-input-currency"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="13">
<el-form-item label="名义金额(改)" prop="trnmod.swiadd.amecur">
<c-select
v-model="model.trnmod.swiadd.amecur"
style="width: 100%"
:code="codes.curtxt1"
placeholder="请选择币种"
disabled
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="11">
<el-form-item
label=""
label-width="5px"
prop="trnmod.swiadd.ameamt"
>
<c-input
v-model="model.trnmod.swiadd.ameamt"
placeholder="请输入金额"
@keyup.enter.native="$event.target.blur()"
style="width: 100%"
class="m-input-currency"
></c-input>
<!-- 回车失去焦点,失去焦点会自动触发默认事件:@keyup.enter.native="$event.target.blur()" -->
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="13">
<el-form-item label="名义金额(新)" prop="trnmod.swiadd.newcur">
<c-select
v-model="model.trnmod.swiadd.newcur"
style="width: 100%"
:code="codes.curtxt1"
disabled
placeholder="请选择币种"
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="11">
<el-form-item
label=""
label-width="5px"
prop="trnmod.swiadd.newamt"
>
<c-input
v-model="model.trnmod.swiadd.newamt"
placeholder="请输入金额"
@keyup.enter.native="
eventFunction(
'trnmod.swiadd.newamt'
)
"
style="width: 100%"
class="m-input-currency"
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="金额限额表述" prop="trnmod.swiadd.nomspc">
<c-select
v-model="model.trnmod.swiadd.nomspc"
style="width: 100%"
placeholder="请选择金额限额表述"
:code="codes.nomspc"
disabled
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="生效日期(原)" prop="oldledgrp.rec.expdat">
<c-date-picker
type="date"
v-model="model.oldledgrp.rec.expdat"
style="width: 100%"
placeholder="请选择生效日期"
disabled
></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="生效日期(新)" prop="trnmod.swiadd.newexpdat">
<c-date-picker
type="date"
v-model="model.trnmod.swiadd.newexpdat"
style="width: 100%"
placeholder="请选择生效日期"
></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="13">
<el-form-item
label="交单期限"
prop="oldledgrp.rec.prepers18"
>
<c-input
v-model.number="model.oldledgrp.rec.prepers18"
placeholder="请输入交单期限(天)"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="11">
<el-form-item
label=""
label-width="5px"
prop="oldledgrp.rec.prepertxts18"
>
<c-input
v-model="model.oldledgrp.rec.prepertxts18"
maxlength="35"
placeholder="请输入"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="装船/发运地" prop="trnmod.swiadd.shpfro">
<c-input
v-model="model.trnmod.swiadd.shpfro"
maxlength="65"
placeholder="请输入装船/发运地"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item
label="空运/装货港"
prop="trnmod.swiadd.porloa"
>
<c-input
v-model="model.trnmod.swiadd.porloa"
maxlength="65"
placeholder="请输入空运/装货港"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item
label="空运/卸货港"
prop="trnmod.swiadd.pordis"
>
<c-input
v-model="model.trnmod.swiadd.pordis"
maxlength="65"
placeholder="请输入空运/卸货港"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="最终目的地" prop="trnmod.swiadd.shpto">
<c-input
v-model="model.trnmod.swiadd.shpto"
maxlength="65"
placeholder="请输入地址"
></c-input>
</el-form-item>
</c-col>
</c-col>
<!-- ======================= 右边 ========================= -->
<c-col :span="12" style="padding-left: 20px;">
<c-col :span="24">
<el-form-item label="简略信息" prop="ledgrp.rec.nam">
<c-input
text-align="middle"
v-model="model.ledgrp.rec.nam"
maxlength="40"
placeholder="请输入"
disabled
>
</c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item
label="收到修改日期"
prop="trnmod.swiadd.amenbr"
>
<c-input
v-model.number="model.trnmod.swiadd.amenbr"
style="width: 100%"
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="实际修改次数" prop="letamep.amenbr">
<c-input
v-model.number="model.letamep.amenbr"
placeholder="请输入实际修改次数"
style="width: 100%"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="12">
<c-col :span="17">
<el-form-item
label="浮动(+/-)"
prop="oldledgrp.rec.nomtop"
>
<c-input
v-model.number="model.oldledgrp.rec.nomtop"
placeholder="请输入上浮比例"
style="width: 100%"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="7">
<el-form-item
label=""
label-width="5px"
prop="oldledgrp.rec.nomton"
>
<c-input
v-model.number="model.oldledgrp.rec.nomton"
placeholder="请输入下浮比例"
style="width: 100%"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="12">
<el-form-item
label="最大金额"
prop="oldledgrp.cbs.max.amt"
>
<c-input
v-model="model.oldledgrp.cbs.max.amt"
placeholder="请输入金额"
style="width: 100%"
disabled
class="m-input-currency"
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="最大金额" prop="letamep.engamt">
<c-input
v-model="model.letamep.engamt"
placeholder="请输入金额"
disabled
class="m-input-currency"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="12">
<c-col :span="17">
<el-form-item
label="浮动(+/-)"
prop="trnmod.swiadd.newnomtop"
>
<c-input
v-model.number="model.trnmod.swiadd.newnomtop"
placeholder="请输入内容"
style="width: 100%"
@keyup.enter.native="$event.target.blur()"
></c-input>
</el-form-item>
</c-col>
<c-col :span="7">
<el-form-item
label=""
label-width="5px"
prop="trnmod.swiadd.newnomton"
>
<c-input
v-model.number="model.trnmod.swiadd.newnomton"
placeholder="请输入内容"
style="width: 100%"
@keyup.enter.native="$event.target.blur()"
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="12">
<el-form-item label="最大金额" prop="letamep.maxamt">
<c-input
v-model="model.letamep.maxamt"
placeholder="请输入金额"
disabled
class="m-input-currency"
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="装运日期(原)" prop="oldledgrp.rec.shpdat">
<c-date-picker
type="date"
v-model="model.oldledgrp.rec.shpdat"
style="width: 100%"
placeholder="请选择日期"
disabled
></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item
label="装运日期(新)"
prop="trnmod.swiadd.newshpdat"
>
<c-date-picker
type="date"
v-model="model.trnmod.swiadd.newshpdat"
style="width: 100%"
placeholder="请选择日期"
></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="装运期限" prop="trnmod.swiadd.shpper">
<c-input
type="textarea"
:rows="3"
v-model="model.trnmod.swiadd.shpper"
maxlength="390"
show-word-limit
placeholder="请输入内容"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="金额覆盖" prop="trnmod.swiadd.addamtcov">
<c-input
type="textarea"
:rows="4"
v-model="model.trnmod.swiadd.addamtcov"
maxlength="140"
show-word-limit
placeholder="请输入内容"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-col :span="5">
<c-checkbox v-model="model.letp.aamp.aammod.addamtflg"
disabled
>附加金额</c-checkbox
>
</c-col>
<c-col :span="7">
<el-form-item
label=""
label-width="7px"
prop="ledgrp.cbs.max2.cur"
width="100%"
>
<c-select
v-model="model.ledgrp.cbs.max2.cur"
maxlength="3"
placeholder="请输入附加金额"
:code="codes.cur"
disabled
></c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item
label=""
label-width="5px"
prop="trnmod.swiadd.addamt"
width="100%"
>
<c-input-currency
v-model="model.trnmod.swiadd.addamt"
placeholder="请输入金额"
></c-input-currency>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="12">
<c-checkbox v-model="model.letamep.benaccflg" class="checkbox-left" style="margin-left:120px"
>受益人接受修改</c-checkbox
>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.letamep.cre707flg" class="checkbox-left" style="margin-left:120px"
>创建修改报文707</c-checkbox
>
</c-col>
</c-col>
</c-col>
</div>
</template>
<script>
import event from '../event'
export default {
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {}
},
methods: {},
created: function () {},
}
</script>
<style>
.letame_amep_amt {
margin-left: 150px;
height: 16px;
color: #606266;
line-height: 16px;
font-size: 12px;
}
.letame_amed_nomtx {
margin-left: 20px;
height: 16px;
color: #606266;
line-height: 16px;
font-size: 12px;
}
.letame_amed_newnomtx {
margin-left: 20px;
height: 34px;
line-height: 34px;
color: #606266;
font-size: 12px;
}
</style>
<template>
<div class="eibs">
<c-row>
<!-- =========================================左边============================================= -->
<c-col :span="12" style="padding-right: 20px;">
<!-- Available with指定银行 -->
<c-col :span="24">
<el-form-item label="可用银行" prop="ledgrp.rec.avbwth">
<c-select
v-model="model.ledgrp.rec.avbwth"
style="width: 100%"
placeholder="请选择指定银行"
:code="codes.avbwth"
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptap
v-if="model.ledgrp.rec.avbwth!='O'"
:model="model"
:argadr="{
title: '',
grp: 'ledgrp',
rol: 'avb',
}"
:noRef="true"
:onlySearch="true"
>
</c-ptap>
</c-col>
<c-col :span="24">
<el-form-item label="" prop="ledgrp.blk.avbwthtxt">
<c-input
type="textarea"
:rows="3"
v-model="model.ledgrp.blk.avbwthtxt"
maxlength="140"
show-word-limit
placeholder="请输入名称地址"
:disabled="model.ledgrp.rec.avbwth!='O'"
></c-input>
</el-form-item>
</c-col>
<!--Available by 兑付方式 -->
<c-col :span="24">
<el-form-item label="兑付方式" prop="ledgrp.rec.avbby">
<c-select
v-model="model.ledgrp.rec.avbby"
style="width: 100%"
placeholder="请选择兑付方式"
:code="codes.avbby0"
>
</c-select>
</el-form-item>
</c-col>
<!-- 远期付款指示 延期付款指示-->
<c-col :span="24">
<el-form-item label="议付/延期付款指示" prop="ledgrp.blk.defdet">
<c-input
type="textarea"
:rows="3"
v-model="model.ledgrp.blk.defdet"
maxlength="140"
show-word-limit
placeholder="请输入指示内容"
></c-input>
</el-form-item>
</c-col>
<!-- Drafts at 汇票期限 -->
<c-col :span="24">
<el-form-item label="汇票期限" prop="ledgrp.blk.dftat">
<c-fullbox>
<c-input
type="textarea"
:rows="3"
v-model="model.ledgrp.blk.dftat"
maxlength="105"
show-word-limit
placeholder="请输入汇票期限"
></c-input>
<template slot="footer">
<!-- @click="onLcrdftatButtxmsel" -->
<c-button
size="small"
type="primary"
icon="el-icon-search"
@click="showGridPromptDialog('letp.lcrdftat.buttxmsel', null, null,{TXT: 'ledgrp.blk.dftat'}, {TXT: false},'doxpDialog')"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<!--Drawee 付款人 -->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '汇票付款人',
grp: 'ledgrp',
rol: 'drw',
}"
:noRef="true"
:onlySearch="false"
:isAdrblk="false"
:haveAdrLabel="false"
>
</c-ptap>
</c-col>
<!-- Dispatch from 货物转运地(港) -->
<c-col :span="24">
<el-form-item label="装船/发运地" prop="ledgrp.rec.shpfro">
<c-input
type="textarea"
show-word-limit
v-model="model.ledgrp.rec.shpfro"
maxlength="65"
placeholder="请输入地址"
></c-input>
</el-form-item>
</c-col>
<!-- Air-/Port of Departure 始发航空站/港口-->
<c-col :span="24">
<el-form-item label="始发(航空)站" prop="ledgrp.rec.porloa">
<c-input
type="textarea"
v-model="model.ledgrp.rec.porloa"
maxlength="65"
show-word-limit
placeholder="请输入"
></c-input>
</el-form-item>
</c-col>
<!-- Air-/Port of Destination 目的航空站/港口-->
<c-col :span="24">
<el-form-item label="终点(航空)站" prop="ledgrp.rec.pordis">
<c-input
type="textarea"
v-model="model.ledgrp.rec.pordis"
maxlength="65"
show-word-limit
placeholder="请输入"
></c-input>
</el-form-item>
</c-col>
<!-- 最终目的地 最终目的地-->
<c-col :span="24">
<el-form-item label="最终目的地" prop="ledgrp.rec.shpto">
<c-input
type="textarea"
v-model="model.ledgrp.rec.shpto"
maxlength="65"
show-word-limit
placeholder="最终目的地"
></c-input>
</el-form-item>
</c-col>
<!-- Shipment Period 装运期-->
<c-col :span="24">
<el-form-item label="装运期限" prop="ledgrp.blk.shpper">
<c-input
type="textarea"
v-model="model.ledgrp.blk.shpper"
maxlength="65"
show-word-limit
placeholder="请输入装运期"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
<!-- =========================================右边============================================= -->
<c-col :span="12" style="padding-left: 20px;">
<!-- Mixed Payment Details混合付款指示 -->
<c-col :span="24">
<el-form-item label="混合付款指示" prop="ledgrp.blk.mixdet">
<c-input
type="textarea"
:rows="4"
v-model="model.ledgrp.blk.mixdet"
maxlength="140"
show-word-limit
placeholder="混合付款指示"
:disabled="model.ledgrp.rec.avbby != 'M'"
></c-input>
</el-form-item>
</c-col>
<!-- 交单期限 Days of presentation period-->
<c-col :span="24">
<el-form-item label="交单期限" prop="ledgrp.rec.prepers18">
<c-fullbox>
<c-input
v-model="model.ledgrp.rec.prepers18"
placeholder="请输入交单期限(天)"
></c-input>
<template slot="footer">
<!-- @click="onPreperButtxmsel" -->
<c-button
size="small"
type="primary"
icon="el-icon-search"
@click="showGridPromptDialog('letp.preper.buttxmsel', null, null,{TXT: 'ledgrp.rec.prepers18'}, {TXT: false},'doxpDialog')"
disabled
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<!-- Days of presentation period -->
<c-col :span="24">
<el-form-item label="" prop="ledgrp.rec.prepertxts18">
<c-input
v-model="model.ledgrp.rec.prepertxts18"
maxlength="35"
placeholder="请输入"
></c-input>
</el-form-item>
</c-col>
<!-- 附加收费详情 Additional Details to Charges -->
<c-col :span="24">
<el-form-item label="附加收费详情" prop="ledgrp.blk.feetxt">
<c-fullbox>
<c-input
type="textarea"
:rows="6"
v-model="model.ledgrp.blk.feetxt"
maxlength="210"
show-word-limit
placeholder="请输入附加收费详情"
></c-input>
<template slot="footer">
<!-- @click="onChariaButtxmsel" -->
<c-button
size="small"
type="primary"
icon="el-icon-more"
@click="showGridPromptDialog('letp.charia.buttxmsel', null, null,{TXT: 'ledgrp.blk.feetxt'}, {TXT: false},'doxpDialog')"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<!-- Own Charges Borne by费用状况 -->
<c-col :span="24">
<el-form-item label="收费条款" prop="ledgrp.rec.chato">
<c-select
v-model="model.ledgrp.rec.chato"
style="width: 100%"
placeholder="请选择"
:code="codes.chadet"
>
</c-select>
</el-form-item>
</c-col>
<!-- Country or region code 国家或地区代码-->
<c-col :span="24">
<el-form-item label="国家地区代码" prop="ledgrp.rec.stacty">
<c-select
v-model="model.ledgrp.rec.stacty"
style="width: 100%"
placeholder="请选择国家或地区代码"
:code="codes.ctytxt"
>
</c-select>
</el-form-item>
</c-col>
<!-- 付款期限 Maxinum Tenor-->
<c-col :span="24">
<el-form-item label="远期最大期限(天)" prop="ledgrp.rec.tenmaxday">
<c-input
v-model.number="model.ledgrp.rec.tenmaxday"
placeholder="请输入内容"
:disabled="model.ledgrp.rec.avbby == 'P'"
maxlength="4"
@keyup.enter.native="$event.target.blur()"
></c-input>
</el-form-item>
</c-col>
</c-col>
</c-row>
</div>
</template>
<script>
import event from '../event'
import Ptap from '~/views/Public/Ptap'
export default {
inject: ["root"],
components: { 'c-ptap': Ptap },
props: ["model", "codes"],
mixins: [event],
data() {
return {}
},
methods: {},
created: function () { },
}
</script>
<style>
.letame_rec_tenmaxday {
margin-left: 10px;
height: 16px;
color: #606266;
line-height: 16px;
font-size: 12px;
}</style>
<template>
<div class="eibs">
<c-col :span="12">
<el-form-item
label="历史货物描述信息"
prop="ledgrp.blk.lcrgodame"
>
<c-input
type="textarea"
v-model="model.ledgrp.blk.lcrgodame"
maxlength="50"
show-word-limit
placeholder="请输入历史货物描述信息"
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="货物描述" prop="ledgrp.blk.lcrgod">
<c-input
type="textarea"
v-model="model.ledgrp.blk.lcrgod"
maxlength="65"
show-word-limit
placeholder="请输入货物描述"
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item
label="在当前修订中添加/删除文本"
prop="letamep.lcrgodamep.usrblk"
>
<c-input
type="textarea"
v-model="model.letamep.lcrgodamep.usrblk"
maxlength="65"
show-word-limit
placeholder="请输入内容"
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.letamep.lcrgodamep.modflg"
>修改替换文本</c-checkbox
>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.letamep.lcrgodamep.modmanflg"
>人手修改文本</c-checkbox
>
</c-col>
<c-col :span="12">
<el-form-item label="..." prop="letamep.lcrgodame.buttxmsel">
<c-input
v-model="model.letamep.lcrgodame.buttxmsel"
placeholder="请输入..."
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<c-button size="small" type="primary" @click="onLcrgodamepButdif">
Show Diff
</c-button>
</c-col>
<c-col :span="12">
<c-button size="small" type="primary" @click="onLcrgodamepButadd">
添加文本
</c-button>
</c-col>
<c-col :span="12">
<c-button size="small" icon="el-icon-delete" @click="onLcrgodamepButdel">
删除文本
</c-button>
</c-col>
</div>
</template>
<script>
import event from '../event'
export default {
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {}
},
methods: {},
created: function () {},
}
</script>
<style></style>
<template>
<div class="eibs">
<c-col :span="12">
<el-form-item
label="历史单据要求"
prop="ledgrp.blk.lcrdocame"
>
<c-input
type="textarea"
v-model="model.ledgrp.blk.lcrdocame"
maxlength="50"
show-word-limit
placeholder="请输入历史单据要求"
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="单据要求" prop="ledgrp.blk.lcrdoc">
<c-input
type="textarea"
v-model="model.ledgrp.blk.lcrdoc"
maxlength="65"
show-word-limit
placeholder="请输入单据要求"
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item
label="阻止为添加/删除输入附加信息"
prop="letamep.lcrdocamep.usrblk"
>
<c-input
type="textarea"
v-model="model.letamep.lcrdocamep.usrblk"
maxlength="65"
show-word-limit
placeholder="请输入阻止为添加/删除输入附加信息"
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.letamep.lcrdocamep.modflg"
>修改要替换的文本</c-checkbox
>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.letamep.lcrdocamep.modmanflg"
>手动更新的修改字段</c-checkbox
>
</c-col>
<c-col :span="12">
<el-form-item label="..." prop="letamep.lcrdocame.buttxmsel">
<c-input
v-model="model.letamep.lcrdocame.buttxmsel"
placeholder="请输入..."
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<c-button size="small" type="primary" @click="onLcrdocamepButdif">
显示不符点
</c-button>
</c-col>
<c-col :span="12">
<c-button size="small" type="primary" @click="onLcrdocamepButadd">
添加文本
</c-button>
</c-col>
<c-col :span="12">
<c-button size="small" icon="el-icon-delete" @click="onLcrdocamepButdel">
删除文本
</c-button>
</c-col>
</div>
</template>
<script>
import event from '../event'
export default {
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {}
},
methods: {},
created: function () {},
}
</script>
<style></style>
<template>
<div class="eibs">
<span class="letame_amed_amt">给付款、承兑、议付行的指示</span>
<c-col :span="24">
<el-form-item label=" ">
</el-form-item>
</c-col>
<c-col :span="20">
<el-form-item
label="原始文本"
prop="ledgrp.blk.insbnk"
>
<c-input
type="textarea"
v-model="model.ledgrp.blk.insbnk"
maxlength="780"
:rows="20"
show-word-limit
placeholder="请输指示内容"
></c-input>
</el-form-item>
</c-col>
</div>
</template>
<script>
import event from '../event'
export default {
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {}
},
methods: {},
created: function () {},
}
</script>
<style>
.letame_amed_amt {
margin-left: 30px;
height: 16px;
color: #606266;
line-height: 16px;
font-size: 12px;
}</style>
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames">
<el-collapse-item title="修改内容" name="amep">
<m-amep :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="附加金额" name="aamp" v-if="model.letp.aamp.aammod.addamtflg">
<m-aamp :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="概览信息" name="ovwp1">
<m-ovwp1 :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="详细信息" name="detp">
<m-detp :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="当事人信息" name="ptyp">
<m-ptyp :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="附加条款" name="adcpame">
<m-doxpame
:model="model"
:codes="codes"
:recgrp="'ledgrp'"
:ametyp="'lcrgod'"
/>
</el-collapse-item>
<el-collapse-item title="银行专用特殊付款条款(修改)" name="sprpame" v-if="model.ledgrp.rec.spcrcbflg">
<m-doxpame
:model="model"
:codes="codes"
:recgrp="'ledgrp'"
:ametyp="'spcrcb'" />
</el-collapse-item>
<el-collapse-item title="受益人特殊付款条款(修改)" name="spbpame" v-if="model.ledgrp.rec.spcbenflg">
<m-doxpame
:model="model"
:codes="codes"
:recgrp="'ledgrp'"
:ametyp="'spcben'" />
</el-collapse-item>
<el-collapse-item title="单据修改" name="dorpame">
<m-doxpame
:model="model"
:codes="codes"
:recgrp="'ledgrp'"
:ametyp="'lcrgod'"
/>
</el-collapse-item>
<el-collapse-item title="货物修改" name="dogpame">
<m-doxpame
:model="model"
:codes="codes"
:recgrp="'ledgrp'"
:ametyp="'lcrgod'"
/>
</el-collapse-item>
<el-collapse-item title="给付款、承兑、议付行的指示" name="inspame">
<m-inspame :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="循环信用证详情" name="revp">
<m-revp :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="MT 742 Reimbursement Clain" name="rcldetp" v-if="model.ledgrp.rmb.rolsetflg=='Y'">
<m-rcldetp :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import event from '../event'
import Amep from "./Amep";
import Aamp from "./Aamp";
import Ovwp1 from "./Ovwp1";
import Detp from "./Detp";
import Ptyp from "./Ptyp";
import Doxpame from "~/views/Public/Doxpame";
import Inspame from "./Inspame";
import Revp from './Revp';
import Rcldetp from "./Rcldetp";
export default {
inject: ["root"],
components: {
"m-amep": Amep,
"m-aamp": Aamp,
"m-ovwp1": Ovwp1,
"m-detp": Detp,
"m-ptyp": Ptyp,
"m-doxpame": Doxpame,
"m-inspame": Inspame,
'm-revp': Revp,
"m-rcldetp" : Rcldetp,
},
props: ["model", "codes"],
mixins: [event],
data(){
return {
activeNames: ["amep"],
}
},
methods: {},
created: function () {},
}
</script>
<style>
</style>
<template>
<div class="eibs">
<!-- =================顶部====================== -->
<c-row>
<c-col :span="24">
<c-col :span="12" style="padding-right: 20px;">
<el-form-item
label="信用证编号"
prop="ledgrp.rec.ownref"
style="width: 100%"
>
<c-fullbox>
<c-input
v-model="model.ledgrp.rec.ownref"
maxlength="16"
placeholder="请输入编号"
style="width: 95%"
:disabled="true"
>
</c-input>
<template slot="footer">
<c-button
style="margin: 0 10px 0 0; padding: 0 12px"
size="small"
type="primary"
>
<i class="el-icon-info" style="font-size:15px"></i>
</c-button>
<c-button
style="margin: 0 0"
size="small"
type="primary"
:disabled="
model.ledgrp.ben.pts.adrblk && !model.ledgrp.rec.ownref
? false
: true
"
>
获取
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="12" style="padding-left: 20px;">
<el-form-item label="摘要" prop="ledgrp.rec.nam">
<c-input
text-align="middle"
v-model="model.ledgrp.rec.nam"
maxlength="40"
placeholder="请输入"
disabled
>
</c-input>
</el-form-item>
</c-col>
</c-col>
</c-row>
<!-- ====================左边======================= -->
<c-col :span="12" style="padding-right: 20px;">
<!-- Form of L/C -->
<c-col :span="24">
<el-form-item label="信用证类型" prop="ledgrp.rec.lcrtyp">
<c-select
v-model="model.ledgrp.rec.lcrtyp"
style="width: 100%"
placeholder="请选择类型"
:code="codes.lcrtyp"
>
</c-select>
</el-form-item>
</c-col>
<!-- Responsible user 所属客户经理-->
<c-col :span="24">
<el-form-item label="客户经理" prop="letp.usr.extkey">
<c-fullbox>
<c-input v-model="model.letp.usr.extkey" maxlength="8" placeholder="请输入" disabled></c-input>
<template slot="footer">
<c-button style="margin-left:10px;padding: 0 10px;" size="small" icon="el-icon-search" type="primary"
></c-button>
<c-checkbox :disabled="true" style="margin-left:5px;" v-model="model.ledgrp.rec.collflg">Collateralized L/C</c-checkbox>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<!-- Nominal Amount 信用证金额-->
<c-col :span="24">
<c-col :span="12">
<el-form-item label="信用证金额" prop="ledgrp.cbs.nom1.cur">
<c-select v-model="model.ledgrp.cbs.nom1.cur" style="width: 100%" placeholder="请选择币种"
:code="codes.curtxt1"
disabled>
</c-select>
</el-form-item>
</c-col>
<c-col :span="7">
<el-form-item label="" label-width="5px" prop="ledgrp.cbs.nom1.amt">
<c-input-currency v-model="model.ledgrp.cbs.nom1.amt" style="text-align: left; width: 95%"
placeholder="请输入" @keyup.enter.native="$event.target.blur()"
disabled></c-input-currency>
<!-- @keyup.enter.native="$event.target.blur()" :回车触发失去焦点发生的事件 -->
<!-- <c-input-currency v-model="model.ledgrp.cbs.nom1.amt" style="text-align: left; width: 100%"
placeholder="请输入"></c-input-currency> -->
</el-form-item>
</c-col>
<c-col :span="5">
<c-checkbox v-model="model.letp.aamp.aammod.addamtflg" style="margin-left:-1px;"
disabled>附加金额</c-checkbox>
</c-col>
</c-col>
<!-- 金额浮动 Amount Tolerance +/- -->
<c-col :span="24">
<c-col :span="12">
<c-form-item label="金额浮动" prop="ledgrp.rec.nomtop">
<c-input v-model.number="model.ledgrp.rec.nomtop" maxlength="2" style="width: 100%"
placeholder="请输入上浮比例"
class="m-input-currency"
@keyup.enter.native="$event.target.blur()"
disabled></c-input>
</c-form-item>
</c-col>
<c-col :span="7">
<el-form-item label="" label-width="5px" prop="ledgrp.rec.nomton">
<c-input v-model.number="model.ledgrp.rec.nomton" maxlength="2" style="width: 95%"
placeholder="请输入下浮比例"
@keyup.enter.native="$event.target.blur()"
class="m-input-currency"
disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="5">
<!-- <c-checkbox v-model="model.ledgrp.preadvflg" style="margin-left:10px;">预先通知</c-checkbox> -->
</c-col>
</c-col>
<!-- Amount Specification 适用金额规范-->
<c-col :span="24">
<c-col :span="19">
<el-form-item label="金额限额表述" prop="ledgrp.rec.nomspc">
<c-select v-model="model.ledgrp.rec.nomspc" style="width: 97%" placeholder="请选择适用金额规范"
:code="codes.nomspc" disabled>
</c-select>
</el-form-item>
</c-col>
<!-- Incoming Transfer -->
<c-col :span="5">
<c-checkbox v-model="model.ledgrp.rec.inctrf" disabled>Incoming Transfer</c-checkbox>
</c-col>
</c-col>
<!-- Maximum Amount 信用证最大金额-->
<c-col :span="24">
<c-col :span="12">
<el-form-item label="最大金额" prop="ledgrp.cbs.max.cur">
<c-select
v-model="model.ledgrp.cbs.max.cur"
style="width: 100%"
placeholder="请选择币种"
:code="codes.curtxt1"
disabled
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="ledgrp.cbs.max.amt">
<c-input
disabled
v-model="model.ledgrp.cbs.max.amt"
placeholder="请输入最大金额"
class="m-input-currency"
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<!-- Issued on开证日期 Date Pre-advised 预通知日期-->
<c-col :span="12">
<el-form-item label="开证日期" prop="ledgrp.rec.opndat">
<c-date-picker type="date" v-model="model.ledgrp.rec.opndat" style="width: 100%" value-format="yyyy-MM-dd"
placeholder="请选择开证日期">
</c-date-picker>
</el-form-item>
</c-col>
<c-col :span="11" :offset="1">
<el-form-item label="预通知日期" label-width="120px" prop="ledgrp.rec.preadvdt">
<c-date-picker type="date" v-model="model.ledgrp.rec.preadvdt" style="width: 100%" value-format="yyyy-MM-dd" placeholder="请选择日期" disabled>
</c-date-picker>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<!-- Shipment Date 装运日期 -->
<c-col :span="12">
<el-form-item label="装运日期" prop="ledgrp.rec.shpdat">
<c-date-picker type="date" v-model="model.ledgrp.rec.shpdat" style="width: 100%" placeholder="请选择装运日期" value-format="yyyy-MM-dd">
</c-date-picker>
</el-form-item>
</c-col>
<c-col :span="11" :offset="1">
<el-form-item label="复核日期" label-width="120px" prop="ledgrp.rec.advdat">
<c-date-picker disabled type="date" v-model="model.ledgrp.rec.advdat" style="width: 100%" placeholder="请选择通知日期" value-format="yyyy-MM-dd">
</c-date-picker>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<!--Expiring on 到期日 -->
<c-col :span="24">
<el-form-item label="生效日期" prop="ledgrp.rec.expdat">
<c-date-picker
type="date"
v-model="model.ledgrp.rec.expdat"
style="width: 100%"
disabled
placeholder="请选择到期日"
value-format="yyyy-MM-dd"
></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="12"></c-col>
</c-col>
<!-- in (Place)/counters of有效地点 -->
<c-col :span="24">
<el-form-item label="生效地点" prop="ledgrp.rec.expplc">
<c-input
v-model="model.ledgrp.rec.expplc"
maxlength="29"
placeholder="有效地点"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="保兑指示" prop="ledgrp.rec.cnfdet">
<c-select
v-model="model.ledgrp.rec.cnfdet"
style="width: 100%"
placeholder="请选择指示"
:code="codes.cnfins"
disabled
>
</c-select>
</el-form-item>
</c-col>
<!--Applicable Rules 适用规则 -->
<c-col :span="24">
<el-form-item label="适用规则" prop="ledgrp.rec.apprul">
<c-select
v-model="model.ledgrp.rec.apprul"
style="width: 100%"
placeholder="请选择适用规则"
:code="codes.apprul1"
>
</c-select>
</el-form-item>
</c-col>
<!-- 其他规则 -->
<c-col :span="24">
<el-form-item label="其他适用规则" prop="ledgrp.rec.apprultxt">
<c-input
v-model="model.ledgrp.rec.apprultxt"
maxlength="35"
placeholder="请输入其他规则"
:disabled="model.ledgrp.rec.apprul === 'OTHR' ? false : true"
></c-input>
</el-form-item>
</c-col>
<!--Partial Shipment 分批装运 -->
<c-col :span="24">
<el-form-item label="分批装运" prop="ledgrp.rec.shppar">
<c-select
v-model="model.ledgrp.rec.shppar"
style="width: 100%"
placeholder="请选择分批装运"
:code="codes.shptrss18"
>
</c-select>
</el-form-item>
</c-col>
<!--Transshipment 转运 -->
<c-col :span="24">
<el-form-item label="转运" prop="ledgrp.rec.shptrss18">
<c-select
v-model="model.ledgrp.rec.shptrss18"
style="width: 100%"
placeholder="请选择转运"
:code="codes.shptrss18"
>
</c-select>
</el-form-item>
</c-col>
</c-col>
<!-- ========================右边======================= -->
<c-col :span="12" style="padding-left: 20px;">
<!--Beneficiary Ref. 受益人 -->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '受益人',
grp: 'ledgrp',
rol: 'ben',
}"
:disabled="true"
>
</c-ptap>
</c-col>
<!-- 开证行 Issuer Ref.-->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '开证行',
grp: 'ledgrp',
rol: 'iss',
}"
:disabled="true"
>
</c-ptap>
</c-col>
<!--Applicant Ref. 申请人 -->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '申请人',
grp: 'ledgrp',
rol: 'apl',
}"
:disabled="true"
>
</c-ptap>
</c-col>
<c-col :span="12">
<c-checkbox v-model="model.ledgrp.rec.revflg" class="checkbox-left" style="margin-left:120px"
>循环信用证</c-checkbox
>
</c-col>
<!-- Authorization to Debit 借记授权书-->
<c-col :span="12">
<c-checkbox v-model="model.ledgrp.rec.dbtflg" class="checkbox-left" style="margin-left:120px">Authorization to Debit</c-checkbox>
</c-col>
<!-- Non-Bank Issuer 非银行发行人-->
<c-col :span="12">
<c-checkbox v-model="model.ledgrp.rec.nonban" class="checkbox-left" style="margin-left:120px"
>非银行发行人</c-checkbox
>
</c-col>
<!-- Test Key Unconfirmity 测试密钥-->
<c-col :span="12">
<c-checkbox v-model="model.ledgrp.rec.teskeyunc" class="checkbox-left" style="margin-left:120px">Test Key Unconfirmity</c-checkbox>
</c-col>
</c-col>
</div>
</template>
<script>
import event from '../event'
import Ptap from "~/views/Public/Ptap";
export default {
inject: ["root"],
components: { "c-ptap": Ptap },
props: ["model", "codes"],
mixins: [event],
data() {
return {}
},
methods: {},
created: function () {},
}
</script>
<style>
</style>
<template>
<div class="eibs">
<c-row>
<!-- =================================左边================================= -->
<c-col :span="12" style="padding-right: 20px;">
<!-- 第一通知行 第一通知行-->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '第一通知行',
grp: 'ledgrp',
rol: 'adv',
}"
:disabledRef="true"
:disabledExtkey="true"
:disabled="true"
>
</c-ptap>
</c-col>
<!-- 第二通知行 第二通知行-->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '第二通知行',
grp: 'ledgrp',
rol: 'a2b',
}"
>
</c-ptap>
</c-col>
<!-- Confirm. Instruct.第二通知行确认指令 -->
<c-col :span="24">
<el-form-item label="第二通知行确认指令" prop="ledgrp.rec.cnfins">
<c-select
v-model="model.ledgrp.rec.cnfins"
style="width: 100%"
placeholder="第二通知行确认指令"
:code="codes.cnfflg1"
:disabled="model.ledgrp.a2b.pts.extkey==''"
>
</c-select>
</el-form-item>
</c-col>
</c-col>
<!-- ========================右边======================= -->
<c-col :span="12" style="padding-right: 20px;">
<!-- Applicant's Bank 申请银行-->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '申请人银行',
grp: 'ledgrp',
rol: 'apb',
}"
>
</c-ptap>
</c-col>
<!-- Send Directly to Applicant's Bank 直接发送至申请银行-->
<el-form-item label="" prop="" class="checkbox-left">
<c-checkbox v-model="model.ledgrp.rec.aplbnkdirsnd"
disabled
>直接发送至申请人银行</c-checkbox
>
</el-form-item>
<!-- Reimbursement Bank偿付银行 -->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '偿付银行',
grp: 'ledgrp',
rol: 'rmb',
}"
>
</c-ptap>
</c-col>
<!-- Confirmation Bank 保兑行-->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '保兑银行',
grp: 'ledgrp',
rol: 'con',
}"
:disabledRef="true"
:disabledExtkey="true"
:onlySearch="true"
>
</c-ptap>
</c-col>
<c-col :span="24">
<el-form-item label="" prop="ledgrp.con.pts.nam">
<c-input
v-model="model.ledgrp.con.pts.nam"
maxlength="40"
placeholder="请输入名称"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
<!-- =============================底部表格========================= -->
<c-edit-table :model="model" v-bind="ptsaddg">
<el-table-column label="操作" text-align="center">
<template slot-scope="scope">
<el-button
size="mini"
@click="handleEdit(scope.$index, scope.row)"
type="primary"
>详情</el-button
>
</template>
</el-table-column>
</c-edit-table>
</c-row>
</div>
</template>
<script>
import event from '../event'
import Ptap from "~/views/Public/Ptap"
export default {
inject: ["root"],
components: { "c-ptap": Ptap },
props: ["model", "codes"],
mixins: [event],
data() {
return {
ptsaddg: {
columns: [
{
title: "角色",
width: "120px",
dataIndex: "rol",
show: "select",
},
{
title: "机构实体",
width: "180px",
dataIndex: "ptyextkey",
show: "input",
},
{
title: "名称",
width: "300px",
dataIndex: "nam",
},
{
title: "参考地址",
width: "300px",
dataIndex: "ref",
},
],
urls: "letp.ptsaddp.ptsaddg",
},
};
},
methods: {},
created: function () {},
}
</script>
<style></style>
<template>
<div class="eibs">
<!-- ==========================左半边================================== -->
<c-col :span="12" style="padding-right: 20px;">
<!-- SF000021 : 偿付行 -->
<c-col :span="24">
<el-form-item label="偿付银行" prop="rmbclm.rmbrol">
<c-select
v-model="model.rmbclm.rmbrol"
style="width: 100%"
placeholder="请选择"
:code="codes.rolall"
@change="selectOrCheckboxRule('rmbclm.rmbrol')"
>
</c-select>
</el-form-item>
</c-col>
<!-- SF000020 : 编号 Reference for Address Optional -->
<c-col :span="24">
<c-form-item label="偿付行参考号" prop="rmbclm.rmbrmb.pts.ref">
<c-input
v-model="model.rmbclm.rmbrmb.pts.ref"
maxlength="16"
placeholder="请输入参考号"
:disabled="rmbrolRefFlag"
></c-input>
</c-form-item>
</c-col>
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '',
grp: 'rmbclm',
rol: 'rmbrmb',
}"
:noRef="true"
:disabledExtkey="rmbrolRefFlag"
:disabled="rmbrolAdrblkFlag"
>
</c-ptap>
</c-col>
<!-- SF000011 : Account with Bank -->
<!-- SF000018 : 编号 -->
<c-col :span="24">
<c-form-item
label="账户行参考号"
prop="rmbclm.acwacw.pts.ref"
>
<c-input
v-model="model.rmbclm.acwacw.pts.ref"
maxlength="16"
placeholder="请输入"
></c-input>
</c-form-item>
</c-col>
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '',
grp: 'rmbclm',
rol: 'acwacw',
}"
:noRef="true"
>
</c-ptap>
</c-col>
<!-- SF000016 : Beneficiary Bank -->
<!-- SF000019 : 编号 -->
<c-col :span="24">
<c-form-item
label="受益人银行参考号"
prop="rmbclm.bebbeb.pts.ref"
>
<c-input
v-model="model.rmbclm.bebbeb.pts.ref"
maxlength="16"
placeholder="请输入"
></c-input>
</c-form-item>
</c-col>
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '',
grp: 'rmbclm',
rol: 'bebbeb',
}"
:noRef="true"
>
</c-ptap>
</c-col>
<!-- SG000133 : value date -->
<c-col :span="24">
<el-form-item label="起息日" prop="rmbclm.valdat">
<c-date-picker
type="date"
value-format="yyyy-MM-dd"
v-model="model.rmbclm.valdat"
style="width: 100%"
placeholder="请选择"
></c-date-picker>
</el-form-item>
</c-col>
</c-col>
</div>
</template>
<script>
import event from '../event'
import Ptap from '~/views/Public/Ptap'
export default {
inject: ["root"],
components: { 'c-ptap': Ptap },
props: ["model", "codes"],
mixins: [event],
data() {
return {}
},
methods: {},
created: function () {},
}
</script>
<style></style>
<template>
<div class="eibs">
<c-row>
<c-col :span="12" style="padding-right: 20px;">
<el-form-item label="循环信用证信息"></el-form-item>
</c-col>
</c-row>
<c-row>
<c-col :span="12" style="padding-right: 20px;">
<el-form-item label="循环信用证类型" prop="ledgrp.rec.revtyp">
<c-select
v-model="model.ledgrp.rec.revtyp"
style="width: 100%"
placeholder="请选择类型"
:code="codes.revtyp"
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="8">
<!-- Credit is Marked as Cumulative -->
<c-checkbox v-model="model.ledgrp.rec.revcum" class="checkbox-left"
style="margin-left:10px"
>累计标识</c-checkbox
>
</c-col>
</c-row>
<c-row>
<c-col :span="12" style="padding-right: 20px;">
<c-col :span="12">
<el-form-item label="循环时间" prop="ledgrp.rec.revtimes">
<c-input
v-model.number="model.ledgrp.rec.revtimes"
placeholder="请输入时间"
></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="循环次数" prop="ledgrp.rec.revnbr">
<c-input
v-model.number="model.ledgrp.rec.revnbr"
placeholder="请输入内容"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
</c-row>
<c-row>
<c-col :span="12" style="padding-right: 20px;">
<el-form-item label="下次循环日期" prop="ledgrp.rec.revdat">
<c-date-picker
type="date"
v-model="model.ledgrp.rec.revdat"
style="width: 100%"
placeholder="请选择日期"
value-format="yyyy-MM-dd"
></c-date-picker>
</el-form-item>
</c-col>
</c-row>
<c-row>
<c-col :span="12" style="padding-right: 20px;">
<el-form-item label="循环条款" prop="ledgrp.blk.revcls">
<c-fullbox>
<c-input
type="textarea"
v-model="model.ledgrp.blk.revcls"
maxlength="390"
:rows="5"
show-word-limit
placeholder="请输入内容"
></c-input>
<template slot="footer">
<!-- @click="onRevclauseButtxmsel" -->
<c-button
size="small"
type="primary"
icon="el-icon-more"
@click="showGridPromptDialog('letp.revclause.buttxmsel', null, null,{TXT: 'ledgrp.blk.revcls'}, {TXT: false},'doxpDialog')"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
</c-row>
<c-row>
<c-col :span="12" style="padding-right: 20px;">
<el-form-item label="受益人须知" prop="ledgrp.blk.revnotes">
<c-input
type="textarea"
v-model="model.ledgrp.blk.revnotes"
maxlength="210"
:rows="5"
show-word-limit
placeholder="请输入内容"
></c-input>
</el-form-item>
</c-col>
</c-row>
</div>
</template>
<script>
import event from '../event'
export default {
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {}
},
methods: {},
created: function () {},
}
</script>
<style></style>
<template>
<div class="eContainer">
<c-page title="出口信用证修改">
<el-form :model="model" :rules="rules" ref="modelForm" label-width="120px" label-position="right" size="small"
:validate-on-rule-change="false">
<c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="tabClick">
<el-tab-pane label="业务信息" name="ovwp">
<c-content>
<m-ovwp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<el-tab-pane label="统一授信" name="limitbody">
<c-content>
<m-limitbody :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="表外记账" name="engp">
<c-content>
<!-- 表外记账 -->
<m-engp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="费用/账务" name="setmod">
<c-content>
<m-setmod :model="model" :codes="codes" @changeSetmodModel="changeSetmodModel" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="会计分录" name="glepan">
<c-content>
<m-glentry :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<el-tab-pane label="备查/附言" name="addbcb">
<c-content>
<m-addbcb :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000529 报文及面函-->
<el-tab-pane label="报文/面函" name="docpan">
<c-content>
<m-docpan :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000546 附件-->
<el-tab-pane label="附件信息" name="doctre">
<c-content>
<m-doctre :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
</c-tabs>
</el-form>
<c-function-btn :handleSubmit="handleSubmit" :handleCheck="handleCheck" :handleStash="handleStash">
</c-function-btn>
</c-page>
</div>
</template>
<script>
import event from '../event';
import operationFunc from "~/mixin/operationFunc";
import CodeTable from "~/config/CodeTable";
import formRules from '../model/check';
import Letame from "../model";
import Amep from './Amep';
import Ovwp from './Ovwp';
import Detp from './Detp';
import Aamp from './Aamp';
import Ptyp from './Ptyp';
import Ovwp1 from './Ovwp1';
import Inspame from './Inspame';
import Addbcb from "./Addbcb";
// import Doxpame from "~/components/business/doxpame/views";
import Engp from "~/components/business/engp/views";
// import Setpan from "~/components/business/setpan/views";
// import Glepan from "~/components/business/glepan/views";
import Coninfp from "~/components/business/coninfp/views";
import Docpan from "~/components/business/docpan/views";
import Doctre from "~/components/business/doctre/views";
import Limitbody from "~/components/business/limitbody/views";
export default {
name: 'Letame',
components: {
'm-amep': Amep,
'm-ovwp': Ovwp,
'm-ovwp1': Ovwp1,
'm-detp': Detp,
'm-aamp': Aamp,
"m-addbcb": Addbcb,
'm-ptyp': Ptyp,
// "m-doxpame": Doxpame,
'm-inspame': Inspame,
'm-engp': Engp,
// 'm-setpan': Setpan,
// 'm-glepan': Glepan,
'm-coninfp': Coninfp,
'm-docpan': Docpan,
'm-doctre': Doctre,
'm-limitbody': Limitbody,
},
provide() {
return {
root: this,
}
},
mixins: [event, operationFunc],
data() {
return {
tabVal: 'ovwp',
trnName: 'letame',
model: new Letame().data,
rules: formRules,
codes: {
...CodeTable
},
activeNames: ["setpan"],
}
},
methods: {
},
mounted() {
this.init()
},
}
</script>
<style></style>
export default {
buildPtspta (ptsptaObj) {
let pts = ptsptaObj.pts;
let ptspta = {
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
};
return ptspta;
},
buildCommonData (model, trnName) {
let ptsptaList = [];
if (model.brdgrp.apl.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.apl));
}
if (model.brdgrp.ben.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.ben));
}
let dataObj = {
rec: {
objtyp: 'lid',
ownref: model.brdgrp.rec.ownref,
opndat: model.brdgrp.rec.opndat,
expdat: model.brdgrp.rec.expdat,
branchInr: model.brdgrp.rec.branchInr,
hndtyp: model.brdgrp.rec.hndtyp,
gartyp: model.brdgrp.rec.gartyp,
fingua: model.brdgrp.rec.fingua,
fromflg: model.brdgrp.rec.fromflg,
othersno: model.brdgrp.rec.othersno,
sndto: model.brdgrp.rec.sndto,
swiftflg: model.brtp.swiftflg,
brduil: model.brdgrp.rec.brduil,
purpos: model.brdgrp.rec.purpos,
revflg: model.brdgrp.rec.revflg,
cnfsta: model.brdgrp.rec.cnfsta,
},
cbsMap: {
MAX: model.brdgrp.cbs.max,
OPN1: model.brdgrp.cbs.opn1,
MAC: model.brdgrp.cbs.mac,
MAC2: model.brdgrp.cbs.mac2,
OPC2: model.brdgrp.cbs.opc2,
CNF: model.brdgrp.cbs.cnf,
},
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : 'ZL'
};
return dataObj
},
buildSetfeg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaall: model.liaall,
liaccv: model.liaccv,
// doceot: model.trnmod.trndoc.doceot,
};
return params
},
buildSetglg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
setfeg: model.setmod.setfeg,
liaall: model.liaall,
liaccv: model.liaccv,
};
return params
},
buildGlentry (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
setfog: model.setmod.setfog,
setfeg: model.setmod.setfeg,
setglg: model.setmod.setglg,
};
return params
},
buildEngp (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
};
return params
},
buildDocpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
};
return params
},
buildCcvpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaccvg: model.liaccv.liaccvg,
oldamt: model.liaccv.oldamt,
chgamt: model.liaccv.chgamt,
concur: model.liaccv.concur,
};
return params
},
buildLimitbody (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'GID',
objinr: model.gidgrp.rec.objinr,
ownref: model.gidgrp.rec.ownref,
},
};
return params
},
buildDoctre (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'lid',
objinr: model.brdgrp.rec.objinr,
ownref: model.brdgrp.rec.ownref,
swiftflg: model.brtp.swiftflg,
},
};
return params
},
// 公共组件setmod中dsp字段改变,触发联动时候的入参
buildSetgllAccts (model, trnName, setglg) {
let params = {
...this.buildCommonData(model, trnName),
setglg
};
return params
}
}
import Api from '~/service/Api';
import commonFunctions from '~/mixin/commonFunctions.js';
import buildFn from './buildCommons.js';
import setmod from '~/components/business/setmod/event';
import glentry from '~/components/business/glentry/event';
import engp from '~/components/business/engp/event';
import docpan from '~/components/business/docpan/event';
import ccvpan from '~/components/business/ccvpan/event';
import limitbody from '~/components/business/limitbody/event';
import doctre from '~/components/business/doctre/event';
import Utils from "~/utils"
export default {
mixins: [commonFunctions],
methods: {
...setmod,
...glentry,
...engp,
...docpan,
...ccvpan,
...limitbody,
...doctre,
async init () {
const params = {
spt: JSON.parse(localStorage.getItem('row_' + this.trnName))
}
const res = await Api.post('/service/letcan/init', {
...params,
transName: this.trnName,
userId: window.sessionStorage.userId || 'ZL',
brdgrp:{
rec:{
inr:this.$route.query.inr
}
}
});
if (!res.data) {
return
}
this.copyValueFromVoData(this.model, res.data)
this.copyValueFromVoData(this.model.setmod.setfeg, res.data.setfeg)
this.copyValueFromVoData(this.model.setmod.setfog, res.data.setfog)
this.copyValueFromVoData(this.model.setmod.setglg, res.data.setglg)
},
// 兼容处理在前端model中定义了字段,后端返回的数据中不存在字段的问题
copyValueFromVoData (model, data) {
let keysList = Object.keys(model)
keysList.map((key) => {
if (data[key]) {
if (Utils.typeOf(model[key]) === 'Object') {
this.copyValueFromVoData(model[key], data[key])
} else {
this.$set(model, key, data[key])
}
}
})
},
async tabClick(tab) {
if (this.isInDisplay) {
return;
}
let name = tab.name;
switch (name) {
case 'ccvpan':
let ccvpanRequest = buildFn.buildCcvpan(this.model, this.trnName);
this.processLiaccv(ccvpanRequest);
break;
case 'engp':
let engpRequest = buildFn.buildEngp(this.model, this.trnName);
this.processLiaall(engpRequest);
break;
case 'setmod':
let setfegRequest = buildFn.buildSetfeg(this.model, this.trnName);
// 此处利用回调是为了等setfeg的接口调用完成后才去获取setglg参数,由于setglg参数依赖于setfeg函数的返回值
this.processSetpan(setfegRequest, () => {
return buildFn.buildSetglg(this.model, this.trnName);
});
break;
case 'docpan':
let docpanRequest = buildFn.buildDocpan(this.model, this.trnName);
this.processTrndoc(docpanRequest);
break;
case 'glepan':
let glentryRequest = buildFn.buildGlentry(this.model, this.trnName);
this.processGlentry(glentryRequest);
break;
case 'limitbody':
let limitbodyRequest = buildFn.buildLimitbody(this.model, this.trnName);
this.processLimitbody(limitbodyRequest);
break;
case 'doctre':
let doctreRequest = buildFn.buildDoctre(this.model, this.trnName);
this.processDoctre(doctreRequest);
break;
default:
return;
}
},
// 点击获取按钮拉取当前key字段下的表单数据
queryFormData(key) {
console.log(key);
},
// 业务信息=》基本信息=》保函编号-----获取保函编号
async queryOwnref() {
let params = {
ptainr: this.model.gidgrp.apl.pts.ptainr,
businessType: 'LG',
tbl: 'LG',
};
const loading = this.loading();
let res = await Api.post('/service/letcan/getOwnRef', params);
if (res.respCode == SUCCESS) {
loading.close();
this.model.gidgrp.rec.ownref = res.data;
}
},
// 获取brtacp弹框表格数据
async queryGridEtyPromptDialogData(type, ptytyp) {
let params = {
userId: window.sessionStorage.userId || 'ZL',
ptytyp: ptytyp,
extkey: this.model.gidgrp[type.toLowerCase()].pts.extkey,
};
let res = await Api.post('/service/ptspta/list', params);
if (res.respCode == SUCCESS) {
this.root.$refs['etyDialog'].show = true;
this.root.promptData.data = res.data.ptaInfos;
this.root.promptData.type = type;
}
},
// 选中brtacp弹框表格的行数据
async selectGridEtyPromptData(row) {
let params = {
...row,
};
let res = await Api.post('/service/ptspta/fetch', params);
if (res.respCode == SUCCESS) {
this.$set(this.model.gidgrp, row.role.toLowerCase(), res.data);
}
},
// 业务信息=》基本信息=》支出目的
purposChange(key, value) {
this.handleChangeForm(key, value);
},
// 初始化保函开立类型码表下拉列表
async queryHndtypCodeTableList(trnName) {
let params = {
gitp: {
swiftflg: this.model.gitp.swiftflg,
},
gidgrp: {
rec: {
purpos: this.model.gidgrp.rec.purpos,
},
},
transName: trnName.toUpperCase(),
};
let res = await Api.post('/service/letcan/initHndtyp', params);
if (res.respCode == SUCCESS) {
this.$set(this.codes, 'voHndtyp', res.data);
}
},
// 是否SWIFT格式修改--联动保函开立类型
handleChangeSwiftflg() {
this.queryHndtypCodeTableList(this.root.trnName);
},
// 支出目的修改--联动保函开立类型
handleChangePurpos() {
this.queryHndtypCodeTableList(this.root.trnName);
},
buildLiaccv () {
let params = {
...buildFn.buildCommonData(this.model, this.trnName),
liaccvg: this.model.liaccv.liaccvg,
oldamt: this.model.liaccv.oldamt,
chgamt: this.model.liaccv.chgamt,
concur: this.model.liaccv.concur,
};
return params
},
// 公共组件setmod处理方式改变触发联动
changeSetmodModel (emitParams) {
let reqParams = {}
switch (emitParams.code) {
case 'processMethods':
reqParams = buildFn.buildSetglg(this.model, this.trnName);
this.calcPayDetail(reqParams)
break
case 'changeDsp':
let index = emitParams.index;
let setglgRequest = buildFn.buildSetglg(this.model, this.trnName);
setglgRequest.setglg = {setgll: emitParams.list};
this.setgllAccts(setglgRequest, index);
break
default:
return
}
}
},
};
export default {
'liaall.misamt' :null,
'liaall.limmod.limpts.oth.pts.extkey' :null,
'rmbclm.rmbrmb.pts.extkey' :null,
'liaall.limmod.ownref' :null,
'rmbclm.acwacw.pts.extkey' :null,
'liaall.limmod.ecifno' :null,
'liaall.limmod.othp.ptsget.sdamod.dadsnd' :null,
'liaall.limmod.limpts.oth.pts.nam' :null,
'rmbclm.acwacw.pts.adrblk' :null,
'setmod.dspflg' :null,
'letp0.recget.sdamod.dadsnd' :null,
'liaall.limmod.limpts.wrk.pts.nam' :null,
'sndmsg' :null,
'rmbclm.bebbeb.adrelc' :null,
'liaall.limmod.limpts.wrk.pts.extkey' :null,
'rmbclm.acwacw.namelc' :null,
'mtabut.coninf.conexedat' :null,
'rmbclm.bebbeb.namelc' :null,
'liaall.limmod.limpts.nonrevflg1' :null,
'liaall.limmod.wrkp.ptsget.sdamod.dadsnd' :null,
'rmbclm.rmbrmb.pts.adrblk' :null,
'letcanf.strinf' :null,
'setmod.docamt' :null,
'rmbclm.rmbrmb.adrelc' :null,
'rmbclm.bebbeb.pts.adrblk' :null,
'rmbclm.acwacw.adrelc' :null,
'rmbclm.rmbrmb.namelc' :null,
'rmbclm.bebbeb.pts.extkey' :null,
'letp0.recget.sdamod.dadsnd':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'ledgrp.rec.ownref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'ledgrp.rec.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'ledgrp.cbs.nom1.cur':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'ledgrp.cbs.nom1.amt':[
{type: 'string', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'ledgrp.apl.pts.ref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'ledgrp.cbs.opn1.cur':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'ledgrp.cbs.opn1.amt':[
{type: 'string', required: false, message: '必输项'},
{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位' }
],
'ledgrp.apl.pts.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'ledgrp.avbnam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'ledgrp.iss.pts.ref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'ledgrp.iss.pts.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'ledgrp.rec.opndat':[
{type: 'date', required: false, message: '输入正确的日期'}
],
'ledgrp.rec.shpdat':[
{type: 'date', required: false, message: '输入正确的日期'}
],
'ledgrp.ben.pts.ref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'ledgrp.rec.expdat':[
{type: 'date', required: false, message: '输入正确的日期'}
],
'ledgrp.rec.expplc':[
{type: 'string', required: false, message: '必输项'},
{max: 29,message:'长度不能超过29'}
],
'ledgrp.ben.pts.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'letp0.cnftxt':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'letcanf.strinf':[
{type: 'string', required: false, message: '必输项'},
{max: 1750,message:'长度不能超过1750'}
],
'liaall.outamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.outpct':[
{type: 'string', required: false, message: '必输项'},
{max: 6,message:'长度不能超过6'}
],
'liaall.concur':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'liaall.misamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.exttotoldamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.exttotamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'setmod.ref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'setmod.docamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'setmod.zmqacc':[
{type: 'string', required: false, message: '必输项'},
{max: 20,message:'长度不能超过20'}
],
'setmod.glemod.gleshwstm':[
{type: 'string', required: false, message: '必输项'},
{max: 1,message:'长度不能超过1'}
],
'rmbclm.rmbrmb.pts.ref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'rmbclm.rmbp.ptsget.sdamod.dadsnd':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'rmbclm.rmbrmb.pts.extkey':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'rmbclm.rmbp.ptsget.sdamod.seainf':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'rmbclm.rmbrmb.namelc':[
{type: 'string', required: true, message: '必输项'},
{max: 35,message:'长度不能超过35'}
],
'rmbclm.rmbrmb.pts.adrblk':[
{type: 'string', required: true, message: '必输项'},
{max: 140,message:'长度不能超过140'}
],
'rmbclm.rmbrmb.dbfadrblkcn':[
{type: 'string', required: true, message: '必输项'},
{max: 35,message:'长度不能超过35'}
],
'rmbclm.rmbrmb.adrelc':[
{type: 'string', required: true, message: '必输项'},
{max: 35,message:'长度不能超过35'}
],
'rmbclm.acwacw.pts.ref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'rmbclm.acwp.ptsget.sdamod.dadsnd':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'rmbclm.acwacw.pts.extkey':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'rmbclm.acwp.ptsget.sdamod.seainf':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'rmbclm.acwacw.namelc':[
{type: 'string', required: true, message: '必输项'},
{max: 35,message:'长度不能超过35'}
],
'rmbclm.acwacw.pts.adrblk':[
{type: 'string', required: false, message: '必输项'},
{max: 140,message:'长度不能超过140'}
],
'rmbclm.acwacw.dbfadrblkcn':[
{type: 'string', required: false, message: '必输项'},
{max: 35,message:'长度不能超过35'}
],
'rmbclm.acwacw.adrelc':[
{type: 'string', required: true, message: '必输项'},
{max: 35,message:'长度不能超过35'}
],
'rmbclm.bebbeb.pts.ref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'rmbclm.bebp.ptsget.sdamod.dadsnd':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'rmbclm.bebbeb.pts.extkey':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'rmbclm.bebp.ptsget.sdamod.seainf':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'rmbclm.bebbeb.namelc':[
{type: 'string', required: true, message: '必输项'},
{max: 35,message:'长度不能超过35'}
],
'rmbclm.bebbeb.pts.adrblk':[
{type: 'string', required: false, message: '必输项'},
{max: 140,message:'长度不能超过140'}
],
'rmbclm.bebbeb.dbfadrblkcn':[
{type: 'string', required: true, message: '必输项'},
{max: 35,message:'长度不能超过35'}
],
'rmbclm.bebbeb.adrelc':[
{type: 'string', required: true, message: '必输项'},
{max: 35,message:'长度不能超过35'}
],
'rmbclm.valdat':[
{type: 'date', required: false, message: '输入正确的日期'}
],
'mtabut.coninf.oitinf.oit.inftxt':[
{type: 'string', required: true, message: '必输项'},
{max: 60,message:'长度不能超过60'}
],
'mtabut.coninf.oitset.oit.inftxt':[
{type: 'string', required: true, message: '必输项'},
{max: 60,message:'长度不能超过60'}
],
'mtabut.coninf.conexedat':[
{type: 'date', required: false, message: '输入正确的日期'}
],
'mtabut.coninf.usr.extkey':[
{type: 'string', required: false, message: '必输项'},
{max: 8,message:'长度不能超过8'}
],
'trnmod.trndoc.advnam':[
{type: 'string', required: false, message: '必输项'},
{max: 50,message:'长度不能超过50'}
],
'trnmod.trndoc.amdapl':[
{type: 'string', required: true, message: '必输项'},
{max: 50,message:'长度不能超过50'}
],
'trnmod.trndoc.advdoc':[
{type: 'string', required: false, message: '必输项'},
{max: 1,message:'长度不能超过1'}
],
'trnmod.trndoc.filrecv':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'trnmod.trndoc.doctrestm':[
{type: 'string', required: false, message: '必输项'},
{max: 1,message:'长度不能超过1'}
],
'trnmod.trndoc.condocstm':[
{type: 'string', required: false, message: '必输项'},
{max: 1,message:'长度不能超过1'}
],
'trnmod.trndoc.rcvatt.seainf':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'liaall.limmod.ecifno':[
{type: 'string', required: false, message: '必输项'},
{max: 22,message:'长度不能超过22'}
],
'liaall.limmod.ownref':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'liaall.limmod.wrkp.ptsget.sdamod.dadsnd':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'liaall.limmod.othp.ptsget.sdamod.dadsnd':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'liaall.limmod.limpts.wrk.pts.extkey':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'liaall.limmod.wrkp.ptsget.sdamod.seainf':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'liaall.limmod.limpts.oth.pts.extkey':[
{type: 'string', required: false, message: '必输项'},
{max: 16,message:'长度不能超过16'}
],
'liaall.limmod.othp.ptsget.sdamod.seainf':[
{type: 'string', required: false, message: '必输项'},
{max: 3,message:'长度不能超过3'}
],
'liaall.limmod.comamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.limmod.limpts.wrk.pts.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'liaall.limmod.limpts.oth.pts.nam':[
{type: 'string', required: false, message: '必输项'},
{max: 40,message:'长度不能超过40'}
],
'liaall.limmod.ccvamt':[
{type: 'number', required: false, message: '必输项'},
{max: 18,message:'整数位不能超过14位'},
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: '小数位不能超过3位' }
],
'liaall.limmod.limpts.pfcod1':[
{type: 'string', required: false, message: '必输项'},
{max: 14,message:'长度不能超过14'}
],
'liaall.limmod.limpts.pfcod2':[
{type: 'string', required: false, message: '必输项'},
{max: 14,message:'长度不能超过14'}
],
}
import Pts from '~/components/business/commonModel/Pts';
import Pub from '~/components/business/commonModel/index.js';
export default class Letcan {
constructor() {
this.data = {
sndmsg: '',
ledgrp: {
rec: {
revflg: '',
expdat: '',
expplc: '',
lcrtyp: '',
ownref: '',
shpdat: '',
avbby: '',
nam: '',
opndat: '',
redclsflg: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
},
nom1: {
cur: '',
amt: ''
}
},
rmb: {
rolsetflg: ''
},
iss: {
pts: {
ref: '',
nam: ''
}
},
ben: {
pts: {
ref: '',
nam: ''
}
},
apl: {
pts: {
ref: '',
nam: ''
}
},
avbnam: ''
},
letp0: {
aammod: {
addamtflg: ''
},
cnftxt: ''
},
letcanf: {
strinf: ''
},
rmbclm: {
acwacw: {
pts: {
ref: ''
}
},
valdat: '',
rmbrmb: {
pts: {
ref: ''
}
},
bebbeb: {
pts: {
ref: ''
}
},
rmbrol: ''
},
setmod: new Pub().data.Setmod,
mtabut: new Pub().data.Mtabut,
trnmod: new Pub().data.Trnmod,
liaall: new Pub().data.Liaall,
liaccv: new Pub().data.Liaccv,
docpan: new Pub().data.Docpan,
};
}
}
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames" @change="handleChange">
<el-collapse-item title="提示信息" name="coninfp">
<m-coninfp :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import Api from "~/service/Api";
import commonProcess from "~/mixin/commonProcess";
import Event from "~/model/Letcan/Event";
import Coninfp from "~/views/Public/Coninfp";
export default {
components: {
"m-coninfp": Coninfp,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [commonProcess],
data() {
return {
activeNames: ["coninfp"],
};
},
methods: {
...Event,
handleChange(val) {
console.log(val);
},
},
created: function () {},
};
</script>
<style>
</style>
<template>
<div class="eibs">
<!-- <c-row class="infrow" style="margin-top: 50px"> -->
<!-- ============================顶部================================ -->
<c-row>
<c-col :span="24">
<c-col :span="12" style="padding-right: 20px;">
<el-form-item label="出口信用证编号" prop="ledgrp.rec.ownref">
<c-input
v-model="model.ledgrp.rec.ownref"
maxlength="16"
placeholder="请输入编号"
:disabled="true"
></c-input>
</el-form-item>
</c-col>
<c-col :span="12" style="padding-left: 20px;">
<el-form-item label="简略信息" prop="ledgrp.rec.nam">
<c-input
text-align="middle"
v-model="model.ledgrp.rec.nam"
maxlength="40"
placeholder="请输入"
disabled
>
</c-input>
</el-form-item>
</c-col>
</c-col>
</c-row>
<!-- ========================上半部分的左边=========================== -->
<c-row>
<c-col :span="12" style="padding-right: 20px;">
<!-- L/C Amount -->
<c-col :span="24">
<c-col :span="11">
<el-form-item label="信用证金额" prop="ledgrp.cbs.nom1.cur">
<c-select
v-model="model.ledgrp.cbs.nom1.cur"
style="width: 100%"
placeholder="请选择币种"
:code="codes.curtxt1"
disabled
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="" label-width="5px" prop="ledgrp.cbs.nom1.amt">
<c-input-currency
v-model="model.ledgrp.cbs.nom1.amt"
style="text-align: left; width: 100%"
class="m-input-currency"
placeholder="请输入信用证金额"
@keyup.enter.native="$event.target.blur()"
disabled
></c-input-currency>
<!-- @keyup.enter.native="$event.target.blur()" :回车触发失去焦点发生的事件 -->
</el-form-item>
</c-col>
<c-col :span="5">
<c-checkbox
v-model="model.letp0.aammod.addamtflg"
style="margin-left: 10px"
disabled
>附加金额</c-checkbox
>
</c-col>
</c-col>
<!-- Open Amount -->
<c-col :span="24">
<c-col :span="11">
<el-form-item label="信用证余额" prop="ledgrp.cbs.opn1.cur">
<c-select
v-model="model.ledgrp.cbs.opn1.cur"
maxlength="3"
placeholder="请选择币种"
disabled
:code="codes.curtxt1"
></c-select>
</el-form-item>
</c-col>
<c-col :span="8">
<el-form-item label="" label-width="5px" prop="ledgrp.cbs.opn1.amt">
<c-input
v-model="model.ledgrp.cbs.opn1.amt"
style="text-align: left; width: 100%"
class="m-input-currency"
placeholder="请输入金额"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="5">
<c-checkbox v-model="model.ledgrp.rec.revflg"
style="margin-left: 10px"
disabled
>循环信用证</c-checkbox
>
</c-col>
</c-col>
<c-row>
<c-col :span="19">
<el-form-item label="可用银行" prop="ledgrp.avbnam">
<c-input
v-model="model.ledgrp.avbnam"
maxlength="40"
placeholder="请输入可用银行"
disabled
></c-input>
</el-form-item>
</c-col>
</c-row>
<c-col :span="24">
<c-col :span="19">
<el-form-item label="兑付方式" prop="ledgrp.rec.avbby">
<c-select
v-model="model.ledgrp.rec.avbby"
style="width: 100%"
placeholder="请选择兑付方式"
disabled
:code="codes.avbby"
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="5">
<c-checkbox v-model="model.ledgrp.rec.redclsflg"
style="margin-left: 10px"
disabled
>红/绿条款</c-checkbox
>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="开立日期" prop="ledgrp.rec.opndat">
<c-date-picker
type="date"
v-model="model.ledgrp.rec.opndat"
style="width: 100%"
placeholder="请选择开立日期"
value-format="yyyy-MM-dd"
disabled
></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="装运日期" prop="ledgrp.rec.shpdat">
<c-date-picker
type="date"
v-model="model.ledgrp.rec.shpdat"
style="width: 100%"
placeholder="请选择日期"
value-format="yyyy-MM-dd"
disabled
></c-date-picker>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="12">
<el-form-item label="生效日期" prop="ledgrp.rec.expdat">
<c-date-picker
type="date"
v-model="model.ledgrp.rec.expdat"
style="width: 100%"
placeholder="请选择生效日期"
value-format="yyyy-MM-dd"
disabled
></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="5px" prop="ledgrp.rec.expplc">
<c-input
v-model="model.ledgrp.rec.expplc"
maxlength="29"
placeholder="请输入"
value-format="yyyy-MM-dd"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
<c-col :span="24">
<el-form-item label="信用证类型" prop="ledgrp.rec.lcrtyp">
<c-select
v-model="model.ledgrp.rec.lcrtyp"
style="width: 100%"
placeholder="请选择类型"
disabled
:code="codes.lcrtyp"
>
</c-select>
</el-form-item>
</c-col>
</c-col>
<!-- ========================上半部分的右边======================= -->
<c-col :span="12" style="padding-left: 20px;">
<c-col :span="24">
<el-form-item label="申请人参考号" prop="ledgrp.apl.pts.ref">
<c-input
v-model="model.ledgrp.apl.pts.ref"
maxlength="16"
placeholder="请输入申请人参考号"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="" prop="ledgrp.apl.pts.nam">
<c-input
v-model="model.ledgrp.apl.pts.nam"
maxlength="40"
placeholder="请输入"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="开证行参考号" prop="ledgrp.iss.pts.ref">
<c-input
v-model="model.ledgrp.iss.pts.ref"
maxlength="16"
placeholder="请输入开证行参考号"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="开证行名称" prop="ledgrp.iss.pts.nam">
<c-input
v-model="model.ledgrp.iss.pts.nam"
maxlength="40"
placeholder="请输入名称"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="受益人参考号" prop="ledgrp.ben.pts.ref">
<c-input
v-model="model.ledgrp.ben.pts.ref"
maxlength="16"
placeholder="请输入参考号"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="受益人名称" prop="ledgrp.ben.pts.nam">
<c-input
v-model="model.ledgrp.ben.pts.nam"
maxlength="40"
placeholder="请输入名称"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="确认文本" prop="letp0.cnftxt">
<c-input
v-model="model.letp0.cnftxt"
maxlength="40"
placeholder="请输入"
disabled
></c-input>
</el-form-item>
</c-col>
</c-col>
</c-row>
<!-- ========================下半部分======================= -->
<c-row>
<c-col :span="12" style="padding-right: 20px;">
<c-col :span="24">
<el-form-item label="叙述信息" prop="letcanf.strinf">
<c-fullbox>
<c-input
type="textarea"
v-model="model.letcanf.strinf"
maxlength="1750"
:rows="5"
show-word-limit
placeholder="请输入"
></c-input>
<template slot="footer">
<!-- @click="onCanletButtxmsel" -->
<c-button
size="small"
type="primary"
icon="el-icon-more"
@click="showGridPromptDialog('letcanp.canlet.buttxmsel', null, null,{TXT: 'letcanf.strinf'}, {TXT: false},'doxpDialog')"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<el-form-item label="" prop="sndmsg" class="checkbox-left">
<c-checkbox v-model="model.sndmsg">发送信息</c-checkbox>
</el-form-item>
</c-col>
</c-row>
</div>
</template>
<script>
import Api from '~/service/Api'
import commonProcess from '~/mixin/commonProcess'
import CodeTable from '~/config/CodeTable'
import Event from '~/model/Letcan/Event'
import Utils from '~/utils'
import Ptap from '~/views/Public/Ptap'
export default {
components: { 'c-ptap': Ptap },
inject: ['root'],
props: ['model', 'codes'],
mixins: [commonProcess],
data() {
return {
// watch:{
// ownref(newValue){
// this.model.ledgrp.rec.ownref = newValue;
// }
// }
}
},
methods: {
...Event,
},
created: function () {},
}
// let vm = new Vue({
// el="#ownref",date:{}
// });
</script>
<style></style>
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames" @change="handleChange">
<el-collapse-item title="取消信息" name="canp">
<m-canp :model="model" :codes="codes" />
</el-collapse-item>
<!-- v-if="model.ledgrp.rmb.rolsetflg=='Y'" -->
<el-collapse-item title="索偿(MT 742)" name="rcldetp" >
<m-rcldetp :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import commonProcess from "~/mixin/commonProcess";
import Event from "~/model/Getamc/Event";
import Canp from "./Canp";
import Rcldetp from "./Rcldetp";
export default {
components: {
"m-canp": Canp,
"m-rcldetp": Rcldetp,
},
inject: ['root'],
props:["model","codes"],
mixins: [commonProcess],
data(){
return {
activeNames: ["canp"],
}
},
methods:{...Event,handleChange(){}},
created:function(){
}
}
</script>
<style>
</style>
<template>
<div class="eibs">
<!-- ==========================左半边================================== -->
<c-col :span="12" style="padding-right: 20px;">
<!-- SF000021 : 偿付行 -->
<c-col :span="24">
<el-form-item label="偿付行" prop="rmbclm.rmbrol">
<c-select
v-model="model.rmbclm.rmbrol"
style="width: 100%"
placeholder="请选择"
:code="codes.rolall"
@change="selectOrCheckboxRule('rmbclm.rmbrol')"
>
</c-select>
</el-form-item>
</c-col>
<!-- SF000020 : 编号 Reference for Address Optional -->
<c-col :span="24">
<c-form-item label="参考号" prop="rmbclm.rmbrmb.pts.ref">
<c-input
v-model="model.rmbclm.rmbrmb.pts.ref"
maxlength="16"
placeholder="请输入"
:disabled="rmbrolRefFlag"
></c-input>
</c-form-item>
</c-col>
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '',
grp: 'rmbclm',
rol: 'rmbrmb',
}"
:noRef="true"
@onSeainf="onSeainf"
@onAplpDet="onRmbpDet"
:disabledExtkey="rmbrolRefFlag"
:disabled="rmbrolAdrblkFlag"
>
</c-ptap>
</c-col>
<!-- SF000011 : Account with Bank -->
<!-- SF000018 : 编号 -->
<c-col :span="24">
<c-form-item
label="账户号参考号"
prop="rmbclm.acwacw.pts.ref"
>
<c-input
v-model="model.rmbclm.acwacw.pts.ref"
maxlength="16"
placeholder="请输入"
></c-input>
</c-form-item>
</c-col>
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '',
grp: 'rmbclm',
rol: 'acwacw',
}"
:noRef="true"
@onSeainf="onSeainf"
@onAplpDet="onAcwpDet"
>
</c-ptap>
</c-col>
<!-- SF000016 : Beneficiary Bank -->
<!-- SF000019 : 编号 -->
<c-col :span="24">
<c-form-item
label="受益人银行参考号"
prop="rmbclm.bebbeb.pts.ref"
>
<c-input
v-model="model.rmbclm.bebbeb.pts.ref"
maxlength="16"
placeholder="请输入"
></c-input>
</c-form-item>
</c-col>
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '',
grp: 'rmbclm',
rol: 'bebbeb',
}"
:noRef="true"
@onSeainf="onSeainf"
@onAplpDet="onBebpDet"
>
</c-ptap>
</c-col>
<!-- SG000133 : value date -->
<c-col :span="24">
<el-form-item label="起息日" prop="rmbclm.valdat">
<c-date-picker
type="date"
value-format="yyyy-MM-dd"
v-model="model.rmbclm.valdat"
style="width: 100%"
placeholder="请选择"
></c-date-picker>
</el-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/Letcan/Event'
import Ptap from '~/views/Public/Ptap'
export default {
inject: ['root'],
components: { 'c-ptap': Ptap },
props: ['model', 'codes'],
mixins: [commonProcess],
data() {
return {}
},
methods: { ...Event },
created: function () {},
computed:{
rmbrolRefFlag: {
get() {
return (
this.model.rmbclm.rmbrol=='ADV'||this.model.rmbclm.rmbrol=='AVB'
||this.model.rmbclm.rmbrol=='ISS'||this.model.rmbclm.rmbrol=='CON'
)
},
},
rmbrolAdrblkFlag: {
get() {
return (
this.model.rmbclm.rmbrol=='ADV'||this.model.rmbclm.rmbrol=='AVB'
||this.model.rmbclm.rmbrol=='ISS'||this.model.rmbclm.rmbrol=='CON'
||this.model.rmbclm.rmbrol=='RMB'
)
},
},
}
}
</script>
<style></style>
<template>
<div class="eContainer">
<c-page title="出口信用证注销">
<!-- <c-bus-button :$pntvm="this"></c-bus-button> -->
<el-form
:model="model"
:rules="rules"
ref="modelForm"
label-width="120px"
label-position="left"
size="small"
:validate-on-rule-change="false"
>
<c-tabs
v-model="tabVal"
ref="elment"
type="card"
@tab-click="tabClick"
>
<el-tab-pane label="业务信息" name="ovwp">
<c-content>
<m-ovwp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000001 -->
<el-tab-pane label="统一授信" name="limitbody">
<c-content>
<m-limitbody :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="表外记账" name="engp">
<c-content>
<!-- 表外记账 -->
<m-engp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="费用/账务" name="setmod">
<c-content>
<m-setmod
:model="model"
:codes="codes"
@changeSetmodModel="changeSetmodModel"
/>
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="会计分录" name="glepan">
<c-content>
<m-glentry :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<el-tab-pane label="备查/附言" name="addbcb">
<c-content>
<m-addbcb :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000529 Messages报文及面函-->
<el-tab-pane label="报文/面函" name="docpan">
<c-content>
<m-docpan :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000546 Attachments附件-->
<el-tab-pane label="附件信息" name="doctre">
<c-content>
<m-doctre :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
</c-tabs>
</el-form>
<!-- 数据回填效果 -->
<c-grid-ety-prompt-dialog
ref="etyDialog"
:promptData="promptData"
@select-ety="selectEty"
>
</c-grid-ety-prompt-dialog>
<c-grid-ety-prompt-dialog
ref="doxpDialog"
:isPty="false"
:promptData="promptData"
@select-ety="selectMsg"
>
</c-grid-ety-prompt-dialog>
<c-function-btn
:handleSubmit="handleSubmit"
:handleCheck="handleCheck"
:handleStash="handleStash"
>
</c-function-btn>
</c-page>
</div>
</template>
<script>
import Api from '~/service/Api'
import Utils from '~/utils/index'
import CodeTable from '~/config/CodeTable'
import Letcan from '~/model/Letcan'
import commonProcess from '~/mixin/commonProcess'
import commonFuncs from '~/mixin/commonFuncs'
import Check from '~/model/Letcan/Check'
import Default from '~/model/Letcan/Default'
import Pattern from '~/model/Letcan/Pattern'
import Ovwp from './Ovwp'
import Addbcb from "./Addbcb"
import Engp from "~/views/Public/Engp";
import Setpan from '~/views/Public/Setpan';
import Glepan from "~/views/Public/Glepan";
import Rcldetp from "./Rcldetp";
import Coninfp from '~/views/Public/Coninfp'
import Docpan from '~/views/Public/Docpan'
import Doctre from '~/views/Public/Doctre'
import Limitbody from '~/views/Public/Limitbody'
export default {
name: "Letcan",
components: {
'm-ovwp': Ovwp,
'm-engp': Engp,
'm-setpan': Setpan,
'm-glepan': Glepan,
'm-rcldetp':Rcldetp,
'm-coninfp': Coninfp,
'm-docpan': Docpan,
'm-doctre': Doctre,
'm-limitbody': Limitbody,
'm-addbcb': Addbcb,
},
provide() {
return {
root: this,
}
},
mixins: [commonProcess, commonFuncs], // 里面包含了Default、Check等的公共处理
data() {
return {
tabVal: 'ovwp',
trnName: 'letcan',
model: new Letcan().data,
checkRules: Check,
defaultRules: Default,
pattern: Pattern,
rules: null,
activeNames: ["engp"],
codes: { ...CodeTable },
}
},
methods: {
tabClick(tab) {
this.tabClick(tab)
/**
* do it yourself
**/
},
},
created: async function () {
console.log('进入letcan交易')
let rtnmsg = await this.init({})
if (rtnmsg.respCode == SUCCESS) {
//TODO 处理数据逻辑
Utils.copyValueFromVO(this.model, rtnmsg.data)
if (this.isInDisplay) {
this.restoreDisplay()
}
} else {
this.$notify.error({ title: '错误', message: '服务请求失败!' })
}
},
}
</script>
<style>
</style>
......@@ -50,5 +50,12 @@ const Business = [
{ path: 'infbrd', component: () => import('~/business/infbrd/views'), name: 'infbrd', meta: { title: '进口信用证单据入口交易' } },
{ path: 'inflid', component: () => import('~/business/inflid/views'), name: 'inflid', meta: { title: '信用证入口交易' } },
{ path: 'infled', component: () => import('~/business/infled/views'), name: 'infled', meta: { title: '出口信用证交易查询' } },
{ path: 'letame', component: () => import('~/business/letame/views'), name: 'letame', meta: { title: '出口信用证修改' } },
{ path: 'letcan', component: () => import('~/business/letcan/views'), name: 'letcan', meta: { title: '出口信用证注销' } },
{ path: 'betcan', component: () => import('~/business/betcan/views'), name: 'betcan', meta: { title: '出口信用证单据注销' } },
{ path: 'betrcl', component: () => import('~/business/betrcl/views'), name: 'betrcl', meta: { title: '出口信用证单据出口单据索汇' } },
{ path: 'betacc', component: () => import('~/business/betacc/views'), name: 'betacc', meta: { title: '出口信用证单据承兑' } },
{ path: 'betdcr', component: () => import('~/business/betdcr/views'), name: 'betdcr', meta: { title: '出口信用证单据电提不符点/开证行拒付' } },
]
export default Business
\ No newline at end of file
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