<template>
  <div class="eibs-tab">
    <!-- <c-infsearch-group @handleSearch="handleSearch" @handleReset="handleReset"> -->
    <!-- 持续展示区 -->
    <!-- <template slot="keepShow"> -->
    <el-form
      class="m-table-search-form"
      ref="paramsForm"
      :inline="true"
      label-position="right"
      label-width="110px"
      size="small"
    >
      <c-row>
        <c-col :span="24">
          <c-col :span="8">
            <el-form-item
              label="汇款编号"
              prop="infcon.seaownref"
              style="width: 100%"
            >
              <c-input
                v-model="model.infcon.seaownref"
                maxlength="16"
                placeholder="请输入汇款编号"
              ></c-input>
            </el-form-item>
          </c-col>
          <c-col :span="8">
            <el-form-item
              label="开立日期"
              prop="infcon.opndatfrom"
              style="width: 100%"
            >
              <c-col :span="11">
                <c-date-picker
                  type="date"
                  v-model="model.infcon.opndatfrom"
                  style="width: 100%"
                  placeholder="请选择"
                ></c-date-picker>
              </c-col>
              <c-col :span="2" style="text-align: center">
                <label style="display: inline-block; width: 100%">-</label>
              </c-col>
              <c-col :span="11">
                <c-date-picker
                  type="date"
                  v-model="model.infcon.opndatto"
                  style="width: 100%"
                  placeholder="请选择"
                ></c-date-picker>
              </c-col>
            </el-form-item>
          </c-col>
          <c-col :span="8">
            <el-form-item label="简略信息" prop="infcon.nam" style="width: 100%">
              <c-input
                v-model="model.infcon.nam"
                maxlength="40"
                placeholder="请输入简略信息"
              ></c-input>
            </el-form-item>
          </c-col>
        </c-col>
      </c-row>
      <!-- </template> -->
      <c-col
        :span="24"
        style="text-align: right; height: 36.8px"
        v-if="searchToggle"
      >
        <el-button size="small" @click="handleReset">重置</el-button>
        <el-button
          type="primary"
          icon="el-icon-search"
          size="small"
          @click="handleSearch"
          >查询</el-button
        >
        <el-button type="text" @click="searchToggle = false">
          展开
          <i class="el-icon-arrow-down"></i>
        </el-button>
      </c-col>

      <!-- 可控展示区 -->
      <!-- <template slot="changeShow"> -->
      <c-row v-show="!searchToggle">
        <c-col :span="24">
          <c-col :span="8">
            <el-form-item
              label="当事人参考号"
              prop="infcon.searef"
              style="width: 100%"
            >
              <c-input
                v-model="model.infcon.searef"
                maxlength="16"
                placeholder="请输入当事人参考号"
              ></c-input>
            </el-form-item>
          </c-col>
          <c-col :span="8">
            <el-form-item
              label="当事人编号"
              prop="infcon.pty.extkey"
              style="width: 100%"
            >
              <c-input
                v-model="model.infcon.pty.extkey"
                maxlength="24"
                placeholder="请输入当事人编号"
                :disabled="this.flag1"
              >
              </c-input>
            </el-form-item>
          </c-col>
          <c-col :span="8">
            <el-form-item
              label="当事人名称"
              prop="infcon.pty.nam"
              style="width: 100%"
            >
              <c-input
                v-model="model.infcon.pty.nam"
                maxlength="40"
                placeholder="请输入当事人名称"
                disabled
              >
              </c-input>
            </el-form-item>
          </c-col>
        </c-col>

        <c-col :span="24">
          <c-col :span="8">
            <el-form-item
              label="当事人BIC编码"
              prop="infcon.seapty"
              style="width: 100%"
            >
              <c-input
                v-model="model.infcon.seapty"
                maxlength="24"
                placeholder="请输入当事人BIC编码"
                :disabled="this.flag2"
              ></c-input>
            </el-form-item>
          </c-col>
          <c-col :span="8">
            <el-form-item label="角色" prop="infcon.searol" style="width: 100%">
              <c-select
                v-model="model.infcon.searol"
                style="width: 100%"
                placeholder="请选择角色"
                :code="searol"
              >
              </c-select>
            </el-form-item>
          </c-col>
          <c-col :span="8">
            <el-form-item
              label="客户经理"
              prop="infcon.usr.extkey"
              style="width: 100%"
            >
              <c-input
                v-model="model.infcon.usr.extkey"
                maxlength="8"
                placeholder="请输入客户经理"
                disabled
              >
              </c-input>
            </el-form-item>
          </c-col>
        </c-col>

        <c-col :span="24">
          <c-col :span="8">
            <el-form-item
              label="状态"
              prop="infcon.seasta"
              style="width: 100%"
            >
              <c-select
                v-model="model.infcon.seasta"
                style="width: 100%"
                placeholder="请选择状态"
                :code="codes.seasta"
              >
              </c-select>
            </el-form-item>
          </c-col>
          <c-col :span="8">
            <el-form-item
              label="币种"
              prop="infcon.seacur"
              style="width: 100%"
            >
              <c-select
                v-model="model.infcon.seacur"
                style="width: 100%"
                placeholder="请选择币种"
                :code="codes.currencycode"
              >
              </c-select>
            </el-form-item>
          </c-col>
          <c-col :span="8">
            <el-form-item
              label="金额区间"
              prop="infcon.seaamtfr"
              style="width: 100%"
            >
              <c-col :span="11">
                <c-input-currency
                  v-model="model.infcon.seaamtfr"
                  placeholder="请输入Amount"
                >
                </c-input-currency>
              </c-col>
              <c-col :span="2" style="text-align: center">
                <label style="display: inline-block; width: 100%">-</label>
              </c-col>
              <c-col :span="11">
                <c-input-currency
                  v-model="model.infcon.seaamtto"
                  placeholder="请输入Amount"
                >
                </c-input-currency>
              </c-col>
            </el-form-item>
          </c-col>
        </c-col>

        <c-col :span="24">
          <c-col :span="8">
            <el-form-item
              label="支付类型"
              prop="seapaytyp"
              style="width: 100%"
            >
              <c-select
                v-model="model.seapaytyp"
                style="width: 100%"
                placeholder="请选择支付类型"
                :code="codes.seapaytyp"
              >
              </c-select>
            </el-form-item>
          </c-col>
          <c-col :span="8">
            <el-form-item label="Swift类型" prop="msgtyp" style="width: 100%">
              <c-select
                v-model="model.msgtyp"
                style="width: 100%"
                placeholder="请选择Swift类型"
                :code="swftyp"
              >
              </c-select>
            </el-form-item>
          </c-col>
          <c-col :span="8">
            <el-form-item label="国家代码" prop="countcode" style="width: 100%">
              <c-col :span="11">
                <c-select
                  v-model="model.countcode"
                  filterable
                  style="width: 100%"
                  placeholder="请选择国家代码"
                  :code="codes.bopcty"
                >
                </c-select>
              </c-col>
              <c-col :span="13" style="text-align: right">
                <c-checkbox v-model="model.tsnflg">同名划转标志</c-checkbox>
              </c-col>
            </el-form-item>
          </c-col>
        </c-col>
      </c-row>
      <c-col
        :span="24"
        style="text-align: right; height: 36.8px"
        v-if="!searchToggle"
      >
        <el-button size="small" @click="handleReset">重置</el-button>
        <el-button
          type="primary"
          icon="el-icon-search"
          size="small"
          @click="handleSearch"
          >查询</el-button
        >
        <el-button type="text" @click="searchToggle = true">
          收起
          <i class="el-icon-arrow-up"></i>
        </el-button>
      </c-col>
    </el-form>
    <c-col :span="24">
      <div style="border-bottom: 10px solid rgb(232, 232, 232)"></div>
    </c-col>
    <!-- </template>
    </c-list-search> -->

    <!-- </template> -->
    <!-- </c-infsearch-group> -->

    <c-col style="margin-top: 10px">
      <c-button
        class="medium_bcs"
        size="medium"
        type="primary"
        style="margin-left: 0"
        @click="toCptopn"
        >swift汇入</c-button
      >
      <c-button
        class="medium_bcs"
        size="medium"
        type="primary"
        style="margin-left: 0"
        @click="toCptadv"
        >swift汇出</c-button
      >
      <c-button
        class="medium_bcs"
        size="medium"
        type="primary"
        style="margin-left: 0"
        @click="toCptati"
        >境内外币汇入</c-button
      >
      <c-button
        class="medium_bcs"
        size="medium"
        type="primary"
        style="margin-left: 0"
        @click="toCptato"
        >境内外币汇出</c-button
      >
      <c-button
        class="medium_bcs"
        size="medium"
        type="primary"
        style="float: right; margin-right: 10px"
        >导Excel</c-button
      >
      <!-- <c-button size="small" type="primary" style="margin-left: 0"
        >Display</c-button
      >
      <c-button size="small" type="primary" style="margin-left: 0"
        >Use</c-button
      > -->
    </c-col>

    <c-col :span="24">
      <c-istream-table
        :list="stmData.data"
        :columns="stmData.columns"
        :showButtonFlg="true"
      >
        <el-table-column fixed="right" prop="op" label="操作" width="140px">
          <!-- <template slot="header">
            <c-col :span="11" style="text-align: left">
              <span>操作</span>
            </c-col>
            <c-col :span="12" style="text-align: right">
              <c-button icon="el-icon-s-tools"></c-button>
            </c-col>
          </template> -->

          <template slot-scope="scope">
            <el-popover
              placement="top-start"
              title="历史信息"
              width="800"
              trigger="click"
              :ref="'popover_' + scope.row.IDX"
            >
              <div
                style="
                  text-align: right;
                  margin-top: -30px;
                  margin-right: 5px;
                  font-size: 16px;
                "
              >
                <span
                  class="el-icon-close"
                  @click="closeTrn('popover_' + scope.row.IDX)"
                />
              </div>
              <c-istream-table :list="trnData.data" :columns="trnData.columns">
                <el-table-column prop="op" label="操作" width="0">
                  <template slot-scope="scope">
                    <c-button
                      style="margin-left: 0"
                      size="small"
                      @click="display(scope.row['INR'])"
                    >
                      详情
                    </c-button>
                  </template>
                </el-table-column>
              </c-istream-table>
              <c-button
                style="margin-left: 0"
                size="small"
                @click="getTrnInfo(scope.$index, scope.row)"
                slot="reference"
              >
                详情
              </c-button>
            </el-popover>

            <c-button
              style="margin-left: 0"
              size="small"
              type="primary"
              @click="getButtons(scope.row['汇款编号'])"
            >
              处理
            </c-button>

            <!-- <c-button
                            style="margin-left: 0"
                            size="small"
                            type="primary"
                            @click="onInfbutDsp(scope.$index, scope.row)"
                        >
                            info
                        </c-button> -->
          </template>
        </el-table-column>
      </c-istream-table>
    </c-col>

    <m-busbtn
      ref="childs"
      :ownref="ownref"
      trnCode="cptsel"
      :model="cptselModel"
      ownrefPath="cpdgrp"
      @onChoose="onChoose"
      >11</m-busbtn
    >
  </div>
</template>
<script>
import Api from "~/service/Api";
import commonProcess from "~/mixin/commonProcess";
import CodeTable from "~/config/CodeTable";
import Event from "~/model/Infcpd/Event";
import BusNavbar from "~/views/Public/BusNavbar";
import CptselModel from "~/model/Cptsel";

export default {
  inject: ["root"],
  props: ["model", "codes"],
  mixins: [commonProcess],
  components: { "m-busbtn": BusNavbar },
  data() {
    return {
      flag1: false,
      flag2: false,
      searol: [
        { label: "Ordering Customer", value: "ORC" },
        { label: "汇款行", value: "ORI" },
        { label: "Paying Bank", value: "PYB" },
        { label: "收款人", value: "PYE" },
        { label: "Reimb. Bank Transfer", value: "RMT" },
      ],
      swftyp: [
        { label: "MT103", value: "103" },
        { label: "MT202", value: "202" },
        { label: "MT910", value: "910" },
        { label: "CMT100", value: "CMT" },
        { label: "境内外币清算", value: "100" },
        { label: "Other", value: "OTH" },
      ],
      cptselModel: new CptselModel().data,
      searchToggle: true,
      ownref: "",
      dialogTableVisible: false,
      trnData: {
        columns: [
          '1 1 "编号" 200',
          '2 2 "交易名称" 130',
          // '3 3 "日期" 200',
          { index: 3, position: 3, width: 110, pattern: "date", label: "日期" },
          // '4 4 "状态" 50',
          {
            index: 4,
            position: 4,
            width: 100,
            pattern: "code",
            label: "状态",
            code: this.codes.relstaEN,
          },
          '5 5 "币种" 80',
          '6 6 "金额" 100',
        ],
        data: [],
      },
      stmData: {
        columns: [
          '1 1 "汇款编号" 150 ',
          '2 2 "客户经理" 120 ',
          '12 3 "PYE NO." 100 ',
          '9 4 "收款人编号" 200',
          '10 5 "Payee Customer" 250',
          '11 6 "PYE.Customer CN" 150',
          '13 7 "Ord.Party Number" 150',
          '14 8 "Ord.Customer" 200',
          '15 9 "Ord.Customer CN" 150',
          '16 10 "1.Party Number" 150',
          '17 11 "Ord.Institution" 200',
          '12 12 "ORC NO." 150',
          '18 13 "2.Party Number" 150',
          '19 14 "付款行" 150',
          {
            index: 3,
            position: 15,
            width: 100,
            pattern: "date",
            label: "开立日期",
          },
          {
            index: 4,
            position: 16,
            width: 100,
            pattern: "date",
            label: "Value",
          },

          {
            index: 5,
            position: 17,
            width: 100,
            pattern: "date",
            label: "关闭日期",
          },
          '20 18 "1.币种" 80',
          '21 19 "付款金额" 150',
          '22 20 "2.币种" 80',
          '23 21 "Amount rcvd." 150',
          '6 22 "Pyectycod" 120',
          '7 23 "Orcctycod" 120',
        ],
        data: [],
      },
    };
  },
  watch: {
    "model.infcon.seapty": function () {
      if (this.model.infcon.seapty == "") {
        this.flag1 = false;
      } else {
        this.flag1 = true;
        this.model.infcon.pty.extkey = "";
      }
    },
    "model.infcon.pty.extkey": function () {
      if (this.model.infcon.pty.extkey == "") {
        this.flag2 = false;
      } else {
        this.flag2 = true;
        this.model.infcon.seapty = "";
      }
    },
  },
  methods: {
    ...Event,
    /*  handleSearch(callback) {
      setTimeout(() => {
        this.$notify.info({
          title: "提示",
          message: "模拟post请求控制按钮状态",
        });
        // 执行子组件回调函数控制按钮状态
        callback();
      }, 1000);
    }, */
    async getButtons(ownref) {
      this.ownref = ownref;
      this.$refs.childs.initdialog = true;
      console.log("ownref:" + ownref);
    },
    async onChoose(code) {
      //跳转交易
      this.$router.history.push("/business/" + code);
      this.$refs.childs.initdialog = false;
    },
    async getDitSelInfo(code) {
      //跳转交易
      this.$router.history.push("/business/" + code);
      this.$refs.childs.initdialog = false;
    },
    async getTrnInfo(idx, row) {
      this.model.infcon.objinr = row["INR"];
      this.model.cpdgrp.rec.inr = row["INR"];
      this.model.infcon.chksubcon = "X";

      this.dialogTableVisible = true;
      let rtnmsg = await this.executeDefault("infcon.chksubcon");

      if ((rtnmsg.respCode = SUCCESS)) {
        this.trnData.data = rtnmsg.data.infcon_trnstm.rows;
      }
    },
    closeTrn(refId) {
      this.$refs[refId].doClose();
    },
    toCptopn() {
      this.$router.history.push("/business/cptopn");
    },
    toCptadv() {
      this.$router.history.push("/business/cptadv");
    },
    toCptati() {
      this.$router.history.push("/business/cptati");
    },
    toCptato() {
      this.$router.history.push("/business/cptato");
    },
  },
  created: function () {},
};
</script>
<style>
.el-dialog__body {
  padding: 10px 5px 50px;
}
</style>