From a9ed25108a32a22285a049864fe2009efa08cb2c Mon Sep 17 00:00:00 2001 From: let5sne Date: Thu, 9 Jul 2026 17:15:15 +0800 Subject: [PATCH] fix(mobile): guard case uploads with employee position --- mobile-uni/src/pages/user/cases/index.vue | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/mobile-uni/src/pages/user/cases/index.vue b/mobile-uni/src/pages/user/cases/index.vue index d5b1d650..202c5f20 100644 --- a/mobile-uni/src/pages/user/cases/index.vue +++ b/mobile-uni/src/pages/user/cases/index.vue @@ -86,6 +86,7 @@ import type { CaseCurateResponse, CaseOrganizeResponse, CaseRecord, CaseSelected import { chooseCaseAudio, curateCase, getCaseRecords, organizeCase, uploadCaseAudio } from '@/services/case'; import { isLoggedIn, rememberLoginRedirect } from '@/services/auth'; import { resetPageScroll } from '@/services/navigation'; +import { ensureEmployeePosition } from '@/services/position'; const loggedIn = ref(false); const selectedFile = ref(null); @@ -198,14 +199,21 @@ const formatSize = (size: number) => { return `${(size / 1024 / 1024).toFixed(1)} MB`; }; -onShow(() => { +const handleShow = async () => { resetPageScroll(); refreshAuthState(); if (loggedIn.value) { + if (!(await ensureEmployeePosition('/pages/user/cases/index'))) { + return; + } void loadRecords(); } else { clearCaseData(); } +}; + +onShow(() => { + void handleShow(); });