MIF7F-1/MIF7F-2/MIF7F-3 修复移动返回标签并勘误

这个提交包含在:
2026-05-13 00:55:39 +08:00
父节点 c83dbb7376
当前提交 eed8e37033
共修改 8 个文件,包含 96 行新增和 30 行删除
+19 -2
查看文件
@@ -130,7 +130,13 @@ export function MobileReimbursementsPage() {
const createIntentHandledRef = useRef(false);
const canCreateExpense = hasPermission(permissions, "expense.create");
const canDeleteExpense = hasPermission(permissions, "expense.delete_own");
const currentMobileSource = `${location.pathname}${location.search}`;
const currentMobileSource = useMemo(() => {
const params = new URLSearchParams(location.search);
params.delete("intent");
params.set("status", status);
const query = params.toString();
return `${location.pathname}${query ? `?${query}` : ""}`;
}, [location.pathname, location.search, status]);
const listQuery = useQuery({
queryKey: ["mobile", "reimbursements", status],
@@ -156,6 +162,17 @@ export function MobileReimbursementsPage() {
}
}, [searchParams]);
function handleStatusChange(value: string) {
if (!isReimbursementStatus(value)) {
return;
}
setStatus(value);
const nextParams = new URLSearchParams(searchParams);
nextParams.delete("intent");
nextParams.set("status", value);
setSearchParams(nextParams, { replace: true });
}
useEffect(() => {
if (searchParams.get("intent") !== "create" || !canCreateExpense || createIntentHandledRef.current) {
return;
@@ -222,7 +239,7 @@ export function MobileReimbursementsPage() {
</section>
<section className="mobile-card" data-testid="mobile-reimbursements-list">
<Tabs value={status} onValueChange={(value) => setStatus(value as ReimbursementStatus)}>
<Tabs value={status} onValueChange={handleStatusChange}>
<TabsList className="grid h-auto w-full grid-cols-4">
{STATUS_TABS.map((item) => (
<TabsTrigger key={item.value} value={item.value} data-testid={`mobile-reimbursements-tab-${item.value}`}>