|
|
@@ -2,8 +2,10 @@
|
|
|
<!-- 协议管理 -->
|
|
|
<div class="platinum_agreement_tab">
|
|
|
<Filter @search="updateColumn">
|
|
|
- <BtnList :btnList="firstBtn"
|
|
|
- @click="openComponent" />
|
|
|
+ <mtp-table-button class="btn-list-sticky"
|
|
|
+ :buttons="addBtn"
|
|
|
+ :record="record"
|
|
|
+ @click="openComponent" />
|
|
|
</Filter>
|
|
|
<a-table :columns="columns"
|
|
|
class="srcollYTable"
|
|
|
@@ -16,10 +18,10 @@
|
|
|
:data-source="filterTable()">
|
|
|
<!-- 额外的展开行 -->
|
|
|
<template #expandedRowRender="{ record }">
|
|
|
- <BtnList :btnList="handlePermissionBtn(secondBtn, record)"
|
|
|
- :record="record"
|
|
|
- class="btn-list-sticky"
|
|
|
- @click="openComponent" />
|
|
|
+ <mtp-table-button class="btn-list-sticky"
|
|
|
+ :buttons="handleBtn(record)"
|
|
|
+ :record="record"
|
|
|
+ @click="openComponent" />
|
|
|
</template>
|
|
|
<!-- 协议类型-->,
|
|
|
<template #isvalid="{ record }">
|
|
|
@@ -35,7 +37,7 @@
|
|
|
<!-- 右键 -->
|
|
|
<contextMenu :contextMenu="contextMenu"
|
|
|
@cancel="closeContext"
|
|
|
- :list="handlePermissionBtn(secondBtn, selectedRow)">
|
|
|
+ :list="handleBtn(selectedRow)">
|
|
|
</contextMenu>
|
|
|
<component :is="componentId"
|
|
|
v-if="componentId"
|
|
|
@@ -45,35 +47,31 @@
|
|
|
</template>
|
|
|
|
|
|
<script lang="ts">
|
|
|
-import { queryTableList, BtnList, contextMenu, defineAsyncComponent, defineComponent, ModalEnum, handleComposeTable, ComposeTableParam } from '@/common/export/commonTable';
|
|
|
+import { ComposeTableParam, contextMenu, defineAsyncComponent, defineComponent, handleComposeTable, MtpTableButton, queryTableList } from '@/common/export/commonTable';
|
|
|
import { queryAgreementConfig } from '@/services/go/ermcp/qhj';
|
|
|
import { QhjAgreementConfig } from '@/services/go/ermcp/qhj/interface';
|
|
|
import Filter from '../../compoments/filter/index.vue';
|
|
|
import { getAgreementStatus, getAgreementTypeName } from '@/common/constants/enumsName';
|
|
|
import { handleArgreementType, handlePermissionBtn } from '../../setup';
|
|
|
import { EnumRouterName } from '@/common/constants/enumRouterName';
|
|
|
-
|
|
|
-const Detail = defineAsyncComponent(() => import('../../compoments/detail/index.vue'));
|
|
|
-const Modify = defineAsyncComponent(() => import('../../compoments/modify/index.vue'));
|
|
|
-const Add = defineAsyncComponent(() => import('../../compoments/add/index.vue'));
|
|
|
-const Delete = defineAsyncComponent(() => import('../../compoments/delete/index.vue'));
|
|
|
-const Resume = defineAsyncComponent(() => import('../../compoments/resume/index.vue'));
|
|
|
-const Stop = defineAsyncComponent(() => import('../../compoments/stop/index.vue'));
|
|
|
+import { getTableButton } from '@/common/setup/table/button';
|
|
|
|
|
|
export default defineComponent({
|
|
|
name: EnumRouterName.platinum_agreement_tab,
|
|
|
components: {
|
|
|
Filter,
|
|
|
contextMenu,
|
|
|
- BtnList,
|
|
|
- [ModalEnum.detail]: Detail,
|
|
|
- [ModalEnum.platinum_agreement_modify]: Modify,
|
|
|
- [ModalEnum.platinum_agreement_add]: Add,
|
|
|
- [ModalEnum.platinum_agreement_delete]: Delete,
|
|
|
- [ModalEnum.platinum_agreement_resume]: Resume,
|
|
|
- [ModalEnum.platinum_agreement_stop]: Stop,
|
|
|
+ MtpTableButton,
|
|
|
+ detail: defineAsyncComponent(() => import('../../compoments/detail/index.vue')),
|
|
|
+ modify: defineAsyncComponent(() => import('../../compoments/modify/index.vue')),
|
|
|
+ add: defineAsyncComponent(() => import('../../compoments/add/index.vue')),
|
|
|
+ delete: defineAsyncComponent(() => import('../../compoments/delete/index.vue')),
|
|
|
+ resume: defineAsyncComponent(() => import('../../compoments/resume/index.vue')),
|
|
|
+ disable: defineAsyncComponent(() => import('../../compoments/stop/index.vue')),
|
|
|
},
|
|
|
setup() {
|
|
|
+ const addBtn = getTableButton(['add']);
|
|
|
+
|
|
|
// 表格列表数据
|
|
|
const { loading, tableList, queryTable } = queryTableList<QhjAgreementConfig>();
|
|
|
// 获取列表数据
|
|
|
@@ -91,6 +89,20 @@ export default defineComponent({
|
|
|
// 过滤注销数据
|
|
|
const filterTable = () => tableList.value.filter((e) => e.isvalid !== 3);
|
|
|
|
|
|
+ function handleBtn(record: QhjAgreementConfig) {
|
|
|
+ if (!record) return [];
|
|
|
+ const buttons = getTableButton(['detail', 'modify', 'delete', 'resume', 'disable']);
|
|
|
+ const { isvalid } = record;
|
|
|
+ if (isvalid === 1) {
|
|
|
+ // 正常
|
|
|
+ return buttons.filter((e) => e.code !== 'resume');
|
|
|
+ } else if (isvalid === 2) {
|
|
|
+ // 停用
|
|
|
+ return buttons.filter((e) => e.code !== 'disable');
|
|
|
+ }
|
|
|
+ return [];
|
|
|
+ }
|
|
|
+
|
|
|
return {
|
|
|
...handleComposeTable<QhjAgreementConfig>(param),
|
|
|
getRateEnumName,
|
|
|
@@ -99,6 +111,8 @@ export default defineComponent({
|
|
|
filterTable,
|
|
|
getAgreementTypeName,
|
|
|
getAgreementStatus,
|
|
|
+ addBtn,
|
|
|
+ handleBtn,
|
|
|
};
|
|
|
},
|
|
|
});
|