<template> <div class="eibs-tab"> <!-- ======================= 左边 ========================= --> <c-col :span="12" style="padding-right: 20px"> <c-col :span="24"> <el-form-item label="保函编号" prop="nidgrp.rec.ownref" style="width: 100%"> <c-fullbox> <c-input v-model="model.nidgrp.rec.ownref" maxlength="8" placeholder="请输入" disabled></c-input> <template slot="footer"> <c-button v-model="model.gitp0.recget.sdamod.seainf" style="margin: 0 0 0 10px; padding: 0 12px" size="small" type="primary"> <i class="el-icon-info"></i> </c-button> </template> </c-fullbox> </el-form-item> </c-col> <c-col :span="24"> <c-col :span="13"> <el-form-item label="保函金额" prop="nidgrp.cbs.max.cur" previewLabel="保函币种"> <c-select v-model="model.nidgrp.cbs.max.cur" style="width: 100%" disabled placeholder="请输入保函币种" dbCode="curtxt"></c-select> </el-form-item> </c-col> <c-col :span="11"> <el-form-item previewLabel="保函金额" label-width="5px" prop="nidgrp.cbs.max.amt"> <c-input-currency disabled :currency="model.nidgrp.cbs.max.cur" v-model="model.nidgrp.cbs.max.amt" placeholder="请输入"></c-input-currency> </el-form-item> </c-col> </c-col> <c-col :span="24"> <c-col :span="13"> <el-form-item label="保函余额" prop="nidgrp.cbs.opn1.cur" previewLabel="信用证币种"> <c-select v-model="model.nidgrp.cbs.opn1.cur" placeholder="" style="width: 100%" disabled dbCode="curtxt"> </c-select> </el-form-item> </c-col> <c-col :span="11"> <el-form-item previewLabel="保函余额" label-width="5px" prop="nidgrp.cbs.opn1.amt"> <c-input-currency :currency="model.nidgrp.cbs.opn1.cur" v-model="model.nidgrp.cbs.opn1.amt" placeholder="请输入" disabled></c-input-currency> </el-form-item> </c-col> </c-col> <c-col :span="24"> <el-form-item label="保函种类" prop="nidgrp.rec.gartyp"> <c-select disabled v-model="model.nidgrp.rec.gartyp" style="width: 100%" placeholder="请选择保函种类" dbCode="typgar"> </c-select> </el-form-item> </c-col> <c-col :span="24"> <c-col :span="13" v-if="model.nidgrp.rec.hndtyp != 'OC'"> <el-form-item label="保函效期" prop="nidgrp.rec.expdat"> <c-date-picker type="date" disabled v-model="model.nidgrp.rec.expdat" style="width: 100%" placeholder="请选择"> </c-date-picker> </el-form-item> </c-col> <c-col :span="13" v-if="model.nidgrp.rec.hndtyp == 'OC'"> <el-form-item label="保函效期" prop="nidgrp.rec.liadat"> <c-date-picker type="date" disabled v-model="model.nidgrp.rec.liadat" style="width: 100%" placeholder="请选择"> </c-date-picker> </el-form-item> </c-col> <c-col :span="11"> <el-form-item label="" label-width="5px" prop="nidgrp.rec.exptyp"> <c-input v-model="model.nidgrp.rec.exptyp" disabled placeholder="请输入"></c-input> </el-form-item> </c-col> </c-col> <c-col :span="24"> <el-form-item label="报文类型" prop="fremsg.sndmt"> <c-select v-model="model.fremsg.sndmt" style="width: 100%" placeholder="请输入报文类型" @change="changeSndmt" dbCode="sndmte" sort="SRT" :filterKey="['99','92','95','96','30','59','AVN','SAN','AME','ARR','AOA']" > </c-select> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="发报类型" prop="fremsg.fulmt" :required="['59','99'].includes(this.model.fremsg.sndmt)"> <c-select :disabled="model.fremsg.sndmt != '99' && model.fremsg.sndmt != '59'" v-model="model.fremsg.fulmt" @change="changeTag20ref" style="width: 100%" dbCode="fulmt" :filterKey="fulmtFilterKey" placeholder="请选择发报类型"> </c-select> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="报文标题" prop="fremsg.prttitle"> <c-mul-row-input :disabled="model.fremsg.sndmt != '99'" :autosize="{ minRows: 1, maxRows: 1}" :charmod="2" :cols="35" :rows="1" placeholder="请选择报文标题" v-model="model.fremsg.prttitle"> </c-mul-row-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="关联报文" prop="fremsg.relmt" :required="['92','95','96'].includes(this.model.fremsg.sndmt)"> <c-select :disabled="!['92','95','96'].includes(this.model.fremsg.sndmt)" v-model="model.fremsg.relmt" style="width: 100%" dbCode="relmt" :filterKey="['103','202','700','701','705','707','710','711','720','721','730','732','734','740','742','747','750','752','754','756','760','767','768','769','790','791','792','795','796','798','799','999']" placeholder="请选择关联报文"> </c-select> </el-form-item> </c-col> <c-col :span="24"> <c-col :span="13"> <el-form-item label="发报日期" prop="fremsg.reldat" :required="['92','95','96','30'].includes(this.model.fremsg.sndmt)"> <c-date-picker type="date" :disabled="!['92','95','96','30'].includes(this.model.fremsg.sndmt)" v-model="model.fremsg.reldat" style="width: 100%" placeholder="请选择发报日期"> </c-date-picker> </el-form-item> </c-col> <c-col :span="11"> <el-form-item label="" label-width="5px" prop="fremsg.reldir"> <c-select :disabled="model.fremsg.sndmt != '95' && model.fremsg.sndmt != '96'" v-model="model.fremsg.reldir" placeholder="请输入" dbCode="reldir" > </c-select> </el-form-item> </c-col> </c-col> <c-col :span="24"> <el-form-item :label="tag20" prop="fremsg.tag20ref" v-if="['799','499','759'].includes(this.model.fremsg.fulmt)"> <c-input v-model="model.fremsg.tag20ref" style="width: 100%" placeholder=""> </c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="详细说明" prop="fremsg.strinf" v-if="model.fremsg.sndmt != '59'"> <c-mul-row-input :isRequired="['99','92','95','96','ARR'].includes(model.fremsg.sndmt)" :disabled="!['99','92','95','96','AVN','ARR'].includes(model.fremsg.sndmt)" :autosize="{ minRows: 7, maxRows: 12}" :charmod="2" :cols="50" :rows="35" :isShowWordLimit="true" :isCheckMaxRows="true" v-model="model.fremsg.strinf" ></c-mul-row-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="" v-if="model.fremsg.sndmt != '59'"> <c-checkbox v-model="model.fremsg.flg" :disabled="!['99','92','95','96','AVN','ARR'].includes(this.model.fremsg.sndmt)" true-label="X" false-label="" @change="setStrinf" class="checkbox-left" customModifykey="fremsg.flg" >发送确认保函真实性电文</c-checkbox> </el-form-item> </c-col> </c-col> <!-- ======================右边====================== --> <c-col :span="12" style="padding-left: 20px"> <c-col :span="24"> <el-form-item label="申请人" prop="nidgrp.apl.pts.cnnam"> <c-input v-model="model.nidgrp.apl.pts.cnnam" type="textarea" :rows="2" placeholder="请输入申请人" disabled></c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="受益人" prop="nidgrp.ben.pts.cnnam"> <c-input v-model="model.nidgrp.ben.pts.cnnam" type="textarea" :rows="2" placeholder="请输入受益人" disabled></c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="保函开立行" prop="nidgrp.iss.pts.cnnam"> <c-input disabled v-model="model.nidgrp.iss.pts.cnnam" type="textarea" :rows="2" placeholder=""></c-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item label="收报行" prop="fremsg.msgrol"> <c-select v-model="model.fremsg.msgrol" style="width: 100%" placeholder="请选择收报行" @clear="othClear('othmsg')" @change="changeMsgrol($event,'othmsg','OTHMSG')" dbCode="ROLALL" :isShowKeyAndLabel="true" :filterKey="changeMsgrolSet"> </c-select> </el-form-item> </c-col> <c-col :span="24"> <c-ptap :model="model" :noRef="true" :editExtLabel="true" :isAdrblk="false" :haveAdrLabel="false" :requiredExtkey="true" chooseLanguage="CN" :isFieldLabelVisible="false" :isLable='false' :disabled="model.fremsg.msgrol != 'OTH'" :disabledExtkey="model.fremsg.msgrol != 'OTH'" :argadr="{title: '', grp: 'fremsg', rol: 'othmsg'}" ptytyp="B" > </c-ptap> </c-col> <c-col :span="24"> <el-form-item label="抄送" prop="fremsg.ccrol"> <c-select v-model="model.fremsg.ccrol" style="width: 100%" placeholder="请选择" @clear="othClear('othcc')" @change="changeMsgrol($event,'othcc','OTHCC')" dbCode="ROLALL" :isShowKeyAndLabel="true" :filterKey="model.fremsg.msgrolSet"> </c-select> </el-form-item> </c-col> <c-col :span="24"> <c-ptap :model="model" :noRef="true" :editExtLabel="true" :isAdrblk="false" :haveAdrLabel="false" :isFieldLabelVisible="false" :isLable='false' :disabled="model.fremsg.ccrol != 'OTH'" :disabledExtkey="model.fremsg.ccrol != 'OTH'" :argadr="{title: '', grp: 'fremsg', rol: 'othcc'}" ptytyp="B" > </c-ptap> </c-col> </c-col> </div> </template> <script> import event from "../event"; import Default from "../model/default.js"; import { filter } from 'minimatch'; export default { inject: ["root"], props: ["model", "codes"], mixins: [event, Default], data() { return { }; }, computed: { tag20(){ if (this.model.fremsg.fulmt == '799') { return 'MT799 Tag20'; } if(this.model.fremsg.fulmt == '499'){ return 'MT499 Tag20'; } if(this.model.fremsg.fulmt == '759'){ return 'MT759 Tag20'; } }, fulmtFilterKey(){ let filterKey = []; if (this.model.fremsg.sndmt === '99'){ filterKey = ['199','299','799']; }else if(this.model.fremsg.sndmt === '59'){ filterKey = ['199','299','759']; }else{ filterKey = []; } return filterKey; }, changeMsgrolSet(){ if (this.model.fremsg.msgrolSet == undefined || this.model.fremsg.msgrolSet.length == 0) { return; } let filterKey = ['AAA']; switch (this.model.fremsg.sndmt) { case "AVN": case "AVM": for (let item of this.model.fremsg.msgrolSet) { if (item == "ADA") { filterKey.push("ADA"); } let sndmtStr = item.substring(0,2); if (sndmtStr == "AP") { filterKey.push(item); } } break; case "SAN": for (let item of this.model.fremsg.msgrolSet) { if (item == "BEN") { filterKey.push("BEN"); } if (item == "ADV") { filterKey.push("ADV"); } } break; case "95": case "96": for (let item of this.model.fremsg.msgrolSet) { if ((this.model.nidgrp[item.toLowerCase()] && this.model.nidgrp[item.toLowerCase()].ptytyp === "B") || item == "OTH") { filterKey.push(item); } } break; default: filterKey = this.model.fremsg.msgrolSet; break; } return filterKey; }, }, methods: { }, mounted() { } }; </script> <style></style>