index.vue 10.4 KB
<template>
    <div class="eContainer">
        <c-page title="进口保函开立">
            <el-form :model="model" :rules="rules" :validate-on-rule-change="false" label-position="right"
                     label-width="120px"
                     ref="modelForm"
                     size="small">
                <c-tabs @tab-click="curTabClick" ref="elment" type="card" v-model="tabVal">

                    <!--PD000001 -->
                    <el-tab-pane :label="$t('commonModels.业务信息')" name="ovwpq">
                        <c-content>
                            <m-ovwpq :codes="codes" :model="model"/>
                        </c-content>
                    </el-tab-pane>

                    <el-tab-pane :label="$t('commonModels.保函文本')" name="gidtxtp">
                        <c-content>
                            <m-gidtxtp :codes="codes" :model="model" @changeTxt="changeTxt"/>
                        </c-content>
                    </el-tab-pane>

                    <el-tab-pane :label="$t('commonModels.授信/表外')" name="liacombo">
                        <c-content>
                            <div class="eibs-tab">
                                <c-collapse ref="liacombo" style="margin-bottom: 5px;" v-model="activeNames">
                                    <el-collapse-item :title="$t('commonCollapse.保证金')" name="ccvpan">
                                        <m-ccvpan :codes="codes" :isAdjustCshpct="true" :model="model"/>
                                    </el-collapse-item>

                                    <el-collapse-item :title="$t('commonCollapse.统一授信')" name="limitbody">
                                        <m-limitbody :codes="codes" :model="model"/>
                                    </el-collapse-item>

                                    <el-collapse-item :title="$t('commonModels.押品信息')" name="yapin"
                                                      v-if="model.limmod.limpts.nonrevflg1 =='2'">
                                        <m-yapin :codes="codes" :model="model"/>
                                    </el-collapse-item>

                                    <el-collapse-item :title="$t('commonCollapse.表外信息')" name="engp">
                                        <m-engp :codes="codes" :model="model"/>
                                    </el-collapse-item>
                                </c-collapse>
                            </div>
                        </c-content>
                    </el-tab-pane>
                    <!-- <el-tab-pane :label="$t('commonModels.押品信息')" name="yapin">
            <c-content>
              <m-yapin :model="model" :codes="codes" @changeTxt="changeTxt" />
            </c-content>
          </el-tab-pane> -->
                    <!--PD000027 -->
                    <el-tab-pane :label="$t('commonModels.费用/账务')" name="setpan">
                        <c-content>
                            <m-setmod :codes="codes" :model="model"/>
                        </c-content>
                    </el-tab-pane>

                    <!--PD000510 -->
                    <el-tab-pane :label="$t('commonModels.备查表')" name="addbcb">
                        <c-content>
                            <div class="eibs-tab">
                                <m-addbcb :codes="codes" :model="model"/>
                            </div>
                        </c-content>
                    </el-tab-pane>

                    <el-tab-pane :label="$t('commonModels.对外担保')" name="cfagit">
                        <c-content>
                            <m-cfagit
                                    :cfagitConfig="{
									conp: {
										isShow: model.gidgrp.rec.fingua=='Y' && model.cfagit.basflg == 'X' && model.cfagit.cfaflg == '1',
										disabled: false
									},
									dclpp: {
										isShow: model.gidgrp.rec.fingua=='Y' && model.cfagit.dclflg == 'X' && model.cfagit.cfaflg == '1',
										disabled: false
									},
								}"
                                    :codes="codes"
                                    :model="model"
                            >
                                <el-collapse-item :title="$t('commonCollapse.是否对外担保')" name="isFingua">
                                    <m-isFingua :codes="codes" :model="model"/>
                                </el-collapse-item>
                                <el-collapse-item :title="$t('commonCollapse.对外担保数据采集')" name="cfap"
                                                  v-if="model.gidgrp.rec.fingua == 'Y'">
                                    <m-cfap :codes="codes" :model="model"/>
                                </el-collapse-item>
                            </m-cfagit>
                        </c-content>
                    </el-tab-pane>

                    <el-tab-pane :label="$t('commonModels.跨境人民币')" name="rmbbop">
                        <c-content>
                            <m-rmbbop :codes="codes" :model="model" ref="rmbbop"></m-rmbbop>
                        </c-content>
                    </el-tab-pane>

                    <el-tab-pane :label="$t('commonModels.统一名单')" name="usrmd">
                        <c-content>
                            <m-usrmd :codes="codes" :model="model"/>
                        </c-content>
                    </el-tab-pane>

                    <!--PD000529 -->
                    <el-tab-pane :label="$t('commonModels.报文/面函')" name="docpan">
                        <c-content>
                            <m-docpan :codes="codes" :model="model"/>
                        </c-content>
                    </el-tab-pane>
                </c-tabs>
            </el-form>
            <!-- 底部按钮 -->
            <c-function-btn :handleCheck="handleCheck" :handleStash="handleStash" :handleSubmit="handleSubmit"
                            @handleSureWarning="handleSureWarning"
                            ref="commonBtn"></c-function-btn>
        </c-page>
    </div>
</template>
<script>
    import event from "../event";
    import operationFunc from "~/mixin/operationFunc";
    import commonDepend from "~/mixin/commonDepend";
    import Check from "../model/check";
    import Default from "../model/default";
    import buildFn from '../event/buildCommons.js';
    import CodeTable from "~/config/CodeTable";
    import Gitopn from "../model";
    import Ovwpq from "./Ovwpq";
    import Rmbbop from "~/components/business/rmb/rmbbop/views";
    import Cnyp1 from "./Cnyp1";
    import Addbcb from "./Addbcb";
    import Gidtxtp from "./Gidtxtp";
    import Cfagit from "~/components/business/Cfagit/views";
    import IsFingua from "./IsFingua";
    import Cfap from "./Cfap";

    import Liaall from "~/components/business/liaall"
    import Engp from "~/components/business/engp/views";
    import Ccvpan from "~/components/business/ccvpan/views";
    import Setmod from "~/components/business/setmod/views";
    import Docpan from "~/components/business/docpan/views";
    import Limitbody from "~/components/business/limitbody/views";
    import Usrmd from "~/components/business/Usrmd/views";
    import Yapin from "~/components/business/yapin/views";

    export default {
        name: "Gitopn",
        components: {
            "m-ovwpq": Ovwpq,
            "m-cnyp1": Cnyp1,
            "m-rmbbop": Rmbbop,
            "m-addbcb": Addbcb,
            "m-gidtxtp": Gidtxtp,
            "m-cfagit": Cfagit,
            "m-isFingua": IsFingua,
            "m-cfap": Cfap,

            "m-engp": Engp,
            "m-ccvpan": Ccvpan,
            "m-setmod": Setmod,
            "m-docpan": Docpan,
            "m-limitbody": Limitbody,
            "m-usrmd": Usrmd,
            "m-liaall": Liaall,
            "m-yapin": Yapin
        },
        provide() {
            return {
                root: this,

            };
        },
        mixins: [Default, operationFunc, event, commonDepend, buildFn],
        computed: {
            rawRules() {
                return Check.apply(this);
            },
        },
        data() {
            return {
                tabVal: "ovwpq",
                activeNames: ["ccvpan", "limitbody", "engp", "yapin"],
                trnName: "gitopn",
                model: new Gitopn().data,
                codes: {
                    ...CodeTable
                },
                rules: {},
            };
        },
        created() {
            this.rules = this.rawRules;
        },
        mounted() {
            console.log('this.$route', this.$route)
            let params = {
                transName: this.trnName,
                gidgrp: {
                    rec: {
                        inr: this.$route.query.inr || ''
                    }
                },
            };
            this.init(params).then(res => {
                if (this.model.gitp.usr.extkey == "") {
                    this.model.gitp.usr.extkey = window.sessionStorage.userName
                }
            });
        },
        methods: {
            curTabClick(tab) {
                if (!this.isInDisplay) {
                    this.templateToText(tab.name)
                }
                this.tabClick(tab)
            },
            changeTxt(tabName) {
                this.templateToText(tabName)
            },
            // 保函模板转文本
            templateToText(tabName) {
                if (tabName === 'gidtxtp' || tabName === 'docpan') {
                    if (!this.model.gidgrp.blk.modifySet || !this.model.gidgrp.blk.modifySet.includes("gidtxt")) {
                        //发生修改则不再计算
                        let atxinr = this.model.gidgrp.rec.atxinr;
                        let textTempData = this.model.textTempData;
                        this.formatTxtp(this.model.gidgrp.blk.gtxgidtxt, atxinr, 'atx', textTempData, 'gidgrp')
                    }
                }
                if (tabName === 'gidtxtpc' || tabName === 'docpan') {
                    if (!this.model.gidgrp.blk.modifySet || !this.model.gidgrp.blk.modifySet.includes("gidtxtc")) {
                        //发生修改则不再计算
                        let gtxinrc = this.model.gidgrp.rec.gtxinrc;
                        let textTempData = this.model.textTempData;
                        this.formatTxtp(this.model.gidgrp.blk.gtxgidtxtc, gtxinrc, 'atx', textTempData, 'gidgrp', true)
                    }
                }
            },
        }
    };
</script>
<style scoped>
</style>