Setp.vue 9.1 KB
<template>
  <div class="eibs">
    <!-- ==================左边================ -->
    <c-col :span="12" style="padding-right: 20px;">
      <c-col :span="24">
        <el-form-item label="Reference" prop="bodgrp.rec.ownref" style="width: 100%">
          <c-input v-model="model.bodgrp.rec.ownref" maxlength="16" placeholder="请输入托收业务编号" style="width: 100%" disabled></c-input>
        </el-form-item>
      </c-col>

      <c-col :span="24" class="custom-box-wrap">
          <el-form-item label="Document Amount" prop="bodgrp.cbs.max.cur">
            <c-select-cur dbCode="CURTXT"
              disabled
              sort="SRT"
              placeholder="请选择币种"
              style="width: 115px;"
              v-model="model.bodgrp.cbs.max.cur"
              ></c-select-cur>
          </el-form-item>
        <div class="box-3">
          <el-form-item label-width="5px" prop="bodgrp.cbs.max.amt">
            <c-input-currency
              disabled
              :currency="model.bodgrp.cbs.max.cur"
              placeholder="请选择金额"
              style="width: 100%;"
              v-model="model.bodgrp.cbs.max.amt"
              ></c-input-currency>
          </el-form-item>
        </div>
      </c-col>

      <c-col :span="24" class="custom-box-wrap">
          <el-form-item label="Open Amount" prop="bodgrp.cbs.opn1.cur">
            <c-select-cur dbCode="CURTXT"
              disabled
              sort="SRT"
              placeholder="请选择币种"
              style="width: 115px;"
              v-model="model.bodgrp.cbs.opn1.cur"
              ></c-select-cur>
          </el-form-item>
        <div class="box-3">
          <el-form-item label-width="5px" prop="bodgrp.cbs.opn1.amt">
            <c-input-currency
              disabled
              :currency="model.bodgrp.cbs.opn1.cur"
              placeholder="请选择金额"
              style="width: 100%;"
              v-model="model.bodgrp.cbs.opn1.amt"
              ></c-input-currency>
          </el-form-item>
        </div>
      </c-col>

      <c-col :span="24">
        <c-col :span="13">
          <el-form-item label="Order Date" prop="bodgrp.rec.rcvdat">
            <c-date-picker type="date" disabled v-model="model.bodgrp.rec.rcvdat" style="width: 100%" placeholder="请选择收单日期"></c-date-picker>
          </el-form-item>
        </c-col>
        <c-col :span="11">
          <el-form-item label="Presentation Date" prop="bodgrp.rec.predat" label-width="120px">
            <c-date-picker type="date" disabled v-model="model.bodgrp.rec.predat" style="width: 100%" placeholder="请选择寄单日期"></c-date-picker>
          </el-form-item>
        </c-col>
      </c-col>

      <c-col :span="24" class="custom-box-wrap">
          <el-form-item label="MT202 Amount" prop="mtcur">
            <c-select-cur dbCode="CURTXT"
              disabled
              placeholder="请选择币种"
              style="width: 115px;"
              v-model="model.bodgrp.mtcur"
              ></c-select-cur>
          </el-form-item>
        <div class="box-3">
          <el-form-item label-width="5px" prop="mtamt">
            <c-input-currency
              :currency="model.bodgrp.mtcur"
              placeholder="请选择金额"
              style="width: 100%;"
              v-model="model.bodgrp.mtamt"
              ></c-input-currency>
          </el-form-item>
        </div>
      </c-col>

      <c-col :span="24" class="custom-box-wrap">
          <el-form-item label="Reduction Amount" prop="setmod.doccur">
            <c-select-cur dbCode="CURTXT"
              disabled
              placeholder="请选择币种"
              style="width: 115px;"
              v-model="model.setmod.doccur"
              ></c-select-cur>
          </el-form-item>
        <div class="box-3">
          <el-form-item label-width="5px" prop="setmod.redamt">
            <c-input-currency
              :disabled="model.bodgrp.rec.focflg === 'X'?true : false"
              :currency="model.setmod.doccur"
              placeholder="请选择金额"
              style="width: 100%;"
              v-model="model.setmod.redamt"
              ></c-input-currency>
          </el-form-item>
        </div>
      </c-col>

      <c-col :span="24" class="custom-box-wrap">
          <el-form-item label="Settle Amount" prop="setmod.doccur">
            <c-select-cur dbCode="CURTXT"
              disabled
              placeholder="请选择币种"
              style="width: 115px;"
              v-model="model.setmod.doccur"
              ></c-select-cur>
          </el-form-item>
        <div class="box-3">
          <el-form-item label-width="5px" prop="setmod.docamt">
            <c-input-currency
              :currency="model.setmod.doccur"
              placeholder="请选择金额"
              style="width: 100%;"
              v-model="model.setmod.docamt"
              @change="changeDocamt"
              ></c-input-currency>
          </el-form-item>
        </div>
      </c-col>
    </c-col>

    <!-- ============右边================= -->
    <c-col :span="12" style="padding-left: 20px;">
      <c-col :span="24">
        <el-form-item label="Collection Condition" prop="bodgrp.rec.doctypcod">
          <c-select disabled v-model="model.bodgrp.rec.doctypcod" dbCode='DOCTYP' :filterKey="['P', 'A','D', 'M']" :isShowKey="false" style="width: 100%" placeholder="请选择交单条件">
          </c-select>
        </el-form-item>
      </c-col>

      <c-col :span="24">
        <el-form-item label="Document Set Status" prop="bodgrp.rec.docsta">
          <c-select disabled v-model="model.bodgrp.rec.docsta" style="width: 100%" placeholder="请输入单据状态" dbCode='DOCST0'></c-select>
        </el-form-item>
      </c-col>

      <c-col :span="24">
        <c-col :span="16">
          <el-form-item label="Tenor Specification" prop="bodgrp.rec.matdat">
            <c-input v-model="model.bodgrp.rec.matdat" placeholder="" disabled>
            </c-input>
          </el-form-item>
        </c-col>
        <c-col :span="4">
          <el-form-item label="" prop="bodgrp.rec.matpercnt" label-width="40px">
            <c-input v-model="model.bodgrp.rec.matpercnt" placeholder="请输入单据期限" disabled>
            </c-input>
          </el-form-item>
        </c-col>
        <c-col :span="4">
          <el-form-item label="" prop="bodgrp.rec.matpertyp" label-width="5px">
            <c-select v-model="model.bodgrp.rec.matpertyp" 
              disabled
              dbCode="MATPER" :filterKey="['D', 'M']" uil="EN" 
              style="width: 100%" 
              placeholder="">
            </c-select>
          </el-form-item>
        </c-col>
      </c-col>

      <c-col :span="24">
        <el-form-item label="" prop="bodgrp.rec.matperbeg">
          <c-select 
            disabled 
            v-model="model.bodgrp.rec.matperbeg" 
            dbCode="MATBEG" :isShowKey="false" uil="EN" 
            style="width: 100%" 
            placeholder="请选择">
          </c-select>
        </el-form-item>
      </c-col>
      
      <c-col :span="24">
        <c-col :span="24">
          <el-form-item label="" prop="bodgrp.rec.focflg">
            <c-checkbox class="checkbox-left" true-label="X" false-label="" v-model="model.bodgrp.rec.focflg" @change="changeFocflg">Free of Payment
            </c-checkbox>
          </el-form-item>
        </c-col>
        <c-col :span="24">
          <el-form-item label="" prop="clsflg">
            <c-checkbox class="checkbox-left" true-label="X" false-label="" :disabled="disabledClsflg" v-model="model.clsflg" @change="changeClsdat">Close Contract
            </c-checkbox>
          </el-form-item>
        </c-col>
      </c-col>
    </c-col>
  </div>
</template>
<script>
import event from "../event";
import commonProcess from "~/mixin/commonProcess";
import BigNumber from 'bignumber.js';

export default {
  inject: ["root"],
  props: ["model", "codes"],
  mixins: [event],
  data() {
    return {
    };
  },
  computed: {
    disabledClsflg() {
      if (this.model.bodgrp.rec.doctypcod == 'P') {
        if (new BigNumber(this.model.setmod.docamt).comparedTo(new BigNumber(this.model.bodgrp.cbs.opn1.amt)) < 0) {
          this.model.clsflg = '';
          this.changeClsdat();
          return true;
        } else {
          let modifySet = this.model.modifySet;
          if (!modifySet || (!!modifySet && !modifySet.includes('clsflg'))) {
            this.model.clsflg = 'X';
          }
          this.changeClsdat();
          return false;
        }
      } else {
        let opnamt = new BigNumber(this.model.bodgrp.cbs.max.amt).minus(new BigNumber(this.model.payamt));
        if (new BigNumber(this.model.setmod.docamt).comparedTo(opnamt) < 0) {
          this.model.clsflg = '';
          this.changeClsdat();
          return true;
        } else {
          let modifySet = this.model.modifySet;
          if (!modifySet || (!!modifySet && !modifySet.includes('clsflg'))) {
            this.model.clsflg = 'X';
            this.changeClsdat();
          }
          return false;
        }
      }
      return true;
    }
  },
  mounted() {},

  methods: {
  },

  created: function() {}
};
</script>
<style>
</style>