wupengfei
2025-09-17 3cd644701e6055454fcfad545f2b6c218d3b0d37
feat: 接口对接
1个文件已添加
3个文件已修改
121 ■■■■■ 已修改文件
src/views/FinanceManage/components/DistributionDetailView.vue 39 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/UsageDetailView.vue 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/constants/columns.ts 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/hooks/financeHooks.ts 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/FinanceManage/components/DistributionDetailView.vue
@@ -21,6 +21,7 @@
} from '@bole-core/components';
import { DistributionDetailColumns } from '../constants';
import * as taskServices from '@/services/api/task';
import { usePersonalUserTransactions } from '../hooks/financeHooks';
defineOptions({
  name: 'DistributionDetailView',
@@ -34,42 +35,12 @@
const state = reactive({ ...BaseState });
const { getList, proTableProps } = usePersonalUserTransactions({
  type: EnumUserWalletTransactionType.Withdraw,
});
onMounted(async () => {
  await getList();
  state.loading = false;
});
const {
  getDataSource: getList,
  proTableProps,
  paginationState,
  extraParamState,
  reset,
} = useTable(
  async ({ pageIndex, pageSize }, extraParamState) => {
    try {
      let params: API.GetOpenTaskInfosQuery = {
        pageModel: {
          rows: pageSize,
          page: pageIndex,
          orderInput: extraParamState.orderInput,
        },
      };
      let res = await taskServices.getOpenTaskInfos(params, {
        showLoading: !state.loading,
      });
      return res;
    } catch (error) {
      console.log('error: ', error);
    }
  },
  {
    defaultExtraParams: {
      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
    },
    queryKey: ['taskServices/getOpenTaskInfos'],
    columnsRenderProps: {},
  }
);
</script>
src/views/FinanceManage/components/UsageDetailView.vue
@@ -11,6 +11,7 @@
import { ProTableV2, LoadingLayout, AppContainer, useTable } from '@bole-core/components';
import { UsageDetailColumns } from '../constants';
import * as taskServices from '@/services/api/task';
import { usePersonalUserTransactions } from '../hooks/financeHooks';
defineOptions({
  name: 'UsageDetailView',
@@ -21,43 +22,12 @@
};
const state = reactive({ ...BaseState });
const { getList, proTableProps } = usePersonalUserTransactions({
  type: EnumUserWalletTransactionType.Income,
});
onMounted(async () => {
  await getList();
  state.loading = false;
});
const {
  getDataSource: getList,
  proTableProps,
  paginationState,
  extraParamState,
  reset,
} = useTable(
  async ({ pageIndex, pageSize }, extraParamState) => {
    try {
      let params: API.GetOpenTaskInfosQuery = {
        pageModel: {
          rows: pageSize,
          page: pageIndex,
          orderInput: extraParamState.orderInput,
        },
      };
      let res = await taskServices.getOpenTaskInfos(params, {
        showLoading: !state.loading,
      });
      return res;
    } catch (error) {
      console.log('error: ', error);
    }
  },
  {
    defaultExtraParams: {
      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
    },
    queryKey: ['taskServices/getOpenTaskInfos'],
    columnsRenderProps: {},
  }
);
</script>
src/views/FinanceManage/constants/columns.ts
@@ -46,7 +46,7 @@
export const UsageDetailColumns = defineColumns([
  {
    id: '1',
    enCode: 'name',
    enCode: 'transDate',
    name: '使用时间',
  },
  {
src/views/FinanceManage/hooks/financeHooks.ts
New file
@@ -0,0 +1,42 @@
import { useQuery, useQueryClient } from '@tanstack/vue-query';
import * as userServices from '@/services/api/user';
import { useTable } from '@bole-core/components';
type UsePersonalUserTransactionsOptions = {
  type?: EnumUserWalletTransactionType;
};
export function usePersonalUserTransactions(options: UsePersonalUserTransactionsOptions = {}) {
  const { type } = options;
  const {
    getDataSource: getList,
    proTableProps,
    paginationState,
    extraParamState,
    reset,
  } = useTable(
    async ({ pageIndex, pageSize }, extraParamState) => {
      try {
        let params: API.GetPersonalUserTransactionsQuery = {
          pageModel: {
            rows: pageSize,
            page: pageIndex,
            orderInput: extraParamState.orderInput,
          },
          type: type,
        };
        let res = await userServices.getPersonalUserTransactions(params);
        return res;
      } catch (error) {}
    },
    {
      defaultExtraParams: {
        orderInput: [{ property: 'id', order: EnumPagedListOrder.Asc }],
      },
      columnsRenderProps: {},
    }
  );
  return { getList, proTableProps, extraParamState };
}