Browse Source

修改 千海金 提现审核

huangbin 4 years ago
parent
commit
214d03d539

+ 0 - 52
src/views/platinum/platinum_recharge_withdrawal_review/list/recharge/compoments/controlModal/index.vue

@@ -1,52 +0,0 @@
-<template>
-    <div>
-        <!-- 详情 -->
-        <Detail :selectedRow="selectedRow" />
-        <!-- 确认收款 -->
-        <Payment :selectedRow="selectedRow" @refresh="refresh" />
-        <!-- 审核拒绝 -->
-        <Refuse :selectedRow="selectedRow" @refresh="refresh" />
-    </div>
-</template>
-
-<script lang="ts">
-import { defineComponent, PropType } from 'vue';
-import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import Detail from '../detail/index.vue';
-import Payment from '../payment/index.vue';
-import Refuse from '../refuse/index.vue';
-
-export default defineComponent({
-    name: 'custom-control-modal',
-    emits: ['refresh'],
-    components: { Detail, Payment, Refuse },
-    props: {
-        selectedRow: {
-            type: Object as PropType<QueryCustomInfoType>,
-            default: {},
-        },
-    },
-    setup(props, context) {
-        function refresh() {
-            context.emit('refresh');
-        }
-        return {
-            refresh,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.custom-detail {
-    .ant-form.inlineForm {
-        margin-top: 20px;
-    }
-    .upload {
-        .look {
-            margin-left: 0;
-        }
-    }
-}
-</style>;
-

+ 5 - 3
src/views/platinum/platinum_recharge_withdrawal_review/list/recharge/compoments/detail/index.vue

@@ -17,13 +17,14 @@
   </a-modal>
 </template>
 <script lang="ts">
+import { _closeModal } from '@/common/setup/modal/modal';
+import { QhjAccountOutInApply } from '@/services/go/ermcp/qhj/interface';
 import { defineComponent, PropType, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
 import CommomDetail from '../common-detail/index.vue';
-import { QhjAccountOutInApply } from '@/services/go/ermcp/qhj/interface';
 
 export default defineComponent({
     name: 'platinum_withdrawal_review_detail-desc',
+    emits: ['cancel', 'update'],
     components: { CommomDetail },
     props: {
         selectedRow: {
@@ -32,7 +33,8 @@ export default defineComponent({
         },
     },
     setup(props, context) {
-        const { visible, cancel } = closeModal('detail');
+        // 控制关闭弹窗
+        const { visible, cancel } = _closeModal(context);
         const loading = ref<boolean>(false);
         return {
             cancel,

+ 29 - 19
src/views/platinum/platinum_recharge_withdrawal_review/list/recharge/compoments/payment/index.vue

@@ -1,29 +1,39 @@
 <template>
-    <!-- 充值审核 确认收款-->
-    <a-modal class="add-custom custom-detail" title="确认收款" centered v-model:visible="visible" :maskClosable="false" @cancel="cancel" width="890px">
-        <template #footer>
-            <a-button key="submit" type="primary" :loading="loading" @click="submit">确认</a-button>
-            <a-button key="cancel" type="primary" :loading="loading" @click="cancel">关闭</a-button>
-        </template>
-        <CommomDetail :selectedRow="selectedRow" />
-    </a-modal>
+  <!-- 充值审核 确认收款-->
+  <a-modal class="add-custom custom-detail"
+           title="确认收款"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading"
+                @click="submit">确认</a-button>
+      <a-button key="cancel"
+                type="primary"
+                :loading="loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <CommomDetail :selectedRow="selectedRow" />
+  </a-modal>
 </template>
 <script lang="ts">
-import { defineComponent, PropType, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
-import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import CommomDetail from '../common-detail/index.vue';
 import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
+import { _closeModal } from '@/common/setup/modal/modal';
+import { getUserId } from '@/services/bus/user';
+import { QhjAccountOutInApply } from '@/services/go/ermcp/qhj/interface';
 import { t2bExchConfirmBusiness } from '@/services/proto/manager';
 import { t2bExchConfirmBusinessReq } from '@/services/proto/manager/interface';
-import { QhjAccountOutInApply } from '@/services/go/ermcp/qhj/interface';
 import { getTimeValue } from '@/utils/time';
-import { getUserId } from '@/services/bus/user';
-import { geLoginID_number } from '@/services/bus/login';
+import { defineComponent, PropType, ref } from 'vue';
+import CommomDetail from '../common-detail/index.vue';
 
 export default defineComponent({
     name: 'platinum_recharge_review_confirm_payment',
-    emits: ['refresh'],
+    emits: ['cancel', 'update'],
     components: { CommomDetail },
     props: {
         selectedRow: {
@@ -32,7 +42,8 @@ export default defineComponent({
         },
     },
     setup(props, context) {
-        const { visible, cancel } = closeModal('platinum_recharge_review_confirm_payment');
+        // 控制关闭弹窗
+        const { visible, cancel } = _closeModal(context);
         const loading = ref<boolean>(false);
         function submit() {
             let reqParams: t2bExchConfirmBusinessReq = {
@@ -48,8 +59,7 @@ export default defineComponent({
             };
 
             requestResultLoadingAndInfo(t2bExchConfirmBusiness, reqParams, loading, ['确认收款成功', '确认收款失败:']).then(() => {
-                cancel();
-                context.emit('refresh');
+                cancel(true);
             });
         }
         return {

+ 30 - 19
src/views/platinum/platinum_recharge_withdrawal_review/list/recharge/compoments/refuse/index.vue

@@ -1,29 +1,40 @@
 <template>
-    <!-- 充值审核 审核拒绝-->
-    <a-modal class="add-custom custom-detail" title="审核拒绝" centered v-model:visible="visible" :maskClosable="false" @cancel="cancel" width="890px">
-        <template #footer>
-            <a-button key="submit" type="primary" :loading="loading" @click="submit">拒绝</a-button>
-            <a-button key="cancel" type="primary" :loading="loading" @click="cancel">关闭</a-button>
-        </template>
-        <CommomDetail :selectedRow="selectedRow" />
-    </a-modal>
+  <!-- 充值审核 审核拒绝-->
+  <a-modal class="add-custom custom-detail"
+           title="审核拒绝"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading"
+                @click="submit">拒绝</a-button>
+      <a-button key="cancel"
+                type="primary"
+                :loading="loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <CommomDetail :selectedRow="selectedRow" />
+  </a-modal>
 </template>
 
 <script lang="ts">
-import { defineComponent, PropType, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
-import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import CommomDetail from '../common-detail/index.vue';
 import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { t2bExchConfirmBusinessReq } from '@/services/proto/manager/interface';
-import { getTimeValue } from '@/utils/time';
+import { _closeModal } from '@/common/setup/modal/modal';
 import { getUserId } from '@/services/bus/user';
-import { t2bExchConfirmBusiness } from '@/services/proto/manager';
 import { QhjAccountOutInApply } from '@/services/go/ermcp/qhj/interface';
+import { t2bExchConfirmBusiness } from '@/services/proto/manager';
+import { t2bExchConfirmBusinessReq } from '@/services/proto/manager/interface';
+import { getTimeValue } from '@/utils/time';
+import { defineComponent, PropType, ref } from 'vue';
+import CommomDetail from '../common-detail/index.vue';
 
 export default defineComponent({
     name: 'custom-detail-desc',
-    emits: ['refresh'],
+    emits: ['cancel', 'update'],
     components: { CommomDetail },
     props: {
         selectedRow: {
@@ -32,7 +43,8 @@ export default defineComponent({
         },
     },
     setup(props, context) {
-        const { visible, cancel } = closeModal('platinum_recharge_review_refuse');
+        // 控制关闭弹窗
+        const { visible, cancel } = _closeModal(context);
         const loading = ref<boolean>(false);
         function submit() {
             let reqParams: t2bExchConfirmBusinessReq = {
@@ -48,8 +60,7 @@ export default defineComponent({
             };
 
             requestResultLoadingAndInfo(t2bExchConfirmBusiness, reqParams, loading, ['审核拒绝成功', '审核拒绝失败:']).then(() => {
-                cancel();
-                context.emit('refresh');
+                cancel(true);
             });
         }
         return {

+ 4 - 4
src/views/platinum/platinum_recharge_withdrawal_review/list/recharge/index.vue

@@ -75,6 +75,8 @@ export default defineComponent({
     setup() {
         // 表格列表数据
         const { loading, tableList, queryTable } = queryTableList<QhjAccountOutInApply>();
+        // 状态
+        const { tableStatus, getTableListStatus, search } = handleTableStatus(queryTable, 2);
 
         const queryTableAction = () => {
             queryTable(queryAccountInOutApply, { querytype: 2, applystatus: tableStatus.value });
@@ -83,13 +85,11 @@ export default defineComponent({
         const param: ComposeTableParam = {
             queryFn: queryTableAction,
             menuType: EnumRouterName.plan_audit,
-            tableName: 'table_pcweb_qhj_pickup_query',
-            tableFilterKey: ['reqtime', 'pickupgoodsname', 'takeorderstatus', 'goodsname'],
+            tableName: 'table_pcweb_qhj_recharge_review',
+            tableFilterKey: [],
             isDetail: true,
         };
 
-        // 状态
-        const { tableStatus, getTableListStatus, search } = handleTableStatus(queryTable, 2);
         function handleBtn(record: QhjAccountOutInApply) {
             if (!record) return;
             const buttons = getTableButton();

+ 0 - 53
src/views/platinum/platinum_recharge_withdrawal_review/list/withdrawal/compoments/controlModal/index.vue

@@ -1,53 +0,0 @@
-<template>
-    <div>
-        <!-- 详情 -->
-        <Detail :selectedRow="selectedRow" />
-        <!-- 确认收款 -->
-        <Withdrawal :selectedRow="selectedRow" @refresh="refresh" />
-        <!-- 审核拒绝 -->
-        <Refuse :selectedRow="selectedRow" @refresh="refresh" />
-    </div>
-</template>
-
-<script lang="ts">
-import { defineComponent, PropType } from 'vue';
-import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import Detail from '../detail/index.vue';
-import Withdrawal from '../withdrawal/index.vue';
-import Refuse from '../refuse/index.vue';
-import { QhjAccountOutInApply } from '@/services/go/ermcp/qhj/interface';
-
-export default defineComponent({
-    name: 'custom-control-modal',
-    emits: ['refresh'],
-    components: { Detail, Withdrawal, Refuse },
-    props: {
-        selectedRow: {
-            type: Object as PropType<QhjAccountOutInApply>,
-            default: {},
-        },
-    },
-    setup(props, context) {
-        function refresh() {
-            context.emit('refresh');
-        }
-        return {
-            refresh,
-        };
-    },
-});
-</script>
-
-<style lang="less">
-.custom-detail {
-    .ant-form.inlineForm {
-        margin-top: 20px;
-    }
-    .upload {
-        .look {
-            margin-left: 0;
-        }
-    }
-}
-</style>;
-

+ 5 - 4
src/views/platinum/platinum_recharge_withdrawal_review/list/withdrawal/compoments/detail/index.vue

@@ -17,14 +17,14 @@
   </a-modal>
 </template>
 <script lang="ts">
+import { _closeModal } from '@/common/setup/modal/modal';
+import { QhjAccountOutInApply } from '@/services/go/ermcp/qhj/interface';
 import { defineComponent, PropType, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
-import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
 import CommomDetail from '../common-detail/index.vue';
-import { QhjAccountOutInApply } from '@/services/go/ermcp/qhj/interface';
 
 export default defineComponent({
     name: 'platinum_withdrawal_review_detail-desc',
+    emits: ['cancel', 'update'],
     components: { CommomDetail },
     props: {
         selectedRow: {
@@ -33,7 +33,8 @@ export default defineComponent({
         },
     },
     setup(props, context) {
-        const { visible, cancel } = closeModal('detail');
+        // 控制关闭弹窗
+        const { visible, cancel } = _closeModal(context);
         const loading = ref<boolean>(false);
         return {
             cancel,

+ 30 - 19
src/views/platinum/platinum_recharge_withdrawal_review/list/withdrawal/compoments/refuse/index.vue

@@ -1,29 +1,40 @@
 <template>
-    <!-- 充值审核 审核拒绝-->
-    <a-modal class="add-custom custom-detail" title="审核拒绝" centered v-model:visible="visible" :maskClosable="false" @cancel="cancel" width="890px">
-        <template #footer>
-            <a-button key="submit" type="primary" :loading="loading" @click="submit">拒绝</a-button>
-            <a-button key="cancel" type="primary" :loading="loading" @click="cancel">关闭</a-button>
-        </template>
-        <CommomDetail :selectedRow="selectedRow" />
-    </a-modal>
+  <!-- 充值审核 审核拒绝-->
+  <a-modal class="add-custom custom-detail"
+           title="审核拒绝"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading"
+                @click="submit">拒绝</a-button>
+      <a-button key="cancel"
+                type="primary"
+                :loading="loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <CommomDetail :selectedRow="selectedRow" />
+  </a-modal>
 </template>
 
 <script lang="ts">
-import { defineComponent, PropType, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
-import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import CommomDetail from '../common-detail/index.vue';
 import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { t2bExchConfirmBusinessReq } from '@/services/proto/manager/interface';
-import { getTimeValue } from '@/utils/time';
+import { _closeModal } from '@/common/setup/modal/modal';
 import { getUserId } from '@/services/bus/user';
-import { t2bExchConfirmBusiness } from '@/services/proto/manager';
 import { QhjAccountOutInApply } from '@/services/go/ermcp/qhj/interface';
+import { t2bExchConfirmBusiness } from '@/services/proto/manager';
+import { t2bExchConfirmBusinessReq } from '@/services/proto/manager/interface';
+import { getTimeValue } from '@/utils/time';
+import { defineComponent, PropType, ref } from 'vue';
+import CommomDetail from '../common-detail/index.vue';
 
 export default defineComponent({
     name: 'custom-detail-desc',
-    emits: ['refresh'],
+    emits: ['cancel', 'update'],
     components: { CommomDetail },
     props: {
         selectedRow: {
@@ -32,7 +43,8 @@ export default defineComponent({
         },
     },
     setup(props, context) {
-        const { visible, cancel } = closeModal('platinum_withdrawal_review_refuse');
+        // 控制关闭弹窗
+        const { visible, cancel } = _closeModal(context);
         const loading = ref<boolean>(false);
         function submit() {
             let reqParams: t2bExchConfirmBusinessReq = {
@@ -48,8 +60,7 @@ export default defineComponent({
             };
 
             requestResultLoadingAndInfo(t2bExchConfirmBusiness, reqParams, loading, ['审核拒绝成功', '审核拒绝失败:']).then(() => {
-                cancel();
-                context.emit('refresh');
+                cancel(true);
             });
         }
         return {

+ 30 - 19
src/views/platinum/platinum_recharge_withdrawal_review/list/withdrawal/compoments/withdrawal/index.vue

@@ -1,28 +1,39 @@
 <template>
-    <!-- 提现审核 确认提现-->
-    <a-modal class="add-custom custom-detail" title="确认提现" centered v-model:visible="visible" :maskClosable="false" @cancel="cancel" width="890px">
-        <template #footer>
-            <a-button key="submit" type="primary" :loading="loading" @click="submit">确认</a-button>
-            <a-button key="cancel" type="primary" :loading="loading" @click="cancel">关闭</a-button>
-        </template>
-        <CommomDetail :selectedRow="selectedRow" />
-    </a-modal>
+  <!-- 提现审核 确认提现-->
+  <a-modal class="add-custom custom-detail"
+           title="确认提现"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading"
+                @click="submit">确认</a-button>
+      <a-button key="cancel"
+                type="primary"
+                :loading="loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <CommomDetail :selectedRow="selectedRow" />
+  </a-modal>
 </template>
 <script lang="ts">
-import { defineComponent, PropType, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
-import { QueryCustomInfoType } from '@/services/go/ermcp/customInfo/interface';
-import CommomDetail from '../common-detail/index.vue';
 import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
-import { t2bExchConfirmBusinessReq } from '@/services/proto/manager/interface';
-import { getTimeValue } from '@/utils/time';
+import { _closeModal } from '@/common/setup/modal/modal';
 import { getUserId } from '@/services/bus/user';
-import { t2bExchConfirmBusiness } from '@/services/proto/manager';
 import { QhjAccountOutInApply } from '@/services/go/ermcp/qhj/interface';
+import { t2bExchConfirmBusiness } from '@/services/proto/manager';
+import { t2bExchConfirmBusinessReq } from '@/services/proto/manager/interface';
+import { getTimeValue } from '@/utils/time';
+import { defineComponent, PropType, ref } from 'vue';
+import CommomDetail from '../common-detail/index.vue';
 
 export default defineComponent({
     name: 'platinum_withdrawal_review_confirm_withdrawal',
-    emits: ['refresh'],
+    emits: ['cancel', 'update'],
     components: { CommomDetail },
     props: {
         selectedRow: {
@@ -31,7 +42,8 @@ export default defineComponent({
         },
     },
     setup(props, context) {
-        const { visible, cancel } = closeModal('platinum_withdrawal_review_confirm_withdrawal');
+        // 控制关闭弹窗
+        const { visible, cancel } = _closeModal(context);
         const loading = ref<boolean>(false);
         function submit() {
             let reqParams: t2bExchConfirmBusinessReq = {
@@ -47,8 +59,7 @@ export default defineComponent({
             };
 
             requestResultLoadingAndInfo(t2bExchConfirmBusiness, reqParams, loading, ['确认提现成功', '确认提现失败:']).then(() => {
-                cancel();
-                context.emit('refresh');
+                cancel(true);
             });
         }
         return {

+ 66 - 64
src/views/platinum/platinum_recharge_withdrawal_review/list/withdrawal/index.vue

@@ -2,94 +2,96 @@
   <!-- 提现审核 -->
   <div class="platinum_withdrawal_review_tab">
     <Filter @search="search" />
-    <contextMenu :contextMenuList="getBtnListAction()">
-      <a-table :columns="columns"
-               class="srcollYTable"
-               :scroll="{ x: '100%', y: 'calc(100vh - 163px)' }"
-               :pagination="false"
-               :expandedRowKeys="expandedRowKeys"
-               :customRow="Rowclick"
-               rowKey="key"
-               :data-source="tableList">
-        <!-- 额外的展开行 -->
-        <template #expandedRowRender="{ record }">
-          <BtnList :btnList="getBtnListAction()"
-                   class="btn-list-sticky"
-                   @onClick="btnClick(record)" />
-        </template>
-        <!-- 账户类型 -->
-        <template #userinfotype="{ record }">
-          <a>{{ record.userinfotype === 1 ? "个人" : "企业" }}</a>
-        </template>
-        <template #applystatus="{ }">
-          <a>{{ getTableListStatus() }}</a>
-        </template>
-      </a-table>
-    </contextMenu>
-    <ControlModal :selectedRow="selectedRow"
-                  @refresh="getTableList" />
+    <a-table :columns="columns"
+             class="srcollYTable"
+             :scroll="{ x: '100%', y: 'calc(100vh - 163px)' }"
+             :pagination="false"
+             :loading="loading"
+             :expandedRowKeys="expandedRowKeys"
+             :customRow="Rowclick"
+             rowKey="key"
+             :data-source="tableList">
+      <!-- 额外的展开行 -->
+      <template #expandedRowRender="{ record }">
+        <mtp-table-button class="btn-list-sticky"
+                          :buttons="handleBtn(record)"
+                          :record="record"
+                          @click="openComponent" />
+      </template>
+      <!-- 账户类型 -->
+      <template #userinfotype="{ record }">
+        <a>{{ record.userinfotype === 1 ? "个人" : "企业" }}</a>
+      </template>
+      <template #applystatus="{ }">
+        <a>{{ getTableListStatus() }}</a>
+      </template>
+    </a-table>
+    <!-- 右键 -->
+    <contextMenu :contextMenu="contextMenu"
+                 @cancel="closeContext"
+                 :list="handleBtn(selectedRow)"> </contextMenu>
+    <component :is="componentId"
+               v-if="componentId"
+               :selectedRow="selectedRow"
+               @cancel="closeComponent"> </component>
   </div>
 </template>
 
 <script lang="ts">
-import { defineComponent, initData, getTableColumns, getTableEvent, contextMenu, BtnList, queryTableList, _getBtnList } from '@/common/export/table';
+import { EnumRouterName } from '@/common/constants/enumRouterName';
+import { ComposeTableParam, contextMenu, defineAsyncComponent, defineComponent, handleComposeTable, MtpTableButton, queryTableList } from '@/common/export/commonTable';
+import { getTableButton } from '@/common/setup/table/button';
 import { queryAccountInOutApply } from '@/services/go/ermcp/qhj';
 import { QhjAccountOutInApply } from '@/services/go/ermcp/qhj/interface';
 import Filter from '../../compoments/filter/index.vue';
-import ControlModal from './compoments/controlModal/index.vue';
 import { handleTableStatus, inOrOutStatus } from '../../setup';
-import { BtnListType } from '@/common/components/btnList/interface';
 
 export default defineComponent({
     name: 'platinum_withdrawal_review_tab',
-    components: { Filter, contextMenu, BtnList, ControlModal },
+    components: {
+        Filter,
+        contextMenu,
+        MtpTableButton,
+        detail: defineAsyncComponent(() => import('./compoments/detail/index.vue')), // 详情
+        review_confirm: defineAsyncComponent(() => import('./compoments/withdrawal/index.vue')), // 确认提现
+        review_refuse: defineAsyncComponent(() => import('./compoments/refuse/index.vue')), // 审核拒绝
+    },
     setup() {
-        // 表头数据
-        const { columns, registerColumn, updateColumn } = getTableColumns();
-
-        // 表格操作按钮列表
-        const [firstBtn] = _getBtnList('platinum_withdrawal_review_tab', true).value;
         // 表格列表数据
-        const { loading, tableList, queryTable } = queryTableList();
-        // 表格事件
-        const { expandedRowKeys, selectedRow, Rowclick, btnClick } = getTableEvent<QhjAccountOutInApply>({});
+        const { loading, tableList, queryTable } = queryTableList<QhjAccountOutInApply>();
         // 状态
         const { tableStatus, getTableListStatus, search } = handleTableStatus(queryTable, 1);
-        function getBtnListAction(): BtnListType[] {
-            const arr: string[] = ['详情'];
-            switch (tableStatus.value) {
-                case inOrOutStatus.wait:
-                    arr.push('确认提现');
-                    arr.push('审核拒绝');
-                    break;
-            }
-            return firstBtn.filter((e: BtnListType) => arr.includes(e.lable));
-        }
 
-        function getTableList() {
+        const queryTableAction = () => {
             queryTable(queryAccountInOutApply, { querytype: 1, applystatus: tableStatus.value });
+        };
+        // 表格通用逻辑
+        const param: ComposeTableParam = {
+            queryFn: queryTableAction,
+            menuType: EnumRouterName.plan_audit,
+            tableName: 'table_pcweb_qhj_withdrawal_review',
+            tableFilterKey: [],
+            isDetail: true,
+        };
+
+        function handleBtn(record: QhjAccountOutInApply) {
+            if (!record) return;
+            const buttons = getTableButton();
+            if (tableStatus.value === inOrOutStatus.wait) {
+                return buttons;
+            } else {
+                return buttons.filter((e) => e.code === 'detail');
+            }
         }
-        initData(() => {
-            // 默认 查询待审核状态列表
-            getTableList();
-            // 注册表头信息 过滤
-            registerColumn('table_pcweb_qhj_withdrawal_review', []);
-        });
 
         return {
+            ...handleComposeTable<QhjAccountOutInApply>(param),
+            loading,
+            handleBtn,
             getTableListStatus,
-            getBtnListAction,
-            getTableList,
             search,
-            columns,
-            updateColumn,
-            expandedRowKeys,
-            selectedRow,
-            Rowclick,
-            loading,
             tableList,
             queryTable,
-            btnClick,
         };
     },
 });