<template> <div class="eibs-tab"> <c-col :span="12" style="padding-right: 20px"> <c-col :span="24"> <el-form-item :label="$t('gitfre.承诺形式')" prop="fremsg.tag22d" :rules="[ {required: true, message: '必输项', trigger:['blur','change'] }, ]"> <c-select v-model="model.fremsg.tag22d" style="width:100%" dbCode="legfrm" :filterKey="tag22dFilterKey" placeholder=""> </c-select> </el-form-item> </c-col> <c-col :span="24"> <el-form-item :label="$t('gitfre.企业编号')" prop="fremsg.tag23"> <c-mul-row-input :autosize="{ minRows: 1, maxRows: 1}" :charmod="2" :cols="35" :rows="1" placeholder="" v-model="model.fremsg.tag23"> </c-mul-row-input> </el-form-item> </c-col> <c-col :span="24"> <el-form-item :label="$t('gitfre.功能')" prop="fremsg.tag23h" :rules="[ {required: true, message: '必输项', trigger:['blur','change'] }, ]"> <c-select v-model="model.fremsg.tag23h" style="width:100%" dbCode="tag23h" :filterKey="tag23hFilterKey" placeholder=""> </c-select> </el-form-item> </c-col> <c-col :span="24"> <el-form-item :label="$t('gitfre.请求的详细信息')" prop="fremsg.tag45d"> <c-mul-row-input :isEn="false" :isRequired="true" :autosize="{ minRows: 4, maxRows: 10}" :charmod="0" :cols="65" :rows="999" placeholder="" v-model="model.fremsg.tag45d"> </c-mul-row-input> </el-form-item> </c-col> </c-col> <c-col :span="12"> <c-col :span="24"> <el-form-item :label="$t('gitfre.发行人')" prop="fremsg.issrol"> <c-select v-model="model.fremsg.issrol" style="width: 100%" placeholder="请选择发行人" @clear="othClear('iss')" @change="changeMsgrol($event,'iss','ISS')" dbCode="ROLALL" :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" chooseLanguage="CN" :isLable='false' :disabled="model.fremsg.issrol != 'OTH'" :disabledExtkey="model.fremsg.issrol != 'OTH'" :argadr="{title: '', grp: 'fremsg', rol: 'iss'}" ptytyp="B" > </c-ptap> </c-col> </c-col> </div> </template> <script> import Pts from "~/components/business/commonModel/Pts.js" import Utils from '~/utils/index.js'; export default { inject: ['root'], props: ["model", "codes","trntyp"], mixins: [], data() { return { } }, computed:{ tag22dFilterKey(){ let filterKey = [] switch(this.trntyp){ case "lid": case "led": case "brd": case "bed": case "ltd": case "btd": case "rmd": case "rcd": filterKey = ["DOCR" ,"STBY", "UNDK"] break; case "bpd": case "trd": case "pad": case "mcd": filterKey = [ "DGAR" , "UNDK" , "STBY" , "DOCR"] break; } return filterKey; }, tag23hFilterKey(){ let filterKey = ['GENINFAD','REQFINAN','FRAUDMSG','REIMBURS','CLSVOPEN','CLSVCLOS','OTHERFNC','ADV','CNF','STA','DTAKORRE' , 'DTASTATU' ,'PREDENOT']; if('brd|bed|btd'.indexOf(this.trntyp) >= 0){ filterKey.push('REXTMATU') } if (this.model.fremsg.tag22d === "STBY" || this.model.fremsg.tag22d === "DGAR"){ filterKey.push('TRANSFER') }else if(this.model.fremsg.tag22d === "UNDK"){ filterKey.push('TRANSFER','ISSUANCE','REQISSUE','REQAMEND','ISSAMEND'); }else if(this.model.fremsg.tag22d === "DOCR"){ filterKey.push('DTABESTA' , 'DTAFINAN' , 'DTASTATU' , 'DTAKORRE') } return filterKey; } , }, methods:{ othClear(rol){ if (rol === undefined) { return } const restObj = { pts: new Pts().data, namelc: "", // 名称 .fremsg.othcc.namelc adrelc: "", // 地址 .fremsg.othcc.adrelc dbfadrblkcn: "", // Chinese address .fremsg.othcc.dbfadrblkcn } Utils.copyValueFromVoData(this.model.fremsg[rol], restObj); }, changeMsgrol(e, key, rol) { const restObj = { pts: new Pts().data, namelc: "", // 名称 .fremsg.othcc.namelc adrelc: "", // 地址 .fremsg.othcc.adrelc dbfadrblkcn: "", // Chinese address .fremsg.othcc.dbfadrblkcn } for (let item of this.model.fremsg.msgrolSet) { if (e === item) { if(item == 'OTH'){ Utils.copyValueFromVoData(this.model.fremsg[key], restObj); }else{ if("trd|bpd".indexOf(this.trntyp) >= 0){ Utils.copyValueFromVoData(this.model.fremsg[key], this.model.issRol[item]); }else{ if(this.model[this.trntyp + 'grp'][item.toLowerCase()]){ Utils.copyValueFromVoData(this.model.fremsg[key], this.model[this.trntyp + 'grp'][item.toLowerCase()]); }else{ Utils.copyValueFromVoData(this.model.fremsg[key], this.model[this.getPnttyp(this.trntyp) + 'grp'][item.toLowerCase()]); } } } this.model.fremsg[key].rol = rol; this.model.fremsg[key].pts.rol = rol; break; } } }, } } </script> <style></style>