Commit 5718fc7e by xionglin

brtsnd

parent e34789fe
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.lidgrp.apl.pts.extkey) {
// ptsptaList.push(this.buildPtspta(model.lidgrp.apl));
// }
// if (model.lidgrp.adv.pts.extkey) {
// ptsptaList.push(this.buildPtspta(model.lidgrp.adv));
// }
// if (model.lidgrp.ben.pts.extkey) {
// ptsptaList.push(this.buildPtspta(model.lidgrp.ben));
// }
let dataObj = {
rec: {
objtyp: 'LID',
ownref: model.lidgrp.rec.ownref,
opndat: model.lidgrp.rec.opndat,
expdat: model.lidgrp.rec.expdat,
branchInr: model.lidgrp.rec.branchInr,
hndtyp: model.lidgrp.rec.hndtyp,
gartyp: model.lidgrp.rec.gartyp,
fingua: model.lidgrp.rec.fingua,
segtyp: model.lidgrp.ghd.segtyp,
fromflg: model.lidgrp.rec.fromflg,
othersno: model.lidgrp.rec.othersno,
sndto: model.lidgrp.rec.sndto,
swiftflg: model.gitp.swiftflg,
giduil: model.lidgrp.rec.giduil,
purpos: model.lidgrp.rec.purpos,
revflg: model.lidgrp.rec.revflg,
cnfsta: model.lidgrp.rec.cnfsta,
},
cbsMap: {
MAX: model.lidgrp.cbs.max,
OPN1: model.lidgrp.cbs.opn1,
MAC: model.lidgrp.cbs.mac,
MAC2: model.lidgrp.cbs.mac2,
OPC2: model.lidgrp.cbs.opc2,
CNF: model.lidgrp.cbs.cnf,
},
ptsList: ptsptaList,
transName: trnName,
userId: window.sessionStorage.userId ? window.sessionStorage.userId : 'ZL'
};
return dataObj
},
buildSetfeg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaall: model.liaall,
liaccv: model.liaccv,
doceot: model.trnmod.trndoc.doceot,
};
return params
},
buildSetglg (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
setfeg: model.setmod.setfeg,
liaall: model.liaall,
liaccv: model.liaccv,
};
return params
},
buildGlentry (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
setfog: model.setmod.setfog,
setfeg: model.setmod.setfeg,
setglg: model.setmod.setglg,
};
return params
},
buildEngp (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaallg: model.liaall.liaallg,
};
return params
},
buildDocpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
};
return params
},
buildCcvpan (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
liaccvg: model.liaccv.liaccvg,
oldamt: model.liaccv.oldamt,
chgamt: model.liaccv.chgamt,
concur: model.liaccv.concur,
};
return params
},
buildLimitbody (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'LID',
objinr: model.lidgrp.rec.objinr,
ownref: model.lidgrp.rec.ownref,
},
};
return params
},
buildDoctre (model, trnName) {
let params = {
...this.buildCommonData(model, trnName),
rec: {
objtyp: 'LID',
objinr: model.lidgrp.rec.objinr,
ownref: model.lidgrp.rec.ownref,
swiftflg: model.gitp.swiftflg,
},
};
return params
},
// 公共组件setmod中dsp字段改变,触发联动时候的入参
buildSetgllAccts (model, trnName, setglg) {
let params = {
...this.buildCommonData(model, trnName),
setglg
};
return params
}
}
\ No newline at end of file
import Api from '~/service/Api';
import commonFunctions from '~/mixin/commonFunctions.js';
import buildFn from './buildCommons.js';
import setmod from '~/components/business/setmod/event';
import glentry from '~/components/business/glentry/event';
import engp from '~/components/business/engp/event';
import docpan from '~/components/business/docpan/event';
import ccvpan from '~/components/business/ccvpan/event';
import limitbody from '~/components/business/limitbody/event';
import doctre from '~/components/business/doctre/event';
import Utils from "~/utils"
export default {
mixins: [commonFunctions],
methods: {
...setmod,
...glentry,
...engp,
...docpan,
...ccvpan,
...limitbody,
...doctre,
async init () {
const params = {
spt: JSON.parse(localStorage.getItem('row_' + this.trnName))
}
const res = await Api.post('/service/brtsnd/init', {
...params,
transName: this.trnName,
userId: window.sessionStorage.userId || 'ZL',
});
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;
}
},
// 公共组件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
}
},
onSeainf(data) {
this.$emit("onSeainf", data);
},
onAplpDet() {
this.$emit("onAplpDet");
},
},
};
import Pts from '~/components/business/commonModel/Pts';
import Pub from '~/components/business/commonModel/index.js';
export default class Brtsnd{
constructor () {
this.data = {
brtapll1blk:"",
brtapll2blk:"",
brtapll4blk:"",
brdgrp:{
rec:{
ownref:"", // 单据参考号 .brdgrp.rec.ownref
nam:"", // Name of Bill Contract .brdgrp.rec.nam
rcvdat:"", // Received on .brdgrp.rec.rcvdat
advdat:"", // 到单日期 .brdgrp.rec.advdat
docflg:"", // 单据类型 .brdgrp.rec.docflg
docsta:"", // 单据状态 .brdgrp.rec.docsta
matdat:"", // Maturity Date .brdgrp.rec.matdat
tenmaxday:"", // Tenor day .brdgrp.rec.tenmaxday
stadat:"", // 远期单据到期日 .brdgrp.rec.stadat
predat:"", // Presentation Date .brdgrp.rec.predat
docprbrol:"", // Presented by .brdgrp.rec.docprbrol
payrol:"", // Payer .brdgrp.rec.payrol
igndisflg:"", // Ignore Discrepancies .brdgrp.rec.igndisflg
advtyp:"", // Type of Advice Received .brdgrp.rec.advtyp
totdat:"", // Date to be Paid .brdgrp.rec.totdat
disdat:"", // Discrepancy Advice Dated .brdgrp.rec.disdat
approvcod:"", // Documents on Approval Basis .brdgrp.rec.approvcod
relgodflg:"", // Release of Goods .brdgrp.rec.relgodflg
reltyp:"", // Release Type .brdgrp.rec.reltyp
relgoddat:"", // issue date .brdgrp.rec.relgoddat
expdat:"", // Expiry Date of Shipping Guarantee .brdgrp.rec.expdat
trpdoctyp:"", // Transport Doc. Type .brdgrp.rec.trpdoctyp
trpdocnum:"", // Transport Doc. No. .brdgrp.rec.trpdocnum
tradat:"", // shipment date .brdgrp.rec.tradat
tramod:"", // Mode of Transport .brdgrp.rec.tramod
rtoaplflg:"", // Release Goods to Applicant ? .brdgrp.rec.rtoaplflg
ngrcod:"", // Goods code .brdgrp.rec.ngrcod
blnum:"", // B/L Number .brdgrp.rec.blnum
totcur:"", // Total Amount Claimed .brdgrp.rec.totcur
totamt:"", // Total Amount to be Paid .brdgrp.rec.totamt
},
cbs:{
max:{
cur:"", // Document Amount .brdgrp.cbs.max.cur
amt:"", // Balance .brdgrp.cbs.max.amt
},
opn1:{
cur:"", // 单据余额 .brdgrp.cbs.opn1.cur
amt:"", // Balance .brdgrp.cbs.opn1.amt
},
opn2:{
cur:"", // 附加金额 .brdgrp.cbs.opn2.cur
},
max2:{
amt:"", // 附加金额 .brdgrp.cbs.max2.amt
},
},
apl:{
pts:new Pts().data,
},
ben:{
pts:new Pts().data,
},
prb:{
pts:new Pts().data,
namelc:"", // 名称 .brdgrp.prb.namelc
adrelc:"", // 地址 .brdgrp.prb.adrelc
dbfadrblkcn:"", // Chinese address .brdgrp.prb.dbfadrblkcn
},
blk:{
prsdoc:"",
aplins:"", // Instructions Received .brdgrp.blk.aplins
comcon:"", // Comments and Conclusions .brdgrp.blk.comcon
setinsbr:"", // Settlement Instructions BR .brdgrp.blk.setinsbr
docdis:"", // 不符点 .brdgrp.blk.docdis
docdisflg:"", // discrepancies modified .brdgrp.blk.docdisflg
vesnam:"", // Vessel Name .brdgrp.blk.vesnam
pordis:"", // Port of Discharge .brdgrp.blk.pordis
delplc:"", // Place of Delivery .brdgrp.blk.delplc
roggod:"", // Covered Goods .brdgrp.blk.roggod
relstoadr:"", // Release to Address .brdgrp.blk.relstoadr
porlod:"", // Port of loading .brdgrp.blk.porlod
voynum:"", // Voyage numer .brdgrp.blk.voynum
notpty:"", // Notify Party .brdgrp.blk.notpty
carnam:"", // Carrier .brdgrp.blk.carnam
chaded:"", // Charges Deducted .brdgrp.blk.chaded
chaadd:"", // Charges .brdgrp.blk.chaadd
nartxt77a:"", // Narrative TAG 77A of MT754 .brdgrp.blk.nartxt77a
prsdoc:"",
},
shp:{
pts:new Pts().data,
namelc:"", // 名称 .brdgrp.shp.namelc
adrelc:"", // 地址 .brdgrp.shp.adrelc
dbfadrblkcn:"", // Chinese address .brdgrp.shp.dbfadrblkcn
},
acb:{
pts:new Pts().data,
namelc:"", // 名称 .brdgrp.acb.namelc
adrelc:"", // 地址 .brdgrp.acb.adrelc
dbfadrblkcn:"", // Chinese address .brdgrp.acb.dbfadrblkcn
},
rmb:{
pts:new Pts().data,
namelc:"", // 名称 .brdgrp.rmb.namelc
adrelc:"", // 地址 .brdgrp.rmb.adrelc
dbfadrblkcn:"", // Chinese address .brdgrp.rmb.dbfadrblkcn
},
beb:{
pts:new Pts().data,
namelc:"", // 名称 .brdgrp.beb.namelc
adrelc:"", // 地址 .brdgrp.beb.adrelc
dbfadrblkcn:"", // Chinese address .brdgrp.beb.dbfadrblkcn
},
},
lidgrp:{
rec:{
ownref:"", // 信用证编号 .lidgrp.rec.ownref
expdat:"", // Date of Expiry .lidgrp.rec.expdat
},
cbs:{
opn1:{
cur:"", // Currency .lidgrp.cbs.opn1.cur
amt:"", // Balance .lidgrp.cbs.opn1.amt
},
},
},
brtp:{
lidget:{
sdamod:{
seainf:"", // .brtp.lidget.sdamod.seainf
dadsnd:"", // Drag Drop Sender .brtp.lidget.sdamod.dadsnd
},
},
recget:{
sdamod:{
dadsnd:"", // Drag Drop Sender .brtp.recget.sdamod.dadsnd
seainf:"", // .brtp.recget.sdamod.seainf
},
},
matp:{
mattxtlab:"", // Label for MATTXT .brtp.matp.mattxtlab
},
prbp:{
ptsget:{
sdamod:{
seainf:"", // .brtp.prbp.ptsget.sdamod.seainf
dadsnd:"", // Drag Drop Sender .brtp.prbp.ptsget.sdamod.dadsnd
},
},
},
oth:{
pts:new Pts().data,
namelc:"", // 名称 .brtp.oth.namelc
adrelc:"", // 地址 .brtp.oth.adrelc
dbfadrblkcn:"", // Chinese address .brtp.oth.dbfadrblkcn
},
othp:{
ptsget:{
sdamod:{
seainf:"", // .brtp.othp.ptsget.sdamod.seainf
dadsnd:"", // Drag Drop Sender .brtp.othp.ptsget.sdamod.dadsnd
},
},
},
prechkdat:"", // 预计核验日期 .brtp.prechkdat
ischktyp:"", // 是否需要核验 .brtp.ischktyp
docgrdm:{
docgrd:"", //.brtp.docgrdm.docgrd
docdsclab:"", // Label of document description .brtp.docgrdm.docdsclab
},
cre752flg:"", // Create 752 .brtp.cre752flg
furide:"", // Further Identification .brtp.furide
cre732flg:"", // Create MT 732 .brtp.cre732flg
shpp:{
ptsget:{
sdamod:{
seainf:"", // .brtp.shpp.ptsget.sdamod.seainf
dadsnd:"", // Drag Drop Sender .brtp.shpp.ptsget.sdamod.dadsnd
},
},
},
connum:"", // Contract Number .brtp.connum
acbp:{
ptsget:{
sdamod:{
seainf:"", // .brtp.acbp.ptsget.sdamod.seainf
dadsnd:"", // Drag Drop Sender .brtp.acbp.ptsget.sdamod.dadsnd
},
},
},
rmbp:{
ptsget:{
sdamod:{
seainf:"", // .brtp.rmbp.ptsget.sdamod.seainf
dadsnd:"", // Drag Drop Sender .brtp.rmbp.ptsget.sdamod.dadsnd
},
},
},
bebp:{
ptsget:{
sdamod:{
seainf:"", // .brtp.bebp.ptsget.sdamod.seainf
dadsnd:"", // Drag Drop Sender .brtp.bebp.ptsget.sdamod.dadsnd
},
},
},
},
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,
pageId: "" // ctx的key
}
}
}
\ No newline at end of file
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames" @change="handleChange">
<!--el-collapse-item title="备查表" name="addbcb">
<m-addbcb :model="model" :codes="codes" />
</el-collapse-item-->
<el-collapse-item title="附言" name="coninfp">
<m-coninfp :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import event from "../event";
import Coninfp from "~/components/business/coninfp/views";
export default {
components: {
"m-coninfp": Coninfp,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {
activeNames: ["coninfp"],
};
},
};
</script>
<style>
</style>
<template>
<div class="eibs">
<c-row>
<c-col :span="24">
<!-- ====================左边======================= -->
<c-col :span="11">
<c-col :span="24">
<el-form-item label="不符点" prop="brdgrp.blk.docdis" style="width: 100%">
<c-fullbox>
<c-input type="textarea" v-model="model.brdgrp.blk.docdis" maxlength="3500" show-word-limit placeholder="请输入不符点" :disabled=this.typ1 rows="3"></c-input>
<template slot="footer">
<c-button size="small" type="primary" @click="showGridPromptDialog('brtp.docdis.buttxmsel', null, null,{TXT: 'brdgrp.blk.docdis'}, {TXT: false},'doxpDialog')" :disabled=this.typ1>...</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="注释和结论" prop="brdgrp.blk.comcon">
<c-input type="textarea" v-model="model.brdgrp.blk.comcon" maxlength="1950" show-word-limit placeholder="请输入注释和结论" rows="3"></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="结算指示" prop="brdgrp.blk.setinsbr" style="width: 100%">
<c-fullbox>
<c-input type="textarea" v-model="model.brdgrp.blk.setinsbr" maxlength="390" show-word-limit placeholder="请输入结算指示" rows="3"></c-input>
<template slot="footer">
<c-button size="small" type="primary" @click="showGridPromptDialog('brtp.setinstxm.buttxmsel', null, null,{TXT: 'brdgrp.blk.setinsbr'}, {TXT: false},'doxpDialog')">...</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<c-docpre :model="model" :argadr="{
path:'brdgrp.blk.prsdoc',
grp:'brtp',
code:'docpre'
}"></c-docpre>
</c-col>
</c-col>
<!-- ====================右边======================= -->
<c-col :span="11" :offset="1">
<c-col :span="24">
<el-form-item label=" " prop="brdgrp.rec.igndisfl" label-width="120px" style="float:left;">
<c-checkbox v-model="model.brdgrp.rec.igndisflg">忽略不符点</c-checkbox>
</el-form-item>
<el-form-item label=" " prop="brdgrp.blk.docdisflg" label-width="120px" style="float:left;">
<c-checkbox v-model="model.brdgrp.blk.docdisflg">录入不符点</c-checkbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="收到的通知类型" prop="brdgrp.rec.advtyp">
<c-select v-model="model.brdgrp.rec.advtyp" style="width:100%" placeholder="请选择收到通知类型" :code="codes.advtyp">
</c-select>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="付款日期" prop="brdgrp.rec.totdat">
<c-date-picker type="date" v-model="model.brdgrp.rec.totdat" style="width:100%" placeholder="请选择日期"></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="不符点通知日期" prop="brdgrp.rec.disdat">
<c-date-picker type="date" v-model="model.brdgrp.rec.disdat" style="width:100%" placeholder="请选择不符点通知日期"></c-date-picker>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label=" " prop="brdgrp.rec.approvcod" label-width="120px" style="float:left;">
<c-checkbox v-model="model.brdgrp.rec.approvcod">批准的单据</c-checkbox>
</el-form-item>
<el-form-item label=" " prop="brtp.cre732flg" label-width="120px" style="float:left;">
<c-checkbox v-model="model.brtp.cre732flg" disabled>创建 MT732</c-checkbox>
</el-form-item>
</c-col>
<c-col :span="24" v-show="false">
<c-checkbox v-model="model.brtp.cre752flg">创建 MT752</c-checkbox>
</c-col>
<c-col :span="24">
</c-col>
<c-col :span="12" v-show="false">
<el-form-item label="进一步确认" prop="brtp.furide">
<c-select v-model="model.brtp.furide" style="width:100%" placeholder="请选择进一步确认">
</c-select>
</el-form-item>
</c-col>
</c-col>
</c-col>
</c-row>
</div>
</template>
<script>
import event from "../event"
import Docpre from "~/views/Public/Docpre"
export default {
inject: ['root'],
props: ["model", "codes"],
mixins: [event],
components: {
"c-docpre": Docpre,
},
data() {
return {
typ1: true,
}
},
watch: {
"model.brdgrp.blk.docdisflg": {
immediate: true,
handler(val, oldval) {
if (this.model.brdgrp.blk.docdisflg != "X") {
this.typ1 = true;
this.changeFormItemRequired("brdgrp.blk.docdis", false);
} else {
this.typ1 = false;
this.changeFormItemRequired("brdgrp.blk.docdis", true);
}
this.executeDefault("brdgrp.blk.docdis").then((res) => {
if ((res.respCode == SUCCESS)) {
this.updateModel(res.data);
}
});
},
},
},
}
</script>
<style>
</style>
<template>
<div class="eibs">
<!-- ====================================不符点通知 左边 ================================= -->
<c-col :span="12">
<!-- 单据金额 -->
<c-col :span="12">
<el-form-item label="单据金额" prop="brdgrp.cbs.max.cur">
<c-select
v-model="model.brdgrp.cbs.max.cur"
style="width: 100%"
placeholder="请选择单据金额"
disabled
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="10px" prop="brdgrp.cbs.max.amt">
<c-input
v-model="model.brdgrp.cbs.max.amt"
placeholder="请输入单据金额"
disabled
></c-input>
</el-form-item>
</c-col>
<!-- 附加金额 -->
<c-col :span="12">
<el-form-item label="提取附加金额" prop="brdgrp.cbs.opn2.cur">
<c-select
v-model="model.brdgrp.cbs.opn2.cur"
style="width: 100%"
placeholder="请选择附加金额"
disabled
>
</c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="10px" prop="brdgrp.cbs.max2.amt">
<c-input
v-model="model.brdgrp.cbs.max2.amt"
placeholder="请输入附加金额"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="已扣除费用" prop="brdgrp.blk.chaded">
<c-input
type="textarea"
v-model="model.brdgrp.blk.chaded"
maxlength="210"
show-word-limit
placeholder="请输入已扣除费用"
disabled
:rows="4"
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="已添加费用" prop="brdgrp.blk.chaadd">
<c-input
type="textarea"
v-model="model.brdgrp.blk.chaadd"
maxlength="210"
show-word-limit
placeholder="请输入费用"
disabled
:rows="4"
></c-input>
</el-form-item>
</c-col>
<!-- 索赔总额 -->
<c-col :span="12">
<el-form-item label="索赔金额" prop="brdgrp.rec.totcur">
<c-input
v-model="model.brdgrp.rec.totcur"
maxlength="3"
placeholder="请输入索赔总额"
disabled
>
</c-input>
</el-form-item>
</c-col>
<!-- Total Amount to be Paid -->
<c-col :span="12">
<el-form-item label="" label-width="10px" prop="brdgrp.rec.totamt">
<c-input
v-model="model.brdgrp.rec.totamt"
placeholder="请输入索赔总额"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptap1
:model="model"
:argadr="{
title: '账户银行',
grp: 'brdgrp',
rol: 'acb',
}"
:disabled="true"
:isAdrblk="false"
disabled1
@onSeainf="onSeainf"
@onAplpDet="onAcbpDet"
>
</c-ptap1>
</c-col>
<!-- =======================================加Docpre页面中的Discrepancies部分小组件================================ -->
<!-- Discrepancies -->
<c-col :span="24">
<el-form-item label="不符点信息" prop="brdgrp.blk.docdis">
<c-input
type="textarea"
v-model="model.brdgrp.blk.docdis"
maxlength="3500"
show-word-limit
placeholder="请输入不符点信息"
:rows="5"
disabled
></c-input>
</el-form-item>
</c-col>
<c-col :span="24" >
<el-form-item label=" " label-width="120px" prop="brdgrp.blk.docdisflg">
<c-checkbox class="checkbox-left" v-model="model.brdgrp.blk.docdisflg" disabled
>不符点修改</c-checkbox
>
</el-form-item >
<!-- <c-checkbox v-model="model.brdgrp.blk.docdisflg">不符点修改</c-checkbox> -->
</c-col>
</c-col>
</div>
</template>
<script>
import event from '../event'
import Ptap1 from './Ptap1'
export default {
components: {
'c-ptap1': Ptap1,
},
inject: ['root'],
props: ['model', 'codes'],
mixins: [event],
data() {
return {}
},
}
</script>
<style></style>
<template>
<div class="eibs">
<!-- ==================================== 左边 ================================= -->
<c-col :span="12" style="padding-right: 20px;">
<!--加Mt750p页面的 单据金额 -->
<!-- 单据金额 -->
<c-col :span="12">
<el-form-item label="单据金额" prop="brdgrp.cbs.max.cur">
<c-select v-model="model.brdgrp.cbs.max.cur" style="width:100%" placeholder="请选择单据金额" disabled>
</c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="10px" prop="brdgrp.cbs.max.amt">
<c-input v-model="model.brdgrp.cbs.max.amt" placeholder="请输入单据金额" disabled></c-input>
</el-form-item>
</c-col>
<!-- 加Mt750p页面的Drawn.Add.Amount -->
<!-- 附加金额 -->
<c-col :span="12">
<el-form-item label="提取附加金额" prop="brdgrp.cbs.opn2.cur">
<c-select v-model="model.brdgrp.cbs.opn2.cur" style="width:100%" placeholder="请选择附加金额" disabled>
</c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="10px" prop="brdgrp.cbs.max2.amt">
<c-input v-model="model.brdgrp.cbs.max2.amt" placeholder="请输入附加金额" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="已扣除费用" prop="brdgrp.blk.chaded">
<c-input type="textarea" v-model="model.brdgrp.blk.chaded" maxlength="210" show-word-limit
placeholder="请输入已扣除费用" disabled :rows="4"></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="已添加费用" prop="brdgrp.blk.chaadd">
<c-input type="textarea" v-model="model.brdgrp.blk.chaadd" maxlength="210" show-word-limit
placeholder="请输入费用" disabled :rows="4"></c-input>
</el-form-item>
</c-col>
<!--加Mt750p页面的 索赔总额 -->
<c-col :span="12">
<el-form-item label="索赔总额" prop="brdgrp.rec.totcur">
<c-input v-model="model.brdgrp.rec.totcur" maxlength="3" placeholder="请输入索赔总额" disabled>
</c-input>
</el-form-item>
</c-col>
<!-- 加Mt750p页面的Total Amount to be Paid -->
<c-col :span="12">
<el-form-item label="" label-width="10px" prop="brdgrp.rec.totamt">
<c-input v-model="model.brdgrp.rec.totamt" placeholder="请输入待支付金额总和" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptap1 :model="model" :argadr="{
title: '偿付银行',
grp: 'brdgrp',
rol: 'rmb',
}" :disabled="true" disabled1
@onSeainf="onSeainf"
@onAplpDet="onRmbpDet">
</c-ptap1>
</c-col>
<!-- 加Mt750p页面的Amount with Bank -->
<c-col :span="24">
<c-ptap1 :model="model" :argadr="{
title: '账户银行',
grp: 'brdgrp',
rol: 'acb',
}" :disabled="true" disabled1
@onSeainf="onSeainf"
@onAplpDet="onAcbpDet">
</c-ptap1>
</c-col>
<!-- 加Docpre.vue页面中的date to paied -->
<c-col :span="24">
<el-form-item label="付款日期" prop="brdgrp.rec.totdat">
<c-date-picker type="date" v-model="model.brdgrp.rec.totdat" style="width: 100%" placeholder="请选择付款日期"
disabled value-format="yyyy-MM-dd">
</c-date-picker>
</el-form-item>
</c-col>
</c-col>
<!-- ==================================== 右边 ================================= -->
<c-col :span="12" style="padding-left: 20px;">
<c-col :span="24">
<el-form-item label="叙述内容(77A)" prop="brdgrp.blk.nartxt77a">
<c-input type="textarea" v-model="model.brdgrp.blk.nartxt77a" maxlength="700" show-word-limit
placeholder="请输入77A内容" disabled :rows="16"></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptap1 :model="model" :argadr="{
title: `受益人银行`,
grp: 'brdgrp',
rol: 'beb',
}" :disabled="true" disabled1
@onSeainf="onSeainf"
@onAplpDet="onBebpDet">
</c-ptap1>
</c-col>
</c-col>
<!-- <c-col :span="12">
<el-form-item label="Drag Drop Sender" prop="brtp.rmbp.ptsget.sdamod.dadsnd">
<c-input v-model="model.brtp.rmbp.ptsget.sdamod.dadsnd" placeholder="请输入Drag Drop Sender"></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="地址编号" prop="brdgrp.rmb.pts.extkey">
<c-input v-model="model.brdgrp.rmb.pts.extkey" maxlength="16" placeholder="请输入地址编码">
</c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" prop="brtp.rmbp.ptsget.sdamod.seainf">
<c-input v-model="model.brtp.rmbp.ptsget.sdamod.seainf" placeholder="请输入"></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<c-button size="small" type="primary" @click="onRmbpDet">
详情
</c-button>
</c-col>
<c-col :span="12">
<el-form-item label="名称" prop="brdgrp.rmb.namelc">
<c-input type="textarea" v-model="model.brdgrp.rmb.namelc" maxlength="35" show-word-limit placeholder="请输入名称">
</c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="地址信息" prop="brdgrp.rmb.pts.adrblk">
<c-input type="textarea" v-model="model.brdgrp.rmb.pts.adrblk" maxlength="35" show-word-limit
placeholder="请输入地址信息"></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="中文地址" prop="brdgrp.rmb.dbfadrblkcn">
<c-input type="textarea" v-model="model.brdgrp.rmb.dbfadrblkcn" maxlength="35" show-word-limit
placeholder="请输入Chinese address"></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="地址" prop="brdgrp.rmb.adrelc">
<c-input type="textarea" v-model="model.brdgrp.rmb.adrelc" maxlength="35" show-word-limit placeholder="请输入地址">
</c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="Drag Drop Sender" prop="brtp.bebp.ptsget.sdamod.dadsnd">
<c-input v-model="model.brtp.bebp.ptsget.sdamod.dadsnd" placeholder="请输入Drag Drop Sender"></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="地址编号" prop="brdgrp.beb.pts.extkey">
<c-input v-model="model.brdgrp.beb.pts.extkey" maxlength="16" placeholder="请输入地址编码">
</c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" prop="brtp.bebp.ptsget.sdamod.seainf">
<c-input v-model="model.brtp.bebp.ptsget.sdamod.seainf" placeholder="请输入"></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<c-button size="small" type="primary" @click="onBebpDet">
详情
</c-button>
</c-col>
<c-col :span="12">
<el-form-item label="名称" prop="brdgrp.beb.namelc">
<c-input type="textarea" v-model="model.brdgrp.beb.namelc" maxlength="35" show-word-limit placeholder="请输入名称">
</c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="地址信息" prop="brdgrp.beb.pts.adrblk">
<c-input type="textarea" v-model="model.brdgrp.beb.pts.adrblk" maxlength="35" show-word-limit
placeholder="请输入地址信息"></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="中文地址" prop="brdgrp.beb.dbfadrblkcn">
<c-input type="textarea" v-model="model.brdgrp.beb.dbfadrblkcn" maxlength="35" show-word-limit
placeholder="请输入Chinese address"></c-input>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="地址" prop="brdgrp.beb.adrelc">
<c-input type="textarea" v-model="model.brdgrp.beb.adrelc" maxlength="35" show-word-limit placeholder="请输入地址">
</c-input>
</el-form-item>
</c-col> -->
</div>
</template>
<script>
import event from "../event"
import Ptap1 from "./Ptap1";
export default {
components: {
"c-ptap1": Ptap1,
},
inject: ['root'],
props: ["model", "codes"],
mixins: [event],
data() {
return {
}
},
created: function () {
}
}
</script>
<style>
</style>
<template>
<div class="eibs">
<!-- 此页面内容为加入Mt750p和Mt754p页面的内容 -->
<!-- ====================================左边 ================================= -->
<c-col :span="12">
<!-- 单据金额 -->
<c-col :span="12">
<el-form-item label="单据金额" prop="brdgrp.cbs.max.cur">
<c-select v-model="model.brdgrp.cbs.max.cur" style="width:100%" placeholder="请选择单据金额" disabled>
</c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="10px" prop="brdgrp.cbs.max.amt">
<c-input v-model="model.brdgrp.cbs.max.amt" placeholder="请输入单据金额" disabled></c-input>
</el-form-item>
</c-col>
<!-- 附加金额 -->
<c-col :span="12">
<el-form-item label="提取附加金额" prop="brdgrp.cbs.opn2.cur">
<c-select v-model="model.brdgrp.cbs.opn2.cur" style="width:100%" placeholder="请选择附加金额" disabled>
</c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="" label-width="10px" prop="brdgrp.cbs.max2.amt">
<c-input v-model="model.brdgrp.cbs.max2.amt" placeholder="请输入附加金额" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="已添加费用" prop="brdgrp.blk.chaadd">
<c-input type="textarea" v-model="model.brdgrp.blk.chaadd" maxlength="35" show-word-limit
placeholder="请输入费用" disabled rows="4"></c-input>
</el-form-item>
</c-col>
<!-- 索赔总额 -->
<c-col :span="12">
<el-form-item label="索赔总额" prop="brdgrp.rec.totcur">
<c-input v-model="model.brdgrp.rec.totcur" maxlength="3" placeholder="请输入索赔总额" disabled>
</c-input>
</el-form-item>
</c-col>
<!-- Total Amount to be Paid -->
<c-col :span="12">
<el-form-item label="" label-width="10px" prop="brdgrp.rec.totamt">
<c-input v-model="model.brdgrp.rec.totamt" placeholder="请输入待支付金额总和" disabled></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<c-ptap1 :model="model" :argadr="{
title: '账户银行',
grp: 'brdgrp',
rol: 'acb',
}" :disabled="true" :isAdrblk="false" disabled1>
</c-ptap1>
</c-col>
<!-- 加Mt754p页面的Beneficiary`s Bank -->
<c-col :span="24">
<c-ptap1 :model="model" :argadr="{
title: `受益人银行`,
grp: 'brdgrp',
rol: 'beb',
}" :disabled="true" disabled1>
</c-ptap1>
</c-col>
</c-col>
</div>
</template>
<script>
import event from "../event"
import Ptap1 from "./Ptap1";
export default {
components: {
"c-ptap1": Ptap1,
},
inject: ['root'],
props:["model","codes"],
mixins: [event],
data(){
return {
}
},
}
</script>
<style>
</style>
<template>
<div class="eibs-tab">
<el-collapse v-model="activeNames" @change="handleChange">
<el-collapse-item title="寄单" name="payp">
<m-payp :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="不符点说明" name="docpre">
<m-docpre :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="不符点通知" name="mt750p" v-if="model.brdgrp.rec.advtyp == '750'">
<m-mt750p :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="付款通知" name="mt754p" v-if="model.brdgrp.rec.advtyp == '754'">
<m-mt754p :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="其他通知" name="othadvtypp" v-if="model.brdgrp.rec.advtyp == 'oth'">
<m-othadvtypp :model="model" :codes="codes" />
</el-collapse-item>
<el-collapse-item title="运输详情" name="shpdet">
<m-shpdet :model="model" :codes="codes" />
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
import event from "../event";
import Payp from "./Payp"
import Docpre from "./Docpre"
import Shpdet from "./Shpdet"
import Mt750p from "./Mt750p"
import Mt754p from "./Mt754p"
import Othadvtypp from "./Othadvtypp"
export default {
components: {
"m-payp": Payp,
"m-docpre": Docpre,
"m-shpdet": Shpdet,
"m-mt750p": Mt750p,
"m-mt754p": Mt754p,
"m-othadvtypp": Othadvtypp,
},
inject: ["root"],
props: ["model", "codes"],
mixins: [event],
data() {
return {
activeNames: ["payp"],
};
},
};
</script>
<style>
</style>
<template>
<div class="eibs">
<c-col :span="12">
<el-form-item label="是否需要核验" prop="brtp.ischktyp">
<c-select v-model="model.brtp.ischktyp" style="width:100%" placeholder="请选择是否需要核验">
</c-select>
</el-form-item>
</c-col>
<c-col :span="12">
<el-form-item label="预计核验日期" prop="brtp.prechkdat">
<c-date-picker type="date" v-model="model.brtp.prechkdat" style="width:100%" placeholder="请选择预计核验日期"></c-date-picker>
</el-form-item>
</c-col>
</div>
</template>
<script>
import event from "../event"
export default {
inject: ['root'],
props:["model","codes"],
mixins: [event],
data(){
return {
}
},
}
</script>
<style>
</style>
<template>
<div>
<c-col :span="24">
<el-form-item
:label="`${argadr.title}`"
:prop="`${argadr.grp}.${argadr.rol}.pts.extkey`"
style="width: 100%"
>
<c-fullbox>
<c-input
style="width: 95%"
v-model="model[argadr.grp][argadr.rol].pts.extkey"
:placeholder="'请输入' + argadr.title + 'Extkey'"
@keyup.enter.native="
showGridPromptDialog(`${argadr.grp}.${argadr.rol}.pts.extkey`)
"
:disabled="disabled1"
></c-input>
<!-- </el-form-item> -->
<!-- </c-col> -->
<!-- <c-col :span="1"> -->
<!-- <el-form-item label="" label-width="5px"> -->
<template slot="footer">
<c-button
style="margin:0 10px 0 0;padding: 0 10px;"
class="searchButton"
size="small"
type="primary"
icon="el-icon-search"
@click="onSeainf(`${argadr.grp}.${argadr.rol}.pts.extkey`)"
></c-button>
<!-- </c-col> -->
<!-- <c-col :span="3" style="text-align: right"> -->
<c-button
style="margin:0 0"
class="detailsButton"
size="small"
type="primary"
@click="onAplpDet"
>
{{ $t('buttons.details') }}
</c-button>
</template>
</c-fullbox>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item
label=""
:prop="`${argadr.grp}.${argadr.rol}.pts.adrblk`"
>
<c-input
type="textarea"
:rows="4"
v-model="model[argadr.grp][argadr.rol].pts.adrblk"
maxlength="140"
show-word-limit
placeholder="请输入"
:disabled="disabled || disabled1"
></c-input>
</el-form-item>
</c-col>
</div>
</template>
<script>
// 机构信息模块
import event from "../event"
export default {
inject: ["root"],
mixins: [event],
props: {
model: {
type: Object,
default: undefined,
},
argadr: {
type: Object,
default: function () {
return {
title: "", //角色名称
rol: "", //角色
grp: "", //所属模块
};
},
},
disabled: {
type: Boolean,
default: false,
},
disabled1: {//编号栏是否为灰
type: Boolean,
default: false,
},
},
data() {
return {
data: [],
};
},
watch: {},
created: function () {},
};
</script>
<style>
.searchButton {
text-align: center;
/* margin: 0 10px; */
margin-right: 10px;
padding: 0 10px;
}
.detailsButton {
margin-left: 10px;
}
</style>
<template>
<div class="eContainer">
<c-page>
<!-- <c-bus-button :$pntvm="this"></c-bus-button> -->
<el-form :model="model" :rules="rules" ref="modelForm" label-width="120px" label-position="right" size="small" :validate-on-rule-change="false">
<c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="tabClick">
<el-tab-pane label="业务信息" name="ovwp">
<c-content>
<m-ovwp :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000001 -->
<el-tab-pane label="统一授信" name="limitbody">
<c-content>
<m-limitbody :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<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" />
</c-content>
</el-tab-pane>
<!--PD000027 -->
<el-tab-pane label="会计分录" name="glepan">
<c-content>
<m-glentry :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<el-tab-pane label="备查/附言" name="addbcb">
<c-content>
<m-addbcb :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000529-->
<el-tab-pane label="报文/面函" name="docpan">
<c-content>
<m-docpan :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
<!--PD000546-->
<el-tab-pane label="附件信息" name="doctre">
<c-content>
<m-doctre :model="model" :codes="codes" />
</c-content>
</el-tab-pane>
</c-tabs>
</el-form>
<c-function-btn :handleSubmit="handleSubmit" :handleCheck="handleCheck" :handleStash="handleStash">
</c-function-btn>
</c-page>
</div>
</template>
<script>
import CodeTable from "~/config/CodeTable"
import Brtsnd from "../model"
import commonFuncs from "~/mixin/commonFuncs"
import Check from "../model/check"
import event from '../event'
import Payp from "./Payp"
import Ovwp from "./Ovwp"
import Addbcb from "./Addbcb"
import Docpre from "./Docpre"
import Shpdet from "./Shpdet"
import Mt750p from "./Mt750p"
import Mt754p from "./Mt754p"
import Othadvtypp from "./Othadvtypp"
//公共面板导入
import Engp from "~/components/business/engp/views";
import Setmod from "~/components/business/setmod/views";
import Glentry from "~/components/business/glentry/views";
import Coninfp from "~/components/business/coninfp/views";
import Docpan from "~/components/business/docpan/views";
import Doctre from "~/components/business/doctre/views";
import Limitbody from "~/components/business/limitbody/views";
export default {
name: "Brtsnd",
components: {
"m-payp": Payp,
"m-ovwp": Ovwp,
"m-addbcb": Addbcb,
"m-docpre": Docpre,
"m-shpdet": Shpdet,
"m-mt750p": Mt750p,
"m-mt754p": Mt754p,
"m-othadvtypp": Othadvtypp,
"m-engp": Engp,
"m-setmod": Setmod,
"m-glentry": Glentry,
"m-coninfp": Coninfp,
"m-docpan": Docpan,
"m-doctre": Doctre,
"m-limitbody": Limitbody,
},
provide() {
return {
root: this
}
},
mixins: [ event,commonFuncs], // 里面包含了Default、Check等的公共处理
data() {
return {
tabVal: "ovwp",
trnName: "brtsnd",
model: new Brtsnd().data,
rules: Check,
codes: {
...CodeTable
},
activeNames: ["engp"],
}
},
mounted(){
this.init()
}
}
</script>
<style>
</style>
......@@ -38,7 +38,8 @@ const Business = [
{ path: 'brtset', component: () => import('~/business/brtset/views'), name: 'brtset', meta: { title: '进口信用证单据进口付汇' } },
{ path: 'litdav', component: () => import('~/business/litdav/views'), name: 'litdav', meta: { title: '进口信用证通知到单' } },
{ path: 'brtcan', component: () => import('~/business/brtcan/views'), name: 'brtcan', meta: { title: '进口信用证单据注销' } },
{ path: 'brtsnd', component: () => import('~/business/brtsnd/views'), name: 'brtsnd', meta: { title: '进口信用证单据寄单' } },
{ path: 'brtame', component: () => import('~/business/brtame/views'), name: 'brtame', 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