index.vue 8.61 KB
<template>
  <!-- c-page标签加上影响大小 -->
  <!-- <c-page title="卖方信用证交易查询"> -->
  <!-- 顶部按钮区 -->
  <!--
        <div class="topBtnGroup">
            <c-button size="small" type="primary" v-show="showflg == true" icon="el-icon-arrow-right"
                @click="showflg=false">收起</c-button>
            <c-button size="small" type="primary" v-show="showflg == false" icon="el-icon-arrow-left"
                @click="showflg=true">展开</c-button>

            <div class="btnGroup" v-show="showflg == true && tabVal == 'infsea'">
                <c-button size="small" type="primary" icon="el-icon-search">Search</c-button>
                <c-button size="small" type="primary">Display</c-button>
                <c-button size="small" type="primary">Use</c-button>
                <c-button size="small" type="primary">Clear</c-button>
                <c-button size="small" type="primary">导Excel</c-button>
                <c-button size="small" type="primary">Exit</c-button>
            </div>

            <div class="btnGroup" v-show="showflg == true &&  (tabVal == 'ovwp' ||  tabVal == 'detp' || tabVal == 'coninfp' 
            || tabVal == 'trnpan' || tabVal == 'cbsinfp' || tabVal == 'cbeinfp' || tabVal == 'fepinfp' || tabVal == 'sepinfp' || tabVal == 'gleinfp' 
            || tabVal == 'smhinfp' || tabVal == 'peninfp' || tabVal == 'liainfp' || tabVal == 'prtpan' || tabVal == 'stament' || tabVal == 'stament' 
            || tabVal == 'stament' || tabVal == 'stament' 
            )">
                <c-button size="small" type="primary" icon="el-icon-search">Search</c-button>
                <el-button-group>
                    <c-button size="small" type="primary" icon="el-icon-arrow-left"></c-button>
                    <c-button size="small" type="primary" icon="el-icon-arrow-right"></c-button>
                </el-button-group>
                <c-button size="small" type="primary">Print</c-button>
                <c-button size="small" type="primary">Use</c-button>
                <c-button size="small" type="primary">Loginfo</c-button>
                <c-button size="small" type="primary">Exit</c-button>
            </div>

        </div>
      -->

  <div class="eContainer">
    <el-form
      :model="model"
      :rules="rules"
      ref="modelForm"
      label-width="110px"
      label-position="right"
      size="small"
      :validate-on-rule-change="false"
    >
      <!--PD000006 -->
      <!--
           <el-tab-pane label="查詢界面" name="infsea">
                <m-infsea :model="model" :codes="codes"/>
           </el-tab-pane>
           -->
      <c-content>
        <m-infsea
          v-show="!showPanel"
          @updateShowPanel="updateShowPanel($event)"
          :model="model"
          :codes="codes"
          ref="infsea"
        />
      </c-content>
      <c-tabs
        v-model="tabVal"
        v-show="showPanel"
        ref="elment"
        type="card"
        @tab-click="tabClick"
      >
        <!--PD000017 -->
        <el-tab-pane label="内容" name="ovwp">
          <m-ovwp :model="model" :codes="codes" />
        </el-tab-pane>

        <!--
           <el-tab-pane label="条款" name="detp">
                <m-detp :model="model" :codes="codes"/>
           </el-tab-pane>
 

           <el-tab-pane label="附言" name="coninfp">
                <m-coninfp :model="model" :codes="codes"/>
           </el-tab-pane>
 

           <el-tab-pane label="Transactions" name="trnpan">
                <m-trnpan :model="model" :codes="codes"/>
           </el-tab-pane>
 

           <el-tab-pane label="余额信息" name="cbsinfp">
                <m-cbsinfp :model="model" :codes="codes"/>
           </el-tab-pane>
 

           <el-tab-pane label="发生额信息" name="cbeinfp">
                <m-cbeinfp :model="model" :codes="codes"/>
           </el-tab-pane>
 
 
           <el-tab-pane label="费用明细" name="fepinfp">
                <m-fepinfp :model="model" :codes="codes"/>
           </el-tab-pane>
 

           <el-tab-pane label="临时账务" name="sepinfp">
                <m-sepinfp :model="model" :codes="codes"/>
           </el-tab-pane>
 

           <el-tab-pane label="账务信息" name="gleinfp">
                <m-gleinfp :model="model" :codes="codes"/>
           </el-tab-pane>
 

           <el-tab-pane label="面函、报文" name="smhinfp">
                <m-smhinfp :model="model" :codes="codes"/>
           </el-tab-pane>
 

           <el-tab-pane label="经办信息" name="peninfp">
                <m-peninfp :model="model" :codes="codes"/>
           </el-tab-pane>
 

           <el-tab-pane label="表外信息" name="liainfp">
                <m-liainfp :model="model" :codes="codes"/>
           </el-tab-pane>
 

           <el-tab-pane label="Print" name="prtpan">
                <m-prtpan :model="model" :codes="codes"/>
           </el-tab-pane>
 

           <el-tab-pane label="Order" name="ordpan">
                <m-ordpan :model="model" :codes="codes"/>
           </el-tab-pane>

           <el-tab-pane label="银行明细" name="detp1">
                <m-detp1 :model="model" :codes="codes"/>
           </el-tab-pane>

           <el-tab-pane label="明细" name="detp2">
                <m-detp2 :model="model" :codes="codes"/>
           </el-tab-pane>



           <el-tab-pane label="声明" name="stament">
                <m-stament :model="model" :codes="codes"/>
           </el-tab-pane>
           -->
      </c-tabs>
    </el-form>

    <c-button
      v-show="showPanel"
      style="margin-left: 75%; bottom: 10%; position: sticky"
      size="small"
      @click="goBack()"
    >
      <!-- @click="getDitSelInfo(scope.$index, scope.row)" -->
      返回
    </c-button>
  </div>
  <!-- </c-page> -->
</template>
<script>
import Utils from "~/utils/index";
import Api from "~/service/Api";
import CodeTable from "~/config/CodeTable";
import Infdet from "~/model/Infdet";
import commonProcess from "~/mixin/commonProcess";
import Check from "~/model/Infdet/Check";
import Default from "~/model/Infdet/Default";
import Pattern from "~/model/Infdet/Pattern";
import Infsea from "./Infsea";
import Ovwp from "./Ovwp";
import Detp from "./Detp";
import Coninfp from "./Coninfp";
import Trnpan from "./Trnpan";
import Cbsinfp from "./Cbsinfp";
import Cbeinfp from "./Cbeinfp";
import Fepinfp from "./Fepinfp";
import Sepinfp from "./Sepinfp";
import Gleinfp from "./Gleinfp";
import Smhinfp from "./Smhinfp";
import Peninfp from "./Peninfp";
import Liainfp from "./Liainfp";
import Prtpan from "./Prtpan";
import Ordpan from "./Ordpan";
import Detp1 from "./Detp1";
import Detp2 from "./Detp2";
import Stament from "./Stament";

export default {
  name: "Infdet",
  components: {
    "m-infsea": Infsea,
    "m-ovwp": Ovwp,
    "m-detp": Detp,
    "m-coninfp": Coninfp,
    "m-trnpan": Trnpan,
    "m-cbsinfp": Cbsinfp,
    "m-cbeinfp": Cbeinfp,
    "m-fepinfp": Fepinfp,
    "m-sepinfp": Sepinfp,
    "m-gleinfp": Gleinfp,
    "m-smhinfp": Smhinfp,
    "m-peninfp": Peninfp,
    "m-liainfp": Liainfp,
    "m-prtpan": Prtpan,
    "m-ordpan": Ordpan,
    "m-detp1": Detp1,
    "m-detp2": Detp2,
    "m-stament": Stament,
  },
  provide() {
    return {
      root: this,
    };
  },
  mixins: [commonProcess], // 里面包含了Default、Check等的公共处理
  data() {
    return {
      tabVal: "",
      trnName: "infdet",
      model: new Infdet().data,
      checkRules: Check,
      defaultRules: Default,
      pattern: Pattern,
      showPanel: false,
      rules: null,
      codes: { ...CodeTable },
      showflg: true,
    };
  },
  methods: {
    tabClick(tab) {
      const name = tab.name;
      let rulePath;

      if (name === "fepinfp") {
        rulePath = "infcon.fepinfp";
      }
      if (name === "coninfp") {
        rulePath = "coninf.coninfp";
      }

      if (!!rulePath) {
        this.executeRule(rulePath).then((res) => {
          if (res.respCode == SUCCESS) {
            this.updateModel(res.data);
          }
        });
      }
    },

    initPanel(val) {
      if (val) {
        this.tabVal = "ovwp";
        //
      } else {
        this.tabVal = "";
      }
    },
    async updateShowPanel(value) {
      this.showPanel = value;
      this.initPanel(value);
    },
    goBack() {
      this.showPanel = false;
    },
  },
  created: async function () {
    console.log("进入infdet交易");
    let rtnmsg = await this.init({});
    if (rtnmsg.respCode == SUCCESS) {
      //TODO 处理数据逻辑
      Utils.copyValueFromVO(this.model, rtnmsg.data);
      this.$refs.infsea.handleSearch();
    } else {
      this.$notify.error({ title: "错误", message: "服务请求失败!" });
    }
  },
  watch: {},
};
</script>
<style scoped>
</style>