From 4c38fcd89dba63b56b18d868378cc592dd9f7037 Mon Sep 17 00:00:00 2001 From: iven Date: Fri, 15 May 2026 07:53:00 +0800 Subject: [PATCH] =?UTF-8?q?refactor(mp):=20=E5=88=86=E5=8C=85=E7=AD=96?= =?UTF-8?q?=E7=95=A5=E4=BC=98=E5=8C=96=20=E2=80=94=20=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E5=8D=95=E9=A1=B5=E5=88=86=E5=8C=85=20+=20doctor=20=E6=8B=86?= =?UTF-8?q?=E5=8C=85=20+=20consultation=20=E7=A7=BB=E5=87=BA=E4=B8=BB?= =?UTF-8?q?=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 合并 4 个单页分包:report→pkg-profile/reports, followup→pkg-profile/followups, events→pkg-profile/events, device-sync→pkg-health - consultation/detail 移出主包到 pkg-consultation 分包(减少主包体积) - doctor 18 页拆分为 pkg-doctor-core(8页) + pkg-doctor-clinical(10页) - 全部导航路径和 import 路径同步更新 - 分包 10→8 个,主包页面 13→12 --- apps/miniprogram/src/app.config.ts | 34 +++++++------------ .../src/components/DeviceCard/index.tsx | 2 +- .../src/pages/consultation/index.tsx | 2 +- apps/miniprogram/src/pages/index/index.tsx | 2 +- apps/miniprogram/src/pages/login/index.tsx | 2 +- apps/miniprogram/src/pages/messages/index.tsx | 2 +- .../detail/index.scss | 0 .../detail/index.tsx | 0 .../alerts/detail/index.scss | 0 .../alerts/detail/index.tsx | 0 .../alerts/index.scss | 0 .../alerts/index.tsx | 2 +- .../dialysis/create/index.scss | 0 .../dialysis/create/index.tsx | 0 .../dialysis/detail/index.scss | 0 .../dialysis/detail/index.tsx | 2 +- .../dialysis/index.scss | 0 .../dialysis/index.tsx | 4 +-- .../prescription/create/index.scss | 0 .../prescription/create/index.tsx | 0 .../prescription/detail/index.scss | 0 .../prescription/detail/index.tsx | 0 .../prescription/index.scss | 0 .../prescription/index.tsx | 4 +-- .../report/detail/index.scss | 0 .../report/detail/index.tsx | 0 .../report/index.scss | 0 .../report/index.tsx | 2 +- .../action-inbox/index.scss | 0 .../action-inbox/index.tsx | 0 .../consultation/detail/index.scss | 0 .../consultation/detail/index.tsx | 0 .../consultation/index.scss | 0 .../consultation/index.tsx | 2 +- .../followup/detail/index.scss | 0 .../followup/detail/index.tsx | 0 .../followup/index.scss | 0 .../followup/index.tsx | 2 +- .../{doctor => pkg-doctor-core}/index.scss | 0 .../{doctor => pkg-doctor-core}/index.tsx | 30 ++++++++-------- .../patients/detail/index.scss | 0 .../patients/detail/index.tsx | 6 ++-- .../patients/index.scss | 0 .../patients/index.tsx | 2 +- .../device-sync/index.config.ts | 0 .../{ => pkg-health}/device-sync/index.scss | 4 +-- .../{ => pkg-health}/device-sync/index.tsx | 2 +- .../src/pages/pkg-health/input/index.tsx | 2 +- .../pages/{ => pkg-profile}/events/index.scss | 4 +-- .../pages/{ => pkg-profile}/events/index.tsx | 2 +- .../followups}/detail/index.scss | 4 +-- .../followups}/detail/index.tsx | 10 +++--- .../src/pages/pkg-profile/followups/index.tsx | 2 +- .../reports}/detail/index.scss | 4 +-- .../reports}/detail/index.tsx | 8 ++--- .../src/pages/pkg-profile/reports/index.tsx | 2 +- apps/miniprogram/src/pages/profile/index.tsx | 4 +-- wiki/miniprogram.md | 1 + 58 files changed, 71 insertions(+), 78 deletions(-) rename apps/miniprogram/src/pages/{consultation => pkg-consultation}/detail/index.scss (100%) rename apps/miniprogram/src/pages/{consultation => pkg-consultation}/detail/index.tsx (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/alerts/detail/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/alerts/detail/index.tsx (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/alerts/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/alerts/index.tsx (98%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/dialysis/create/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/dialysis/create/index.tsx (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/dialysis/detail/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/dialysis/detail/index.tsx (98%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/dialysis/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/dialysis/index.tsx (96%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/prescription/create/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/prescription/create/index.tsx (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/prescription/detail/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/prescription/detail/index.tsx (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/prescription/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/prescription/index.tsx (96%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/report/detail/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/report/detail/index.tsx (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/report/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-clinical}/report/index.tsx (97%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/action-inbox/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/action-inbox/index.tsx (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/consultation/detail/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/consultation/detail/index.tsx (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/consultation/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/consultation/index.tsx (97%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/followup/detail/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/followup/detail/index.tsx (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/followup/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/followup/index.tsx (97%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/index.tsx (80%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/patients/detail/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/patients/detail/index.tsx (95%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/patients/index.scss (100%) rename apps/miniprogram/src/pages/{doctor => pkg-doctor-core}/patients/index.tsx (98%) rename apps/miniprogram/src/pages/{ => pkg-health}/device-sync/index.config.ts (100%) rename apps/miniprogram/src/pages/{ => pkg-health}/device-sync/index.scss (98%) rename apps/miniprogram/src/pages/{ => pkg-health}/device-sync/index.tsx (99%) rename apps/miniprogram/src/pages/{ => pkg-profile}/events/index.scss (96%) rename apps/miniprogram/src/pages/{ => pkg-profile}/events/index.tsx (98%) rename apps/miniprogram/src/pages/{followup => pkg-profile/followups}/detail/index.scss (95%) rename apps/miniprogram/src/pages/{followup => pkg-profile/followups}/detail/index.tsx (94%) rename apps/miniprogram/src/pages/{report => pkg-profile/reports}/detail/index.scss (96%) rename apps/miniprogram/src/pages/{report => pkg-profile/reports}/detail/index.tsx (94%) diff --git a/apps/miniprogram/src/app.config.ts b/apps/miniprogram/src/app.config.ts index d8cfa5d..a4a92b2 100644 --- a/apps/miniprogram/src/app.config.ts +++ b/apps/miniprogram/src/app.config.ts @@ -5,7 +5,6 @@ export default defineAppConfig({ 'pages/health/index', 'pages/messages/index', 'pages/consultation/index', - 'pages/consultation/detail/index', 'pages/mall/index', 'pages/profile/index', 'pages/appointment/index', @@ -17,19 +16,24 @@ export default defineAppConfig({ subPackages: [ { root: 'pages/pkg-health', - pages: ['trend/index', 'input/index', 'daily-monitoring/index', 'alerts/index'], + pages: ['trend/index', 'input/index', 'daily-monitoring/index', 'alerts/index', 'device-sync/index'], }, { - root: 'pages/doctor', + root: 'pages/pkg-doctor-core', pages: [ 'index', 'patients/index', 'patients/detail/index', 'consultation/index', 'consultation/detail/index', 'followup/index', 'followup/detail/index', - 'report/index', 'report/detail/index', - 'alerts/index', 'alerts/detail/index', 'action-inbox/index', + ], + }, + { + root: 'pages/pkg-doctor-clinical', + pages: [ 'dialysis/index', 'dialysis/detail/index', 'dialysis/create/index', 'prescription/index', 'prescription/detail/index', 'prescription/create/index', + 'report/index', 'report/detail/index', + 'alerts/index', 'alerts/detail/index', ], }, { @@ -39,12 +43,12 @@ export default defineAppConfig({ { root: 'pages/pkg-profile', pages: [ - 'family/index', 'family-add/index', 'reports/index', - 'followups/index', 'medication/index', 'settings/index', + 'family/index', 'family-add/index', 'reports/index', 'reports/detail/index', + 'followups/index', 'followups/detail/index', 'medication/index', 'settings/index', 'dialysis-records/index', 'dialysis-records/detail/index', 'dialysis-prescriptions/index', 'dialysis-prescriptions/detail/index', 'consents/index', 'health-records/index', 'diagnoses/index', - 'elder-mode/index', + 'elder-mode/index', 'events/index', ], }, { @@ -56,21 +60,9 @@ export default defineAppConfig({ pages: ['index', 'detail/index'], }, { - root: 'pages/report', + root: 'pages/pkg-consultation', pages: ['detail/index'], }, - { - root: 'pages/followup', - pages: ['detail/index'], - }, - { - root: 'pages/events', - pages: ['index'], - }, - { - root: 'pages/device-sync', - pages: ['index'], - }, ], tabBar: { color: '#A8A29E', diff --git a/apps/miniprogram/src/components/DeviceCard/index.tsx b/apps/miniprogram/src/components/DeviceCard/index.tsx index 8961b2a..2166575 100644 --- a/apps/miniprogram/src/components/DeviceCard/index.tsx +++ b/apps/miniprogram/src/components/DeviceCard/index.tsx @@ -22,7 +22,7 @@ export default function DeviceCard({ deviceName, deviceType, lastSyncAt, status const statusClass = status === 'connected' ? 'connected' : 'idle'; const handleSync = () => { - Taro.navigateTo({ url: '/pages/device-sync/index' }); + Taro.navigateTo({ url: '/pages/pkg-health/device-sync/index' }); }; return ( diff --git a/apps/miniprogram/src/pages/consultation/index.tsx b/apps/miniprogram/src/pages/consultation/index.tsx index 0870863..8845898 100644 --- a/apps/miniprogram/src/pages/consultation/index.tsx +++ b/apps/miniprogram/src/pages/consultation/index.tsx @@ -82,7 +82,7 @@ export default function Consultation() { }); const handleTapSession = (session: ConsultationSession) => { - Taro.navigateTo({ url: `/pages/consultation/detail/index?id=${session.id}` }); + Taro.navigateTo({ url: `/pages/pkg-consultation/detail/index?id=${session.id}` }); }; return ( diff --git a/apps/miniprogram/src/pages/index/index.tsx b/apps/miniprogram/src/pages/index/index.tsx index 0859434..f99dc9f 100644 --- a/apps/miniprogram/src/pages/index/index.tsx +++ b/apps/miniprogram/src/pages/index/index.tsx @@ -251,7 +251,7 @@ function HomeDashboard({ modeClass }: { modeClass: string }) { className={`reminder-item ${i > 0 ? 'reminder-item-border' : ''}`} onClick={() => { if (r.type === 'appointment') Taro.navigateTo({ url: '/pages/appointment/index' }); - else if (r.type === 'followup') Taro.navigateTo({ url: `/pages/followup/detail/index?id=${r.id}` }); + else if (r.type === 'followup') Taro.navigateTo({ url: `/pages/pkg-profile/followups/detail/index?id=${r.id}` }); }} > {r.tag} diff --git a/apps/miniprogram/src/pages/login/index.tsx b/apps/miniprogram/src/pages/login/index.tsx index 6f35a15..3ef9aa8 100644 --- a/apps/miniprogram/src/pages/login/index.tsx +++ b/apps/miniprogram/src/pages/login/index.tsx @@ -21,7 +21,7 @@ export default function Login() { const navigateAfterLogin = () => { if (isMedicalStaff()) { - Taro.reLaunch({ url: '/pages/doctor/index' }); + Taro.reLaunch({ url: '/pages/pkg-doctor-core/index' }); } else { Taro.switchTab({ url: '/pages/index/index' }); } diff --git a/apps/miniprogram/src/pages/messages/index.tsx b/apps/miniprogram/src/pages/messages/index.tsx index 5f168a9..260882a 100644 --- a/apps/miniprogram/src/pages/messages/index.tsx +++ b/apps/miniprogram/src/pages/messages/index.tsx @@ -156,7 +156,7 @@ export default function Messages() { Taro.navigateTo({ url: `/pages/consultation/detail/index?id=${session.id}` })} + onClick={() => Taro.navigateTo({ url: `/pages/pkg-consultation/detail/index?id=${session.id}` })} > {doctorName} diff --git a/apps/miniprogram/src/pages/consultation/detail/index.scss b/apps/miniprogram/src/pages/pkg-consultation/detail/index.scss similarity index 100% rename from apps/miniprogram/src/pages/consultation/detail/index.scss rename to apps/miniprogram/src/pages/pkg-consultation/detail/index.scss diff --git a/apps/miniprogram/src/pages/consultation/detail/index.tsx b/apps/miniprogram/src/pages/pkg-consultation/detail/index.tsx similarity index 100% rename from apps/miniprogram/src/pages/consultation/detail/index.tsx rename to apps/miniprogram/src/pages/pkg-consultation/detail/index.tsx diff --git a/apps/miniprogram/src/pages/doctor/alerts/detail/index.scss b/apps/miniprogram/src/pages/pkg-doctor-clinical/alerts/detail/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/alerts/detail/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-clinical/alerts/detail/index.scss diff --git a/apps/miniprogram/src/pages/doctor/alerts/detail/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-clinical/alerts/detail/index.tsx similarity index 100% rename from apps/miniprogram/src/pages/doctor/alerts/detail/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-clinical/alerts/detail/index.tsx diff --git a/apps/miniprogram/src/pages/doctor/alerts/index.scss b/apps/miniprogram/src/pages/pkg-doctor-clinical/alerts/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/alerts/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-clinical/alerts/index.scss diff --git a/apps/miniprogram/src/pages/doctor/alerts/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-clinical/alerts/index.tsx similarity index 98% rename from apps/miniprogram/src/pages/doctor/alerts/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-clinical/alerts/index.tsx index b10b164..de30b92 100644 --- a/apps/miniprogram/src/pages/doctor/alerts/index.tsx +++ b/apps/miniprogram/src/pages/pkg-doctor-clinical/alerts/index.tsx @@ -74,7 +74,7 @@ export default function AlertList() { }; const handleAlertClick = (alert: Alert) => { - safeNavigateTo(`/pages/doctor/alerts/detail/index?id=${alert.id}`); + safeNavigateTo(`/pages/pkg-doctor-clinical/alerts/detail/index?id=${alert.id}`); }; const formatTime = (dateStr: string) => { diff --git a/apps/miniprogram/src/pages/doctor/dialysis/create/index.scss b/apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/create/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/dialysis/create/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/create/index.scss diff --git a/apps/miniprogram/src/pages/doctor/dialysis/create/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/create/index.tsx similarity index 100% rename from apps/miniprogram/src/pages/doctor/dialysis/create/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/create/index.tsx diff --git a/apps/miniprogram/src/pages/doctor/dialysis/detail/index.scss b/apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/detail/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/dialysis/detail/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/detail/index.scss diff --git a/apps/miniprogram/src/pages/doctor/dialysis/detail/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/detail/index.tsx similarity index 98% rename from apps/miniprogram/src/pages/doctor/dialysis/detail/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/detail/index.tsx index a2536ed..2358e5f 100644 --- a/apps/miniprogram/src/pages/doctor/dialysis/detail/index.tsx +++ b/apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/detail/index.tsx @@ -166,7 +166,7 @@ export default function DialysisDetail() { )} {record.status === 'draft' && ( Taro.navigateTo({ - url: `/pages/doctor/dialysis/create/index?id=${id}&version=${record.version}`, + url: `/pages/pkg-doctor-clinical/dialysis/create/index?id=${id}&version=${record.version}`, })}> 编辑 diff --git a/apps/miniprogram/src/pages/doctor/dialysis/index.scss b/apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/dialysis/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/index.scss diff --git a/apps/miniprogram/src/pages/doctor/dialysis/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/index.tsx similarity index 96% rename from apps/miniprogram/src/pages/doctor/dialysis/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/index.tsx index a0af6da..add5ab4 100644 --- a/apps/miniprogram/src/pages/doctor/dialysis/index.tsx +++ b/apps/miniprogram/src/pages/pkg-doctor-clinical/dialysis/index.tsx @@ -127,7 +127,7 @@ export default function DialysisList() { safeNavigateTo(`/pages/doctor/dialysis/detail/index?id=${r.id}`)} + onClick={() => safeNavigateTo(`/pages/pkg-doctor-clinical/dialysis/detail/index?id=${r.id}`)} > @@ -175,7 +175,7 @@ export default function DialysisList() { Taro.showToast({ title: '请先选择患者', icon: 'none' }); return; } - safeNavigateTo(`/pages/doctor/dialysis/create/index?patientId=${currentPatientId}`); + safeNavigateTo(`/pages/pkg-doctor-clinical/dialysis/create/index?patientId=${currentPatientId}`); }} > + diff --git a/apps/miniprogram/src/pages/doctor/prescription/create/index.scss b/apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/create/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/prescription/create/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/create/index.scss diff --git a/apps/miniprogram/src/pages/doctor/prescription/create/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/create/index.tsx similarity index 100% rename from apps/miniprogram/src/pages/doctor/prescription/create/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/create/index.tsx diff --git a/apps/miniprogram/src/pages/doctor/prescription/detail/index.scss b/apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/detail/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/prescription/detail/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/detail/index.scss diff --git a/apps/miniprogram/src/pages/doctor/prescription/detail/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/detail/index.tsx similarity index 100% rename from apps/miniprogram/src/pages/doctor/prescription/detail/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/detail/index.tsx diff --git a/apps/miniprogram/src/pages/doctor/prescription/index.scss b/apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/prescription/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/index.scss diff --git a/apps/miniprogram/src/pages/doctor/prescription/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/index.tsx similarity index 96% rename from apps/miniprogram/src/pages/doctor/prescription/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/index.tsx index 5f087a2..f925c19 100644 --- a/apps/miniprogram/src/pages/doctor/prescription/index.tsx +++ b/apps/miniprogram/src/pages/pkg-doctor-clinical/prescription/index.tsx @@ -115,7 +115,7 @@ export default function PrescriptionList() { safeNavigateTo(`/pages/doctor/prescription/detail/index?id=${p.id}`)} + onClick={() => safeNavigateTo(`/pages/pkg-doctor-clinical/prescription/detail/index?id=${p.id}`)} > {p.dialyzer_model || '透析处方'} @@ -165,7 +165,7 @@ export default function PrescriptionList() { Taro.showToast({ title: '请先选择患者', icon: 'none' }); return; } - safeNavigateTo(`/pages/doctor/prescription/create/index?patientId=${currentPatientId}`); + safeNavigateTo(`/pages/pkg-doctor-clinical/prescription/create/index?patientId=${currentPatientId}`); }} > + diff --git a/apps/miniprogram/src/pages/doctor/report/detail/index.scss b/apps/miniprogram/src/pages/pkg-doctor-clinical/report/detail/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/report/detail/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-clinical/report/detail/index.scss diff --git a/apps/miniprogram/src/pages/doctor/report/detail/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-clinical/report/detail/index.tsx similarity index 100% rename from apps/miniprogram/src/pages/doctor/report/detail/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-clinical/report/detail/index.tsx diff --git a/apps/miniprogram/src/pages/doctor/report/index.scss b/apps/miniprogram/src/pages/pkg-doctor-clinical/report/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/report/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-clinical/report/index.scss diff --git a/apps/miniprogram/src/pages/doctor/report/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-clinical/report/index.tsx similarity index 97% rename from apps/miniprogram/src/pages/doctor/report/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-clinical/report/index.tsx index f2a829f..f4e6148 100644 --- a/apps/miniprogram/src/pages/doctor/report/index.tsx +++ b/apps/miniprogram/src/pages/pkg-doctor-clinical/report/index.tsx @@ -95,7 +95,7 @@ export default function ReportList() { key={r.id} className='report-card' onClick={() => Taro.navigateTo({ - url: `/pages/doctor/report/detail/index?patientId=${currentPatientId}&id=${r.id}`, + url: `/pages/pkg-doctor-clinical/report/detail/index?patientId=${currentPatientId}&id=${r.id}`, })} > diff --git a/apps/miniprogram/src/pages/doctor/action-inbox/index.scss b/apps/miniprogram/src/pages/pkg-doctor-core/action-inbox/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/action-inbox/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-core/action-inbox/index.scss diff --git a/apps/miniprogram/src/pages/doctor/action-inbox/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-core/action-inbox/index.tsx similarity index 100% rename from apps/miniprogram/src/pages/doctor/action-inbox/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-core/action-inbox/index.tsx diff --git a/apps/miniprogram/src/pages/doctor/consultation/detail/index.scss b/apps/miniprogram/src/pages/pkg-doctor-core/consultation/detail/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/consultation/detail/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-core/consultation/detail/index.scss diff --git a/apps/miniprogram/src/pages/doctor/consultation/detail/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-core/consultation/detail/index.tsx similarity index 100% rename from apps/miniprogram/src/pages/doctor/consultation/detail/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-core/consultation/detail/index.tsx diff --git a/apps/miniprogram/src/pages/doctor/consultation/index.scss b/apps/miniprogram/src/pages/pkg-doctor-core/consultation/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/consultation/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-core/consultation/index.scss diff --git a/apps/miniprogram/src/pages/doctor/consultation/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-core/consultation/index.tsx similarity index 97% rename from apps/miniprogram/src/pages/doctor/consultation/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-core/consultation/index.tsx index 3c6771f..bf847b6 100644 --- a/apps/miniprogram/src/pages/doctor/consultation/index.tsx +++ b/apps/miniprogram/src/pages/pkg-doctor-core/consultation/index.tsx @@ -91,7 +91,7 @@ export default function ConsultationList() { safeNavigateTo(`/pages/doctor/consultation/detail/index?id=${s.id}`)} + onClick={() => safeNavigateTo(`/pages/pkg-doctor-core/consultation/detail/index?id=${s.id}`)} > {s.subject || '在线咨询'} diff --git a/apps/miniprogram/src/pages/doctor/followup/detail/index.scss b/apps/miniprogram/src/pages/pkg-doctor-core/followup/detail/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/followup/detail/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-core/followup/detail/index.scss diff --git a/apps/miniprogram/src/pages/doctor/followup/detail/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-core/followup/detail/index.tsx similarity index 100% rename from apps/miniprogram/src/pages/doctor/followup/detail/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-core/followup/detail/index.tsx diff --git a/apps/miniprogram/src/pages/doctor/followup/index.scss b/apps/miniprogram/src/pages/pkg-doctor-core/followup/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/followup/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-core/followup/index.scss diff --git a/apps/miniprogram/src/pages/doctor/followup/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-core/followup/index.tsx similarity index 97% rename from apps/miniprogram/src/pages/doctor/followup/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-core/followup/index.tsx index f8cc14e..dd2ab09 100644 --- a/apps/miniprogram/src/pages/doctor/followup/index.tsx +++ b/apps/miniprogram/src/pages/pkg-doctor-core/followup/index.tsx @@ -98,7 +98,7 @@ export default function FollowUpList() { Taro.navigateTo({ url: `/pages/doctor/followup/detail/index?id=${task.id}` })} + onClick={() => Taro.navigateTo({ url: `/pages/pkg-doctor-core/followup/detail/index?id=${task.id}` })} > {getTypeLabel(task.follow_up_type)} diff --git a/apps/miniprogram/src/pages/doctor/index.scss b/apps/miniprogram/src/pages/pkg-doctor-core/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-core/index.scss diff --git a/apps/miniprogram/src/pages/doctor/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-core/index.tsx similarity index 80% rename from apps/miniprogram/src/pages/doctor/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-core/index.tsx index ce159ca..d20d6ff 100644 --- a/apps/miniprogram/src/pages/doctor/index.tsx +++ b/apps/miniprogram/src/pages/pkg-doctor-core/index.tsx @@ -17,15 +17,15 @@ interface CardConfig { } const ALL_CARDS: CardConfig[] = [ - { key: 'total_patients', label: '我的患者', initial: '患', route: '/pages/doctor/patients/index' }, - { key: 'unread_messages', label: '未读消息', initial: '消', route: '/pages/doctor/consultation/index' }, - { key: 'pending_follow_ups', label: '待处理随访', initial: '随', route: '/pages/doctor/followup/index', roles: ['doctor', 'nurse', 'health_manager'] }, - { key: 'today_consultations', label: '今日咨询', initial: '诊', route: '/pages/doctor/consultation/index', roles: ['doctor', 'health_manager'] }, + { key: 'total_patients', label: '我的患者', initial: '患', route: '/pages/pkg-doctor-core/patients/index' }, + { key: 'unread_messages', label: '未读消息', initial: '消', route: '/pages/pkg-doctor-core/consultation/index' }, + { key: 'pending_follow_ups', label: '待处理随访', initial: '随', route: '/pages/pkg-doctor-core/followup/index', roles: ['doctor', 'nurse', 'health_manager'] }, + { key: 'today_consultations', label: '今日咨询', initial: '诊', route: '/pages/pkg-doctor-core/consultation/index', roles: ['doctor', 'health_manager'] }, ]; const ALL_HEALTH_CARDS: CardConfig[] = [ - { key: 'pending_lab_review', label: '待审化验', initial: '化', route: '/pages/doctor/report/index', roles: ['doctor'] }, - { key: 'today_appointments', label: '今日预约', initial: '约', route: '/pages/doctor/patients/index' }, + { key: 'pending_lab_review', label: '待审化验', initial: '化', route: '/pages/pkg-doctor-clinical/report/index', roles: ['doctor'] }, + { key: 'today_appointments', label: '今日预约', initial: '约', route: '/pages/pkg-doctor-core/patients/index' }, ]; interface QuickAction { @@ -36,13 +36,13 @@ interface QuickAction { } const ALL_QUICK_ACTIONS: QuickAction[] = [ - { label: '化验审核', initial: '审', route: '/pages/doctor/report/index', roles: ['doctor'] }, - { label: '患者查询', initial: '查', route: '/pages/doctor/patients/index', roles: ['doctor', 'nurse', 'health_manager'] }, - { label: '随访记录', initial: '随', route: '/pages/doctor/followup/index', roles: ['doctor', 'nurse', 'health_manager'] }, - { label: '告警中心', initial: '警', route: '/pages/doctor/alerts/index', roles: ['doctor', 'nurse', 'health_manager'] }, - { label: '透析管理', initial: '透', route: '/pages/doctor/dialysis/index', roles: ['doctor'] }, - { label: '处方管理', initial: '方', route: '/pages/doctor/prescription/index', roles: ['doctor'] }, - { label: '行动收件箱', initial: '行', route: '/pages/doctor/action-inbox/index', roles: ['doctor', 'nurse', 'health_manager'] }, + { label: '化验审核', initial: '审', route: '/pages/pkg-doctor-clinical/report/index', roles: ['doctor'] }, + { label: '患者查询', initial: '查', route: '/pages/pkg-doctor-core/patients/index', roles: ['doctor', 'nurse', 'health_manager'] }, + { label: '随访记录', initial: '随', route: '/pages/pkg-doctor-core/followup/index', roles: ['doctor', 'nurse', 'health_manager'] }, + { label: '告警中心', initial: '警', route: '/pages/pkg-doctor-clinical/alerts/index', roles: ['doctor', 'nurse', 'health_manager'] }, + { label: '透析管理', initial: '透', route: '/pages/pkg-doctor-clinical/dialysis/index', roles: ['doctor'] }, + { label: '处方管理', initial: '方', route: '/pages/pkg-doctor-clinical/prescription/index', roles: ['doctor'] }, + { label: '行动收件箱', initial: '行', route: '/pages/pkg-doctor-core/action-inbox/index', roles: ['doctor', 'nurse', 'health_manager'] }, ]; const ROLE_LABELS: Record = { @@ -122,7 +122,7 @@ export default function DoctorHome() { ! {alertCount} 位患者体征异常 - Taro.navigateTo({ url: '/pages/doctor/alerts/index' })}>查看 → + Taro.navigateTo({ url: '/pages/pkg-doctor-clinical/alerts/index' })}>查看 → )} @@ -130,7 +130,7 @@ export default function DoctorHome() { Taro.navigateTo({ url: '/pages/doctor/patients/index' })} + onFocus={() => Taro.navigateTo({ url: '/pages/pkg-doctor-core/patients/index' })} /> diff --git a/apps/miniprogram/src/pages/doctor/patients/detail/index.scss b/apps/miniprogram/src/pages/pkg-doctor-core/patients/detail/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/patients/detail/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-core/patients/detail/index.scss diff --git a/apps/miniprogram/src/pages/doctor/patients/detail/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-core/patients/detail/index.tsx similarity index 95% rename from apps/miniprogram/src/pages/doctor/patients/detail/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-core/patients/detail/index.tsx index 96c01a7..87c2120 100644 --- a/apps/miniprogram/src/pages/doctor/patients/detail/index.tsx +++ b/apps/miniprogram/src/pages/pkg-doctor-core/patients/detail/index.tsx @@ -125,7 +125,7 @@ export default function PatientDetail() { 近期化验 Taro.navigateTo({ url: `/pages/doctor/report/detail/index?patientId=${patientId}&id=${summary.latest_lab_report!.id}` })} + onClick={() => Taro.navigateTo({ url: `/pages/pkg-doctor-clinical/report/detail/index?patientId=${patientId}&id=${summary.latest_lab_report!.id}` })} > {summary.latest_lab_report.report_type} @@ -142,10 +142,10 @@ export default function PatientDetail() { 操作 - Taro.navigateTo({ url: `/pages/doctor/report/index?patientId=${patientId}` })}> + Taro.navigateTo({ url: `/pages/pkg-doctor-clinical/report/index?patientId=${patientId}` })}> 查看化验报告 - Taro.navigateTo({ url: `/pages/doctor/followup/index?patientId=${patientId}` })}> + Taro.navigateTo({ url: `/pages/pkg-doctor-core/followup/index?patientId=${patientId}` })}> 随访记录 diff --git a/apps/miniprogram/src/pages/doctor/patients/index.scss b/apps/miniprogram/src/pages/pkg-doctor-core/patients/index.scss similarity index 100% rename from apps/miniprogram/src/pages/doctor/patients/index.scss rename to apps/miniprogram/src/pages/pkg-doctor-core/patients/index.scss diff --git a/apps/miniprogram/src/pages/doctor/patients/index.tsx b/apps/miniprogram/src/pages/pkg-doctor-core/patients/index.tsx similarity index 98% rename from apps/miniprogram/src/pages/doctor/patients/index.tsx rename to apps/miniprogram/src/pages/pkg-doctor-core/patients/index.tsx index 5de5f35..846482b 100644 --- a/apps/miniprogram/src/pages/doctor/patients/index.tsx +++ b/apps/miniprogram/src/pages/pkg-doctor-core/patients/index.tsx @@ -146,7 +146,7 @@ export default function PatientList() { Taro.navigateTo({ url: `/pages/doctor/patients/detail/index?id=${p.id}` })} + onClick={() => Taro.navigateTo({ url: `/pages/pkg-doctor-core/patients/detail/index?id=${p.id}` })} > {p.name} diff --git a/apps/miniprogram/src/pages/device-sync/index.config.ts b/apps/miniprogram/src/pages/pkg-health/device-sync/index.config.ts similarity index 100% rename from apps/miniprogram/src/pages/device-sync/index.config.ts rename to apps/miniprogram/src/pages/pkg-health/device-sync/index.config.ts diff --git a/apps/miniprogram/src/pages/device-sync/index.scss b/apps/miniprogram/src/pages/pkg-health/device-sync/index.scss similarity index 98% rename from apps/miniprogram/src/pages/device-sync/index.scss rename to apps/miniprogram/src/pages/pkg-health/device-sync/index.scss index 5e70a22..35f8251 100644 --- a/apps/miniprogram/src/pages/device-sync/index.scss +++ b/apps/miniprogram/src/pages/pkg-health/device-sync/index.scss @@ -1,5 +1,5 @@ -@import '../../styles/variables.scss'; -@import '../../styles/mixins.scss'; +@import '../../../styles/variables.scss'; +@import '../../../styles/mixins.scss'; .device-sync-page { min-height: 100vh; diff --git a/apps/miniprogram/src/pages/device-sync/index.tsx b/apps/miniprogram/src/pages/pkg-health/device-sync/index.tsx similarity index 99% rename from apps/miniprogram/src/pages/device-sync/index.tsx rename to apps/miniprogram/src/pages/pkg-health/device-sync/index.tsx index 79121ef..9f72bae 100644 --- a/apps/miniprogram/src/pages/device-sync/index.tsx +++ b/apps/miniprogram/src/pages/pkg-health/device-sync/index.tsx @@ -11,7 +11,7 @@ import { DataSyncScheduler } from '@/services/ble/DataSyncScheduler'; import { uploadReadings } from '@/services/device-sync'; import { useAuthStore } from '@/stores/auth'; import type { BLEDevice, NormalizedReading } from '@/services/ble/types'; -import { useElderClass } from '../../hooks/useElderClass'; +import { useElderClass } from '@/hooks/useElderClass'; import './index.scss'; /** liveReadings 最大保留条数,防止内存无限增长 */ diff --git a/apps/miniprogram/src/pages/pkg-health/input/index.tsx b/apps/miniprogram/src/pages/pkg-health/input/index.tsx index e7877a7..57121c7 100644 --- a/apps/miniprogram/src/pages/pkg-health/input/index.tsx +++ b/apps/miniprogram/src/pages/pkg-health/input/index.tsx @@ -191,7 +191,7 @@ export default function HealthInput() { {/* 从设备同步入口 */} - Taro.navigateTo({ url: '/pages/device-sync/index?returnTo=input' })}> + Taro.navigateTo({ url: '/pages/pkg-health/device-sync/index?returnTo=input' })}> 从设备同步 蓝牙连接设备自动获取数据 diff --git a/apps/miniprogram/src/pages/events/index.scss b/apps/miniprogram/src/pages/pkg-profile/events/index.scss similarity index 96% rename from apps/miniprogram/src/pages/events/index.scss rename to apps/miniprogram/src/pages/pkg-profile/events/index.scss index e5b0859..d5a2cb0 100644 --- a/apps/miniprogram/src/pages/events/index.scss +++ b/apps/miniprogram/src/pages/pkg-profile/events/index.scss @@ -1,5 +1,5 @@ -@import '../../styles/variables.scss'; -@import '../../styles/mixins.scss'; +@import '../../../styles/variables.scss'; +@import '../../../styles/mixins.scss'; .events-page { min-height: 100vh; diff --git a/apps/miniprogram/src/pages/events/index.tsx b/apps/miniprogram/src/pages/pkg-profile/events/index.tsx similarity index 98% rename from apps/miniprogram/src/pages/events/index.tsx rename to apps/miniprogram/src/pages/pkg-profile/events/index.tsx index a7727f1..85da55d 100644 --- a/apps/miniprogram/src/pages/events/index.tsx +++ b/apps/miniprogram/src/pages/pkg-profile/events/index.tsx @@ -4,7 +4,7 @@ import Taro from '@tarojs/taro'; import * as pointsApi from '@/services/points'; import Loading from '@/components/Loading'; import EmptyState from '@/components/EmptyState'; -import { useElderClass } from '../../hooks/useElderClass'; +import { useElderClass } from '@/hooks/useElderClass'; import { usePageData } from '@/hooks/usePageData'; import './index.scss'; diff --git a/apps/miniprogram/src/pages/followup/detail/index.scss b/apps/miniprogram/src/pages/pkg-profile/followups/detail/index.scss similarity index 95% rename from apps/miniprogram/src/pages/followup/detail/index.scss rename to apps/miniprogram/src/pages/pkg-profile/followups/detail/index.scss index 22be463..b7c521d 100644 --- a/apps/miniprogram/src/pages/followup/detail/index.scss +++ b/apps/miniprogram/src/pages/pkg-profile/followups/detail/index.scss @@ -1,5 +1,5 @@ -@import '../../../styles/variables.scss'; -@import '../../../styles/mixins.scss'; +@import '../../../../styles/variables.scss'; +@import '../../../../styles/mixins.scss'; .detail-page { min-height: 100vh; diff --git a/apps/miniprogram/src/pages/followup/detail/index.tsx b/apps/miniprogram/src/pages/pkg-profile/followups/detail/index.tsx similarity index 94% rename from apps/miniprogram/src/pages/followup/detail/index.tsx rename to apps/miniprogram/src/pages/pkg-profile/followups/detail/index.tsx index 2828f96..c046bf3 100644 --- a/apps/miniprogram/src/pages/followup/detail/index.tsx +++ b/apps/miniprogram/src/pages/pkg-profile/followups/detail/index.tsx @@ -2,13 +2,13 @@ import React, { useState, useCallback } from 'react'; import { View, Text, Textarea } from '@tarojs/components'; import Taro, { useRouter } from '@tarojs/taro'; import { usePageData } from '@/hooks/usePageData'; -import { getTaskDetail, submitRecord } from '../../../services/followup'; -import type { FollowUpTask } from '../../../services/followup'; +import { getTaskDetail, submitRecord } from '@/services/followup'; +import type { FollowUpTask } from '@/services/followup'; import { TEMPLATE_IDS } from '@/services/wechat-templates'; import { trackEvent } from '@/services/analytics'; -import Loading from '../../../components/Loading'; -import ErrorState from '../../../components/ErrorState'; -import { useElderClass } from '../../../hooks/useElderClass'; +import Loading from '@/components/Loading'; +import ErrorState from '@/components/ErrorState'; +import { useElderClass } from '@/hooks/useElderClass'; import './index.scss'; export default function FollowUpDetail() { diff --git a/apps/miniprogram/src/pages/pkg-profile/followups/index.tsx b/apps/miniprogram/src/pages/pkg-profile/followups/index.tsx index d6bc965..afdf88e 100644 --- a/apps/miniprogram/src/pages/pkg-profile/followups/index.tsx +++ b/apps/miniprogram/src/pages/pkg-profile/followups/index.tsx @@ -40,7 +40,7 @@ export default function MyFollowUps() { }; const goToDetail = (id: string) => { - Taro.navigateTo({ url: `/pages/followup/detail/index?id=${id}` }); + Taro.navigateTo({ url: `/pages/pkg-profile/followups/detail/index?id=${id}` }); }; const getStatusClass = (status: string) => { diff --git a/apps/miniprogram/src/pages/report/detail/index.scss b/apps/miniprogram/src/pages/pkg-profile/reports/detail/index.scss similarity index 96% rename from apps/miniprogram/src/pages/report/detail/index.scss rename to apps/miniprogram/src/pages/pkg-profile/reports/detail/index.scss index 15895d0..3fd5bfd 100644 --- a/apps/miniprogram/src/pages/report/detail/index.scss +++ b/apps/miniprogram/src/pages/pkg-profile/reports/detail/index.scss @@ -1,5 +1,5 @@ -@import '../../../styles/variables.scss'; -@import '../../../styles/mixins.scss'; +@import '../../../../styles/variables.scss'; +@import '../../../../styles/mixins.scss'; .detail-page { min-height: 100vh; diff --git a/apps/miniprogram/src/pages/report/detail/index.tsx b/apps/miniprogram/src/pages/pkg-profile/reports/detail/index.tsx similarity index 94% rename from apps/miniprogram/src/pages/report/detail/index.tsx rename to apps/miniprogram/src/pages/pkg-profile/reports/detail/index.tsx index 51cba96..607c3b0 100644 --- a/apps/miniprogram/src/pages/report/detail/index.tsx +++ b/apps/miniprogram/src/pages/pkg-profile/reports/detail/index.tsx @@ -2,10 +2,10 @@ import React, { useState, useCallback } from 'react'; import { View, Text } from '@tarojs/components'; import Taro, { useRouter } from '@tarojs/taro'; import { usePageData } from '@/hooks/usePageData'; -import { getReportDetail, LabReport } from '../../../services/report'; -import Loading from '../../../components/Loading'; -import { useElderClass } from '../../../hooks/useElderClass'; -import { useAuthStore } from '../../../stores/auth'; +import { getReportDetail, LabReport } from '@/services/report'; +import Loading from '@/components/Loading'; +import { useElderClass } from '@/hooks/useElderClass'; +import { useAuthStore } from '@/stores/auth'; import './index.scss'; interface IndicatorItem { diff --git a/apps/miniprogram/src/pages/pkg-profile/reports/index.tsx b/apps/miniprogram/src/pages/pkg-profile/reports/index.tsx index 5af8a41..3273dbe 100644 --- a/apps/miniprogram/src/pages/pkg-profile/reports/index.tsx +++ b/apps/miniprogram/src/pages/pkg-profile/reports/index.tsx @@ -47,7 +47,7 @@ export default function MyReports() { }); const goToDetail = (id: string) => { - Taro.navigateTo({ url: `/pages/report/detail/index?id=${id}` }); + Taro.navigateTo({ url: `/pages/pkg-profile/reports/detail/index?id=${id}` }); }; const formatStatus = (report: LabReport) => { diff --git a/apps/miniprogram/src/pages/profile/index.tsx b/apps/miniprogram/src/pages/profile/index.tsx index d2c2935..d60c9a9 100644 --- a/apps/miniprogram/src/pages/profile/index.tsx +++ b/apps/miniprogram/src/pages/profile/index.tsx @@ -54,7 +54,7 @@ const LOGGED_IN_GROUPS: MenuGroup[] = [ title: '生活服务', items: [ { label: '积分商城', icon: '礼', bg: 'pri-l', color: 'pri', path: '/pages/mall/index', isSwitchTab: true }, - { label: '线下活动', icon: '活', bg: 'acc-l', color: 'acc', path: '/pages/events/index' }, + { label: '线下活动', icon: '活', bg: 'acc-l', color: 'acc', path: '/pages/pkg-profile/events/index' }, ], }, { @@ -62,7 +62,7 @@ const LOGGED_IN_GROUPS: MenuGroup[] = [ items: [ { label: '就诊人管理', icon: '家', bg: 'pri-l', color: 'pri', path: '/pages/pkg-profile/family/index' }, { label: '长辈模式', icon: '老', bg: 'acc-l', color: 'acc', path: '/pages/pkg-profile/elder-mode/index' }, - { label: '设备同步', icon: '设', bg: 'surface-alt', color: 'tx3', path: '/pages/device-sync/index' }, + { label: '设备同步', icon: '设', bg: 'surface-alt', color: 'tx3', path: '/pages/pkg-health/device-sync/index' }, { label: '设置', icon: '齿', bg: 'surface-alt', color: 'tx3', path: '/pages/pkg-profile/settings/index' }, ], }, diff --git a/wiki/miniprogram.md b/wiki/miniprogram.md index d822e64..841e804 100644 --- a/wiki/miniprogram.md +++ b/wiki/miniprogram.md @@ -907,6 +907,7 @@ node scripts/audit-pages.mjs --role doctor --batch-size 8 | 日期 | 变更 | |------|------| +| 2026-05-15 | **架构重构 P4:分包策略优化**:合并 4 个单页分包(report→pkg-profile/reports、followup→pkg-profile/followups、events→pkg-profile/events、device-sync→pkg-health);consultation/detail 移出主包到 pkg-consultation 分包;doctor 18 页拆分为 pkg-doctor-core(8 页:工作台+患者+咨询+随访)+ pkg-doctor-clinical(10 页:透析+处方+报告+告警);分包 10→8 个,主包页面 13→12 | | 2026-05-15 | **架构重构 P3:长轮询通用化 useLongPolling**:抽取 `useLongPolling` hook(generation counter + useDidShow/Hide 可见性 + 失败退避 + enabled 守卫);患者端 + 医生端 consultation/detail 接入,删除 ~80 行重复代码;架构建议 #2 全部完成 ✅ | | 2026-05-15 | **架构重构 P2:request.ts 模块级状态收编 + AbortSignal + Analytics 受控**:提取 `ConcurrencyLimiter` 类(并发限制)、`ResponseCache` 类(缓存+去重+patientId 绑定);新增 `resetForTesting()` 测试隔离函数;`api.get/post/put/delete` 支持 `AbortSignal` 请求取消;app.tsx Analytics 定时器改为 `useDidShow`/`useDidHide` 控制后台暂停;构建通过 + 测试 74/75 | | 2026-05-15 | **患者端登录后卡死深度审查(3 专家组)**:根因 — 全局并发请求超微信 10 限制排队阻塞;端点可达性验证 33/33 全部存在;Tab 切换请求链路分析(最坏 13 并发);修复 HIGH×3(doRefresh 状态清理 + 401 跳转登录页 + 全局并发限制 MAX_CONCURRENT=8)+ MEDIUM×3(长轮询 generation counter + 首页/健康页 loadingRef 防重入 + refreshToday 去重) |