Infsea.vue 7.56 KB
<template>
  <div class="eibs-tab">
  
    <c-col :span="24" class="col-left">
      <c-col :span="12">
        <el-form-item label="费用代码" prop="codfee">
            <c-input
                v-model="model.codFee"
                placeholder="请输入 费用代码"
                style="width: 100%"
                :code="getCodesByKey('fepfeecod')"
            >
            </c-input>
        </el-form-item>
    </c-col>
    </c-col>

      
      <c-col :span="24" class="col-left">
        <c-col :span="12">
          <el-form-item label="condition" prop="feepri">
            <c-select
              v-model="model.feepri"
              style="width: 100%"
              placeholder="feepri"
              :code="getCodesByKey('feepri')"
            ></c-select>
          </el-form-item>
        </c-col>
        </c-col>

<!-- bus.sector -->
    <c-col :span="24" v-if="(this.model.feepri==`$`)" class="col-left">
      <c-col :span="12">
        <el-form-item label="sector" prop="objtyp">
            <c-input
                v-model="model.objtyp"
                placeholder="请输入 sector"
                :disabled="true"
            >
            </c-input>
        </el-form-item>
    </c-col>
    </c-col>
   
    <!-- entity -->
    <c-col :span="24" v-if="(this.model.feepri==`*`)" class="col-left">
      <c-col :span="12">
        <el-form-item label="实体" prop="objtyp">
            <c-input
                v-model="model.objtyp"
                placeholder="请输入实体"
                :disabled="true"
            >
            </c-input>
        </el-form-item>
    </c-col>
    </c-col>

    <!-- region -->
    <c-col :span="24" v-if="(this.model.feepri==1)" class="col-left">
      <c-col :span="12">
        <el-form-item label="区域" prop="objtyp">
            <c-input
                v-model="model.objtyp"
                placeholder="请输入区域"
                :disabled="true"
            >
            </c-input>
        </el-form-item>
    </c-col>
    </c-col>

    <!-- country -->
    <c-col :span="24" v-if="(this.model.feepri==2)" class="col-left">
      <c-col :span="12">
        <el-form-item label="国家" prop="objtyp">
            <c-input
                v-model="model.objtyp"
                placeholder="请输入国家"
                :disabled="true"
            >
            </c-input>
        </el-form-item>
    </c-col>
    </c-col>

     <!-- group -->
     <c-col :span="24" v-if="(this.model.feepri==3)" class="col-left">
      <c-col :span="12">
        <el-form-item label="组" prop="objtyp">
            <c-input
                v-model="model.objtyp"
                placeholder="请输入组"
                :disabled="true"
            >
            </c-input>
        </el-form-item>
    </c-col>
    </c-col>

     <!-- party -->
     <c-col :span="24" v-if="(this.model.feepri==4)" class="col-left">
      <c-col :span="12">
        <el-form-item label="当事人" prop="objtyp">
            <c-input
                v-model="model.objtyp"
                placeholder="请输入当事人"
                :disabled="true"
            >
            </c-input>
        </el-form-item>
    </c-col>
    </c-col>
    <c-col :span="24">
      <c-col :span="12" style="text-align: left">
        <el-button type="primary" size="small" @click="fecAdd">新增</el-button>
      </c-col>
      <c-col :span="12" style="text-align: right">
        <el-button size="small" @click="handleReset">重置</el-button>
        <el-button
          type="primary"
          icon="el-icon-search"
          size="small"
          @click="onInffecSearch()"
          >查询
        </el-button>
      </c-col>
    </c-col>
    <c-col :span="24">
      <c-paging-table 
        :data="fecData"
        :columns="fecColumns"
        :pageNumber="model.pageNum"
        :pageSize="model.pageSize"
        :total="model.total"
        v-on:queryFunc="queryFunc"
        :border="true"
      >
        <c-table-column fixed="right" prop="op" label="操作" width="240px">
          <template slot-scope="{ scope }">
            <c-button
              style="margin-left: 0"
              size="small"
              @click="fecInfo(scope.$index, scope.row)"
              >详情</c-button
            >
            <c-button
              style="margin-left: 5px"
              size="small"
              type="primary"
              @click="fecEdit(scope.$index, scope.row)"
              >修改</c-button
            >
            <c-button
              size="small"
              style="margin-left: 5px"
              @click="fecDelete(scope.$index, scope.row)"
              >删除</c-button
            >
            <el-popover placement="top-start" width="50" trigger="click">
              <ul class="table-button-item-list">
                <li>
                  <c-button size="small" style="margin-left: 0">指派</c-button>
                </li>
                <li>
                  <c-button size="small" style="margin-left: 0">删除</c-button>
                </li>
              </ul>
              <a
                slot="reference"
                href="javascript:void(0)"
                style="margin-left: 5px"
              >
                <i class="el-icon-more"></i>
              </a>
            </el-popover>
          </template>
        </c-table-column>
      </c-paging-table>
    </c-col>
  </div>
</template>

<script>
import codes from "~/config/CodeTable";

import { queryByPage } from "~/service/test/fec.js";

export default {
  name: "",
  props: ["model"],
  inject: ["root"],
  data() {
    return {
      fecData: [],
      fecColumns: [
				{ label: '费用代码', prop: 'codFee', width: '120' },
				{ label: '收费条件类型', prop: 'feepri', width: '120' },
				{ label: '最小金额币种', prop: 'maxcur', width: '120' },
				{ label: '费用最小金额', prop: 'lowamt', width: '120' },
				{ label: '费用最大金额', prop: 'highamt', width: '120' },
				{ label: '起始日期', prop: 'begdat', width: '120' },
				{ label: '终止日期', prop: 'enddat', width: '120' },
				{ label: '计算规则', prop: 'calrul', width: '120' },
				{ label: '每份的费用金额', prop: 'untamt', width: '150' },
				{ label: '计算费率', prop: 'ratcal', width: '120' },
			],
    };
  },
  computed: {
  },
  activated() {
    const { update } = this.$route.params
    if (update) {
      this.onInffecSearch()
    }
  },
  methods: {
    handleReset() {
      this.root.$refs.modelForm.resetFields();
    },
    onInffecSearch() {
			queryByPage(this.model).then(res => {
        /**
         * pageNumber: 0
         * pageSize:	0
         * total: 69
         * totalPage: 0
         */
        const list = res.list
        this.fecData = list
        this.model.pageNum = res.pageNumber
        this.model.pageSize = res.pageSize
        this.model.total = res.total
      }) 
		},
    queryFunc(pageNumber, pageSize) {
      this.model.pageNum = pageNumber
      this.model.pageSize = pageSize
      this.onInffecSearch()
    },
    fectypeChange(val) {
      this.model.fectyp = val;
    },
    getCodesByKey(key) {
      return codes[key] ?? [];
    },
    fecAdd() {
			this.$router.push(`/statics/dbafec`)
		},
    fecInfo(index, row) {
			this.$router.push(`/statics/dbifec/${row.inr}`)
		},
    fecEdit(index, row) {
			this.$router.push(`/statics/dbefec/${row.inr}`)
		},
    fecDelete(index, row) {
			this.$router.push(`/statics/dbdfec/${row.inr}`)
		},
  },
};
</script>

<style scoped>
.table-button-item-list {
  padding: 0;
  margin: 0;
}
.table-button-item-list li {
  list-style: none;
  padding: 5px 0;
  text-align: center;
  color: #606266;
  cursor: pointer;
}</style>