<template> <div class="eibs-tab"> <c-col :span="12" style="padding-right: 20px;"> <c-col :span="24"> <el-form-item :rules="[ {required: isDisabled , message: '必输项', trigger:['blur','change'] }, {validator: msgtxtValidator, trigger: ['change', 'blur']} ]" label="信息内容" prop="commsg.msgtxt"> <c-input type="textarea" :cols="50" :rows="3" :autosize="{ minRows: 2, maxRows: 5}" placeholder="请输入信息内容" v-model="model.commsg.msgtxt" :maxlength="model.commsg.typsel=='ELCS'?500:5000" show-word-limit> </c-input> </el-form-item> </c-col> <c-col :span="24" v-if="inifrm === 'bftelc'"> <el-form-item label="报文类型" prop="ccmelc"> <c-select v-model="model.ccmelc" dbCode="CCMELC" style="width:100%" placeholder="请选择报文类型" @change="ccmelcChange"> </c-select> </el-form-item> </c-col> <c-col :span="24" v-if="(inifrm === 'bftelc'&&model.ccmelc=='1')||inifrm === 'ditelc'||inifrm === 'bdtelc'||inifrm === 'detelc'||inifrm === 'bdteus'"> <el-form-item label="自由格式报文类型" prop="commsg.typsel" :rules="[{required:(inifrm === 'bftelc'&&model.ccmelc=='1')||inifrm === 'ditelc'||inifrm === 'bdtelc'||inifrm === 'detelc'||inifrm === 'bdteus',message:'必输项'}]"> <c-radio v-model="model.commsg.typsel" label="ELCS">elcs.303.001.01</c-radio> <c-radio v-model="model.commsg.typsel" label="CSSD">cssd.304.001.01</c-radio> </el-form-item> </c-col> </c-col> <c-col :span="12" style="padding-left: 20px;"> <c-col :span="24"> <el-form-item label-width="0px" prop="commsg.jscyjg"> <c-ptap-fqcyjg2 :model="model" :isShowCard="false" :requiredBank="isDisabled" :isAdrDis="true" :isHaveInmodel='true' :isShowAdr='true' :argadr="{ bankTitle: '接收行联行行号', adrTitle: '接收行名称', outModel:'commsg', inModel: 'jscyjg', adrModel:'adrblk' }"> </c-ptap-fqcyjg2> <!-- <c-input v-model="model.commsg.jscyjg" maxlength="20" placeholder="请输入接收行联行行号"></c-input> --> </el-form-item> </c-col> </c-col> </div> </template> <script> export default { components: { }, inject: ["root"], props: ["model", "codes","inifrm"], mixins: [], data() { return { isRequired: false }; }, methods: { changeCcmelc(){ if(this.inifrm !== 'bftelc'){ this.isRequired = true }else if(this.inifrm === 'bftelc' && this.model.ccmelc === '1'){ this.isRequired = true }else { this.isRequired = false } }, msgtxtValidator(rule, value, callback) { if(this.model.commsg.typsel=="ELCS"){ if (value.length > 500) { callback(new Error('请不要超过500个汉字或字符!')) } }else if(this.model.commsg.typsel=="CSSD"){ if (value.length > 5000) { callback(new Error('请不要超过5000个汉字或字符!')) } } if (value.indexOf("\"") > -1) { callback(new Error('字符"输入不合法')) } else { callback() } }, ccmelcChange(){ if(this.model.ccmelc=='1'){ this.model.commsg.typsel="ELCS"; } else{ this.model.commsg.typsel=""; } } }, computed: { isDisabled(){ if(this.inifrm === 'bftelc' && (this.model.ccmelc === '' || this.model.ccmelc === '2')){ return false }else{ return true } } }, created: function() { this.changeCcmelc() } }; </script> <style> </style>