优化
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import { beforeEach, describe, expect, it, vi } from 'vitest'
|
||||
import { http } from '@/shared/api/http'
|
||||
import {
|
||||
getPlatformTenantOrderStatistics,
|
||||
acceptPlatformFirstLegOrder,
|
||||
addPlatformFirstLegOrderNote,
|
||||
approvePlatformFirstLegOrder,
|
||||
@@ -24,6 +25,15 @@ describe('platform first-leg order API', () => {
|
||||
vi.mocked(http.put).mockReset()
|
||||
})
|
||||
|
||||
it('uses the submitted master-order statistics contract and preserves the long customer id', async () => {
|
||||
vi.mocked(http.get).mockResolvedValue({ code: '200', data: { tenantId: '9007199254740993', totalSubmittedOrders: 12, currentMonthSubmittedOrders: 3, monthStart: '2026-08-01T00:00:00+08:00', nextMonthStart: '2026-09-01T00:00:00+08:00', zoneId: 'Asia/Shanghai', asOf: '2026-08-13T12:00:00+08:00' } })
|
||||
|
||||
const result = await getPlatformTenantOrderStatistics('9007199254740993')
|
||||
|
||||
expect(http.get).toHaveBeenCalledWith('/platform/v1/orders/first-leg/tenant-statistics', { params: { tenantId: '9007199254740993' } })
|
||||
expect(result).toMatchObject({ tenantId: '9007199254740993', totalSubmittedOrders: 12, currentMonthSubmittedOrders: 3, zoneId: 'Asia/Shanghai' })
|
||||
})
|
||||
|
||||
it('queries the cross-tenant review queue with one server-paginated request', async () => {
|
||||
const page = { records: [], page: 2, size: 20, total: 0, pages: 0 }
|
||||
vi.mocked(http.get).mockResolvedValue({ code: '200', message: 'success', data: page })
|
||||
|
||||
@@ -105,6 +105,16 @@ export interface PlatformFirstLegOrderPageResource {
|
||||
pages: number
|
||||
}
|
||||
|
||||
export interface PlatformTenantOrderStatistics {
|
||||
tenantId: string
|
||||
totalSubmittedOrders: number
|
||||
currentMonthSubmittedOrders: number
|
||||
monthStart: string
|
||||
nextMonthStart: string
|
||||
zoneId: 'Asia/Shanghai' | string
|
||||
asOf: string
|
||||
}
|
||||
|
||||
type PlatformFirstLegOrderPagePayload = Omit<PlatformFirstLegOrderPageResource, 'page' | 'size' | 'total' | 'pages'> & {
|
||||
page: number | string
|
||||
size: number | string
|
||||
@@ -150,6 +160,14 @@ export async function listPlatformFirstLegOrders(query: PlatformFirstLegOrderQue
|
||||
} satisfies PlatformFirstLegOrderPageResource
|
||||
}
|
||||
|
||||
export async function getPlatformTenantOrderStatistics(tenantId: string): Promise<PlatformTenantOrderStatistics> {
|
||||
const result = await getData<Omit<PlatformTenantOrderStatistics, 'tenantId'> & { tenantId: number | string }>(
|
||||
'/platform/v1/orders/first-leg/tenant-statistics',
|
||||
{ tenantId },
|
||||
)
|
||||
return { ...result, tenantId: String(result.tenantId) }
|
||||
}
|
||||
|
||||
export function getPlatformFirstLegOrder(tenantId: string, orderId: string) {
|
||||
return getData<PlatformFirstLegOrderDetailResource>(`/platform/v1/orders/first-leg/${orderId}`, { tenantId })
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user