补齐人工复核转换和列表筛选

This commit is contained in:
andy
2026-07-09 18:38:29 +08:00
parent e12bfd77e1
commit 1282d4aede
12 changed files with 983 additions and 15 deletions

View File

@@ -310,6 +310,29 @@ describe('reservation P0 views', () => {
expect(wrapper.text()).not.toContain('接口待接入')
})
it('filters order list with order status and business-key fields', async () => {
vi.mocked(service.fetchReservationOrders).mockResolvedValue(createOrderListResult())
const wrapper = await mountWithPlugins(ReservationOrderListView)
await vi.dynamicImportSettled()
await wrapper.find('select[name="order_status"]').setValue('LOGIC_DELETED')
await vi.dynamicImportSettled()
await wrapper.find('input[name="group_code"]').setValue('GRP-009')
await vi.dynamicImportSettled()
await wrapper.find('input[name="confirmation_number"]').setValue('CNF-009')
await vi.dynamicImportSettled()
expect(service.fetchReservationOrders).toHaveBeenLastCalledWith(
expect.objectContaining({
order_status: 'LOGIC_DELETED',
group_code: 'GRP-009',
confirmation_number: 'CNF-009',
page_num: 1,
}),
)
})
it('paginates order list requests with backend page metadata', async () => {
vi.mocked(service.fetchReservationOrders)
.mockResolvedValueOnce(createOrderListResult('GRP-001', { page_num: 1, page_size: 20, total: 41 }))
@@ -363,26 +386,31 @@ describe('reservation P0 views', () => {
.mockResolvedValueOnce(createTaskListResult('GRP-001', 'Booking Request', { page_num: 1, page_size: 20, total: 45 }))
.mockResolvedValueOnce(createTaskListResult('GRP-001', 'Booking Request', { page_num: 1, page_size: 20, total: 45 }))
.mockResolvedValueOnce(createTaskListResult('GRP-001', 'Booking Request', { page_num: 1, page_size: 20, total: 45 }))
.mockResolvedValueOnce(createTaskListResult('GRP-001', 'Booking Request', { page_num: 1, page_size: 20, total: 45 }))
.mockResolvedValueOnce(createTaskListResult('GRP-002', 'Booking Update', { page_num: 2, page_size: 20, total: 45 }))
const wrapper = await mountWithPlugins(ReservationTaskListView)
await vi.dynamicImportSettled()
const selects = wrapper.findAll('select')
expect(wrapper.text()).not.toContain('订单状态筛选待后端接入')
expect(selects[2]!.attributes('disabled')).toBeUndefined()
expect(wrapper.find('select[name="order_status"]').attributes('disabled')).toBeUndefined()
expect(wrapper.find('select[name="task_status"]').text()).toContain('执行中')
expect(wrapper.find('select[name="task_status"]').text()).toContain('失败')
await selects[1]!.setValue('READY')
await wrapper.find('select[name="task_status"]').setValue('FAILED')
await vi.dynamicImportSettled()
await selects[2]!.setValue('ENDED')
await wrapper.find('select[name="task_subtype"]').setValue('RATE_CHANGE')
await vi.dynamicImportSettled()
await selects[3]!.setValue('true')
await wrapper.find('select[name="order_status"]').setValue('ENDED')
await vi.dynamicImportSettled()
await wrapper.find('select[name="queue_participation"]').setValue('true')
await vi.dynamicImportSettled()
const taskListCalls = vi.mocked(service.fetchReservationTaskList).mock.calls
const filteredTaskRequest = taskListCalls[taskListCalls.length - 1]?.[0] ?? {}
expect(filteredTaskRequest).toMatchObject({
task_status: 'READY',
task_status: 'FAILED',
task_subtype: 'RATE_CHANGE',
order_status: 'ENDED',
queue_participation: true,
page_num: 1,
@@ -393,7 +421,8 @@ describe('reservation P0 views', () => {
expect(service.fetchReservationTaskList).toHaveBeenLastCalledWith(
expect.objectContaining({
task_status: 'READY',
task_status: 'FAILED',
task_subtype: 'RATE_CHANGE',
order_status: 'ENDED',
queue_participation: true,
page_num: 2,