Commit 229b6dec 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 5eeaeec6 3547d5b2
......@@ -113,9 +113,9 @@ export default {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'GID',
objinr: model.gidgrp.rec.objinr,
ownref: model.gidgrp.rec.ownref,
objtyp: 'bed',
objinr: model.bedgrp.rec.objinr,
ownref: model.bedgrp.rec.ownref,
},
};
return params
......@@ -124,9 +124,9 @@ export default {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'lid',
objinr: model.brdgrp.rec.objinr,
ownref: model.brdgrp.rec.ownref,
objtyp: 'bed',
objinr: model.bedgrp.rec.objinr,
ownref: model.bedgrp.rec.ownref,
swiftflg: model.brtp.swiftflg,
},
};
......
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,
};
}
constructor() {
this.data = {
brdgrp: {
adv: {
pts: new Pts().data,
},
prb: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
acb: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
apl: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
ben: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
blk: {
chaded: '',
docdisflg: '',
chaadd: '',
docdis: '',
},
rec: {
inr: '',
branchinr: '',
totcur: '',
ownref: '',
disdat: '',
totamt: '',
nam: '',
docprbrol: ''
},
cbs: {
opn1: {
cur: ''
},
opn2: {
cur: ''
},
max: {
cur: '',
amt: ''
},
max2: {
amt: ''
}
},
matp: {
mattxtlab: ''
}
},
brtp: {
furide: '',
matp: {
mattxtlab: ''
}
},
gidgrp: {
blk: {
chaded: '',
amtspc: '',
accspc: '',
},
acb: {
pts: new Pts().data,
},
apl: {
pts: new Pts().data,
},
ben: {
pts: new Pts().data,
},
ctr: {
pts: new Pts().data,
},
iss: {
pts: new Pts().data,
},
rec: {
expdat: '',
purpos: '',
liadat: '',
ownref: '',
exptyp: '',
purcan: '',
nam: '',
gartyp: '',
purposin: '',
reddat: '',
redamt: '0',
outcur: '',
redcur: '',
outamt: '0',
branchinr: '',
},
cbs: {
opn1: {
cur: '',
amt: '0',
},
max: {
cur: '',
amt: '0',
},
},
},
sndmsg: '',
ledgrp: {
adv: {
pts: new Pts().data,
},
prb: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
acb: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
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,
};
}
}
......@@ -43,13 +43,13 @@
</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="
<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>
" disabled></c-input-currency>
</el-form-item>
</c-col>
<c-col :span="7">
......@@ -213,6 +213,4 @@ export default {
created: function () { },
}
</script>
<style>
</style>
<style></style>
......@@ -18,30 +18,26 @@
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="表外记账" name="engp">
<c-content>
<!-- 表外记账 -->
<m-engp :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>
<!--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="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>
<!--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">
......@@ -64,8 +60,8 @@
</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-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>
......@@ -79,21 +75,26 @@
</div>
</template>
<script>
import Betcan from "~/model/Betcan";
import event from '../event';
import operationFunc from "~/mixin/operationFunc";
import CodeTable from "~/config/CodeTable"
import formRules from '../model/check'
import Betcan from "../model";
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 Ccvpan from "~/components/business/ccvpan/views";
import Setmod from "~/components/business/setmod/views";
// import Glepan from "~/components/business/glepan/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";
import Glepan from "~/components/business/glentry/views";
export default {
name: 'Betcan',
......@@ -103,10 +104,10 @@ export default {
'm-canp': Canp,
'm-limitbody': Limitbody,
'm-engp': Engp,
"m-ccvpan": Ccvpan,
// "m-ccvpan": Ccvpan,
"m-setmod": Setmod,
"m-glentry": Glentry,
// 'm-glepan': Glepan,
'm-glepan': Glepan,
'm-addbcb': Addbcb,
'm-docpan': Docpan,
'm-doctre': Doctre,
......@@ -124,19 +125,17 @@ export default {
trnType: '',
model: new Betcan().data,
rules: formRules,
codes: {
...CodeTable
},
activeNames: ["setpan"],
codes: {
...CodeTable
},
activeNames: ["setpan"],
}
},
methods: {},
mounted () {
this.init()
mounted() {
this.init()
},
}
</script>
<style>
</style>
<style></style>
......@@ -19,14 +19,20 @@ export default {
},
buildCommonData (model, trnName) {
let ptsptaList = [];
if (model.gidgrp.apl.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.gidgrp.apl));
if (model.brdgrp.prb.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.prb));
}
if (model.gidgrp.adv.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.gidgrp.adv));
if (model.brdgrp.apl.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.apl));
}
if (model.gidgrp.ben.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.gidgrp.ben));
if (model.brdgrp.ben.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.ben));
}
if (model.brdgrp.oth.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.oth));
}
if (model.brdgrp.acb.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.brdgrp.acb));
}
let dataObj = {
rec: {
......
......@@ -30,8 +30,8 @@ export default {
// brdinr: this.$route.query.inr,
brdgrp:{
rec:{
// inr: this.$route.query.inr
inr: '00000484'
inr: this.$route.query.inr
// inr: '00000484'
}
},
});
......@@ -104,7 +104,7 @@ export default {
// 业务信息=》基本信息=》保函编号-----获取保函编号
async queryOwnref() {
let params = {
ptainr: this.model.gidgrp.apl.pts.ptainr,
ptainr: this.model.brdgrp.apl.pts.ptainr,
businessType: 'LG',
tbl: 'LG',
};
......@@ -112,7 +112,7 @@ export default {
let res = await Api.post('/service/brtdcr/getOwnRef', params);
if (res.respCode == SUCCESS) {
loading.close();
this.model.gidgrp.rec.ownref = res.data;
this.model.brdgrp.rec.ownref = res.data;
}
},
// 获取brtdcr弹框表格数据
......@@ -128,6 +128,7 @@ export default {
this.root.promptData.data = res.data.ptaInfos;
this.root.promptData.type = type;
}
debugger
},
// 选中brtdcr弹框表格的行数据
async selectGridEtyPromptData(row) {
......@@ -136,7 +137,8 @@ export default {
};
let res = await Api.post('/service/ptspta/fetch', params);
if (res.respCode == SUCCESS) {
this.$set(this.model.gidgrp, row.role.toLowerCase(), res.data);
// this.$set(this.model.brdgrp, row.role.toLowerCase(), res.data);
this.$set(this.model.brdgrp, row.role.toLowerCase() , res.data);
}
},
// 业务信息=》基本信息=》支出目的
......@@ -144,23 +146,23 @@ export default {
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);
}
},
// 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);
......
......@@ -3,51 +3,6 @@ import Pub from '~/components/business/commonModel/index.js';
export default class Brtdcr {
constructor() {
this.data = {
gitp:{
swiftflg: '',
},
gidgrp:{
ghd: {
// wahnum: '',
// remark: '',
// bustyp: '',
segtyp: '',
},
rec:{
ownref:''
},
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,
},
apl: {
pts: new Pts().data,
},
adv: {
pts: new Pts().data,
},
ctr: {
pts: new Pts().data,
},
cbs: {
max: {
cur: '',
amt: '',
},
},
},
brtp: {
matp:{
mattxtlab:''
......@@ -57,7 +12,14 @@ export default class Brtdcr {
},
oth:{
pts: new Pts().data,
}
},
prbp: {
ptsget: {
sdamod: {
seainf: '',
},
},
},
},
......
......@@ -164,72 +164,122 @@
<c-col :span="24">
<c-col :span="12">
<c-col :span="24">
<el-form-item
label="交单人"
prop="brdgrp.rec.docprbrol"
>
<c-select
disabled
v-model="model.brdgrp.rec.docprbrol"
style="width: 100%"
placeholder="请选择内容"
>
<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-ptap1
:model="model"
:argadr="{
title: '',
grp: 'brdgrp',
rol: 'prb',
}"
:disabled="this.flag1"
>
</c-ptap1>
</c-col>
<c-col :span="24">
<el-form-item label="交单人" prop="brdgrp.rec.docprbrol">
<c-select
disabled
:code="codes.docprbrol"
v-model="model.brdgrp.rec.docprbrol"
style="width: 100%"
placeholder="请选择"
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="交单人地址编码" prop="brdgrp.prb.pts.extkey">
<c-fullbox>
<c-input
v-model="model.brdgrp.prb.pts.extkey"
maxlength="16"
placeholder="请输入地址编码"
:disabled="model.brdgrp.rec.docprbrol != 'PRB'"
@keyup.enter.native="
queryGridEtyPromptDialogData('PRB', 'C')
"
></c-input>
<template slot="footer">
<c-button
style="margin: 0 10px 0 10px; padding: 0 12px"
size="small"
type="primary"
@click="model.brtp.prbp.ptsget.sdamod.seainf"
icon="el-icon-search"
>
</c-button>
<c-button
style="margin: 0 0"
size="small"
type="primary"
icon="el-icon-info"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="名称地址" prop="brdgrp.prb.pts.adrblk">
<c-input
:rows="4"
type="textarea"
v-model="model.brdgrp.prb.pts.adrblk"
maxlength="300"
show-word-limit
placeholder="请输入名称地址"
:disabled="model.brdgrp.rec.docprbrol != 'PRB'"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="付款人" prop="brdgrp.rec.payrol">
<c-select
disabled
:code="codes.payrol"
v-model="model.brdgrp.rec.payrol"
style="width: 100%"
placeholder="请选择"
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="付款人地址编码" prop="brdgrp.oth.pts.extkey">
<c-fullbox>
<c-input
v-model="model.brdgrp.oth.pts.extkey"
maxlength="16"
placeholder="请输入地址编码"
disabled
@keyup.enter.native="
queryGridEtyPromptDialogData('OTH', 'C')
"
></c-input>
<template slot="footer">
<c-button
style="margin: 0 10px 0 10px; padding: 0 12px"
size="small"
type="primary"
@click="model.brtp.prbp.ptsget.sdamod.seainf"
icon="el-icon-search"
>
</c-button>
<c-button
style="margin: 0 0"
size="small"
type="primary"
icon="el-icon-info"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="名称地址" prop="brdgrp.oth.pts.adrblk">
<c-input
disabled
:rows="4"
type="textarea"
v-model="model.brdgrp.oth.pts.adrblk"
maxlength="300"
show-word-limit
placeholder="请输入名称地址"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="付款人" prop="brdgrp.rec.payrol">
<c-select
disabled
v-model="model.brdgrp.rec.payrol"
style="width: 100%"
placeholder="请选择付款人"
>
<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-ptap1
:model="model"
:argadr="{
title: '',
grp: 'brtp',
rol: 'oth',
}"
:disabled="true"
:isAdrblk="false"
:disabled1="true"
>
</c-ptap1>
</c-col>
</c-col>
<c-col :span="12">
......
......@@ -81,6 +81,13 @@
:handleStash="handleStash">
</c-function-btn>
<c-grid-ety-prompt-dialog
ref="etyDialog"
:promptData="promptData"
v-on:select-ety="selectGridEtyPromptData"
>
</c-grid-ety-prompt-dialog>
</div>
</c-page>
</div>
......
......@@ -383,6 +383,31 @@
</el-pagination>
</div>
</c-col>
<!-- 点击处理ba弹框 -->
<el-dialog
:visible.sync="initdialog"
title="交易列表"
append-to-body
width="60%"
>
<div class="dialog-wrap">
<div class="btn-group-wrap">
<div
class="btn-item"
v-for="(item, index) in handlerDataList"
:key="index"
>
<el-button
type="primary"
:disabled="item.value === 'N'"
@click="handleClick(item)"
>{{ item.label }}
</el-button>
</div>
</div>
</div>
</el-dialog>
</div>
<m-busbtn
......@@ -408,10 +433,10 @@ export default {
components: { "m-busbtn": BusNavbar },
data() {
return {
letselModel: new LetselModel().data,
// letselModel: new LetselModel().data,
curinr: "",
ownref: "",
dialogTableVisible: false,
// dialogTableVisible: false,
trnData: {
columns: [
{
......@@ -541,22 +566,38 @@ export default {
initdialog: false,
handlerDataList: [],
btnRouteMap: [
// {
// label: '出口信用证预开立',
// route: '/business-new/betnot'
// },
// {
// label: '出口信用证开立',
// route: '/business-new/letopn'
// },
// {
// label: '非我行通知及收单行登记',
// route: '/business-new/letdrw'
// },
// {
// label:'出口信用证补通知',
// route:'/business-new/letrsv'
// },
{
label: '收单',
route: '/business-new/letdrv'
},
{
label: '修改通知',
route: '/business-new/letame'
},
{
label: '注销',
route: '/business-new/letcan'
},
{
label:'收单加补录',
route:'/business-new/letdrw'
},
{
label:'转让证开立',
route:'/business-new/lttopn'
},
{
label:'开证',
route:'/business-new/letopn'
},
{
label:'保兑',
route:'/business-new/letamc'
},
{
label:'通知到单',
route:'/business-new/letdav'
},
],
currentHandleRow: {},
};
......@@ -567,7 +608,27 @@ export default {
};
</script>
<style>
.m-table-search {
padding: 20px 0px 10px 0px;
.pagination-box {
width: 100%;
height: 30px;
display: flex;
align-items: center;
justify-content: flex-end;
padding: 0 10px;
background: #fff;
margin-top: 5px;
}
.btn-group-wrap {
max-height: 200px;
width: 100%;
overflow-y: auto;
display: flex;
align-items: flex-start;
justify-content: flex-start;
flex-wrap: wrap;
}
.btn-item {
margin-bottom: 10px;
margin-right: 10px;
}
</style>
......@@ -27,7 +27,7 @@ export default {
}
let dataObj = {
rec: {
objtyp: 'lid',
objtyp: 'led',
ownref: model.brdgrp.rec.ownref,
opndat: model.brdgrp.rec.opndat,
expdat: model.brdgrp.rec.expdat,
......@@ -113,9 +113,9 @@ export default {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'GID',
objinr: model.gidgrp.rec.objinr,
ownref: model.gidgrp.rec.ownref,
objtyp: 'led',
objinr: model.ledgrp.rec.objinr,
ownref: model.ledgrp.rec.ownref,
},
};
return params
......@@ -124,9 +124,9 @@ export default {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'lid',
objinr: model.brdgrp.rec.objinr,
ownref: model.brdgrp.rec.ownref,
objtyp: 'led',
objinr: model.ledgrp.rec.objinr,
ownref: model.ledgrp.rec.ownref,
swiftflg: model.brtp.swiftflg,
},
};
......
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'}
......
import Pts from '~/components/business/commonModel/Pts';
import Pub from '~/components/business/commonModel/index.js';
export default class Letcan {
constructor() {
this.data = {
brdgrp: {
adv:{
pts: new Pts().data,
},
prb: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
acb: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
apl: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
ben: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
blk: {
chaded: '',
docdisflg: '',
chaadd: '',
docdis: '',
},
rec: {
totcur: '',
ownref: '',
disdat: '',
totamt: '',
nam: '',
docprbrol: ''
},
cbs: {
opn1: {
cur: ''
constructor() {
this.data = {
brdgrp: {
adv: {
pts: new Pts().data,
},
opn2: {
cur: ''
prb: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
max: {
cur: '',
amt: ''
acb: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
max2: {
amt: ''
}
},
matp: {
mattxtlab: ''
}
},
brtp: {
furide: '',
matp: {
mattxtlab: ''
}
},
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: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
ben: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
blk: {
chaded: '',
docdisflg: '',
chaadd: '',
docdis: '',
},
rec: {
totcur: '',
ownref: '',
disdat: '',
totamt: '',
nam: '',
docprbrol: ''
},
cbs: {
opn1: {
cur: ''
},
opn2: {
cur: ''
},
max: {
cur: '',
amt: ''
},
max2: {
amt: ''
}
},
matp: {
mattxtlab: ''
}
},
apl: {
pts: {
ref: '',
nam: ''
brtp: {
furide: '',
matp: {
mattxtlab: ''
}
},
avbnam: ''
},
letp0: {
aammod: {
addamtflg: ''
},
cnftxt: ''
},
letcanf: {
strinf: ''
},
rmbclm: {
acwacw: {
pts: {
ref: ''
}
sndmsg: '',
ledgrp: {
adv: {
pts: new Pts().data,
},
prb: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
acb: {
adrelc: '',
dbfadrblkcn: '',
namelc: '',
pts: new Pts().data,
},
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: ''
},
valdat: '',
rmbrmb: {
pts: {
ref: ''
}
letp0: {
aammod: {
addamtflg: ''
},
cnftxt: ''
},
bebbeb: {
pts: {
ref: ''
}
letcanf: {
strinf: ''
},
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,
};
}
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 v-model="activeNames">
<el-collapse-item title="提示信息" name="coninfp">
<m-coninfp :model="model" :codes="codes" />
</el-collapse-item>
......
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames" @change="handleChange">
<el-collapse v-model="activeNames">
<el-collapse-item title="取消信息" name="canp">
<m-canp :model="model" :codes="codes" />
</el-collapse-item>
......
......@@ -35,8 +35,6 @@
rol: 'rmbrmb',
}"
:noRef="true"
@onSeainf="onSeainf"
@onAplpDet="onRmbpDet"
:disabledExtkey="rmbrolRefFlag"
:disabled="rmbrolAdrblkFlag"
>
......@@ -65,8 +63,6 @@
rol: 'acwacw',
}"
:noRef="true"
@onSeainf="onSeainf"
@onAplpDet="onAcwpDet"
>
</c-ptap>
</c-col>
......@@ -93,8 +89,6 @@
rol: 'bebbeb',
}"
:noRef="true"
@onSeainf="onSeainf"
@onAplpDet="onBebpDet"
>
</c-ptap>
</c-col>
......
......@@ -63,13 +63,24 @@
</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-grid-ety-prompt-dialog
ref="etyDialog"
:promptData="promptData"
>
</c-grid-ety-prompt-dialog>
<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>
......@@ -91,6 +102,7 @@ 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";
import Glentry from "~/components/business/glentry/views"
export default {
......@@ -106,6 +118,7 @@ export default {
'm-doctre': Doctre,
'm-limitbody': Limitbody,
'm-addbcb': Addbcb,
'm-glentry': Glentry,
},
provide() {
return {
......
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.bedgrp.apl.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.bedgrp.apl));
}
if (model.bedgrp.iss.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.bedgrp.iss));
}
if (model.bedgrp.prb.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.bedgrp.prb));
}
if (model.bedgrp.oth.pts.extkey) {
ptsptaList.push(this.buildPtspta(model.bedgrp.oth));
}
let dataObj = {
rec: {
objtyp: 'BED',
ownref: model.bedgrp.rec.ownref,
opndat: model.bedgrp.rec.opndat,
expdat: model.bedgrp.rec.expdat,
branchInr: model.bedgrp.rec.branchInr,
hndtyp: model.bedgrp.rec.hndtyp,
gartyp: model.bedgrp.rec.gartyp,
fingua: model.bedgrp.rec.fingua,
// segtyp: model.bedgrp.ghd.segtyp,
fromflg: model.bedgrp.rec.fromflg,
othersno: model.bedgrp.rec.othersno,
sndto: model.bedgrp.rec.sndto,
// swiftflg: model.gitp.swiftflg,
giduil: model.bedgrp.rec.giduil,
purpos: model.bedgrp.rec.purpos,
revflg: model.bedgrp.rec.revflg,
cnfsta: model.bedgrp.rec.cnfsta,
},
cbsMap: {
MAX: model.bedgrp.cbs.max,
OPN1: model.bedgrp.cbs.opn1,
MAC: model.bedgrp.cbs.mac,
MAC2: model.bedgrp.cbs.mac2,
OPC2: model.bedgrp.cbs.opc2,
CNF: model.bedgrp.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: 'BED',
objinr: model.bedgrp.rec.objinr,
ownref: model.bedgrp.rec.ownref,
},
};
return params
},
buildDoctre (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'BED',
objinr: model.bedgrp.rec.objinr,
ownref: model.bedgrp.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)),
trnmod:{
trn:JSON.parse(localStorage.getItem('review_'+this.trnName))
}
}
const res = await Api.post('/service/letdrv/init', {
...params,
transName: this.trnName,
userId: window.sessionStorage.userId || 'ZL',
// brdinr: this.$route.query.inr,
// brdgrp:{
// rec:{
// inr: this.$route.query.inr
// // inr: '00000484'
// }
// },
});
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/letdrv/getOwnRef', params);
if (res.respCode == SUCCESS) {
loading.close();
this.model.gidgrp.rec.ownref = res.data;
}
},
// 获取letdrv弹框表格数据
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;
}
},
// 选中letdrv弹框表格的行数据
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/letdrv/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
}
}
},
};
import Pts from '~/components/business/commonModel/Pts';
import Pub from '~/components/business/commonModel/index.js';
export default class Letdrv {
constructor() {
this.data = {
betp: {
aammod: {
addamtflg: ''
},
folwupopt: '',
docgrdm:{
docgrd:'',
},
prbp: {
ptsget: {
sdamod: {
seainf: "", // .betp.prbp.ptsget.sdamod.seainf
// dadsnd: "", // Drag Drop Sender .betp.prbp.ptsget.sdamod.dadsnd
},
},
},
},
number: '',
ledgrp: {
rec: {
revflg: '',
expdat: '',
expplc: '',
lcrtyp: '',
shpdat: '',
ownref: '',
avbby: '',
nam: '',
inr: '',
opndat: '',
utlnbr: ''
},
cbs: {
opn1: {
cur: '',
amt: ''
},
nom1: {
cur: '',
amt: ''
}
},
avbnam: '',
},
bedgrp: {
blk: {
matper: '',
docdisflg: '',
setinsbe: '',
docdis: '',
comcon: '',
intdis: '',
},
rec: {
rcvdat: '',
doctypcod: '',
shpdat: '',
ownref: '',
invtyp: '',
payrol: '',
orddat: '',
matdat: '',
dscinsflg: '',
nam: '',
docprbrol: ''
},
cbs: {
opn2: {
cur: '',
amt: ''
},
max: {
cur: '',
amt: ''
},
max2: {
cur:'',
amt: ''
}
},
srm: {
djuusr: '',
djuref: '',
djudat: '',
djutyp: ''
},
apl:{
pts:new Pts().data
},
iss:{
pts:new Pts().data
},
prb:{
pts:new Pts().data
},
oth:{
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-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 commonProcess from "~/mixin/commonProcess";
import event from '../event'
import Coninfp from "~/views/Public/Coninfp";
export default {
components: {
"m-coninfp": Coninfp,
//"m-addbcb1": Addbcb1,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {
activeNames: ["coninfp"],
};
},
methods: {},
created: function () {},
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<div class="eibs">
<!-- ============左边================= -->
<c-col :span="12" style="padding-right: 20px;">
<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="3500"
show-word-limit
placeholder="请输入不符点"
:disabled="!docdisflg"
></c-input>
<template slot="footer">
<c-button
icon="el-icon-more"
style="margin-left: 10px; padding: 0 10px"
size="small"
type="primary"
:disabled="!docdisflg"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<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="1300"
show-word-limit
placeholder="请输入不符点"
></c-input>
<template slot="footer">
<c-button
icon="el-icon-more"
style="margin-left: 10px; padding: 0 10px"
size="small"
type="primary"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item
label="评论和结论"
prop="bedgrp.blk.comcon"
style="width: 100%"
>
<c-fullbox>
<c-input
type="textarea"
v-model="model.bedgrp.blk.comcon"
maxlength="1300"
show-word-limit
placeholder="请输入内容"
></c-input>
<template slot="footer">
<c-button
icon="el-icon-more"
style="margin-left: 10px; padding: 0 10px"
size="small"
type="primary"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item
label="此单据结算指示"
prop="bedgrp.blk.setinsbe"
style="width: 100%"
>
<c-fullbox>
<c-input
type="textarea"
v-model="model.bedgrp.blk.setinsbe"
maxlength="390"
show-word-limit
placeholder="请输入指示内容"
></c-input>
<template slot="footer">
<c-button
icon="el-icon-more"
style="margin-left: 10px; padding: 0 10px"
size="small"
type="primary"
>
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
</c-col>
<!-- ============右边================= -->
<c-col :span="12" style="padding-left: 20px;">
<c-col :span="24">
<el-form-item label="进一步处理" prop="betp.folwupopt">
<c-fullbox>
<c-select
v-model="model.betp.folwupopt"
style="width: 100%"
placeholder="请输入"
disabled
>
<el-option
v-for="item in codes.folwupopt1"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</c-select>
<template slot="footer">
<el-form-item label="" prop="model.bedgrp.blk.docdisflg">
<c-checkbox
v-model="docdisflg"
style="margin-left: 10px"
>不符点修改</c-checkbox
>
</el-form-item>
</template>
</c-fullbox>
</el-form-item>
</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="请选择"
>
<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="false"
:disabled="!(model.bedgrp.rec.payrol == 'OTH')"
:isAdrblk="true"
:disabledRef="payrolFlag"
:disabledExtkey="payrolFlag"
>
</c-ptap>
</c-col>
</c-col>
<!-- next part -->
<c-docpre
:model="model"
:argadr="{
path: 'bedgrp.blk.prsdoc',
grp: 'betp',
code: 'docpre',
}"
>
</c-docpre>
</div>
</template>
<script>
import event from '../event';
import Ptap from "~/views/Public/Ptap";
import Docpre from "~/views/Public/Docpre";
export default {
name: "Docpre",
components: { "c-ptap": Ptap, "c-docpre": Docpre },
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {};
},
computed: {
docdisflg: {
get() {
return this.model.bedgrp.blk.docdisflg != "";
},
set(val) {
this.model.bedgrp.blk.docdisflg = val ? "X" : "";
this.model.bedgrp.blk.docdis = '';
},
},
payrolFlag: {
get() {
return (
this.model.bedgrp.rec.payrol == "AVB" ||
this.model.bedgrp.rec.payrol == "ISS"
);
},
},
},
methods: {},
created: function () {},
};
</script>
<style>
</style>
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames">
<el-collapse-item title="收到单据" name="drv">
<m-drv :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="不符点/指示信息" name="dscins">
<m-dscins :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="货权单据" name="srmp">
<m-srmp :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import event from '../event'
import Drv from "./Drv";
import Dscins from "./Dscins";
import Srmp from "./Srmp";
export default {
components: {
"m-drv": Drv,
"m-dscins": Dscins,
"m-srmp": Srmp,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {
activeNames: ["drv"],
};
},
methods: {},
created: function () {},
computed: {},
};
</script>
<style>
.marginLable {
padding-left: 160px;
}
</style>
<template>
<div class="eibs">
<!-- ============左边================= -->
<c-col :span="12" style="padding-right: 20px;">
<!-- S0000007 : 单据类型 -->
<c-col :span="24">
<el-form-item label="单据类型" prop="bedgrp.srm.djutyp">
<c-select
v-model="model.bedgrp.srm.djutyp"
style="width: 100%"
placeholder="请选择单据类型"
>
<!-- @change="selectOrCheckboxRule('bedgrp.srm.djutyp')"-->
<el-option
v-for="item in codes.djutyp"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</c-select>
</el-form-item>
</c-col>
<!-- S0000003 : 单据出具人 -->
<c-col :span="24">
<c-form-item label="单据出具人" prop="bedgrp.srm.djuusr">
<c-input
v-model="model.bedgrp.srm.djuusr"
maxlength="80"
placeholder="请输入单据出具人"
:disabled="model.bedgrp.srm.djutyp=='D'||model.bedgrp.srm.djutyp==''"
></c-input>
</c-form-item>
</c-col>
</c-col>
<!-- ============右边================= -->
<c-col :span="12" style="padding-left: 20px;">
<!-- S0000004 : 单据出具日期 -->
<c-col :span="24">
<el-form-item label="单据出具日期" prop="bedgrp.srm.djudat">
<c-date-picker
type="date"
v-model="model.bedgrp.srm.djudat"
style="width: 100%"
placeholder="请选择单据出具日期"
:disabled="model.bedgrp.srm.djutyp=='D'||model.bedgrp.srm.djutyp==''"
></c-date-picker>
</el-form-item>
</c-col>
<!-- S0000005 : 货权单据编号 -->
<c-col :span="24">
<c-form-item label="货权单据编号" prop="bedgrp.srm.djuref">
<c-input
v-model="model.bedgrp.srm.djuref"
maxlength="40"
placeholder="请输入货权单据编号"
:disabled="model.bedgrp.srm.djutyp=='D'||model.bedgrp.srm.djutyp==''"
></c-input>
</c-form-item>
</c-col>
</c-col>
</div>
</template>
<script>
import Api from "~/service/Api";
import commonProcess from "~/mixin/commonProcess";
import CodeTable from "~/config/CodeTable";
import Event from "~/model/Letdrv/Event";
export default {
inject: ["root"],
props: ["model", "codes"],
mixins: [commonProcess],
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>
<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>
<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"
>
</c-grid-ety-prompt-dialog>
<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 event from '../event';
import operationFunc from "~/mixin/operationFunc";
import formRules from '../model/check';
import CodeTable from "~/config/CodeTable";
import Letdrv from "../model";
import Drv from "./Drv";
import Dscins from "./Dscins";
import Srmp from "./Srmp";
import Addbcb from "./Addbcb";
import Ovwp from "./Ovwp";
import Engp from "~/components/business/engp/views";
import Doctre from "~/components/business/doctre/views";
import Setmod from "~/components/business/setmod/views";
import Coninfp from "~/components/business/coninfp/views";
import Docpan from "~/components/business/docpan/views";
import Limitbody from "~/components/business/limitbody/views";
import Glentry from "~/components/business/glentry/views";
export default {
name: "Letdrv",
components: {
"m-addbcb": Addbcb,
"m-ovwp": Ovwp,
"m-drv": Drv,
"m-dscins": Dscins,
"m-engp": Engp,
"m-limitbody": Limitbody,
"m-docpan": Docpan,
"m-doctre": Doctre,
"m-coninfp": Coninfp,
"m-setmod": Setmod,
"m-srmp": Srmp,
"m-glentry": Glentry,
},
provide() {
return {
root: this,
};
},
mixins: [event, operationFunc], // 里面包含了Default、Check等的公共处理
data() {
return {
tabVal: "ovwp",
trnName: "letdrv",
trnType: "",
model: new Letdrv().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()
},
};
</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.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 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)),
trnmod:{
trn:JSON.parse(localStorage.getItem('review_'+this.trnName))
}
}
if ( typeof(this.$route.query.inr) == 'string' ){
params.spt = null
params.trnmod.trn =null
}
const res = await Api.post('/service/letdrw/init', {
...params,
transName: this.trnName,
userId: window.sessionStorage.userId || 'ZL',
ledgrp:{
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.ledgrp.apl.pts.ptainr,
businessType: 'LC',
tbl: 'LC',
};
const loading = this.loading();
let res = await Api.post('/service/letdrw/getOwnRef', params);
if (res.respCode == SUCCESS) {
loading.close();
this.model.ledgrp.rec.ownref = res.data;
}
},
// 获取gitopn弹框表格数据
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);
}
},
// 业务信息=》基本信息=》支出目的
purposChange(key, value) {
this.handleChangeForm(key, value);
},
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
}
},
},
};
import Api from "~/service/Api"
import Pts from "../Common/Pts"
import Pub from "../Public" //引入公共面板
export default class Letdrw{
constructor () {
this.data = {
betp: {
folwupopt: ''
},
number: '',
ledgrp: {
a2b: {
pts: new Pts().data,
},
blk: {
dftat: '',
revnotes: '',
feetxt: '',
mixdet: '',
revcls: '',
shpper: '',
addamtcov: '',
avbwthtxt: '',
defdet: ''
},
rec: {
tenmaxday: '',
nomton: '',
expplc: '',
stacty: '',
revtyp: '',
revtimes: '',
opndat: '',
nomtop: '',
utlnbr: '',
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: {
opn1: {
cur: '',
amt: ''
},
opn2: {
cur: '',
amt: ''
},
max: {
cur: '',
amt: ''
},
nom1: {
cur: '',
amt: ''
},
max2: {
cur: '',
amt: ''
}
},
iss: {
pts: new Pts().data,
},
ben: {
pts: new Pts().data,
},
avb: {
pts: new Pts().data,
},
apl: {
pts: new Pts().data,
},
avbnam: ''
},
letp: {
usr: {
extkey: ''
},
letp0: {
aammod: {
addamtflg: ''
},
cnftxt: ''
},
aamp: {
aammod: {
addamtflg: ''
}
}
},
rmbclm: {
acwacw: {
pts: new Pts().data,
},
valdat: '',
rmbrmb: {
pts: new Pts().data,
},
bebbeb: {
pts: new Pts().data,
},
rmbrol: ''
},
bedgrp: {
blk: {
docdisflg: '',
setinsbe: '',
docdis: '',
comcon: '',
intdis: ''
},
rec: {
rcvdat: '',
doctypcod: '',
ownref: '',
shpdat: '',
payrol: '',
orddat: '',
matdat: '',
dscinsflg: '',
nam: '',
docprbrol: ''
},
oth: {
pts: new Pts().data,
},
cbs: {
opn2: {
cur: ''
},
max: {
cur: '',
amt: ''
},
max2: {
amt: ''
}
},
srm: {
djuusr: '',
djuref: '',
djudat: '',
djutyp: ''
}
},
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="请输入附加金额"
></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="覆盖" prop="ledgrp.blk.addamtcov">
<c-input
type="textarea"
v-model="model.ledgrp.blk.addamtcov"
maxlength="140"
show-word-limit
placeholder="请输入"
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">
<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 event from "../event";
import Utils from "~/utils";
//import Addbcb1 from "~/views/Public/Addbcb1";
import Coninfp from "~/views/Public/Coninfp";
export default {
components: {
"m-coninfp": Coninfp,
//"m-addbcb1": Addbcb1,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {
activeNames: ["coninfp"],
};
},
methods: {
},
created: function () {},
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<div class="eibs">
<!--================================左边================================== -->
<!-- ============左边================= -->
<c-col :span="12" style="padding-right: 20px;">
<c-col :span="24" >
<c-col :span="21">
<el-form-item label="不符点" prop="bedgrp.blk.docdis">
<c-input
type="textarea"
v-model="model.bedgrp.blk.docdis"
maxlength="3500"
:rows="3"
show-word-limit
placeholder="请输入不符点"
:disabled="model.bedgrp.blk.docdisflg==''"
></c-input>
</el-form-item>
</c-col>
<c-col :span="3">
<!-- @click="onDocdisButtxmsel" -->
<c-button
size="small"
type="primary"
icon="el-icon-more"
@click="showGridPromptDialog('betp.docdis.buttxmsel', null, null,{TXT: 'bedgrp.blk.docdis'}, {TXT: false},'doxpDialog')"
:disabled="model.bedgrp.blk.docdisflg==''"
>
</c-button>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="21">
<el-form-item label="初审的不符点" prop="bedgrp.blk.intdis">
<c-input
type="textarea"
v-model="model.bedgrp.blk.intdis"
maxlength="1300"
:rows="3"
show-word-limit
placeholder="请输入初审的不符点"
></c-input>
</el-form-item>
</c-col>
<c-col :span="3">
<!-- @click="onIntdisButtxmsel" -->
<c-button
size="small"
type="primary"
icon="el-icon-more"
@click="showGridPromptDialog('betp.intdis.buttxmsel', null, null,{TXT: 'bedgrp.blk.intdis'}, {TXT: false},'doxpDialog')"
>
</c-button>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="21">
<el-form-item label="我方对交易的注释和结论" prop="bedgrp.blk.comcon">
<c-input
type="textarea"
v-model="model.bedgrp.blk.comcon"
maxlength="1300"
:rows="3"
show-word-limit
placeholder="请输入我方对交易的注释和结论"
></c-input>
</el-form-item>
</c-col>
<c-col :span="3">
<!-- @click="onComconButtxmsel" -->
<c-button
size="small"
type="primary"
icon="el-icon-more"
@click="showGridPromptDialog('betp.comcon.buttxmsel', null, null,{TXT: 'bedgrp.blk.comcon'}, {TXT: false},'doxpDialog')"
>
</c-button>
</c-col>
</c-col>
<c-col :span="24">
<c-col :span="21">
<el-form-item
label="结算指示"
prop="bedgrp.blk.setinsbe"
>
<c-input
type="textarea"
v-model="model.bedgrp.blk.setinsbe"
maxlength="390"
:rows="3"
show-word-limit
placeholder="请输入结算指示"
></c-input>
</el-form-item>
</c-col>
<c-col :span="3">
<!-- @click="onSetinstxmButtxmsel" -->
<c-button
size="small"
type="primary"
icon="el-icon-more"
@click="showGridPromptDialog('betp.setinstxm.buttxmsel', null, null,{TXT: 'bedgrp.blk.setinsbe'}, {TXT: false},'doxpDialog')"
>
</c-button>
</c-col>
</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.docdisflg" label-width="120px" style=" float:right;">
<c-checkbox v-model="model.bedgrp.blk.docdisflg"
>不符点修改</c-checkbox>
</el-form-item>
</c-col>
<!-- Futher Handing -->
<c-col :span="24">
<el-form-item label="进一步处理" prop="betp.folwupopt">
<c-select
v-model="model.betp.folwupopt"
style="width: 100%"
placeholder="请选择进一步处理"
:code="codes.folwupopt"
disabled
>
</c-select>
</el-form-item>
</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="请选择付款人"
:code="codes.rolall"
disabled
>
</c-select>
</el-form-item>
</c-col>
<!-- Referance -->
<c-col :span="24">
<el-form-item label="参考号" prop="bedgrp.oth.pts.ref">
<c-input
v-model="model.bedgrp.oth.pts.ref"
maxlength="16"
placeholder="请输入参考号"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '',
grp: 'bedgrp',
rol: 'oth',
}"
:noRef="true"
:isAdrblk="false"
:haveAdrLabel="false"
:disabledExtkey="true"
:disabled="true"
>
</c-ptap>
</c-col>
</c-col>
<c-col :span="24">
<c-docpre :model="model" :argadr="{
path: 'bedgrp.blk.prsdoc',
grp: 'betp',
code: 'docpre',
}"></c-docpre>
</c-col>
</div>
</template>
<script>
import Api from '~/service/Api'
import CodeTable from '~/config/CodeTable'
import event from "../event";
import Ptap from "~/views/Public/Ptap"
import Docpre from "~/views/Public/Docpre"
export default {
components: {
"c-ptap": Ptap,
"c-docpre": Docpre,
},
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="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="drv">
<m-drv :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item
title="Discr./Instr."
name="dscins"
v-if="model.bedgrp.rec.dscinsflg == 'X'"
>
<m-dscins :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-item title="货权单据" name="srmp">
<m-srmp :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="索偿(MT 742)" name="rcldetp">
<m-rcldetp :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import Api from "~/service/Api";
import event from "../event";
import CodeTable from "~/config/CodeTable";
import Ovwp1 from "./Ovwp1";
import Aamp from "./Aamp";
import Detp from "./Detp";
import Ptyp from "./Ptyp";
import Drv from "./Drv";
import Dscins from "./Dscins";
import Revp from "./Revp";
import Srmp from "./Srmp";
import Doxp from "~/views/Public/Doxp";
import Rcldetp from "./Rcldetp";
export default {
components: {
"m-ovwp1": Ovwp1,
"m-aamp": Aamp,
"m-detp": Detp,
"m-ptyp": Ptyp,
"m-drv": Drv,
"m-dscins": Dscins,
"m-doxp": Doxp,
"m-revp": Revp,
"m-srmp": Srmp,
"m-rcldetp": Rcldetp,
},
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',
}"
@onSeainf="onSeainf"
@onAplpDet="onAdvpDet"
>
</c-ptap>
</c-col>
<!-- 第二通知行 -->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '第二通知行',
grp: 'ledgrp',
rol: 'a2b',
}"
@onSeainf="onSeainf"
@onAplpDet="onA2bpDet"
>
</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',
}"
@onSeainf="onSeainf"
@onAplpDet="onApbpDet"
>
</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',
}"
@onSeainf="onSeainf"
@onAplpDet="onRmbpDet"
>
</c-ptap>
</c-col>
<!-- Confirmation Bank -->
<c-col :span="24">
<c-ptap
:model="model"
:argadr="{
title: '保兑行',
grp: 'ledgrp',
rol: 'con',
}"
:onlySearch="true"
@onSeainf="onSeainf"
@onAplpDet="onConpDet"
>
</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>
</div>
</template>
<script>
import Api from '~/service/Api'
import commonProcess from '~/mixin/commonProcess'
import CodeTable from '~/config/CodeTable'
import Event from '~/model/Letdrw/Event'
import Ptap from "~/views/Public/Ptap";
export default {
inject: ["root"],
components: { "c-ptap": Ptap },
props: ["model", "codes"],
mixins: [commonProcess],
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: {
...Event,
handleEdit() {
console.log("1111测试");
},
},
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="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"
@click="onRevclauseButtxmsel"
>
</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 commonProcess from '~/mixin/commonProcess'
import CodeTable from '~/config/CodeTable'
import Event from '~/model/Letdrw/Event'
export default {
inject: ['root'],
props: ['model', 'codes'],
mixins: [commonProcess],
data() {
return {}
},
methods: { ...Event },
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.srm.djutyp">
<c-select
v-model="model.bedgrp.srm.djutyp"
style="width: 100%"
placeholder="请选择单据类型"
:code="codes.djutyp"
@change="djutypkeyEvent"
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="单据出具人" prop="bedgrp.srm.djuusr">
<c-input
v-model="model.bedgrp.srm.djuusr"
maxlength="80"
placeholder="请输入单据出具人"
:disabled="djutypFlag"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="单据出具日期" prop="bedgrp.srm.djudat">
<c-date-picker
type="date"
v-model="model.bedgrp.srm.djudat"
value-format="yyyy-MM-dd"
style="width: 100%"
placeholder="请选择单据出具日期"
:disabled="djutypFlag"
></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="货权单据编号" prop="bedgrp.srm.djuref">
<c-input
v-model="model.bedgrp.srm.djuref"
maxlength="40"
placeholder="请输入货权单据编号"
:disabled="djutypFlag"
></c-input>
</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/Letdrw/Event'
export default {
inject: ['root'],
props: ['model', 'codes'],
mixins: [commonProcess],
data() {
return {}
},
methods: {
...Event,
djutypkeyEvent() {
if (this.model.bedgrp.srm.djutyp=='D'||this.model.bedgrp.srm.djutyp=='') {
this.model.bedgrp.srm.djuusr = '' //单据出具人置空
this.model.bedgrp.srm.djudat = '' //日期置空
this.model.bedgrp.srm.djuref='' //货权单据编号置空
}
this.executeCheck('ledgrp.rec.avbby').then((res) => {
if (res.respCode == SUCCESS) {
Utils.copyValueFromVO(this.model, res.data)
}
})
},
},
computed: {
djutypFlag: {
get() {
return (
this.model.bedgrp.srm.djutyp=='D' ||
this.model.bedgrp.srm.djutyp== ''
)
},
},
},
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="myTabClick"
>
<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,setpan,glepan">
<c-content>
<div class="eibs-tab">
<el-collapse v-model="activeNames">
<el-collapse-item title="表外记账" name="engp">
<!-- 表外记账 -->
<m-engp :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="结算" name="setpan">
<!-- 结算 -->
<m-setpan :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="会计分录" name="glepan">
<!-- 会计分录 -->
<m-glepan :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</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-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 CodeTable from '~/config/CodeTable'
import Letdrw from '~/model/Letdrw'
import commonProcess from '~/mixin/commonProcess'
import commonFuncs from '~/mixin/commonFuncs'
import Check from '~/model/Letdrw/Check'
import Default from '~/model/Letdrw/Default'
import Pattern from '~/model/Letdrw/Pattern'
import Ovwp from './Ovwp'
import Aamp from './Aamp'
import Detp from './Detp'
import Ptyp from './Ptyp'
import Drv from './Drv'
import Dscins from './Dscins'
import Revp from './Revp'
import Srmp from './Srmp'
import Addbcb from "./Addbcb";
import Doxp from '~/views/Public/Doxp'
import Coninfp from '~/views/Public/Coninfp'
import Setpan from '~/components/business/setmod/views'
import Docpan from '~/views/Public/Docpan'
import Doctre from '~/views/Public/Doctre'
import Engp from '~/views/Public/Engp'
import Limitbody from '~/views/Public/Limitbody'
import Glepan from "~/views/Public/Glepan";
export default {
name: 'Letdrw',
components: {
"m-addbcb": Addbcb,
'm-ovwp': Ovwp,
'm-aamp': Aamp,
'm-detp': Detp,
'm-ptyp': Ptyp,
'm-drv': Drv,
'm-dscins': Dscins,
'm-doxp': Doxp,
'm-revp': Revp,
'm-engp': Engp,
'm-setpan': Setpan,
'm-coninfp': Coninfp,
'm-docpan': Docpan,
'm-doctre': Doctre,
'm-srmp': Srmp,
'm-limitbody': Limitbody,
"m-glepan":Glepan,
},
provide() {
return {
root: this,
}
},
mixins: [commonProcess, commonFuncs], // 里面包含了Default、Check等的公共处理
data() {
return {
tabVal: 'ovwp',
trnName: 'letdrw',
model: new Letdrw().data,
checkRules: Check,
defaultRules: Default,
pattern: Pattern,
rules: null,
codes: { ...CodeTable },
activeNames: ["engp"],
}
},
methods: {
myTabClick(tab) {
this.tabClick(tab)
/**
* do it yourself
**/
},
},
created: async function () {
console.log('进入letdrw交易')
let rtnmsg = await this.init({})
if (rtnmsg.respCode == SUCCESS) {
this.updateModel(rtnmsg.data)
//TODO 处理数据逻辑
if (this.isInDisplay) {
this.restoreDisplay()
}
} else {
this.$notify.error({ title: '错误', message: '服务请求失败!' })
}
},
}
</script>
<style></style>
......@@ -22,7 +22,7 @@ export default class Litdck {
tenmaxday: '',
rcvdat: '',
predat: '',
advtyp: '750',
advtyp: '',
docflg: '',
approvcod: '',
ownref: '',
......
......@@ -174,21 +174,21 @@ export default {
typ1: true,
};
},
// watch: {
// "model.brdgrp.blk.docdisflg": {
// immediate: true,
// handler(val, oldval) {
// if (this.model.brdgrp.blk.docdisflg != "X") {
// this.typ1 = true;
// this.model.brdgrp.blk.docdis = "";
// this.changeFormItemRequired("brdgrp.blk.docdis", false);
// } else {
// this.typ1 = false;
// this.changeFormItemRequired("brdgrp.blk.docdis", true);
// }
// },
// },
// },
watch: {
"model.brdgrp.blk.docdisflg": {
immediate: true,
handler(val, oldval) {
if (this.model.brdgrp.blk.docdisflg != "X") {
this.typ1 = true;
this.model.brdgrp.blk.docdis = "";
this.changeFormItemRequired("brdgrp.blk.docdis", false);
} else {
this.typ1 = false;
this.changeFormItemRequired("brdgrp.blk.docdis", true);
}
},
},
},
methods: {
},
created: function () {},
......
......@@ -463,8 +463,8 @@ export default {
'lidgrp.rec.stagod': [{ required: true, message: '必输项' }],
'lidgrp.rec.tenmaxday': [
{ type: 'number', required: true, message: '请输入数字' },
{ type: 'number', max: 999, message: '不能超过999' },
{ type: 'string', required: true, message: '请输入数字' },
{ type: 'string', max: 999, message: '不能超过999' },
{ pattern: /(^-?[1-9][0-9]{0,2}$)|0/, message: '-999至999之间' },
// ^-?[1-9]\d*$   //匹配整数
],
......
......@@ -51,7 +51,6 @@
</template>
<script>
import Api from "~/service/Api";
import commonProcess from "~/mixin/commonProcess";
import CodeTable from "~/config/CodeTable";
import Event from "../event";
import Ovwp1 from "./Ovwp1";
......@@ -80,7 +79,7 @@ export default {
},
inject: ["root"],
props: ["model", "codes"],
mixins: [commonProcess, Event],
mixins: [ Event],
data() {
return {
zmqflg: null,
......
......@@ -28,7 +28,7 @@
style="margin: 0 0"
size="small"
type="primary"
:disabled="!this.flag1 && model.lidgrp.rec.ownref==''? false:true"
:disabled="(!this.flag1) && model.lidgrp.rec.ownref==''? false:true"
@click="onLitpButgetref"
>
获取
......@@ -645,28 +645,25 @@ export default {
}
},
},
"model.lidgrp.cbs.nom1.cur":{
"model.lidgrp":{
immediate: true,
handler(val,oldval){{
if(this.model.lidgrp.cbs.nom1.cur!= ""){
this.model.lidgrp.cbs.max.cur=this.model.lidgrp.cbs.nom1.cur;
deep: true,
handler(val,oldval){
const res = this.model.lidgrp
if(res.cbs.nom1.cur !== "" || res.cbs.nom1.amt !== "" || res.apl.pts.adrblk !== ""){
this.model.lidgrp.cbs.max.cur=this.model.lidgrp.cbs.nom1.cur;
this.model.lidgrp.cbs.max.amt=this.model.lidgrp.cbs.nom1.amt;
this.model.lidgrp.rec.nam = `${res.apl.pts.adrblk.substring(0,15)}${res.cbs.nom1.cur}${res.cbs.nom1.amt}`
}
// else{
// this.model.lidgrp.cbs.max.cur="";
// }
}}
}
},
"model.lidgrp.cbs.nom1.amt":{
"model.lidgrp.rec.nomspc":{
immediate: true,
handler(val,oldval){{
if(this.model.lidgrp.cbs.nom1.amt!= ""){
this.model.lidgrp.cbs.max.amt=this.model.lidgrp.cbs.nom1.amt;
}
// else{
// this.model.lidgrp.cbs.max.amt="0.00";
// }
}}
},
handler(val,oldval){
if(this.model.lidgrp.rec.nomspc==""){}
this.model.lidgrp.rec.nomspc="X";
}
}
},
computed: {
flag1() {
......
......@@ -58,5 +58,7 @@ const Business = [
{ path: 'betacc', component: () => import('~/business/betacc/views'), name: 'betacc', meta: { title: '出口信用证单据承兑' } },
{ path: 'betdcr', component: () => import('~/business/betdcr/views'), name: 'betdcr', meta: { title: '出口信用证单据电提不符点/开证行拒付' } },
{ path: 'infbed', component: () => import('~/business/infbed/views'), name: 'infbed', meta: { title: '出口信用证单据查询' } },
{ path: 'letdrv', component: () => import('~/business/letdrv/views'), name: 'letdrv', meta: { title: '出口信用证出口收单' } },
{ path: 'letdrw', component: () => import('~/business/letdrw/views'), name: 'letdrw', 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