<template> <div class="eibs-tab"> <!-- 第1行 --> <c-row> <c-col :span="8"> <el-form-item label="业务主键" prop="recgrp.ads.levyno"> <c-input disabled placeholder="请输入业务主键" v-model="model.recgrp.ads.levyno"></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="操作类型" prop="recgrp.ads.opertype"> <c-select :disabled="disabledOpertype" v-model="model.recgrp.ads.opertype"> <el-option :key="item.value" :label="item.label" :value="item.value" v-for="item in opertypeOptions"></el-option> </c-select> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="银行机构代码" prop="recgrp.ads.bankorgcode"> <c-input disabled placeholder="请输入银行机构代码" v-model="model.recgrp.ads.bankorgcode"/> </el-form-item> </c-col> </c-row> <!-- 第2行 --> <c-row> <c-col :span="8"> <el-form-item label="委托行银行机构代码" prop="recgrp.ads.entrustbankorgcode"> <c-input :disabled="isDisabled" maxlength="12" placeholder="请输入委托行银行机构代码" v-model="model.recgrp.ads.entrustbankorgcode"/> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="业务类型" prop="recgrp.ads.transtype"> <c-select :disabled="isDisabled" @change="handleTranstypeChange" dbCode="rmb131" placeholder="请输入业务类型" v-model="model.recgrp.ads.transtype"></c-select> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="业务属性" prop="recgrp.ads.transattr"> <c-select :disabled="disabledTransattr" dbCode="rmb121" placeholder="请输入业务属性" v-model="model.recgrp.ads.transattr"></c-select> </el-form-item> </c-col> </c-row> <!-- 第3行 --> <c-row> <c-col :span="8"> <el-form-item label="境外对手行代码" prop="recgrp.ads.forbankswiftbic"> <c-input :disabled="isDisabled" maxlength="11" placeholder="请输入境外对手行代码" v-model="model.recgrp.ads.forbankswiftbic"> </c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="进口商名称" prop="recgrp.ads.importername"> <c-input :disabled="isDisabled" maxlength="128" placeholder="请输入进口商名称" v-model="model.recgrp.ads.importername"></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="进口商国家(地区)代码" prop="recgrp.ads.impcountrycode"> <c-select-cty :disabled="isDisabled" @change="handleImpcoutrycodeChange" v-model="model.recgrp.ads.impcountrycode"></c-select-cty> </el-form-item> </c-col> </c-row> <!-- 第4行 --> <c-row> <c-col :span="8"> <el-form-item label="进口商机构代码" prop="recgrp.ads.importercode"> <c-input :disabled="disabledImportercode" placeholder="请输入进口商机构代码" v-model="model.recgrp.ads.importercode"></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="出口商名称" prop="recgrp.ads.exportername"> <c-input :disabled="isDisabled" maxlength="128" placeholder="请输入出口商名称" v-model="model.recgrp.ads.exportername"></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="出口商国家(地区)代码" prop="recgrp.ads.expcountrycode"> <c-select-cty :disabled="isDisabled" @change="handleExpcoutrycodeChange" v-model="model.recgrp.ads.expcountrycode"></c-select-cty> </el-form-item> </c-col> </c-row> <!-- 第5行 --> <c-row> <c-col :span="8"> <el-form-item label="出口商机构代码" prop="recgrp.ads.exportercode"> <c-input :disabled="disabledExportercode" placeholder="请输入出口商机构代码" v-model="model.recgrp.ads.exportercode"></c-input> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="业务发生日期" prop="recgrp.ads.occurdate"> <c-date-picker :disabled="isDisabled" placeholder="请输入业务发生日期" type="date" v-model="model.recgrp.ads.occurdate"></c-date-picker> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="业务到期日" prop="recgrp.ads.enddate"> <c-date-picker :disabled="isDisabled" placeholder="请输入业务到期日" type="date" v-model="model.recgrp.ads.enddate"></c-date-picker> </el-form-item> </c-col> </c-row> <!-- 第6行 --> <c-row> <c-col :span="8"> <el-form-item label="信用证到期日" prop="recgrp.ads.creditenddate"> <c-date-picker :disabled="disabledCreditenddate" placeholder="请输入信用证到期日" type="date" v-model="model.recgrp.ads.creditenddate"></c-date-picker> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="币种" prop="recgrp.ads.currencycode"> <c-select-cur :disabled="isDisabled" dbCode="curtxt" placeholder="请选择币种" sort="SRT" v-model="model.recgrp.ads.currencycode"></c-select-cur> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="金额" prop="recgrp.ads.amt"> <c-input-currency :currency="model.recgrp.ads.currencycode" :disabled="isDisabled" placeholder="请输入金额" v-model="model.recgrp.ads.amt"></c-input-currency> </el-form-item> </c-col> </c-row> <!-- 第7行 --> <c-row> <c-col :span="8"> <el-form-item label="期限条件" prop="recgrp.ads.termtype"> <c-select :disabled="isDisabled" dbCode="rmbqxt" placeholder="请输入期限条件" v-model="model.recgrp.ads.termtype"></c-select> </el-form-item> </c-col> <c-col :span="8"> <el-form-item label="银行业务编号" prop="recgrp.ads.banktrano"> <c-input :disabled="isDisabled" placeholder="请输入银行业务编号" v-model="model.recgrp.ads.banktrano"/> </el-form-item> </c-col> </c-row> <!-- 第12行 --> <c-row> <c-col> <el-form-item label="变更/撤销原因" prop="recgrp.ads.actiondesc"> <c-input :disabled="disabledActiondesc" maxlength="128" placeholder="请输入变更/撤销原因" show-word-limit type="textarea" v-model="model.recgrp.ads.actiondesc"></c-input> </el-form-item> </c-col> </c-row> <!-- 第13行 --> <c-row> <c-col> <el-form-item label="交易附言" prop="recgrp.ads.addword"> <c-input :disabled="isDisabled" maxlength="128" placeholder="请输入交易附言" show-word-limit type="textarea" v-model="model.recgrp.ads.addword"></c-input> </el-form-item> </c-col> </c-row> </div> </template> <script> export default { props: ["model", "codes"], inject: ["root"], computed: { isDisabled() { return this.model.rmbbut.flg !== 'X'; }, disabledOpertype() { return this.isDisabled || this.opertypeOptions.length === 3; }, disabledTransattr() { return this.isDisabled || this.model.recgrp.ads.transtype === '2001'; }, disabledImportercode() { return this.isDisabled || this.model.recgrp.ads.impcountrycode !== 'CHN'; }, disabledExportercode() { return this.isDisabled || this.model.recgrp.ads.expcountrycode !== 'CHN'; }, disabledCreditenddate() { return this.isDisabled || this.model.recgrp.ads.transtype !== '1001'; }, disabledActiondesc() { return this.model.rmbbut.flg !== 'X' || this.model.recgrp.ads.opertype === '1'; }, }, data() { return { opertypeOptions: [ {label: "新增", value: "1"}, {label: "变更", value: "2"}, {label: "撤销", value: "3"} ], }; }, watch: { 'model.rmbbut.flg': { handler(newValue) { if (newValue === "X") { switch (this.model.recgrp.ads.opertype) { case "1": case "2": if (this.model.pblmod.wrkpbl.sta === "8") { this.opertypeOptions = [{label: "变更", value: "2"}]; this.model.recgrp.ads.opertype = "2"; } break; case "3": this.model.recgrp.ads.opertype = "2"; } } else { this.opertypeOptions = [ {label: "新增", value: "1"}, {label: "变更", value: "2"}, {label: "撤销", value: "3"} ]; } }, }, }, methods: { handleTranstypeChange(value) { if (value !== '1001') { this.model.recgrp.ads.creditenddate = ''; } if (value === '2001') { this.model.recgrp.ads.transattr = ''; } }, handleImpcoutrycodeChange(value) { const recgrp = this.model.recgrp; recgrp.ads.importercode = value === 'CHN' ? recgrp.ads.importercode : ''; }, handleExpcoutrycodeChange(value) { const recgrp = this.model.recgrp; recgrp.ads.exportercode = value === 'CHN' ? recgrp.ads.exportercode : ''; }, } }; </script> <style> </style>