Commit 6ab1e9fe by xionglin

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 18e5f957 ef566c49
......@@ -142,6 +142,10 @@ export default {
}
});
},
toLetopn() {
// 点击开立,清空从待经办进来的时候带的行参数
localStorage.setItem('row_getopn', null)
this.$router.history.push('/business-new/letopn');
},
},
};
......@@ -26,6 +26,30 @@ export default class Letame {
}
},
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: ''
......@@ -127,18 +151,6 @@ export default class Letame {
nam: ''
}
},
ben: {
pts: {
ref: '',
nam: ''
}
},
apl: {
pts: {
ref: '',
nam: ''
}
},
drw: {
pts: {
extkey: '',
......@@ -150,7 +162,22 @@ export default class Letame {
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: {
......@@ -334,6 +361,88 @@ export default class Letame {
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,
......
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.ledgrp.apl.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.ledgrp.apl));
}
if (model.ledgrp.adv.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.ledgrp.adv));
}
if (model.ledgrp.ben.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.ledgrp.ben));
}
let dataObj = {
rec: {
objtyp: 'LED',
ownref: model.ledgrp.rec.ownref,
opndat: model.ledgrp.rec.opndat,
expdat: model.ledgrp.rec.expdat,
branchInr: model.ledgrp.rec.branchInr,
hndtyp: model.ledgrp.rec.hndtyp,
gartyp: model.ledgrp.rec.gartyp,
fingua: model.ledgrp.rec.fingua,
// segtyp: model.ledgrp.ghd.segtyp,
fromflg: model.ledgrp.rec.fromflg,
othersno: model.ledgrp.rec.othersno,
sndto: model.ledgrp.rec.sndto,
// swiftflg: model.gitp.swiftflg,
giduil: model.ledgrp.rec.giduil,
purpos: model.ledgrp.rec.purpos,
revflg: model.ledgrp.rec.revflg,
cnfsta: model.ledgrp.rec.cnfsta,
},
cbsMap: {
MAX: model.ledgrp.cbs.max,
OLDMAX: model.ledgrp.cbs.oldmax,
MAX2: model.ledgrp.cbs.max2,
NOM1: model.ledgrp.cbs.nom1,
OPN1: model.ledgrp.cbs.opn1,
MAC: model.ledgrp.cbs.mac,
MAC2: model.ledgrp.cbs.mac2,
OPC2: model.ledgrp.cbs.opc2,
CNF: model.ledgrp.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: 'LED',
objinr: model.ledgrp.rec.objinr,
ownref: model.ledgrp.rec.ownref,
},
};
return params
},
buildDoctre (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'LED',
objinr: model.ledgrp.rec.objinr,
ownref: model.ledgrp.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 Utils from '~/utils';
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';
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 loading = this.loading();
const res = await Api.post('/service/letopn/init', {
...params,
transName: this.trnName,
userId: window.sessionStorage.userId || 'ZL',
});
loading.close();
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 'setpan':
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;
}
},
// 获取弹框表格数据
async queryGridEtyPromptDialogData(type, ptytyp) {
let params = {
userId: window.sessionStorage.userId || 'ZL',
ptytyp: ptytyp,
extkey: this.model.ledgrp[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;
}
},
// 选中gitopn弹框表格的行数据
async selectGridEtyPromptData(row) {
let params = {
...row,
};
let res = await Api.post('/service/ptspta/fetch', params);
if (res.respCode == SUCCESS) {
this.$set(this.model.ledgrp, row.role.toLowerCase(), res.data);
}
},
//获取信用证编号
async onLitpButgetref() {
let params = {
ptainr: this.model.ledgrp.apl.pts.ptainr,
businessType: 'LG',
tbl: 'LG',
};
const loading = this.loading();
let res = await Api.post('/service/letopn/getOwnRef', params);
if (res.respCode == SUCCESS) {
loading.close();
this.model.ledgrp.rec.ownref = res.data;
}
},
// 初始化开立类型码表下拉列表
async queryHndtypCodeTableList(trnName) {
let params = {
letp: {
swiftflg: this.model.letp.swiftflg,
},
ledgrp: {
rec: {
purpos: this.model.ledgrp.rec.purpos,
},
},
transName: trnName.toUpperCase(),
};
// let res = await Api.post('/service/litopn/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);
},
},
};
import Pts from '~/components/business/commonModel/Pts';
import Pub from '~/components/business/commonModel/index.js';
export default class Letopn{
constructor () {
this.data = {
number: '',
ledgrp: {
a2b: {
pts: new Pts().data,
},
blk: {
dftat: '',
revnotes: '',
feetxt: '',
mixdet: '',
revcls: '',
shpper: '',
addamtcov: '',
avbwthtxt: '',
defdet: '',
preper: ''
},
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: new Pts().data,
},
cbs: {
opn2: {
cur: '',
amt: ''
},
max: {
cur: '',
amt: ''
},
nom1: {
cur: '',
amt: ''
},
max2: {
cur: '',
amt: ''
}
},
drw: {
pts: new Pts().data,
},
ben: {
pts: new Pts().data,
},
avb: {
pts: new Pts().data,
}
},
letp: {
usr: {
extkey: ''
},
aamp: {
aammod: {
addamtflg: ''
}
}
},
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">
<!-- ============左边================= -->
<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="请输入附加金额"
@keyup.enter.native="$event.target.blur()"
></c-input>
<!-- @keyup.enter.native="$event.target.blur()" :回车触发失去焦点发生的事件 -->
</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"
placeholder="请输入附加金额余额"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="39C场" prop="ledgrp.blk.addamtcov">
<c-input
type="textarea"
v-model="model.ledgrp.blk.addamtcov"
maxlength="140"
show-word-limit
placeholder="请输入39C场"
rows="4"
></c-input>
</el-form-item>
</c-col>
</c-col>
</div>
</template>
<script>
import Api from "~/service/Api";
import CodeTable from "~/config/CodeTable";
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">
<c-blkTextarea :model="model" v-bind="blk"> </c-blkTextarea>
<!-- Special payment conditions for beneficiary -->
<c-col :span="24">
<el-form-item prop="ledgrp.rec.spcbenflg" class="checkbox-left" >
<c-checkbox v-model="model.ledgrp.rec.spcbenflg"
>受益人特殊付款条款</c-checkbox
>
</el-form-item>
</c-col>
<!-- Special payment conditions for receiving bank -->
<c-col :span="24">
<el-form-item prop="ledgrp.rec.spcrcbflg" class="checkbox-left">
<c-checkbox v-model="model.ledgrp.rec.spcrcbflg">
收款银行特殊付款条款</c-checkbox
>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item prop="ledgrp.rec.redclsflg" class="checkbox-left">
<c-checkbox v-model="model.ledgrp.rec.redclsflg">红/绿条款</c-checkbox>
</el-form-item>
</c-col>
<c-blkTextarea :model="model" v-bind="blk1"> </c-blkTextarea>
</div>
</template>
<script>
import Api from "~/service/Api";
import CodeTable from "~/config/CodeTable";
import event from '../event'
import BlkTextarea from "~/views/Public/BlkTextarea";
export default {
inject: ["root"],
props: ["model", "codes"],
components: { "c-blkTextarea": BlkTextarea },
mixins: [event],
data() {
return {
blk: {
blkMsg: {
title: "附加条款",
dataUrl: "ledgrp.blk.adlcnd", //字段所在model路劲
rows: 16,
},
rulePath: "letp.adlcnd.buttxmsel",
},
blk1: {
blkMsg: {
title: "付款、承兑、议付银行指示",
dataUrl: "ledgrp.blk.insbnk", //字段所在model路劲
rows: 4,
maxlength: 2000,
},
rulePath: "letp.insbnk.buttxmsel",
},
};
},
methods: { },
created: function () {},
};
</script>
<style>
/*
.letopn_adcp_cheak {
margin: 0px 0 10px 120px;
display: flex;
justify-content: flex-start;
}
*/
</style>
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames">
<!--el-collapse-item title="备查表" name="addbcb1">
<m-addbcb1 :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 Utils from "~/utils";
//import Addbcb1 from "~/views/Public/Addbcb1";
import Coninfp from "~/views/Public/Coninfp";
import event from '../event'
export default {
components: {
"m-coninfp": Coninfp,
//"m-addbcb1": Addbcb1,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {
activeNames: ["coninfp"],
};
},
methods: {
},
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames">
<el-collapse-item title="基本信息" name="ovwp1">
<m-ovwp1 :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="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="dogp">
<m-doxp :model="model" :codes="codes" :dtyp="'dogp'" :rec="'led'"/>
</el-collapse-item>
<el-collapse-item title="单据要求" name="dorp">
<m-doxp :model="model" :codes="codes" :dtyp="'dorp'" :rec="'led'"/>
</el-collapse-item>
<el-collapse-item title="附加条款" name="adcp">
<m-doxp :model="model" :codes="codes" :dtyp="'adcp'" :rec="'led'"/>
</el-collapse-item>
<el-collapse-item title="循环信用详情" name="revp" v-if="model.ledgrp.rec.revflg == 'X'">
<m-revp :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="受益人特殊付款条款" name="spcbenp" v-if="model.ledgrp.rec.spcbenflg">
<m-doxp :model="model" :codes="codes" :dtyp="'spcbenp'" :rec="'led'"/>
</el-collapse-item>
<el-collapse-item title="收款银行特殊付款条款" name="spcrcvp" v-if="model.ledgrp.rec.spcrcbflg">
<m-doxp :model="model" :codes="codes" :dtyp="'spcrcvp'" :rec="'led'"/>
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import Api from "~/service/Api";
import CodeTable from "~/config/CodeTable";
import event from '../event'
import Ovwp1 from './Ovwp1'
import Detp from './Detp'
import Ptyp from './Ptyp'
import Revp from './Revp'
import Aamp from './Aamp'
import Doxp from '~/views/Public/Doxp'
export default {
components: {
'm-ovwp1': Ovwp1,
'm-aamp': Aamp,
'm-detp': Detp,
'm-ptyp': Ptyp,
'm-doxp': Doxp,
'm-revp': Revp,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {
activeNames: ["ovwp1"],
};
},
methods: {
},
created: function () {},
computed: {
},
};
</script>
<style>
.marginLable {
padding-left: 160px;
}
</style>
<template>
<div class="eibs">
<!-- ============左边================= -->
<c-col :span="12" style="padding-right: 20px;">
<!-- 第一通知行 -->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '第一通知行',
grp: 'ledgrp',
rol: 'adv',
}"
>
</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-left: 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 -->
<c-col :span="24">
<c-checkbox v-model="model.ledgrp.rec.aplbnkdirsnd" style="margin-left:150px;"
>直接发送至申请银行</c-checkbox
>
</c-col>
<!-- 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',
}"
: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>
<el-button
size="mini"
type="primary"
>详情</el-button
>
</template>
</el-table-column>
</c-edit-table>
</div>
</template>
<script>
import Api from "~/service/Api";
import CodeTable from "~/config/CodeTable";
import Ptap from "~/views/Public/Ptap";
import event from '../event'
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;">
<c-col :span="24">
<el-form-item label="循环信用证信息"></el-form-item>
</c-col>
<c-col :span="18">
<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="6">
<!-- Credit is Marked as Cumulative -->
<c-checkbox v-model="model.ledgrp.rec.revcum"
style="margin-left:10px"
>累计</c-checkbox
>
</c-col>
<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 :span="24">
<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-col :span="24">
<el-form-item label="循环条款" prop="ledgrp.blk.revcls">
<c-fullbox>
<c-input
type="textarea"
v-model="model.ledgrp.blk.revcls"
maxlength="390"
show-word-limit
placeholder="请输入循环条款"
></c-input>
<template slot="footer">
<c-button
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="ledgrp.blk.revnotes">
<c-input
type="textarea"
v-model="model.ledgrp.blk.revnotes"
maxlength="210"
show-word-limit
placeholder="请输入受益人须知"
></c-input>
</el-form-item>
</c-col>
</c-col>
</div>
</template>
<script>
import Api from '~/service/Api'
import CodeTable from '~/config/CodeTable'
import event from '../event'
export default {
inject: ['root'],
props: ['model', 'codes'],
mixins: [event],
data() {
return {}
},
methods: { },
created: function () {},
watch:{
"model.ledgrp.rec.revtimes":function(val){
this.model.ledgrp.rec.revtimes = val.replace(/\D/g, '');
}
},
}
</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>
<!--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>
<el-tab-pane label="报文/面函" name="docpan">
<c-content>
<m-docpan :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<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
:handleConfirm="handleConfirm"
:handleSubmit="handleSubmit"
:handleCheck="handleCheck"
:handleStash="handleStash"
>
</c-function-btn>
<c-grid-ety-prompt-dialog
ref="etyDialog"
:promptData="promptData"
@select-ety="selectGridEtyPromptData"
>
</c-grid-ety-prompt-dialog>
</c-page>
</div>
</template>
<script>
import event from '../event'
import operationFunc from "~/mixin/operationFunc";
import formRules from '../model/check'
import CodeTable from '~/config/CodeTable'
import Ovwp from './Ovwp'
import Detp from './Detp'
import Ptyp from './Ptyp'
import Addbcb from "./Addbcb";
import Revp from './Revp'
import Aamp from './Aamp'
import Engp from "~/components/business/engp/views";
import Ccvpan from "~/components/business/ccvpan/views";
import Setmod from "~/components/business/setmod/views";
import Glentry from "~/components/business/glentry/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: 'Letopn',
components: {
"m-addbcb": Addbcb,
'm-ovwp': Ovwp,
'm-detp': Detp,
'm-ptyp': Ptyp,
'm-docpan': Docpan,
'm-doctre': Doctre,
'm-engp': Engp,
'm-revp': Revp,
'm-aamp': Aamp,
'm-doxp': Doxp,
"m-ccvpan": Ccvpan,
"m-setmod": Setmod,
"m-glentry": Glentry,
"m-limitbody": Limitbody,
},
provide() {
return {
root: this,
}
},
mixins: [operationFunc, event],
data() {
return {
tabVal: "ovwp",
trnName: "letopn",
model: new Letopn().data,
rules: formRules,
codes: {
...CodeTable,
},
activeNames: ["engp"],
promptData: {
title: 'Select a Party',
columns: [
{
prop: 'ptyInr',
label: 'Party Number'
},
{
prop: 'inr',
label: 'Address Number'
},
{
prop: 'branch',
label: 'Branch Code'
},
{
prop: 'bchName',
label: 'Branch Name'
},
{
prop: 'adrName',
label: 'Address Name'
},
{
prop: 'adr1',
label: 'Address1'
},
{
prop: 'locCty',
label: 'City'
},
{
prop: 'locZip',
label: 'Zip'
},
{
prop: 'bicCode',
label: 'BIC'
}
],
data: []
}
};
},
methods: {},
mounted () {
this.init()
this.queryHndtypCodeTableList(this.trnName)
},
}
</script>
<style></style>
......@@ -45,7 +45,7 @@ const Business = [
{ path: 'gitenc', component: () => import('~/business/gitenc/views'), name: 'gitenc', meta: { title: '进口信用证单据提货担保注销' } },
{ path: 'litdla', component: () => import('~/business/litdla/views'), name: 'litdla', meta: { title: '进口信用证减额修改接受' } },
{ path: 'brtudp', component: () => import('~/business/brtudp/views'), name: 'brtudp', meta: { title: '进口信用证单据承兑' } },
{ path: 'letopn', component: () => import('~/business/letopn/views'), name: 'letopn', meta: { title: '出口保函通知' } },
{ path: 'brtame', component: () => import('~/business/brtame/views'), name: 'brtame', meta: { title: '进口信用证单据提货担保修改' } },
{ path: 'infbrd', component: () => import('~/business/infbrd/views'), name: 'infbrd', meta: { title: '进口信用证单据入口交易' } },
{ path: 'inflid', component: () => import('~/business/inflid/views'), name: 'inflid', meta: { title: '信用证入口交易' } },
......
......@@ -276,7 +276,7 @@ export default {
if (menuItem.pntmiu === undefined || menuItem.pntmiu === "") {
const children = [];
// 此处为了兼容新的保函模块
if (['4', '13'].includes(menuItem.inifrm)) {
if (['4', '13','3'].includes(menuItem.inifrm)) {
menuItem.path = "/business-new";
} else {
menuItem.path = "/business";
......
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