修正 ERP 边界与资产页面一致性(05-30-fix-erp-boundary-asset-consistency)

这个提交包含在:
2026-05-30 23:06:02 +08:00
父节点 16fd9bdf52
当前提交 f299ceeb74
共修改 47 个文件,包含 476 行新增和 1633 行删除
+10 -10
查看文件
@@ -2,8 +2,8 @@ import { expect, test, type Locator, type Page } from "@playwright/test";
import { openNavLink } from "./helpers/navigation";
const FINANCE_MGR = { identifier: "[email protected]", password: "FinanceMgrPassword1234", name: "Finance Manager" };
const ADMINISTRATION = { identifier: "[email protected]", password: "AdministrationPassword1234", name: "Administration" };
const FINANCE_MGR = { identifier: "[email protected]", password: "FinanceMgrPassword1234", name: "钱主管", employeeNo: "HYD000005" };
const ADMINISTRATION = { identifier: "[email protected]", password: "AdministrationPassword1234", name: "周行政", employeeNo: "HYD000008" };
async function login(page: Page, user: { identifier: string; password: string }) {
await page.goto("/login");
@@ -130,26 +130,26 @@ test("E2E 资产流转主链路:建卡→领用归还→调拨→盘点", asyn
await page.goto(`/assets?id=${assetId}`);
await expect(page.getByTestId("asset-name")).toHaveValue(assetName, { timeout: 30_000 });
await selectOptionByText(page.getByTestId("asset-movement-assignee"), /Employee/);
await selectOptionByText(page.getByTestId("asset-movement-assignee"), /陈工程/);
await page.getByTestId("asset-movement-note").fill("Playwright 首次领用");
if (await page.getByText(/当前归属人:未分配/).isVisible().catch(() => false)) {
if (await page.getByText(/归属人:-/).isVisible().catch(() => false)) {
await page.getByTestId("asset-assign-submit").click();
} else {
await page.getByTestId("asset-transfer-submit").click();
}
await expect(page.getByText(/当前归属人:Employee/)).toBeVisible({ timeout: 30_000 });
await expect(page.getByText(/归属人:陈工程/)).toBeVisible({ timeout: 30_000 });
await page.getByTestId("asset-return-submit").click();
await expect(page.getByText(/当前归属人:未分配/)).toBeVisible({ timeout: 30_000 });
await expect(page.getByText(/归属人:-/)).toBeVisible({ timeout: 30_000 });
await selectOptionByText(page.getByTestId("asset-movement-assignee"), /Employee/);
await selectOptionByText(page.getByTestId("asset-movement-assignee"), /陈工程/);
await page.getByTestId("asset-assign-submit").click();
await expect(page.getByText(/当前归属人:Employee/)).toBeVisible({ timeout: 30_000 });
await expect(page.getByText(/归属人:陈工程/)).toBeVisible({ timeout: 30_000 });
await selectOptionByText(page.getByTestId("asset-movement-assignee"), /Finance Manager/);
await selectOptionByText(page.getByTestId("asset-movement-assignee"), /钱主管/);
await page.getByTestId("asset-movement-location").fill("深圳办公室 B-02");
await page.getByTestId("asset-transfer-submit").click();
await expect(page.getByText(/当前归属人:Finance Manager/)).toBeVisible({ timeout: 30_000 });
await expect(page.getByText(/归属人:钱主管/)).toBeVisible({ timeout: 30_000 });
await expect(page.getByText(/位置:深圳办公室 B-02/)).toBeVisible({ timeout: 30_000 });
await logout(page, ADMINISTRATION.name);