zhengyiming
7 小时以前 21eeb2e067359789759904868438c70b18d4b066
src/views/EmploymentManage/StandardOrder.vue
@@ -67,31 +67,31 @@
  LoadingLayout,
  AppContainer,
  QueryFilterItem,
  useTable,
  FieldDatePicker,
  FieldSelect,
} from '@bole-core/components';
import { useAccess } from '@/hooks';
import { ModelValueType } from 'element-plus';
import * as standardOrderServices from '@/services/api/standardOrder';
import {
  EnumStandardOrderAppointmentStatusText,
  EnumStandardOrderPayStatusText,
  EnumStandardOrderSettlementStatusText,
} from '@/constants';
import { format } from '@/utils';
defineOptions({
  name: 'StandardOrder',
});
const operationBtnMap: Record<string, OperationBtnType> = {
  detailBtn: { emits: { onClick: (row: API.GetStandardOrdersQueryResultItem) => goDetail(row) } },
  detailBtn: {
    emits: { onClick: (row: API.GetStandardOrdersQueryResultItem) => goDetail(row, 'detail') },
  },
  confirmBtn: {
    emits: { onClick: (row: API.GetStandardOrdersQueryResultItem) => goDetail(row) },
    emits: { onClick: (row: API.GetStandardOrdersQueryResultItem) => goDetail(row, 'confirm') },
    extraProps: {
      hide: (row: API.GetStandardOrdersQueryResultItem) =>
        row.appointmentStatus !== EnumStandardOrderAppointmentStatus.WaitSure,
        !(
          row.appointmentStatus === EnumStandardOrderAppointmentStatus.WaitSure &&
          row.payStatus === EnumStandardOrderPayStatus.Completed
        ),
    },
  },
};
@@ -118,59 +118,15 @@
  state.loading = false;
});
const {
  getDataSource: getList,
  proTableProps,
  paginationState,
  extraParamState,
  reset,
} = useTable(
  async ({ pageIndex, pageSize }, extraParamState) => {
    try {
      let params: API.GetStandardOrdersQuery = {
        pageModel: {
          rows: pageSize,
          page: pageIndex,
          orderInput: extraParamState.orderInput,
        },
        keywords: extraParamState.keywords,
        appointmentStatus: extraParamState.appointmentStatus,
        payStatus: extraParamState.payStatus,
        createdTimeBegin: format(extraParamState.createdTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'),
        createdTimeEnd: format(extraParamState.createdTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'),
        payTimeBegin: format(extraParamState.payTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'),
        payTimeEnd: format(extraParamState.payTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'),
      };
      let res = await standardOrderServices.getStandardOrders(params, {
        showLoading: !state.loading,
      });
      return res;
    } catch (error) {}
  },
  {
    defaultExtraParams: {
      keywords: '',
      appointmentStatus: '' as any as EnumStandardOrderAppointmentStatus,
      payStatus: '' as any as EnumStandardOrderPayStatus,
      createdTime: [] as unknown as ModelValueType,
      payTime: [] as unknown as ModelValueType,
      orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
    },
    columnsRenderProps: {
      createdTime: { type: 'date' },
      payCompletedTime: { type: 'date' },
      payAmount: { type: 'money' },
      receiveAmount: { type: 'money' },
      serviceFee: { type: 'money' },
      settlementAmount: { type: 'money' },
      appointmentStatus: { type: 'enum', valueEnum: EnumStandardOrderAppointmentStatusText },
      payStatus: { type: 'enum', valueEnum: EnumStandardOrderPayStatusText },
      settlementStatus: { type: 'enum', valueEnum: EnumStandardOrderSettlementStatusText },
    },
  }
);
const { getList, proTableProps, paginationState, extraParamState, reset } = useGetStandardOrders({
  isSettlement: false,
});
function goDetail(row?: API.GetStandardOrdersQueryResultItem) {
  router.push({ name: 'StandardOrderDetail', params: { id: row?.id ?? '' } });
function goDetail(row: API.GetStandardOrdersQueryResultItem, type: string) {
  router.push({
    name: 'StandardOrderDetail',
    params: { id: row?.id ?? '' },
    query: { type: type },
  });
}
</script>