<template>
  <div class="eContainer">
    <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="tabClick">
        <!--PD000000 -->
        <el-tab-pane label="Party" name="ptyp0">
          <m-ptyp0 :model="model" :codes="codes" />
        </el-tab-pane>

        <!--PD000200 -->
        <el-tab-pane label="Details" name="ptyp1">
          <m-ptyp1 :model="model" :codes="codes" />
        </el-tab-pane>

        <!--PD000700 -->
        <el-tab-pane label="Info and Stoptext" name="ptytxt">
          <m-ptytxt :model="model" :codes="codes" />
        </el-tab-pane>

        <!--PD000044 -->
        <el-tab-pane label="Accounts" name="actinf">
          <m-actinf :model="model" :codes="codes" />
        </el-tab-pane>

        <!--PD000038 -->
        <el-tab-pane label="Contacts" name="ptcinf">
          <m-ptcinf :model="model" :codes="codes" />
        </el-tab-pane>

        <!--PD000369 -->
        <el-tab-pane label="Additonal Addresses" name="addadrp">
          <m-addadrp :model="model" :codes="codes" />
        </el-tab-pane>

        <!--PD000655 -->
        <el-tab-pane label="Authentication of Address" name="ptmpan">
          <m-ptmpan :model="model" :codes="codes" />
        </el-tab-pane>

        <!--PD000701 -->
        <el-tab-pane label="Further Info and Stoptext" name="oitp">
          <m-oitp :model="model" :codes="codes" />
        </el-tab-pane>

        <!--PD000851 -->
        <el-tab-pane label="ECIF客户信息" name="ptyp2">
          <m-ptyp2 :model="model" :codes="codes" />
        </el-tab-pane>
      </c-tabs>
    </el-form>
  </div>
</template>
<script>
import Api from "~/service/Api";
import CodeTable from "~/config/CodeTable";
import Dbipty from "~/model/Dbipty";
import commonProcess from "~/mixin/commonProcess";
import Check from "~/model/Dbipty/Check";
import Default from "~/model/Dbipty/Default";
import Pattern from "~/model/Dbipty/Pattern";
import Ptyp0 from "./Ptyp0";
import Ptyp1 from "./Ptyp1";
import Ptytxt from "./Ptytxt";
import Actinf from "./Actinf";
import Ptcinf from "./Ptcinf";
import Addadrp from "./Addadrp";
import Ptmpan from "./Ptmpan";
import Oitp from "./Oitp";
import Ptyp2 from "./Ptyp2";

export default {
  name: "Dbipty",
  components: {
    "m-ptyp0": Ptyp0,
    "m-ptyp1": Ptyp1,
    "m-ptytxt": Ptytxt,
    "m-actinf": Actinf,
    "m-ptcinf": Ptcinf,
    "m-addadrp": Addadrp,
    "m-ptmpan": Ptmpan,
    "m-oitp": Oitp,
    "m-ptyp2": Ptyp2,
  },
  provide() {
    return {
      root: this,
    };
  },
  mixins: [commonProcess], // 里面包含了Default、Check等的公共处理
  data() {
    return {
      tabVal: "ptyp0",
      trnName: "dbipty",
      model: new Dbipty().data,
      checkRules: Check,
      defaultRules: Default,
      pattern: Pattern,
      rules: null,
      codes: {...CodeTable},
    };
  },
  methods: {
    tabClick(tab) {
      this.tabClick(tab);
      /**
       *  do it yourself
       **/
    },
  },
  created: async function () {
    console.log("进入dbipty交易");
    let rtnmsg = await this.init({});
    if (rtnmsg.respCode == SUCCESS) {
      this.updateModel(rtnmsg.data);
      //TODO 处理数据逻辑
    } else {
      this.$notify.error({ title: "错误", message: "服务请求失败！" });
    }
  },
};
</script>
<style>
</style>
