feat(admin): 排车默认发布散板需求并直接确认装车

This commit is contained in:
2026-10-21 18:51:10 +08:00
parent 7c43fcacc4
commit a4cb6c3757
18 changed files with 216 additions and 36 deletions
@@ -82,3 +82,24 @@ it('allows saving photos while loading and keeps the loading stage', async () =>
expect(wrapper.emitted('saved')).toHaveLength(1)
expect(wrapper.text()).toContain('可边装车边上传'); wrapper.unmount()
})
it('renders the authenticated saved photo and fullscreen preview for a read-only Admin', async () => {
can.mockReturnValue(false)
const originalURL = URL
const create = vi.fn(() => 'blob:admin-loading-photo'), revoke = vi.fn()
vi.stubGlobal('URL', class extends originalURL { static createObjectURL = create; static revokeObjectURL = revoke })
vi.mocked(api.getLoadingDocuments).mockResolvedValue(data({ stage: 'LOADING', photos: [photo] }))
const image = new Blob(['verified image'], { type: 'image/png' })
vi.mocked(api.readLoadingPhoto).mockResolvedValue(image)
const wrapper = setup()
try {
await flushPromises()
expect(api.readLoadingPhoto).toHaveBeenCalledWith('PC/1', photo)
expect(create).toHaveBeenCalledWith(image)
const preview = wrapper.findComponent({ name: 'ElImage' })
expect(preview.props('src')).toBe('blob:admin-loading-photo')
expect(preview.props('previewSrcList')).toEqual(['blob:admin-loading-photo'])
expect(wrapper.find('input[type="file"]').exists()).toBe(false)
} finally { wrapper.unmount(); vi.stubGlobal('URL', originalURL) }
expect(revoke.mock.calls[0]?.[0]).toBe('blob:admin-loading-photo')
})