Oftp13.vue 10.3 KB
<template>
  <div class="eibs-tab">
    <c-list-search @form-reset="handleReset" @form-search="handleSearch">
      <!-- 持续展示区 -->
      <template v-slot="searchSlot">
        <el-row>
          <c-col :span="24">
            <c-col :span="8">
              <el-form-item label="报文标准"  style="width: 100%">
                <c-select v-model="model.oftp.rel.msgtyp" style="width: 100%" :code="codes.msgtyp3" @change="getSubtyp(model.oftp.rel.msgtyp, 'oftp.rel.mty')" />
              </el-form-item>
            </c-col>
            <c-col :span="8">
              <el-form-item label="报文类型"  style="width: 100%">
                <el-select v-model="model.oftp.rel.mty" >
                  <el-option v-for="code in subtypCodes" :key="code.label" :label="code.label" :value="code.value">
                  </el-option>
                </el-select>
              </el-form-item>
            </c-col>
            <c-col :span="8">
              <el-form-item label="起止日期"  style="width: 100%">
                <c-col :span="11">
                  <c-date-picker type="date" v-model="model.oftp.rel.rsptims" style="width: 100%"></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.oftp.rel.rsptime" style="width: 100%"></c-date-picker>
                </c-col>
              </el-form-item>
            </c-col>
          </c-col>
        </el-row>
        <!-- 可控展示区 -->
        <el-row v-show="searchSlot.searchToggle">
          <c-col :span="24">
            <c-col :span="8">
              <el-form-item label="发报行BIC"  style="width: 100%">
                <c-input v-model="model.oftp.rel.sedbak" style="width: 100%"  />
              </el-form-item>
            </c-col>
            <c-col :span="8">
              <el-form-item label="收报行BIC"  style="width: 100%">
                <c-input v-model="model.oftp.rel.revbak" style="width: 100%"  />
              </el-form-item>
            </c-col>
            <c-col :span="8">
              <el-form-item label="账户行BIC"  style="width: 100%">
                <c-input v-model="model.oftp.rel.actbic" style="width: 100%"  />
              </el-form-item>
            </c-col>
          </c-col>
          <c-col :span="24">
            <c-col :span="8">
              <el-form-item label="借贷"  style="width: 100%">
                <c-select v-model="model.oftp.rel.dcflg" style="width: 100%" :code="codes.dcflg" />
              </el-form-item>
            </c-col>
            <c-col :span="8">
              <el-form-item label="币种"  style="width: 100%">
                <c-select v-model="model.oftp.rel.cur" style="width: 100%" :code="codes.cur" />
              </el-form-item>
            </c-col>
            <c-col :span="8">
              <el-form-item
                  :label="$t('lc.金额区间')"
                  style="width: 100%"
              >
                <c-col :span="11">
                  <c-input
                      v-model="model.oftp.rel.atmd"
                      :placeholder="$t('lc.请输入金额下限')"
                      style="width: 100%"
                  ></c-input>
                </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
                      v-model="model.oftp.rel.amtu"
                      :placeholder="$t('lc.请输入金额上限')"
                      style="width: 100%"
                  ></c-input>
                </c-col>
              </el-form-item>
            </c-col>
          </c-col>
          <c-col :span="24">
            <c-col :span="8">
              <el-form-item label="20域编号"  style="width: 100%">
                <c-input v-model="model.oftp.rel.ref" maxlength="40" >
                </c-input>
              </el-form-item>
            </c-col>
            <c-col :span="8">
              <el-form-item label="21域编号"  style="width: 100%">
                <c-input v-model="model.oftp.rel.relref" maxlength="40" >
                </c-input>
              </el-form-item>
            </c-col>
          </c-col>

        </el-row>
      </template>
    </c-list-search>

    <el-col :span="24" style="margin-top: 2px;margin-bottom: 1px;">
      <c-button :disabled="isFoldDisable" class="medium_bcs" size="medium" style="margin-left: 0" type="primary">{{
        $t('public.归档') }}
      </c-button>
      <c-button :disabled="isRoutingDisable" class="medium_bcs" size="medium" style="margin-left: 20"
        type="primary">ReRouting
      </c-button>
      <c-button class="medium_bcs" size="medium" style="margin-left: 20" type="primary">
        {{ $t('public.导出Excel') }}
      </c-button>
    </el-col>

    <el-col :span="24" style="margin-top: 10px">
      <div style="height: 90%">
        <c-col :span="24">
          <el-tabs v-model="activeTab" class="y-tabs">
            <el-tab-pane label="待关联报文处理" name="fb">
              <el-table :data="stmData.data" :columns="stmData.columns" v-loading="load" style="width: 100%"
                @selection-change="handleSelectionChange" 
                @row-dblclick="dbClickRow"
                size="small" :border="true" height="calc(100vh - 480px)"
                :highlight-current-row="true">
                <el-table-column type="selection" width="55">
                </el-table-column>
                <el-table-column v-for="(item, key) in stmData.columns" :key="key" :label="item.label" :prop="item.prop"
                  :min-width="item.width">
                </el-table-column>
              </el-table>

              <el-pagination layout="total, sizes, prev, pager, next, jumper" :total="pagination.total"
                :page-size="pagination.pageSize" :current-page.sync="pagination.pageNum" @size-change="handleSizeChange"
                @current-change="handleCurrentChange">
              </el-pagination>
            </el-tab-pane>
          </el-tabs>
        </c-col>
      </div>
    </el-col>
  </div>
</template>
<script>
import event from "../event";

export default {
  inject: ["root"],
  props: ["model", "codes"],
  mixins: [event],
  data() {
    return {
      activeTab: 'fb',
      load: false,
      subtypCodes: [],
      multipleSelection: [],
      stmData: {
        columns: [
          {
            label: "报文种类",
            prop: "mty",
            width: "100px"
          },
          {
            label: "收发时间",
            prop: "rsptim",
            width: "180px"
          },
          {
            label: "G渠道",
            prop: "sweflg",
            width: "120px"
          },
          {
            label: "记账类型",
            prop: "typ",
            width: "120px"
          },
          {
            label: "收支",
            prop: "dcflg",
            width: "120px"
          },
          {
            label: "金额",
            prop: "amt",
            width: "120px"
          },
          {
            label: "币种",
            prop: "cur",
            width: "120px"
          },
          {
            label: "关联状态",
            prop: "sta",
            width: "120px"
          },
          {
            label: "处理状态",
            prop: "area",
            width: "120px"
          },
          {
            label: "起息日",
            prop: "valdat",
            width: "120px"
          },
          {
            label: "20域编号",
            prop: "ownref",
            width: "200px"
          },
          {
            label: "21域编号",
            prop: "othref",
            width: "200px"
          },
          {
            label: "目标渠道",
            prop: "multimsg",
            width: "120px"
          },
          {
            label: "源渠道",
            prop: "chk",
            width: "120px"
          },
          {
            label: "下一渠道",
            prop: "kpatyp",
            width: "120px"
          },
          {
            label: "发报行BIC",
            prop: "sedbak",
            width: "150px"
          },
          {
            label: "收报行BIC",
            prop: "revbak",
            width: "150px"
          },
          {
            label: "账户行BIC",
            prop: "actbic",
            width: "150px"
          },
          {
            label: "勾销标识",
            prop: "offsta",
            width: "120px"
          },
          {
            label: "最后处理时间",
            prop: "lstdat",
            width: "120px"
          }],
        data: [],
      },
      pagination: {
        pageNum: 1,
        pageSize: 10,
        total: 0,
      },
    };
  },
  computed: {
    isFoldDisable: function () {
      return this.multipleSelection.length == 0;
    },
    isRoutingDisable: function () {
      return this.multipleSelection.length == 0;
    }
  },
  watch: {
    
  },
  methods: {
    dbClickRow (row) {
      this.routerPush({
        path: '/business/oftdtl',
        query: {
          dotinr: row.inr,
        }
      })
    }
  },
  mounted: function () {
  },
};
</script>
<style lang="less" scoped>
::v-deep .c-content-scrollbar {
  height: 100% !important;
}

.eibs-tabs /deep/ {
  .m-table-search {
    padding: 20px 0px 10px 0px;
  }
}

.header-wrap {
  height: 36px;
  display: flex;
  justify-content: space-between;
  align-items: center;

  .title {
    font-size: 16px;
    color: #000;
  }

  .close-btn {
    padding: 3px;
    cursor: pointer;
  }
}

.m-list-btns {
  height: 300px;
  overflow: auto;
}

.medium_bcs {
  border-radius: 5px;
}

.m-table-search {
  padding: 20px 0px 10px 0px;
}

.pagination-box {
  width: 100%;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 10px;
  background: #fff;
  margin-top: 5px;
}

.el-dialog__body {
  padding: 10px 5px 50px;
}

.m-table-search {
  padding: 20px 0px 10px 0px;
}

.btn-group-wrap {
  max-height: 200px;
  width: 100%;
  overflow-y: auto;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.btn-item {
  margin-bottom: 10px;
  margin-right: 10px;
}
</style>