| | |
| | | <ProTableQueryFilterBar @on-reset="reset"> |
| | | <template #query> |
| | | <QueryFilterItem tip-content="预约状态"> |
| | | <FieldSelect v-model="extraParamState.status" :value-enum="[]" @change="getList()" /> |
| | | <FieldSelect |
| | | v-model="extraParamState.appointmentStatus" |
| | | :value-enum="EnumStandardOrderAppointmentStatusText" |
| | | @change="getList()" |
| | | clearable |
| | | /> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem tip-content="订单状态"> |
| | | <FieldSelect v-model="extraParamState.status" :value-enum="[]" @change="getList()" /> |
| | | <FieldSelect |
| | | v-model="extraParamState.payStatus" |
| | | :value-enum="EnumStandardOrderPayStatusText" |
| | | @change="getList()" |
| | | clearable |
| | | /> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem tip-content="下单时间"> |
| | | <FieldDatePicker |
| | | v-model="extraParamState.time" |
| | | v-model="extraParamState.createdTime" |
| | | type="daterange" |
| | | range-separator="~" |
| | | start-placeholder="开始日期" |
| | |
| | | </QueryFilterItem> |
| | | <QueryFilterItem tip-content="支付时间"> |
| | | <FieldDatePicker |
| | | v-model="extraParamState.time" |
| | | v-model="extraParamState.payTime" |
| | | type="daterange" |
| | | range-separator="~" |
| | | start-placeholder="开始日期" |
| | |
| | | <script setup lang="ts"> |
| | | import { |
| | | ProTableQueryFilterBar, |
| | | OperationBtnType, |
| | | ProTableV2, |
| | | SearchInput, |
| | | LoadingLayout, |
| | |
| | | FieldDatePicker, |
| | | FieldSelect, |
| | | } from '@bole-core/components'; |
| | | import { EnumTaskStatusText, EnumTaskReleaseStatusText } from '@/constants'; |
| | | import { useGlobalEventContext } from '@/hooks'; |
| | | import * as taskServices from '@/services/api/task'; |
| | | import { format, OrderUtils } from '@/utils'; |
| | | import { useAccess } from '@/hooks'; |
| | | import { ModelValueType } from 'element-plus'; |
| | | import { Message } from '@bole-core/core'; |
| | | import dayjs from 'dayjs'; |
| | | 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.GetTaskInfosQueryResultItem) => goDetail(row), |
| | | }, |
| | | }, |
| | | detailBtn: { emits: { onClick: (row: API.GetStandardOrdersQueryResultItem) => goDetail(row) } }, |
| | | confirmBtn: { |
| | | emits: { |
| | | onClick: (row: API.GetTaskInfosQueryResultItem) => goDetail(row), |
| | | emits: { onClick: (row: API.GetStandardOrdersQueryResultItem) => goDetail(row) }, |
| | | extraProps: { |
| | | hide: (row: API.GetStandardOrdersQueryResultItem) => |
| | | row.appointmentStatus !== EnumStandardOrderAppointmentStatus.WaitSure, |
| | | }, |
| | | }, |
| | | }; |
| | |
| | | operationBtnMap, |
| | | }); |
| | | |
| | | const router = useRouter(); |
| | | const eventContext = useGlobalEventContext(); |
| | | |
| | | eventContext.addEvent('standardOrder:confirm', () => { |
| | | getList(paginationState.pageIndex); |
| | | }); |
| | | |
| | | const router = useRouter(); |
| | | const BaseState = { |
| | | loading: true, |
| | | }; |
| | |
| | | } = useTable( |
| | | async ({ pageIndex, pageSize }, extraParamState) => { |
| | | try { |
| | | let params: API.GetTaskInfosQuery = { |
| | | let params: API.GetStandardOrdersQuery = { |
| | | pageModel: { |
| | | rows: pageSize, |
| | | page: pageIndex, |
| | | orderInput: extraParamState.orderInput, |
| | | }, |
| | | keywords: extraParamState.keywords, |
| | | status: extraParamState.status, |
| | | releaseStatus: extraParamState.releaseStatus, |
| | | beginTime: format(extraParamState.time?.[0] ?? '', 'YYYY-MM-DD 00:00:00'), |
| | | endTime: format(extraParamState.time?.[1] ?? '', 'YYYY-MM-DD 23:59:59'), |
| | | 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 taskServices.getTaskInfos(params, { |
| | | let res = await standardOrderServices.getStandardOrders(params, { |
| | | showLoading: !state.loading, |
| | | }); |
| | | return res; |
| | | } catch (error) { |
| | | console.log('error: ', error); |
| | | } |
| | | } catch (error) {} |
| | | }, |
| | | { |
| | | defaultExtraParams: { |
| | | keywords: '', |
| | | status: '' as any as EnumTaskStatus, |
| | | releaseStatus: '' as any as EnumTaskReleaseStatus, |
| | | time: [] as unknown as ModelValueType, |
| | | 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 }], |
| | | }, |
| | | queryKey: ['taskServices/getTaskInfos'], |
| | | columnsRenderProps: { |
| | | endTime: { type: 'date', format: 'YYYY-MM-DD' }, |
| | | 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 }, |
| | | }, |
| | | } |
| | | ); |
| | | |
| | | function goDetail(row: API.GetTaskInfosQueryResultItem) { |
| | | router.push({ |
| | | name: 'StandardOrderDetail', |
| | | params: { |
| | | id: row?.id ?? '', |
| | | }, |
| | | }); |
| | | function goDetail(row?: API.GetStandardOrdersQueryResultItem) { |
| | | router.push({ name: 'StandardOrderDetail', params: { id: row?.id ?? '' } }); |
| | | } |
| | | </script> |