<template> <div class="eContainer"> <c-page title="汇出汇款"> <el-form :model="model" :rules="rules" ref="modelForm" label-width="120px" size="small" :validate-on-rule-change="false" > <c-tabs :value="tabVal" ref="elment" type="card" @tab-click="mimeTabClick" > <el-tab-pane label="业务信息" name="ovwp"> <c-content> <m-ovwp :model="model" :codes="codes" /> </c-content> </el-tab-pane> <el-tab-pane label="费用/账务" name="setpan,glepan"> <c-content> <div class="eibs-tab"> <el-collapse v-model="activeNames"> <el-collapse-item title="结算" name="setpan"> <!-- 结算 --> <m-setpan :model="model" :codes="codes" /> </el-collapse-item> <el-collapse-item title="会计分录" name="glepan"> <!-- 会计分录 --> <m-glepan :model="model" :codes="codes" /> </el-collapse-item> </el-collapse> </div> </c-content> </el-tab-pane> <el-tab-pane label="备查/附言" name="addbcb"> <c-content> <m-addbcb :model="model" :codes="codes" /> </c-content> </el-tab-pane> <el-tab-pane label="申报信息" name="cnyp"> <c-content> <m-cnyp :model="model" :codes="codes" /> </c-content> </el-tab-pane> <!-- <el-tab-pane label="境内汇款申请书-基础信息" name="dbe" v-if="model.bopmod.szflg === '2' && model.bopmod.basflg" > <m-dbe :model="model" :codes="codes"></m-dbe> </el-tab-pane> --> <!-- <el-tab-pane label="境外汇款申请书-基础信息" name="dbb" v-if="model.bopmod.szflg === '1' && model.bopmod.basflg" > <m-dbb :model="model" :codes="codes"></m-dbb> </el-tab-pane> --> <!-- <el-tab-pane label="2111跨境支出信息" name="outp" v-if="model.cnybop.outflg === '1'" > <m-outp :model="model" :codes="codes"></m-outp> </el-tab-pane> --> <el-tab-pane label="报文/面函" name="docpan"> <!--PD000529 --> <m-docpan :model="model" :codes="codes" /> </el-tab-pane> <el-tab-pane label="附件信息" name="doctre"> <!--PD000546 --> <m-doctre :model="model" :codes="codes" /> </el-tab-pane> </c-tabs> </el-form> <c-grid-ety-prompt-dialog ref="doxpDialog" :isPty="false" :promptData="promptData" @select-ety="selectMsg" > </c-grid-ety-prompt-dialog> <c-grid-ety-prompt-dialog ref="etyDialog" :promptData="promptData" v-on:select-ety="selectEty" > </c-grid-ety-prompt-dialog> <!-- <c-bus-button :$pntvm="this"></c-bus-button> --> <c-function-btn :handleSubmit="handleSubmit" :handleCheck="handleCheck" :handleStash="handleStash" > </c-function-btn> </c-page> </div> </template> <script> import Api from "~/service/Api"; import Utils from "~/utils/index"; import CodeTable from "~/config/CodeTable"; import Cptopn from "~/model/Cptopn"; import commonProcess from "~/mixin/commonProcess"; import commonFuncs from "~/mixin/commonFuncs"; import Pattern from "~/model/Cptopn/Pattern"; import Default from "~/model/Cptopn/Default"; import Check from "~/model/Cptopn/Check"; import Ovwp from "./Ovwp"; import Addbcb from "./Addbcb.vue"; import Cnyp from "./Cnyp.vue" import Doctre from "~/views/Public/Doctre"; import Glepan from "~/views/Public/Glepan"; import Setpan from "~/views/Public/Setpan"; import Docpan from "~/views/Public/Docpan"; export default { name: "Cptopn", components: { "m-ovwp": Ovwp, "m-setpan": Setpan, "m-glepan": Glepan, "m-addbcb": Addbcb, "m-docpan": Docpan, "m-doctre": Doctre, "m-cnyp": Cnyp, }, provide() { return { root: this, }; }, mixins: [commonProcess, commonFuncs], // 里面包含了Default、Check等的公共处理 data() { return { tabVal: "ovwp", trnName: "cptopn", model: new Cptopn().data, checkRules: Check, defaultRules: Default, pattern: Pattern, rules: null, activeNames: ["setpan"], codes: { ...CodeTable }, }; }, methods: { mimeTabClick(tab) { this.tabClick(tab); const name = tab.name; let rulePath; if (name === "setpan") { rulePath = "pyenam"; } if (name === "glepan") { rulePath = "glepan"; } if (name === "coninfp") { rulePath = "coninfp"; } if (name === "docpan") { rulePath = "oit.inftxt"; } if (name === "doctre") { rulePath = "doctre"; } if (name === "sbxx") { rulePath = "trd.ownref,cnyp"; } if (!!rulePath) { this.executeRule(rulePath).then((res) => { if (res.respCode == SUCCESS) { this.updateModel(res.data); } }); } }, }, created: async function () { console.log("进入cptopn交易"); let rtnmsg = await this.init(this.$route.query); if (rtnmsg.respCode == SUCCESS) { Utils.copyValueFromVO(this.model, rtnmsg.data); if (this.isInDisplay) { this.restoreDisplay(); } } else { this.$notify.error({ title: "错误", message: "服务请求失败!" }); } }, watch: { "model.cpdgrp.cbs.nom1.amt": { handler(val, oldVal) { this.changeFormItemRequired("cpdgrp.rec.swftyp", val != "0.000"); }, immediate: true, }, }, }; </script> <style> .el-col .el-divider--horizontal { margin-top: 0; } .messageLabel .el-form-item__label { text-align: left; font-weight: bold; font-size: 12px; } </style>