修复资金申请渠道筛选失效并为时间筛选增加快捷选项

This commit is contained in:
yml2213
2026-08-22 12:08:11 +08:00
parent cee759b90e
commit 476ab166d7
2 changed files with 28 additions and 2 deletions
@@ -1,6 +1,7 @@
import { DatePicker } from 'antd'
import type { DatePickerProps } from 'antd'
import type { RangePickerProps } from 'antd/es/date-picker'
import dayjs from 'dayjs'
import {
ADMIN_DATE_FORMAT,
@@ -13,6 +14,19 @@ type AdminDatePickerProps = DatePickerProps
type AdminRangePickerProps = RangePickerProps
/** 后台日期范围快捷选项:今天 / 昨天 / 近7天 / 近30天 / 本月。 */
function buildAdminDateRangePresets(): NonNullable<RangePickerProps['presets']> {
const today = dayjs()
const yesterday = today.subtract(1, 'day')
return [
{ label: '今天', value: [today.startOf('day'), today.endOf('day')] },
{ label: '昨天', value: [yesterday.startOf('day'), yesterday.endOf('day')] },
{ label: '近7天', value: [today.subtract(6, 'day').startOf('day'), today.endOf('day')] },
{ label: '近30天', value: [today.subtract(29, 'day').startOf('day'), today.endOf('day')] },
{ label: '本月', value: [today.startOf('month'), today.endOf('month')] },
]
}
/**
* 后台统一日期选择:中文 locale(依赖全局 dayjs zh-cn + ConfigProvider zh_CN)。
*/
@@ -28,15 +42,26 @@ export function AdminDatePicker({
/**
* 后台统一日期范围:默认 YYYY-MM-DDshowTime 时 YYYY-MM-DD HH:mm:ss。
* 默认附带 今天/昨天/近7天/近30天/本月 快捷选项,传 presets={[]} 可关闭。
*/
export function AdminRangePicker({ format, placeholder, ...rest }: AdminRangePickerProps) {
export function AdminRangePicker({
format,
placeholder,
presets = buildAdminDateRangePresets(),
...rest
}: AdminRangePickerProps) {
const withTime = Boolean(rest.showTime)
const resolvedFormat = format ?? (withTime ? ADMIN_DATE_TIME_FORMAT : ADMIN_DATE_FORMAT)
const resolvedPlaceholder =
placeholder ?? (withTime ? ADMIN_DATE_TIME_RANGE_PLACEHOLDER : ADMIN_DATE_RANGE_PLACEHOLDER)
return (
<DatePicker.RangePicker format={resolvedFormat} placeholder={resolvedPlaceholder} {...rest} />
<DatePicker.RangePicker
format={resolvedFormat}
placeholder={resolvedPlaceholder}
presets={presets}
{...rest}
/>
)
}
@@ -125,6 +125,7 @@ export default function FinancePanel() {
keyword,
page,
pageSize,
accountChannel,
...(createdRange ? { createdFrom: createdRange[0], createdTo: createdRange[1] } : {}),
}),
})