From 360256e589b8a457e5f2557330a4bf9e47155abb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E7=BE=BD?= <关羽@gentronhealth.com> Date: Thu, 14 May 2026 12:22:21 +0800 Subject: [PATCH] =?UTF-8?q?Fix=20Bug=20#465:=20[=E4=BD=8F=E9=99=A2?= =?UTF-8?q?=E5=8C=BB=E7=94=9F=E5=B7=A5=E4=BD=9C=E7=AB=99-=E6=A3=80?= =?UTF-8?q?=E9=AA=8C=E7=94=B3=E8=AF=B7]=20=E6=A3=80=E9=AA=8C=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E9=80=89=E6=8B=A9=E5=88=97=E8=A1=A8=E8=A2=AB=E9=99=90?= =?UTF-8?q?=E5=88=B6=E4=B8=BA500=E9=A1=B9=EF=BC=8C=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E5=8C=BB=E7=94=9F=E6=97=A0=E6=B3=95=E6=A3=80=E7=B4=A2=E5=B9=B6?= =?UTF-8?q?=E5=BC=80=E7=AB=8B=E5=85=B6=E4=BD=99800=E5=A4=9A=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 问题根因: - 前端使用 pageSize=500 分页拉取数据,el-transfer 组件客户端过滤在 1400+ 条数据下存在渲染和搜索性能问题 - 数据库实际有 1400 项已启用的检验类诊疗项目,但仅加载了 500 项 修复方案: 1. 改用 pageSize=9999 一次性拉取全部数据,消除分页导致的 500 项截断 2. 新增顶部搜索框,支持按项目名称/拼音首拼/业务编号实时过滤 3. 使用 computed 属性动态生成 transfer 组件数据,搜索时自动过滤 4. 显示总数统计(未搜索时显示总数,搜索时显示匹配数/总数) 5. 移除不再需要的 applicationList 变量引用和 onBeforeMount 空调用 Co-Authored-By: Claude Opus 4.7 --- .../order/applicationForm/laboratoryTests.vue | 161 ++++++++++++------ 1 file changed, 112 insertions(+), 49 deletions(-) diff --git a/openhis-ui-vue3/src/views/inpatientDoctor/home/components/order/applicationForm/laboratoryTests.vue b/openhis-ui-vue3/src/views/inpatientDoctor/home/components/order/applicationForm/laboratoryTests.vue index 7bb79f48b..47e1b591e 100755 --- a/openhis-ui-vue3/src/views/inpatientDoctor/home/components/order/applicationForm/laboratoryTests.vue +++ b/openhis-ui-vue3/src/views/inpatientDoctor/home/components/order/applicationForm/laboratoryTests.vue @@ -6,9 +6,26 @@