wupengfei
2025-11-12 10089efc8a1417e20f741259d839883abf30d1c2
feat: 1.3.0.2
4个文件已删除
11个文件已修改
2 文件已重命名
933 ■■■■ 已修改文件
src/router/index.ts 175 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/AgreementManage/AgreementManageList.vue 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/AgreementManage/constants/columns.ts 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/AgreementManage/constants/index.ts 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/CustomerRechargeManage.vue 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/CustomerRechargeRecord.vue 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/EnterpriseBalanceManageDetail.vue 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/FinanceManageList.vue 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/CustomerBalanceManageView.vue 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/DistributionDetailView.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/EnterpriseBalanceManageView.vue 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/constants/columns.ts 230 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/ServiceChargeManage/BalanceManage.vue 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/ServiceChargeManage/ServiceChargeDetail.vue 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/ServiceChargeManage/ServiceChargeManageList.vue 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/ServiceChargeManage/constants/columns.ts 190 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/ServiceChargeManage/constants/index.ts 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.ts
@@ -95,88 +95,6 @@
      rootMenu: true,
    },
  },
  {
    path: '/ServiceChargeManage',
    redirect: 'noRedirect',
    component: Layout,
    hidden: false,
    alwaysShow: true,
    meta: {
      rank: 10040,
      title: '服务费管理',
      rootMenu: true,
      icon: 'home',
    },
    children: [
      {
        path: '/ServiceChargeManageList',
        name: 'ServiceChargeManageList',
        hidden: false,
        alwaysShow: true,
        component: () => import('@/views/ServiceChargeManage/ServiceChargeManage.vue'),
        meta: {
          rank: 10041,
          title: '服务费管理',
          // rootMenu: true,
          icon: 'home',
        },
      },
      {
        path: '/BalanceManage',
        name: 'BalanceManage',
        hidden: false,
        alwaysShow: true,
        component: () => import('@/views/ServiceChargeManage/BalanceManage.vue'),
        meta: {
          rank: 10042,
          title: '余额管理',
          // rootMenu: true,
          icon: 'home',
        },
      },
      {
        path: '/ServiceChargeDetail/:id',
        name: 'ServiceChargeDetail',
        hidden: true,
        alwaysShow: false,
        component: () => import('@/views/ServiceChargeManage/ServiceChargeDetail.vue'),
        meta: {
          rank: 10043,
          title: '详情',
          // rootMenu: true,
          icon: 'home',
        },
      },
    ],
  },
  {
    path: '/AgreementManage',
    redirect: 'noRedirect',
    component: Layout,
    hidden: false,
    alwaysShow: true,
    meta: {
      rank: 10050,
      title: '协议管理',
      rootMenu: true,
      icon: 'home',
    },
    children: [
      {
        path: '/AgreementManageList',
        name: 'AgreementManageList',
        hidden: false,
        alwaysShow: true,
        component: () => import('@/views/AgreementManage/AgreementManageList.vue'),
        meta: {
          rank: 10051,
          title: '协议管理',
          // rootMenu: true,
          icon: 'home',
        },
      },
    ],
  },
  // {
  //   path: '/WithdrawManage',
  //   redirect: 'noRedirect',
@@ -205,99 +123,6 @@
  //     },
  //   ],
  // },
  {
    path: '/FinanceManage',
    redirect: 'noRedirect',
    component: Layout,
    hidden: false,
    alwaysShow: true,
    meta: {
      rank: 10070,
      title: '财务管理',
      rootMenu: true,
      icon: 'home',
    },
    children: [
      {
        path: '/FinanceManageList',
        name: 'FinanceManageList',
        hidden: false,
        alwaysShow: true,
        component: () => import('@/views/FinanceManage/FinanceManage.vue'),
        meta: {
          rank: 10071,
          title: '发放明细',
          // rootMenu: true,
          icon: 'home',
        },
      },
      {
        path: '/EnterpriseBalanceManage',
        name: 'EnterpriseBalanceManage',
        hidden: false,
        alwaysShow: true,
        component: () => import('@/views/FinanceManage/EnterpriseBalanceManage.vue'),
        meta: {
          rank: 10072,
          title: '企业余额管理',
          // rootMenu: true,
          icon: 'home',
        },
      },
      {
        path: '/EnterpriseBalanceManageDetail/:id',
        name: 'EnterpriseBalanceManageDetail',
        hidden: true,
        alwaysShow: false,
        component: () => import('@/views/FinanceManage/EnterpriseBalanceManageDetail.vue'),
        meta: {
          rank: 10073,
          title: '详情',
          // rootMenu: true,
          icon: 'home',
        },
      },
      {
        path: '/CustomerRechargeRecord/:id',
        name: 'CustomerRechargeRecord',
        hidden: true,
        alwaysShow: false,
        component: () => import('@/views/FinanceManage/CustomerRechargeRecord.vue'),
        meta: {
          rank: 10074,
          title: '充值记录',
          // rootMenu: true,
          icon: 'home',
        },
      },
      {
        path: '/AccountManage',
        name: 'AccountManage',
        hidden: false,
        alwaysShow: true,
        component: () => import('@/views/FinanceManage/AccountManage.vue'),
        meta: {
          rank: 10075,
          title: '账户管理',
          // rootMenu: true,
          icon: 'home',
        },
      },
      {
        path: '/CustomerRechargeManage',
        name: 'CustomerRechargeManage',
        hidden: false,
        alwaysShow: true,
        component: () => import('@/views/FinanceManage/CustomerRechargeManage.vue'),
        meta: {
          rank: 10074,
          title: '客户充值管理',
          // rootMenu: true,
          icon: 'home',
        },
      },
    ],
  },
  {
    path: '/Login',
src/views/AgreementManage/AgreementManageList.vue
@@ -36,14 +36,15 @@
          </QueryFilterItem>
        </template>
        <template #btn>
          <el-button type="primary" @click="handleAdd()">新增模板</el-button>
          <el-button
            v-if="checkSubModuleItemShow('pageButton', 'addBtn')"
            type="primary"
            @click="handleAdd()"
            >新增模板</el-button
          >
        </template>
      </ProTableQueryFilterBar>
      <ProTableV2
        v-bind="proTableProps"
        :columns="AgreementbManageColumns"
        :operationBtns="operationBtns"
      >
      <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
        <template #code="{ row }">
          <el-button
            v-if="row.status === EnumContractTemplateStatus.Completed && !!row.wxmpQrCode"
@@ -72,12 +73,10 @@
  useTable,
  FieldDatePicker,
  FieldRadio,
  defineOperationBtns,
  UploadUserFile,
  useFormDialog,
  bolePreview,
} from '@bole-core/components';
import { AgreementbManageColumns } from './constants';
import { EnumContractTemplateStatus, EnumContractTemplateStatusText } from '@/constants';
import { convertPdfToImage, downloadFileByUrl, format, setOSSLink } from '@/utils';
import { ModelValueType } from 'element-plus';
@@ -90,12 +89,8 @@
  name: 'AgreementManageList',
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'checkBtn',
      name: '查看',
    },
const operationBtnMap: Record<string, OperationBtnType> = {
  checkBtn: {
    emits: {
      onClick: (role) => handleCheck(role),
    },
@@ -103,11 +98,7 @@
      hide: (row) => row.status !== EnumContractTemplateStatus.Completed,
    },
  },
  {
    data: {
      enCode: 'downloadBtn',
      name: '下载',
    },
  downloadBtn: {
    emits: {
      onClick: (role) => handleDownload(role),
    },
@@ -115,11 +106,7 @@
      hide: (row) => row.status !== EnumContractTemplateStatus.Completed,
    },
  },
  {
    data: {
      enCode: 'deleteBtn',
      name: '删除',
    },
  deleteBtn: {
    emits: {
      onClick: (role) => handleDelete(role),
    },
@@ -128,7 +115,11 @@
      hide: (row) => row.status !== EnumContractTemplateStatus.Completed,
    },
  },
]);
};
const { column, operationBtns, checkSubModuleItemShow } = useAccess({
  operationBtnMap,
});
const router = useRouter();
src/views/AgreementManage/constants/columns.ts
File was deleted
src/views/AgreementManage/constants/index.ts
File was deleted
src/views/FinanceManage/CustomerRechargeManage.vue
@@ -14,11 +14,7 @@
          </QueryFilterItem>
        </template>
      </ProTableQueryFilterBar>
      <ProTableV2
        v-bind="proTableProps"
        :columns="CustomerRechargeManageColumns"
        :operationBtns="operationBtns"
      >
      <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
      </ProTableV2>
    </AppContainer>
    <CustomerRechargeDialog v-bind="dialogProps" />
@@ -39,19 +35,14 @@
} from '@bole-core/components';
import * as enterpriseCooperationWalletServices from '@/services/api/enterpriseCooperationWallet';
import CustomerRechargeDialog from './components/CustomerRechargeDialog.vue';
import { CustomerRechargeManageColumns } from './constants';
import { Message } from '@bole-core/core';
defineOptions({
  name: 'CustomerRechargeManage',
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'confirmBtn',
      name: '确认',
    },
const operationBtnMap: Record<string, OperationBtnType> = {
  confirmBtn: {
    emits: {
      onClick: (role) => openDialog(role, false),
    },
@@ -60,11 +51,7 @@
        role.transactionStatus !== EnumEnterpriseCooperationWalletTransactionStatus.WaitSure,
    },
  },
  {
    data: {
      enCode: 'detailBtn',
      name: '详情',
    },
  detailBtn: {
    emits: {
      onClick: (role) => openDialog(role, true),
    },
@@ -73,7 +60,10 @@
        role.transactionStatus === EnumEnterpriseCooperationWalletTransactionStatus.WaitSure,
    },
  },
]);
};
const { column, operationBtns, checkSubModuleItemShow } = useAccess({
  operationBtnMap,
});
const router = useRouter();
const BaseState = {
src/views/FinanceManage/CustomerRechargeRecord.vue
@@ -1,11 +1,7 @@
<template>
  <LoadingLayout :loading="state.loading">
    <AppContainer>
      <ProTableV2
        v-bind="proTableProps"
        :columns="CustomerRechargeRecordColumns"
        :operationBtns="operationBtns"
      >
      <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
      </ProTableV2>
    </AppContainer>
    <RechargeRecordialog v-bind="dialogProps" />
@@ -23,7 +19,6 @@
  UploadUserFile,
} from '@bole-core/components';
import * as enterpriseCooperationWalletServices from '@/services/api/enterpriseCooperationWallet';
import { CustomerRechargeRecordColumns } from './constants';
import RechargeRecordialog from './components/RechargeRecordialog.vue';
import { EnumEnterpriseCooperationWalletTransactionStatusText } from '@/constants';
@@ -34,18 +29,17 @@
const route = useRoute();
const id = route.params.id as string;
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'detailBtn',
      name: '详情',
    },
const operationBtnMap: Record<string, OperationBtnType> = {
  detailBtn: {
    emits: {
      onClick: (role: API.GetCooperationWalletRechargeTransactionsQueryResultItem) =>
        openDialog(role),
    },
  },
]);
};
const { column, operationBtns, checkSubModuleItemShow } = useAccess({
  operationBtnMap,
});
const router = useRouter();
const BaseState = {
src/views/FinanceManage/EnterpriseBalanceManageDetail.vue
@@ -41,15 +41,23 @@
            </QueryFilterItem>
          </template>
          <template #btn>
            <el-button type="primary" @click="exportPersonalUserTransactionEreceipts()"
            <el-button
              v-if="checkSubModuleItemShow('pageButton', 'receiptExportBtn')"
              type="primary"
              @click="exportPersonalUserTransactionEreceipts()"
              >回单导出</el-button
            >
            <el-button type="primary" @click="handleExport()">导出</el-button>
            <el-button
              v-if="checkSubModuleItemShow('pageButton', 'exportBtn')"
              type="primary"
              @click="handleExport()"
              >导出</el-button
            >
          </template>
        </ProTableQueryFilterBar>
        <ProTableV2
          v-bind="proTableProps"
          :columns="BalanceManageDetailColumns"
          :columns="column"
          :show-operation-column="false"
          :auto-height="false"
          :table-props="{
@@ -79,7 +87,6 @@
  ProTableQueryFilterBar,
  ProFormSelect,
} from '@bole-core/components';
import { BalanceManageDetailColumns } from './constants';
import { EnumWalletTransactionStatusText, EnumEnterpriseWalletAccessText } from '@/constants';
import * as enterpriseWalletServices from '@/services/api/enterpriseWallet';
import * as userServices from '@/services/api/user';
@@ -92,6 +99,11 @@
  name: 'EnterpriseBalanceManageDetail',
});
const operationBtnMap: Record<string, OperationBtnType> = {};
const { column, operationBtns, checkSubModuleItemShow } = useAccess({
  operationBtnMap,
});
const route = useRoute();
const id = (route.params.id as string) ?? '';
src/views/FinanceManage/FinanceManageList.vue
src/views/FinanceManage/components/CustomerBalanceManageView.vue
@@ -3,8 +3,8 @@
    <AppContainer>
      <ProTableV2
        v-bind="proTableProps"
        :columns="CustomerBalanceManageColumns"
        :operationBtns="operationBtns"
        :columns="customerColumns"
        :operationBtns="customerOperationBtns"
      >
      </ProTableV2>
    </AppContainer>
@@ -20,23 +20,25 @@
  defineOperationBtns,
} from '@bole-core/components';
import * as enterpriseCooperationWalletServices from '@/services/api/enterpriseCooperationWallet';
import { CustomerBalanceManageColumns } from '../constants';
defineOptions({
  name: 'CustomerBalanceManageView',
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'recordBtn',
      name: '充值记录',
    },
const operationBtnMap: Record<string, OperationBtnType> = {
  'customer-recordBtn': {
    emits: {
      onClick: (role: API.GetCooperationWalletsQueryResultItem) => goDetail(role),
    },
  },
]);
};
const { checkSubModuleItemShow, column, operationBtns } = useAccess({
  operationBtnMap,
});
const [customerColumns] = useGroupColumns(column, ['customer-']);
const [customerOperationBtns] = useGroupOperationBtns(operationBtns, ['customer-']);
const router = useRouter();
const BaseState = {
src/views/FinanceManage/components/DistributionDetailView.vue
@@ -1,11 +1,7 @@
<template>
  <LoadingLayout :loading="state.loading">
    <AppContainer>
      <ProTableV2
        v-bind="proTableProps"
        :columns="DistributionDetailColumns"
        :showOperationColumn="false"
      >
      <ProTableV2 v-bind="proTableProps" :columns="column" :showOperationColumn="false">
        <template #settlementStatus="{ row }">
          {{
            row.settlementStatus !== EnumTaskSettlementStatus.InProcess &&
@@ -20,14 +16,7 @@
</template>
<script setup lang="ts">
import {
  ProTableV2,
  LoadingLayout,
  AppContainer,
  useTable,
  defineOperationBtns,
} from '@bole-core/components';
import { DistributionDetailColumns } from '../constants';
import { ProTableV2, LoadingLayout, AppContainer, useTable } from '@bole-core/components';
import * as userServices from '@/services/api/user';
import {
  EnumTaskSettlementStatusText,
@@ -39,7 +28,11 @@
  name: 'DistributionDetailView',
});
const operationBtns = defineOperationBtns([]);
const operationBtnMap: Record<string, OperationBtnType> = {};
const { column, operationBtns, checkSubModuleItemShow } = useAccess({
  operationBtnMap,
});
const BaseState = {
  loading: true,
src/views/FinanceManage/components/EnterpriseBalanceManageView.vue
@@ -3,8 +3,8 @@
    <AppContainer>
      <ProTableV2
        v-bind="proTableProps"
        :columns="BalanceManageColumns"
        :operationBtns="operationBtns"
        :columns="enterpriseColumns"
        :operationBtns="enterpriseOperationBtns"
      >
      </ProTableV2>
    </AppContainer>
@@ -19,12 +19,8 @@
  AppContainer,
  useTable,
  useFormDialog,
  defineOperationBtns,
  ProTabs,
  ProTabPane,
} from '@bole-core/components';
import * as enterpriseWalletServices from '@/services/api/enterpriseWallet';
import { BalanceManageColumns } from '../constants';
import RechargeEnterpriseWalletDialog from '@/views/ServiceChargeManage/components/RechargeEnterpriseWalletDialog.vue';
import { EnumEnterpriseWalletAccess, EnumEnterpriseWalletAccessText } from '@/constants';
@@ -32,12 +28,8 @@
  name: 'EnterpriseBalanceManageView',
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'rechargeBtn',
      name: '充值',
    },
const operationBtnMap: Record<string, OperationBtnType> = {
  'enterprise-rechargeBtn': {
    emits: {
      onClick: (role) => openDialog(role),
    },
@@ -46,16 +38,19 @@
        role.access !== EnumEnterpriseWalletAccess.Alipay,
    },
  },
  {
    data: {
      enCode: 'detailBtn',
      name: '详情',
    },
  'enterprise-detailBtn': {
    emits: {
      onClick: (role) => goDetail(role),
    },
  },
]);
};
const { checkSubModuleItemShow, column, operationBtns } = useAccess({
  operationBtnMap,
});
const [enterpriseColumns] = useGroupColumns(column, ['enterprise-']);
const [enterpriseOperationBtns] = useGroupOperationBtns(operationBtns, ['enterprise-']);
const router = useRouter();
const BaseState = {
src/views/FinanceManage/constants/columns.ts
@@ -1,78 +1,5 @@
import { defineColumns } from '@bole-core/components';
export const DistributionDetailColumns = defineColumns([
  {
    id: '1',
    enCode: 'enterpriseName',
    name: '客户名称',
  },
  {
    id: '2',
    enCode: 'taskName',
    name: '所属任务',
  },
  {
    id: '3',
    enCode: 'taskCode',
    name: '任务单号',
  },
  {
    id: '4',
    enCode: 'settlementCode',
    name: '结算单号',
  },
  {
    id: '5',
    enCode: 'receiveName',
    name: '姓名',
  },
  {
    id: '6',
    enCode: 'settlementAccess',
    name: '结算方式',
  },
  {
    id: '7',
    enCode: 'receiveAccount',
    name: '结算账户',
  },
  {
    id: '8',
    enCode: 'amount',
    name: '结算金额',
  },
  {
    id: '9',
    enCode: 'settlementStatus',
    name: '结算单确认状态',
  },
  {
    id: '10',
    enCode: 'settlementTime',
    name: '确认日期',
  },
  {
    id: '11',
    enCode: 'settlementAuditStatus',
    name: '结算单提交状态',
  },
  {
    id: '12',
    enCode: 'settlementAuditTime',
    name: '提交时间',
  },
  {
    id: '13',
    enCode: 'settlementReceiveStatus',
    name: '到账状态',
  },
  {
    id: '14',
    enCode: 'transDate',
    name: '到账时间',
  },
]);
export const UsageDetailColumns = defineColumns([
  {
    id: '1',
@@ -93,162 +20,5 @@
    id: '4',
    enCode: 'name',
    name: '费用(元)',
  },
]);
export const BalanceManageColumns = defineColumns([
  {
    id: '1',
    enCode: 'access',
    name: '账户类型',
  },
  {
    id: '2',
    enCode: 'identity',
    name: '户号',
  },
  {
    id: '3',
    enCode: 'balance',
    name: '账户余额',
  },
  {
    id: '4',
    enCode: 'availableBalance',
    name: '可用余额',
  },
  {
    id: '5',
    enCode: 'freezeBalance',
    name: '已冻结',
  },
]);
export const CustomerBalanceManageColumns = defineColumns([
  {
    id: '1',
    enCode: 'partyAEnterpriseName',
    name: '客户名称',
  },
  {
    id: '2',
    enCode: 'partyAEnterpriseSocietyCreditCode',
    name: '信用代码',
  },
  {
    id: '3',
    enCode: 'balance',
    name: '账户余额',
  },
]);
export const BalanceManageDetailColumns = defineColumns([
  {
    id: '1',
    enCode: 'sendTime',
    name: '发放日期',
  },
  {
    id: '2',
    enCode: 'code',
    name: '流水号',
  },
  {
    id: '3',
    enCode: 'transactionStatus',
    name: '状态',
    width: 120,
  },
  {
    id: '4',
    enCode: 'amount',
    name: '金额',
    width: 120,
  },
  {
    id: '5',
    enCode: 'receiveName',
    name: '收款人',
  },
  {
    id: '6',
    enCode: 'receiveIdentity',
    name: '身份证号',
  },
  {
    id: '7',
    enCode: 'receiveAccount',
    name: '收款人账户',
  },
  {
    id: '8',
    enCode: 'transDate',
    name: '提现日期',
  },
  {
    id: '9',
    enCode: 'ereceiptDownloadOssUrl',
    name: '电子回单',
  },
]);
export const CustomerRechargeManageColumns = defineColumns([
  {
    id: '1',
    enCode: 'partyAEnterpriseName',
    name: '客户名称',
  },
  {
    id: '2',
    enCode: 'partyAEnterpriseSocietyCreditCode',
    name: '信用代码',
  },
  {
    id: '3',
    enCode: 'amount',
    name: '充值金额',
  },
  {
    id: '4',
    enCode: 'transactionStatus',
    name: '充值状态',
  },
]);
export const CustomerRechargeRecordColumns = defineColumns([
  {
    id: '1',
    enCode: 'partyAEnterpriseName',
    name: '客户名称',
  },
  {
    id: '2',
    enCode: 'receiveBank',
    name: '开户总行',
  },
  {
    id: '3',
    enCode: 'receiveBankBranch',
    name: '开户支行',
  },
  {
    id: '4',
    enCode: 'receiveAccount',
    name: '户号',
  },
  {
    id: '5',
    enCode: 'amount',
    name: '充值金额',
  },
  {
    id: '6',
    enCode: 'createdTime',
    name: '充值时间',
  },
  {
    id: '7',
    enCode: 'transactionStatus',
    name: '充值状态',
  },
]);
src/views/ServiceChargeManage/BalanceManage.vue
@@ -30,11 +30,7 @@
          </QueryFilterItem>
        </template>
      </ProTableQueryFilterBar>
      <ProTableV2
        v-bind="proTableProps"
        :columns="BalanceManageColumns"
        :operationBtns="operationBtns"
      >
      <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
      </ProTableV2>
    </AppContainer>
    <BalanceDetailDialog v-bind="dialogProps" />
@@ -55,23 +51,21 @@
} from '@bole-core/components';
import * as userServices from '@/services/api/user';
import BalanceDetailDialog from './components/BalanceDetailDialog.vue';
import { BalanceManageColumns } from './constants';
defineOptions({
  name: 'WithdrawManageList',
});
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'detailBtn',
      name: '明细',
    },
const operationBtnMap: Record<string, OperationBtnType> = {
  detailBtn: {
    emits: {
      onClick: (role) => openDialog(role),
    },
  },
]);
};
const { column, operationBtns, checkSubModuleItemShow } = useAccess({
  operationBtnMap,
});
const router = useRouter();
const BaseState = {
src/views/ServiceChargeManage/ServiceChargeDetail.vue
@@ -74,12 +74,18 @@
            >
              <el-button text type="primary" class="pro-table-operation-btn">导入</el-button>
            </BlFileUpload> -->
            <el-button type="primary" link @click="handleExport()">导出</el-button>
            <el-button
              v-if="checkSubModuleItemShow('pageButton', 'exportBtn')"
              type="primary"
              link
              @click="handleExport()"
              >导出</el-button
            >
          </template>
        </ProTableQueryFilterBar>
        <ProTableV2
          v-bind="proTableProps"
          :columns="SettlementListColumns"
          :columns="column"
          :operationBtns="operationBtns"
          :auto-height="false"
          ref="proTable"
@@ -139,7 +145,6 @@
  BlFileUpload,
  UploadUserFile,
} from '@bole-core/components';
import { SettlementListColumns } from './constants';
import { useQuery } from '@tanstack/vue-query';
import * as taskServices from '@/services/api/task';
import * as taskUserServices from '@/services/api/taskUser';
@@ -164,12 +169,9 @@
const { closeViewPush } = useRouteView();
const eventContext = useGlobalEventContext();
const operationBtns = defineOperationBtns([
  {
    data: {
      enCode: 'editBtn',
      name: '编辑',
    },
const operationBtnMap: Record<string, OperationBtnType> = {
  editBtn: {
    emits: {
      onClick: (role) => openDialog(role),
    },
@@ -178,11 +180,7 @@
        row.settlementReceiveStatus !== SettlementReceiveStatus.Refunded,
    },
  },
  {
    data: {
      enCode: 'editBtn',
      name: '重新结算',
    },
  reSettleBtn: {
    emits: {
      onClick: (role) => againSureTaskSettlementOrderRoster(role),
    },
@@ -191,7 +189,11 @@
        row.settlementReceiveStatus !== SettlementReceiveStatus.Refunded,
    },
  },
]);
};
const { column, operationBtns, checkSubModuleItemShow } = useAccess({
  operationBtnMap,
});
const route = useRoute();
const id = (route.params.id as string) ?? '';
const settlement = (route.query.settlement as string) ?? '';
src/views/ServiceChargeManage/ServiceChargeManageList.vue
File was renamed from src/views/ServiceChargeManage/ServiceChargeManage.vue
@@ -47,14 +47,15 @@
        <template #btn>
          <!-- <el-button type="primary" link @click="handleDownloadTemplate()">结算单模板</el-button> -->
          <!-- <el-button type="primary" @click="handleAdd()">上传结算单</el-button> -->
          <el-button type="primary" @click="handleExport()">导出</el-button>
          <el-button
            v-if="checkSubModuleItemShow('pageButton', 'exportBtn')"
            type="primary"
            @click="handleExport()"
            >导出</el-button
          >
        </template>
      </ProTableQueryFilterBar>
      <ProTableV2
        v-bind="proTableProps"
        :columns="ServiceChargeManageColumns"
        :operationBtns="operationBtns"
      >
      <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
        <!-- <template #operationBtn-uploadBtn="{ row }">
          <BlFileUpload
            v-model:file-url="editForm.settlementUrl"
@@ -110,7 +111,6 @@
  UploadUserFile,
  BlFileUpload,
} from '@bole-core/components';
import { ServiceChargeManageColumns } from './constants';
import {
  EnumTaskSettlementStatusText,
  EnumTaskSettlementOrderStatusText,
@@ -135,22 +135,14 @@
  name: 'ServiceChargeManageList',
});
const operationBtns = defineOperationBtns([
  // {
  //   data: {
  //     enCode: 'uploadBtn',
  //     name: '上传',
  //   },
const operationBtnMap: Record<string, OperationBtnType> = {
  // uploadBtn: {
  //   extraProps: {
  //     hide: (row: API.GetSettlementTasksQueryResultItem) =>
  //       row.settlementOrderStatus !== EnumTaskSettlementOrderStatus.Wait,
  //   },
  // },
  // {
  //   data: {
  //     enCode: 'reUploadBtn',
  //     name: '重新上传',
  //   },
  // reUploadBtn: {
  //   extraProps: {
  //     hide: (row: API.GetSettlementTasksQueryResultItem) =>
  //       !(
@@ -159,11 +151,7 @@
  //       ),
  //   },
  // },
  {
    data: {
      enCode: 'settleBtn',
      name: '结算',
    },
  settleBtn: {
    emits: {
      onClick: (role: API.GetSettlementTasksQueryResultItem) => openSettleMethodDialog(role),
    },
@@ -172,11 +160,7 @@
        role.settlementStatus !== EnumTaskSettlementStatus.Wait,
    },
  },
  {
    data: {
      enCode: 'recallBtn',
      name: '撤回',
    },
  recallBtn: {
    emits: {
      onClick: (role) => handleRecall(role),
    },
@@ -185,11 +169,7 @@
        role.settlementStatus !== EnumTaskSettlementStatus.InProcess,
    },
  },
  // {
  //   data: {
  //     enCode: 'settleAuditBtn',
  //     name: '结算审核',
  //   },
  // settleAuditBtn: {
  //   emits: {
  //     onClick: (role: API.GetSettlementTasksQueryResultItem) => goDetail(role.id, 'settlement'),
  //   },
@@ -197,11 +177,7 @@
  //     hide: (role: API.GetSettlementTasksQueryResultItem) => role.auditStatus !== null,
  //   },
  // },
  {
    data: {
      enCode: 'detailBtn',
      name: '详情',
    },
  detailBtn: {
    emits: {
      onClick: (role: API.GetSettlementTasksQueryResultItem) => goDetail(role.id),
    },
@@ -210,11 +186,7 @@
    //     role.settlementOrderStatus === EnumTaskSettlementOrderStatus.Wait,
    // },
  },
  {
    data: {
      enCode: 'exportBtn',
      name: '导出',
    },
  exportBtn: {
    emits: {
      onClick: (role) => handleRowExport(role),
    },
@@ -226,7 +198,11 @@
        ),
    },
  },
]);
};
const { column, operationBtns, checkSubModuleItemShow } = useAccess({
  operationBtnMap,
});
const router = useRouter();
src/views/ServiceChargeManage/constants/columns.ts
File was deleted
src/views/ServiceChargeManage/constants/index.ts
File was deleted