<template>
  <div class="eContainer">
    <!-- <c-bus-button :$pntvm="this"></c-bus-button> -->
    <c-function-btn
      :handleSubmit="handleSubmit"
      :handleCheck="handleCheck"
      :handleStash="handleStash"
    >
      <el-button size="small">流程附言</el-button>
      <el-button size="small">交易历史</el-button>
      <el-button size="small">备忘录</el-button>
      <el-button size="small">影像信息</el-button>
      <!-- <el-button size="small">保存模板</el-button> -->
      <!-- <el-button size="small">使用模板</el-button> -->
      <el-button size="small">制裁信息</el-button>
      <!-- <el-button size="small">拆分报文</el-button> -->
      <el-button size="small">智能提示</el-button>
    </c-function-btn>
    <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">
        <!--letdrv PD000002 Docs. Received -->
        <el-tab-pane label="Docs.Received" name="drv">
          <c-content>
            <m-drv :model="model" :codes="codes" />
          </c-content>
        </el-tab-pane>
        <!--letdrv PD000034 Discr./Instr. -->
        <el-tab-pane label="Discr./Instr." name="dscins">
          <m-dscins :model="model" :codes="codes" />
        </el-tab-pane>

        <!--Liability -->
        <el-tab-pane label="Liability" name="engp">
          <m-engp :model="model" :codes="codes" />
        </el-tab-pane>
        <!--setmod PD000000 Settlement -->
        <el-tab-pane label="Settlement" name="setpan">
          <m-setpan :model="model" :codes="codes" />
        </el-tab-pane>
        <!--coninf PD000000 Completion -->
        <el-tab-pane label="Completion" name="coninfp">
          <m-coninfp :model="model" :codes="codes" />
        </el-tab-pane>
        <!--trndoc PD000529 &Messages -->
        <el-tab-pane label="Messages" name="docpan">
          <m-docpan :model="model" :codes="codes" />
        </el-tab-pane>
        <!--trndoc PD000546 Attachments -->
        <el-tab-pane label="Attachments" name="doctre">
          <m-doctre :model="model" :codes="codes" />
        </el-tab-pane>
        <!--srmmod PD000001 货权单据 -->
        <el-tab-pane label="货权单据" name="srmp">
          <m-srmp :model="model" :codes="codes" />
        </el-tab-pane>
        <!--limmod PD000001 统一授信 -->
        <el-tab-pane label="统一授信" name="limitbody">
          <m-limitbody :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 Letdrv from "~/model/Letdrv";
import commonProcess from "~/mixin/commonProcess";
import commonFuncs from "~/mixin/commonFuncs";
import Check from "~/model/Letdrv/Check";
import Default from "~/model/Letdrv/Default";
import Pattern from "~/model/Letdrv/Pattern";
import Drv from "./Drv";
import Dscins from "./Dscins";
import Srmp from "./Srmp";
import Engp from "~/views/Public/Engp";
import Doctre from "~/views/Public/Doctre";
import Setpan from "~/views/Public/Setpan";
import Coninfp from "~/views/Public/Coninfp";
import Docpan from "~/views/Public/Docpan";
import Limitbody from "~/views/Public/Limitbody";

export default {
  name: "Letdrv",
  components: {
    "m-drv": Drv,
    "m-dscins": Dscins,
    "m-engp": Engp,
    "m-limitbody": Limitbody,
    "m-docpan": Docpan,
    "m-doctre": Doctre,
    "m-coninfp": Coninfp,
    "m-setpan": Setpan,
    "m-srmp": Srmp,
  },
  provide() {
    return {
      root: this,
    };
  },
  mixins: [commonProcess, commonFuncs], // 里面包含了Default、Check等的公共处理
  data() {
    return {
      tabVal: "drv",
      trnName: "letdrv",
      trnType: "",
      model: new Letdrv().data,
      checkRules: Check,
      defaultRules: Default,
      pattern: Pattern,
      rules: null,
      codes: {
        ...CodeTable,
      },
    };
  },
  methods: {
    myTabClick(tab) {
      this.tabClick(tab);
      /**
       *  do it yourself
       **/
    },
  },
  created: async function () {
    console.log("进入letdrv交易");
    let rtnmsg = await this.init({});
    if (rtnmsg.respCode == SUCCESS) {
      this.updateModel(rtnmsg.data);
      if (this.isInDisplay) {
        this.restoreDisplay();
      }
      //TODO 处理数据逻辑
    } else {
      this.$notify.error({ title: "错误", message: "服务请求失败！" });
    }
  },
};
</script>
<style>
</style>
