<template>
  <div class="eContainer">
    <c-page title="自由格式报文">
    <el-form :model="model" :rules="rules" ref="modelForm" label-width="150px" label-position="right" size="small" :validate-on-rule-change="false">
       <c-tabs v-model="tabVal" ref="elment" type="card" @tab-click="myTabClick">
                   <!--getfre PD000141 Common Messages -->
         <el-tab-pane label="业务信息" name="ovwp">
            <c-content>
              <m-ovwp :model="model" :codes="codes" />
            </c-content>
          </el-tab-pane>
            <!--setmod PD000000 Settlement -->
          <el-tab-pane label="费用/账务" name="engp,setpan,glepan">
            <c-content>
              <div class="eibs-tab">
                <el-collapse v-model="activeNames">
                  <el-collapse-item title="表外记账" name="engp">
                    <!-- 表外记账 -->
                    <m-engp :model="model" :codes="codes" />
                  </el-collapse-item>
                  <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>
            <!--coninf PD000000 Completion -->
           <el-tab-pane label="备查/附言" name="coninfp">
                <m-coninfp :model="model" :codes="codes"/>
           </el-tab-pane>
            <!--trndoc PD000529 &Messages -->
             <el-tab-pane label="报文/面函" name="docpan">
            <c-content>
              <m-docpan :model="model" :codes="codes" />
            </c-content>
          </el-tab-pane>
            <!--trndoc PD000546 Attachments -->
           <el-tab-pane :label="$t('trndoc.PD000546')" name="doctre">
                <m-doctre :model="model" :codes="codes"/>
           </el-tab-pane>
            <!--fremsg PD000255 Message Details MT759 -->
           <el-tab-pane :label="$t('fremsg.PD000255')" name="mt759p">
                <m-mt759p :model="model" :codes="codes"/>
           </el-tab-pane>
            <!--setmod PD000020 Settlement Details Panel -->
           <el-tab-pane :label="$t('setmod.PD000020')" name="detp">
                <m-detp :model="model" :codes="codes"/>
           </el-tab-pane>
            <!--fremsg PD000076 Message Details -->
           <el-tab-pane :label="$t('fremsg.PD000076')" name="fredet">
                <m-fredet :model="model" :codes="codes"/>
           </el-tab-pane>
            <!--getfre PD000333 Declaration of Indemnity -->
           <el-tab-pane :label="$t('getfre.PD000333')" name="revp">
                <m-revp :model="model" :codes="codes"/>
           </el-tab-pane>
            <!--getfre PD000343 Rejection of Amendment -->
           <el-tab-pane :label="$t('getfre.PD000343')" name="rejp">
                <m-rejp :model="model" :codes="codes"/>
           </el-tab-pane>
       </c-tabs>
    </el-form>
    </c-page>
  </div>
</template>
<script>
import Api from "~/service/Api"
import CodeTable from "~/config/CodeTable"
import Getfre from "~/model/Getfre"
import commonProcess from "~/mixin/commonProcess"
import Check from "~/model/Getfre/Check"
import Default from "~/model/Getfre/Default"
import Pattern from "~/model/Getfre/Pattern"
import Gitfrep1 from "./Gitfrep1"
import Ovwp from "./Ovwp"
import Setpan from "~/views/Public/Setpan";
import Coninfp from "./Coninfp"
import Docpan from "~/views/Public/Docpan";
import Doctre from "~/views/Public/Doctre";
import Mt759p from "./Mt759p"
import Detp from "./Detp"
import Fredet from "./Fredet"
import Revp from "./Revp"
import Rejp from "./Rejp"


export default {
    name: "Getfre",
    components:{
        "m-ovwp" : Ovwp,
        "m-gitfrep1" : Gitfrep1,
        "m-setpan" : Setpan,
        "m-coninfp" : Coninfp,
        "m-docpan" : Docpan,
        "m-doctre" : Doctre,
        "m-mt759p" : Mt759p,
        "m-detp" : Detp,
        "m-fredet" : Fredet,
        "m-revp" : Revp,
        "m-rejp" : Rejp,
    },
    provide() {
        return {
            root: this
        }
    },
    mixins: [commonProcess],    // 里面包含了Default、Check等的公共处理
    data(){
        return {
            tabVal: "",
            trnName: "getfre",
            trnType: "",
            model: new Getfre().data,
            checkRules: Check,
            defaultRules: Default,
            pattern: Pattern,
            rules: null,
            codes: {
            },
        }
    },
    methods:{
        myTabClick(tab){
            this.tabClick(tab)
            /**
            *  do it yourself
            **/
        }
    },
    created:async function(){
        console.log("进入getfre交易");
        let rtnmsg = await this.init({})
        if(rtnmsg.respCode == SUCCESS)
        {
           this.updateModel(rtnmsg.data)
           //TODO 处理数据逻辑

        }
        else
        {
            this.$notify.error({title: '错误',message: '服务请求失败!'});
        }
    }
}
</script>
<style>

</style>