<template>
  <div class="eibs-tab">
      <el-collapse v-model="activeNames" @change="handleChange">
          
          <el-collapse-item title="外管信息" name="wg">
              <m-wg :model="model" :codes="codes" />
          </el-collapse-item>

          <el-collapse-item title="涉外收入申请单-基础信息" name="basp3" v-if="model.bopmod.szflg=='1' && model.bopmod.basflg=='X'">
              <m-basp3 :model="model" :codes="codes" />
          </el-collapse-item>

          <el-collapse-item title="境内收入申请单-基础信息" name="basp2" v-if="model.bopmod.szflg=='2' && model.bopmod.basflg=='X'">
              <m-basp2 :model="model" :codes="codes" />
          </el-collapse-item>

          <el-collapse-item title="跨境人民币申报" name="cnyp1">
              <m-cnyp1 :model="model" :codes="codes" />
          </el-collapse-item>
  
         <!--cnybop PD000001 2101跨境收入信息 -->
         <el-collapse-item title="2101跨境收入信息" name="incp" v-if="model.cnybop.cnyflg=='1'">
              <m-incp :model="model" :codes="codes"/>
         </el-collapse-item>
      </el-collapse>
  </div>
  </template>
  
  <script>
  import Api from "~/service/Api";
  import commonProcess from "~/mixin/commonProcess";
  import CodeTable from "~/config/CodeTable";
  import Event from "~/model/Botset/Event";
  import Wg from "./Wg";
  import Cnyp1 from "./Cnyp1";
  import Incp from "./Incp";
  import Basp2 from "./Basp2";
  import Basp3 from "./Basp3";
  
  const tabNameToRulePathMapping = {
    "basp2": "bopmod.dbdp.basp",
    "basp3": "bopmod.dbap.basp",
    "incp": "cnybop.incp",
  }
  
  export default {
      inject: ["root"],
      components: {
          "m-basp2": Basp2,
          "m-basp3": Basp3,
          "m-wg": Wg,
          "m-cnyp1": Cnyp1,
          "m-incp": Incp,
      },
      props: ["model", "codes"],
      mixins: [commonProcess],
      data() {
          return {
              activeNames: ["wg"],
          };
      },
      methods: {
          ...Event,
          handleChange(names) {
            if (this.isInDisplay) {
              return
            }
            const arr = [];
            for (let i = 0; i < names.length; i++) {
              const n = names[i];
              const path = tabNameToRulePathMapping[n]
              if (path) {
                arr.push(path)
              }
            }
            let rulePath = arr.join(",");
            if (!!rulePath) {//rulePath不为空串
              this.executeRule(rulePath).then((res) => {
                if (res.respCode == SUCCESS) {
                  this.updateModel(res.data);
                }
              });
            }
          },
        myTabClick(tab) {
          this.tabClick(tab);
          let name = tab.name;
          let rulePath;
          if (name === "basp3") {
            rulePath = "bopmod.dbap.basp";
          }
          if (name === "basp2") {
            rulePath = "bopmod.dbdp.basp";
          }
          if (!!rulePath) {
            this.executeRule(rulePath).then((res) => {
              if (res.respCode == SUCCESS) {
                this.updateModel(res.data);
              }
            });
          }
        },
      },
      created: function () {},
  };
  </script>
  
  <style>
  </style>