zhengyiming
2 天以前 0eaa958fd967bddf06736be3a759c9230624709f
src/hooks/enterprise.ts
@@ -1,17 +1,21 @@
import { useTableV2 } from '@bole-core/components';
import { useTableV2, useTable } from '@bole-core/components';
import * as enterpriseServices from '@/services/api/enterprise';
import { ModelValueType } from 'element-plus';
import { format } from '@/utils';
type UseGetEnterprisesOptions = {};
type UseGetEnterprisesOptions = {
  type?: MaybeRef<EnumEnterpriseType>;
};
export function useGetEnterprises() {
export function useGetEnterprises(options: UseGetEnterprisesOptions) {
  const { type } = options;
  const {
    getDataSource: getList,
    proTableProps,
    paginationState,
    extraParamState,
    reset,
    isInitialLoading,
  } = useTableV2(
  } = useTable(
    async ({ pageIndex, pageSize, isInitialLoading }, extraParamState) => {
      try {
        let params: API.GetEnterprisesQuery = {
@@ -22,6 +26,9 @@
          },
          isConfigured: extraParamState.isConfigured,
          keywords: extraParamState.keywords,
          createdTimeBegin: format(extraParamState.createdTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'),
          createdTimeEnd: format(extraParamState.createdTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'),
          type: unref(type),
        };
        let res = await enterpriseServices.getEnterprises(params, {
@@ -35,14 +42,19 @@
    {
      defaultExtraParams: {
        keywords: '',
        createdTime: [] as unknown as ModelValueType,
        orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
        isConfigured: '' as any as boolean,
      },
      queryKey: ['enterpriseServices/getEnterprises'],
      queryKey: ['enterpriseServices/getEnterprises', type],
      columnsRenderProps: {
        isReal: { type: 'enum', valueEnum: IsRealText },
        isReal: {
          type: 'enum',
          valueEnum: unref(type) === EnumEnterpriseType.PartyA ? IsRealTextForPartA : IsRealText,
        },
        isConfigured: { type: 'enum', valueEnum: IsConfiguredText },
        type: { type: 'enum', valueEnum: EnumEnterpriseTypeText },
        createdTime: { type: 'date', format: 'YYYY-MM-DD hh:mm:ss' },
        serviceFeeRate: {
          formatter: (row: API.GetEnterprisesQueryResultItem) =>
            row.serviceFeeRate ? `${row.serviceFeeRate}%` : '',
@@ -57,6 +69,5 @@
    paginationState,
    extraParamState,
    reset,
    isInitialLoading,
  };
}