<template>
  <c-row>
    <!-- =================顶部====================== -->
    <c-col :span="24">
      <c-col :span="11">
        <c-col :span="20">
          <el-form-item label="Reference" prop="bodgrp.rec.ownref" style="width: 100%">
            <c-input v-model="model.bodgrp.rec.ownref" maxlength="16" placeholder="请输入Reference" style="width: 95%"
              disabled></c-input>
          </el-form-item>
        </c-col>
        <c-col :span="1">
        </c-col>
        <c-col :span="3" style="text-align: right">
          <c-button style="margin:0 0" size="small" type="primary" :disabled="this.flag" @click="onDitpButgetref">
            获取
          </c-button>
        </c-col>
      </c-col>
      <c-col :span="11" :offset="1">
        <el-form-item label="摘要" prop="bodgrp.rec.nam">
          <c-input text-align="middle" v-model="model.bodgrp.rec.nam" maxlength="40" disabled
            placeholder="请输入Externally Displayed Name to Identify the Contract"></c-input>
        </el-form-item>
      </c-col>
    </c-col>
    <!-- ====================左边======================= -->
    <c-col :span="11">
      <c-col :span="24">
        <c-col :span="12">
          <el-form-item label="Responsible User" prop="ditp.usr.extkey" style="width: 100%">
            <c-row>
              <c-col :span="20">
                <c-input style="width: 95%" v-model="model.botp.usr.extkey" maxlength="8" placeholder="请输入User ID"
                  disabled></c-input>
              </c-col>
              <c-col :span="4">
                <c-button style="margin:0 10px 0 0;padding: 0 10px;" size="small" icon="el-icon-search" type="primary">
                </c-button>
              </c-col>
            </c-row>
          
          </el-form-item>
        </c-col>
        <c-col :span="12">
          <el-form-item label="" prop="bodgrp.rec.dircolflg">
            <c-checkbox v-model="model.bodgrp.rec.dircolflg">Direct Collection</c-checkbox>
          </el-form-item>
        </c-col>
      </c-col>
      <c-col :span="12">
        <el-form-item label="Document Amount" prop="bodgrp.cbs.max.cur">
          <c-select v-model="model.bodgrp.cbs.max.cur" style="width: 100%" placeholder="请选择Currency"  @change="changeCur">
            <el-option v-for="item in codes.currencycode" :key="item.value" :label="item.label" :value="item.value">
            </el-option>
          </c-select>
        </el-form-item>
      </c-col>
      <c-col :span="12">
        <el-form-item style="text-align: left" label-width="20px" prop="bodgrp.cbs.max.amt">
          <c-input-currency v-model="model.bodgrp.cbs.max.amt" style="text-align: left; width: 100%"
            placeholder="请输入Document Amount"
            @keyup.enter.native="defaultFunction('bodgrp.cbs.max.amt', model.bodgrp.cbs.max.amt)"></c-input-currency>
        </el-form-item>
      </c-col>
      <c-col :span="12">
        <el-form-item label="Warehouse/Insurance" prop="bodgrp.cbs.opn1.cur">
          <c-select disabled v-model="model.bodgrp.cbs.opn1.cur" style="width: 100%" placeholder="请选择Currency">
            <el-option v-for="item in codes.cur" :key="item.value" :label="item.label" :value="item.value">
            </el-option>
          </c-select>
        </el-form-item>
      </c-col>
      <c-col :span="12">
        <el-form-item style="text-align: left" label-width="20px" prop="bodgrp.cbs.opn1.amt">
          <c-input-currency v-model="model.bodgrp.cbs.opn1.amt" style="text-align: left; width: 100%"
            placeholder="请输入Warehouse/Insurance" :disabled="true"
            @keyup.enter.native="defaultFunction('bodgrp.cbs.opn1.amt', model.bodgrp.cbs.opn1.amt)"></c-input-currency>
        </el-form-item>
      </c-col>
      <c-col :span="12">
        <el-form-item label="Order Date" prop="bodgrp.rec.rcvdat">
          <c-date-picker type="date" v-model="model.bodgrp.rec.rcvdat" style="width:100%" placeholder="请选择Order Date">
          </c-date-picker>
        </el-form-item>
      </c-col>
      <c-col :span="12">
        <el-form-item label="Shipment date" prop="bodgrp.rec.shpdat">
          <c-date-picker type="date" v-model="model.bodgrp.rec.shpdat" style="width:100%"
            placeholder="请选择Shipment date"></c-date-picker>
        </el-form-item>
      </c-col>

      <c-col :span="12">
        <el-form-item label="Presentation Date" prop="bodgrp.rec.predat">
          <c-date-picker type="date" v-model="model.bodgrp.rec.predat" style="width:100%"
            placeholder="请选择Presentation Date"></c-date-picker>
        </el-form-item>
      </c-col>

      <c-col :span="12">
        <el-form-item label="Dispatched on" prop="bodgrp.rec.advdat">
          <c-date-picker type="date" v-model="model.bodgrp.rec.advdat" style="width:100%" :disabled="true"
            placeholder="请选择Dispatched on"></c-date-picker>
        </el-form-item>
      </c-col>

      <c-col :span="24">
        <el-form-item label="Collection Condition" prop="bodgrp.rec.doctypcod">
          <c-select v-model="model.bodgrp.rec.doctypcod" style="width:100%" placeholder="请选择Collection Condition"
            :code="codes.doctypcod">
          </c-select>
        </el-form-item>
      </c-col>

      <c-col :span="12">
        <el-form-item label="Maturity Date" prop="bodgrp.rec.matdat">
          <c-date-picker type="date" v-model="model.bodgrp.rec.matdat" style="width:100%"
            :disabled="model.bodgrp.rec.doctypcod === 'P'" placeholder="请选择Maturity Date"></c-date-picker>
        </el-form-item>
      </c-col>

      <c-col :span="12">
        <el-form-item label="发票类型" prop="bodgrp.rec.invtyp">
          <c-select v-model="model.bodgrp.rec.invtyp" style="width:100%" :code="invtyp">
          </c-select>
        </el-form-item>
      </c-col>

      <c-col :span="12">
        <el-form-item label="Tenor Specification" prop="bodgrp.rec.matpercnt">
          <c-input v-model.number="model.bodgrp.rec.matpercnt" placeholder="请输入Tenor Specification"
            onkeyup="value=value.replace(/[^\d]/g,' ')" :disabled="model.bodgrp.rec.doctypcod === 'P'"></c-input>
        </el-form-item>
      </c-col>

      <c-col :span="24">
        <el-form-item label="Starting from" prop="bodgrp.rec.matperbeg">
          <c-select v-model="model.bodgrp.rec.matperbeg" style="width:100%" placeholder="请选择Starting from"
            :code="codes.matperbeg" :disabled="model.bodgrp.rec.doctypcod === 'P'">
          </c-select>
        </el-form-item>
      </c-col>

      <c-col :span="24">
        <el-form-item label="Tenor Details Text" prop="bodgrp.blk.bogdet">
          <c-input type="textarea" v-model="model.bodgrp.blk.bogdet" maxlength="43" show-word-limit
            :disabled="model.bodgrp.rec.doctypcod === 'P'" placeholder="请输入Tenor Details Text"></c-input>
        </el-form-item>
      </c-col>

      <!-- 无法显示数据,改用另一种方式 -->
      <!-- <c-col :span="24">
          <c-table
            :list="model.botp.docgrdm.docgrd || []"
          >
          <el-table-column label="1st" width="camil1"></el-table-column>
          <el-table-column label="2st" width="camil2"></el-table-column>
          <el-table-column label="Document" width="docnam"></el-table-column>
          </c-table>
        </c-col> -->

      <!-- <c-col :span="24" style="height: 24px; margin-top: -10px">
        <el-form-item :label="model.botp.docgrdm.docdsclab" class="messageLabel">
          <c-button style="float: right" @click="addTableValue" type="primary">新增单据</c-button>
        </el-form-item>
      </c-col>
      <c-col :span="24" style="margin-bottom: 30px;">
        <c-table height="200px" style="text-align: center" :list="this.model.botp.docgrdm.docgrd || []"
          :paginationShow="false" :border="true">
          <el-table-column label="1st" width="auto">
            <template slot-scope="scope">
              <c-input v-model="scope.row.cmail1" @change="docpre" maxlength="12"></c-input>
            </template>

          </el-table-column>
          <el-table-column label="2nd" width="auto">
            <template slot-scope="scope">
              <c-input v-model="scope.row.cmail2" maxlength="12" @change="docpre"></c-input>
            </template>
          </el-table-column>
          <el-table-column label="Document" prop="docnam" width="auto">
            <template slot-scope="scope">
              <c-select style="width: 100%" placeholder="请选择" v-model="scope.row.docnam" @change="docpre">
                <el-option v-for="item in codeTable" :key="item.value" :label="item.label" :value="item.value">
                </el-option>
              </c-select>
            </template>
          </el-table-column>
          <el-table-column label="操作" width="170px" fixed="right">
            <template slot-scope="scope">
              <c-button @click="deleteTable(scope.$index)" type="primary">删除</c-button>
            </template>
          </el-table-column>
        </c-table>
      </c-col> -->

      <c-docpre :model="model" :argadr="{
          path: 'SEMFLG',
          grp: 'botp',
          code: 'docpre'
        }"></c-docpre>

    </c-col>
    <!-- ====================右边======================= -->
    <c-col :span="11" :offset="1">
      <c-ptap :model="model" :argadr="{
        title: 'Drawer',
        grp: 'bodgrp',
        rol: 'drr',
      }" :isAdrblk="true" :disabled="false">
      </c-ptap>
      <c-ptap :model="model" :argadr="{
        title: 'Collecting Bank',
        grp: 'bodgrp',
        rol: 'col',
      }" :disabled="false">
      </c-ptap>
      <c-ptap :model="model" :argadr="{
        title: 'Drawee',
        grp: 'bodgrp',
        rol: 'dre',
      }" :disabled="false">
      </c-ptap>
      <c-col :span="24">
        <el-form-item label="Country Code Risk Country!" prop="bodgrp.rec.stacty">
          <c-select v-model="model.bodgrp.rec.stacty" style="width:100%" placeholder="请选择Country Code Risk Country!"
            :code="codes.stacty">
          </c-select>
        </el-form-item>
      </c-col>
      <c-col :span="24">
        <el-form-item label="Goods Code" prop="bodgrp.rec.stagod">
          <c-select v-model="model.bodgrp.rec.stagod" style="width:100%" placeholder="请选择Goods Code" :code="codeTable2">
          </c-select>
        </el-form-item>
      </c-col>
    </c-col>
  </c-row>
</template>
<script>
  import Api from "~/service/Api"
  import commonProcess from "~/mixin/commonProcess";
  import CodeTable from "~/config/CodeTable"
  import Event from "~/model/Botdav/Event"
  import Utils from "~/utils";
  import Ptap from "~/views/Public/Ptap";
  import Docpre from "~/views/Public/Docpre";
  export default {
    components: {
      "c-ptap": Ptap,
      "c-docpre": Docpre,
    },
    inject: ["root"],
    props: ["model", "codes"],
    mixins: [commonProcess],
    data() {
      return {
        codeTable2: [
          { label: "金(含金饰品)", value: "001" },
          { label: "银(含银饰品)", value: "002" },
          { label: "铜(含电解铜、铜制品及铜精矿)", value: "003" },
          { label: "铝(含电解铝、铝矾土及铝制品)", value: "004" },
          { label: "锌(含电解锌、锌精矿)", value: "005" },
          { label: "铁砂矿(含精矿)", value: "006" },
          { label: "其他金属", value: "007" },
          { label: "大豆", value: "008" },
          { label: "玉米", value: "009" },
          { label: "原油", value: "010" },
          { label: "食用油(含棕榈油)", value: "011" },
          { label: "煤", value: "013" },
          { label: "其他", value: "099" },
        ],
        columns: ['0 0 "lst1" 100 ', '1 1 "lst2" 100', '2 2 "document" 200'],
        codeTable: [
          { label: "Airway Bills", value: "Airway Bills" },
          { label: "Beneficiary's Declaration", value: "Beneficiary's Declaration" },
          { label: "Bill of Lading Copies", value: "Bill of Lading Copies" },
          { label: "Bill of Lading Originals", value: "Bill of Lading Originals" },
          { label: "Certificate", value: "Certificate" },
          { label: "Certificate of Analysis", value: "Certificate of Analysis" },
          { label: "Certificate of Origin", value: "Certificate of Origin" },
          { label: "Certificate of Quality", value: "Certificate of Quality" },
          { label: "Certificate of Quantity", value: "Certificate of Quantity" },
          { label: "Commercial Invoice", value: "Commercial Invoice" },
          { label: "Courier Receipt", value: "Courier Receipt" },
          { label: "Draft", value: "Draft" },
          { label: "Export Licence", value: "Export Licence" },
          { label: "Fax Report", value: "Fax Report" },
          { label: "Inspection Cert", value: "Inspection Cert" },
          { label: "Insurance Policy", value: "Insurance Policy" },
          { label: "Packing List", value: "Packing List" },
          { label: "Shipment Advice", value: "Shipment Advice" },
          { label: "Weight List", value: "Weight List" },
        ],
        // TableValue: [
        //   {
        //     id: 0,
        //     cmail1: "",
        //     cmail2: "",
        //     docnam: "",
        //     description: "",
        //     serialNum: "",
        //     tableName: "",
        //     tcddoc: "",
        //   },
        // ],
        newValue: {
          id: 0,
          cmail1: "",
          cmail2: "",
          docnam: "",
          description: "",
          serialNum: "",
          tableName: "",
          tcddoc: "",
        },
        invtyp: [
          { label: "type1", value: "1" }
        ],
      };
    },
    methods: {
      ...Event,
      changeCur(){
        this.executeDefault("cnybop.libflg").then((res) => {
        if ((res.respCode == SUCCESS)) {
          Utils.copyValueFromVO(this.model, res.data);
        }
      });
      },
      addTableValue(index) {
        var newTableValue = Object.assign({}, this.newValue);
        const serial = Utils.generateUUID();
        newTableValue.serialNum = serial;
        this.model.botp.docgrdm.docgrd.splice(index - 1, 0, newTableValue);
        // var index = this.TableValue.length;

        // if (index > 0) {
        //   newTableValue.id = this.TableValue[index - 1].id + 1;
        // }
        // this.TableValue.push(newTableValue);
      },
      deleteTable(index) {
        this.model.botp.docgrdm.docgrd.splice(index, 1);
        // console.log(row)
        // console.log(this.TableValue)
        // for (let i = 0; i < this.TableValue.length; i++) {
        //   if (this.TableValue[i].id == row.id) {
        //     this.TableValue.splice(i, 1);
        //     break;
        //   }
        // }
      },
      async docpre() {
        let rtnmsg = await this.executeDefault('bodgrp.blk.docpre')
        if (rtnmsg.respCode == SUCCESS) {
          //TODO 处理数据逻辑
          this.updateModel(rtnmsg.data)
        }
        else {
          this.$notify.error({ title: '错误', message: '服务请求失败!' });
        }
      },

    },
    computed: {
      flag() {
        return this.model.bodgrp.drr.pts.adrelc == "";
      },
    },
    created: function () {
      console.log(this.root);
    },
  }
</script>
<style>
  .messageLabel>>>.el-form-item__label {
    text-align: left;
    font-weight: bold;
    font-size: 12px;
  }
</style>