Merge remote-tracking branch 'origin/release/test' into dev

# Conflicts:
#	src/modules/overseas-warehouse/pages/DispatchesView.vue
#	src/modules/overseas-warehouse/pages/OutboundsView.vue
#	src/modules/overseas-warehouse/pages/PalletDetailView.vue
This commit is contained in:
2026-09-02 15:23:05 +08:00
11 changed files with 69 additions and 29 deletions
@@ -209,7 +209,7 @@ describe('LastMileOrdersView pending order and container conversion', () => {
pagination.vm.$emit('current-change', 2)
await flushPromises()
expect(listContainerPlanProgress).toHaveBeenLastCalledWith(expect.objectContaining({ page: 2, size: 10 }))
await wrapper.get('.container-workbench-card').trigger('click')
await wrapper.get('.container-workbench-card__detail').trigger('click')
await flushPromises()
expect(getContainerPlanProgress).toHaveBeenCalledWith(bookingId)
expect(document.body.textContent).toContain('柜子详情 · CONT-15')
@@ -220,6 +220,22 @@ describe('LastMileOrdersView pending order and container conversion', () => {
expect(document.body.querySelector('.el-drawer')).toBeNull()
})
it('starts cabinet plan generation directly from the workbench card', async () => {
const wrapper = await mountView()
const containerTab = wrapper.findAll('.el-radio-button').find((item) => item.text().startsWith('柜子'))
await containerTab!.trigger('click')
await flushPromises()
await button(wrapper, '生成入库计划')!.trigger('click')
await flushPromises()
expect(document.body.textContent).toContain('确认后将为该柜剩余 5 个入仓码分别生成独立入库计划')
const confirm = [...document.body.querySelectorAll('button')].find((item) => item.textContent?.includes('确认按柜生成')) as HTMLButtonElement
expect(confirm.disabled).toBe(false)
confirm.click()
await flushPromises()
expect(convertLastMileContainerToInboundPlans).toHaveBeenCalledWith({ sourceContainerBookingId: bookingId })
expect(getContainerPlanProgress).not.toHaveBeenCalled()
})
it('loads only active FBA master data and submits exact string fields for a cross-customer transfer', async () => {
const wrapper = await openPending()
await selectRows(wrapper, [selectedRow(), selectedRow({ id: '2092873463568596995', customerId: '2092618717861048322' })])