收口报销详情返回与金额展示(07-27-yang-jun-reimbursement-readiness)

这个提交包含在:
2026-08-01 15:03:48 +08:00
父节点 85fad71070
当前提交 3bfcbbfc91
共修改 16 个文件,包含 219 行新增和 81 行删除
@@ -586,9 +586,9 @@ async function collectVisualMetrics(page: Page) {
const activeRgb = activeStyle ? parseRgb(activeStyle.backgroundColor) : null;
const stickyActions = document.querySelector("[data-testid='mobile-reimbursement-sticky-actions']");
const stickyRect = stickyActions?.getBoundingClientRect();
const addButton = document.querySelector("[data-testid='mobile-reimbursement-sticky-invoice-add']");
const materialAddButton = document.querySelector("[data-testid='reimbursement-invoice-add']");
const stickyAddButton = document.querySelector("[data-testid='mobile-reimbursement-sticky-invoice-add']");
const submitButton = document.querySelector("[data-testid='reimbursement-submit']");
const addRect = addButton?.getBoundingClientRect();
const submitRect = submitButton?.getBoundingClientRect();
const bodyText = document.body?.innerText ?? "";
@@ -605,8 +605,9 @@ async function collectVisualMetrics(page: Page) {
stickyActionsVisible: Boolean(stickyRect && stickyRect.height > 0 && stickyRect.bottom <= window.innerHeight + 2),
stickyBottomGap: stickyRect ? Math.round(window.innerHeight - stickyRect.bottom) : null,
stickyHeight: stickyRect ? Math.round(stickyRect.height) : 0,
stickyButtonsSameRow: Boolean(addRect && submitRect && Math.abs(addRect.top - submitRect.top) <= 2),
stickyButtonMinHeight: Math.min(addRect?.height ?? 0, submitRect?.height ?? 0),
materialInvoiceAddVisible: Boolean(materialAddButton?.getBoundingClientRect().height),
stickyInvoiceAddVisible: Boolean(stickyAddButton?.getBoundingClientRect().height),
stickyButtonMinHeight: submitRect?.height ?? 0,
activeElementTestId: document.activeElement?.getAttribute("data-testid") ?? "",
bodyText,
};
@@ -732,7 +733,8 @@ test.describe("R111 国内报销发票与附件双端体验", () => {
expect(beforeDialogMetrics.navHeight).toBe(0);
expect(beforeDialogMetrics.stickyActionsVisible).toBe(true);
expect(beforeDialogMetrics.stickyBottomGap).toBeLessThanOrEqual(2);
expect(beforeDialogMetrics.stickyButtonsSameRow).toBe(true);
expect(beforeDialogMetrics.materialInvoiceAddVisible).toBe(true);
expect(beforeDialogMetrics.stickyInvoiceAddVisible).toBe(false);
expect(beforeDialogMetrics.stickyButtonMinHeight).toBeGreaterThanOrEqual(44);
await mobile.page.getByTestId("reimbursement-invoice-add").click();