<template>
  <div class="eContainer">
    <c-page title="出口信用证收单加补录">
      <el-form
          :model="model"
          :rules="rules"
          ref="modelForm"
          label-width="120px"
          label-position="right"
          size="small"
          :validate-on-rule-change="false"
      >
        <c-tabs
            v-model="tabVal"
            ref="elment"
            type="card"
            @tab-click="myTabClick"
        >
          <el-tab-pane label="业务信息" name="ovwp">
            <c-content>
              <m-ovwp :model="model" :codes="codes"/>
            </c-content>
          </el-tab-pane>

          <el-tab-pane label="统一授信" name="limitbody">
            <c-content>
              <m-limitbody :model="model" :codes="codes"/>
            </c-content>
          </el-tab-pane>

          <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>

          <el-tab-pane label="备查/附言" name="addbcb">
            <c-content>
              <m-addbcb :model="model" :codes="codes"/>
            </c-content>
          </el-tab-pane>

          <el-tab-pane label="报文/面函" name="docpan">
            <c-content>
              <m-docpan :model="model" :codes="codes"/>
            </c-content>
          </el-tab-pane>

          <el-tab-pane label="附件信息" name="doctre">
            <c-content>
              <m-doctre :model="model" :codes="codes"/>
            </c-content>
          </el-tab-pane>

        </c-tabs>
      </el-form>
      <c-function-btn
          :handleSubmit="handleSubmit"
          :handleCheck="handleCheck"
          :handleStash="handleStash"
      >
      </c-function-btn>
      <!-- 选择数据的表格弹框 -->
      <c-grid-ety-prompt-dialog
          ref="etyDialog"
          :promptData="promptData"
          @select-ety="selectGridEtyPromptData"
      >
      </c-grid-ety-prompt-dialog>
    </c-page>
  </div>
</template>
<script>
import CodeTable from '~/config/CodeTable'
import Letdrw from '~/model/Letdrw'
import Check from '~/model/Letdrw/Check'
import Default from '~/model/Letdrw/Default'
import Pattern from '~/model/Letdrw/Pattern'
import Ovwp from './Ovwp'
import Aamp from './Aamp'
import Detp from './Detp'
import Ptyp from './Ptyp'
import Drv from './Drv'
import Dscins from './Dscins'
import Revp from './Revp'
import Srmp from './Srmp'
import Addbcb from "./Addbcb";

import Doxp from '~/views/Public/Doxp'
import Coninfp from '~/views/Public/Coninfp'
import Setpan from '~/components/business/setmod/views'
import Docpan from '~/views/Public/Docpan'
import Doctre from '~/views/Public/Doctre'
import Engp from '~/views/Public/Engp'
import Limitbody from '~/views/Public/Limitbody'
import Glepan from "~/views/Public/Glepan";
import operationFunc from "@/mixin/operationFunc";
import event from "@/business/letdrw/event";

export default {
  name: 'Letdrw',
  components: {
    "m-addbcb": Addbcb,
    'm-ovwp': Ovwp,
    'm-aamp': Aamp,
    'm-detp': Detp,
    'm-ptyp': Ptyp,
    'm-drv': Drv,
    'm-dscins': Dscins,
    'm-doxp': Doxp,
    'm-revp': Revp,
    'm-engp': Engp,
    'm-setpan': Setpan,
    'm-coninfp': Coninfp,
    'm-docpan': Docpan,
    'm-doctre': Doctre,
    'm-srmp': Srmp,
    'm-limitbody': Limitbody,
    "m-glepan": Glepan,
  },
  provide() {
    return {
      root: this,
    }
  },
  mixins: [operationFunc, event], // 里面包含了Default、Check等的公共处理
  data() {
    return {
      tabVal: 'ovwp',
      trnName: 'letdrw',
      model: new Letdrw().data,
      checkRules: Check,
      defaultRules: Default,
      pattern: Pattern,
      rules: null,
      codes: {...CodeTable},
      activeNames: ["engp"],
      promptData: {
        title: 'Select a Party',
        columns: [
          {
            prop: 'ptyInr',
            label: 'Party Number'
          },
          {
            prop: 'inr',
            label: 'Address Number'
          },
          {
            prop: 'branch',
            label: 'Branch Code'
          },
          {
            prop: 'bchName',
            label: 'Branch Name'
          },
          {
            prop: 'adrName',
            label: 'Address Name'
          },
          {
            prop: 'adr1',
            label: 'Address1'
          },
          {
            prop: 'locCty',
            label: 'City'
          },
          {
            prop: 'locZip',
            label: 'Zip'
          },
          {
            prop: 'bicCode',
            label: 'BIC'
          }
        ],
        data: []
      }
    }
  },
  methods: {
    myTabClick(tab) {
      this.tabClick(tab)
      /**
       *  do it yourself
       **/
    },
  },
  created: async function () {
    console.log('进入letdrw交易')
    let rtnmsg = await this.init({})
    if (rtnmsg.respCode == SUCCESS) {
      this.updateModel(rtnmsg.data)
      //TODO 处理数据逻辑
      if (this.isInDisplay) {
        this.restoreDisplay()
      }
    } else {
      this.$notify.error({title: '错误', message: '服务请求失败!'})
    }
  },
}
</script>
<style></style>