From 9bbf7c6c088392ac89f631db3c712aee4dbb7454 Mon Sep 17 00:00:00 2001 From: wangjian963 <15215920+aprilry@user.noreply.gitee.com> Date: Mon, 15 Jun 2026 16:55:17 +0800 Subject: [PATCH] =?UTF-8?q?651=20[=E4=BD=8F=E9=99=A2=E5=8C=BB=E7=94=9F?= =?UTF-8?q?=E7=AB=99-=E6=89=8B=E6=9C=AF=E7=94=B3=E8=AF=B7]=20=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E6=A3=80=E7=B4=A2=E5=87=BA=E5=B7=B2=E5=90=AF=E7=94=A8?= =?UTF-8?q?=E7=9A=84=E6=89=8B=E6=9C=AF=E9=A1=B9=E7=9B=AE=EF=BC=88=E5=A6=82?= =?UTF-8?q?=EF=BC=9A=E2=80=9C=E8=A1=80=E7=AE=A1=E9=97=AD=E5=90=88=E5=88=87?= =?UTF-8?q?=E5=89=B2=E5=88=80=E2=80=9D=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DoctorStationAdviceAppServiceImpl.java | 21 ------ .../web/doctorstation/dto/SurgeryItemDto.java | 6 ++ .../DoctorStationAdviceAppMapper.xml | 6 +- .../order/applicationForm/surgery.vue | 72 ++++++++++++------- 4 files changed, 58 insertions(+), 47 deletions(-) diff --git a/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java index 5ec435011..737da6586 100755 --- a/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java +++ b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java @@ -2697,21 +2697,6 @@ public class DoctorStationAdviceAppServiceImpl implements IDoctorStationAdviceAp log.info("getSurgeryPage 开始: orgId={}, page={}/{}, searchKey={}", organizationId, pageNo, pageSize, searchKey); long start = System.currentTimeMillis(); - // 无搜索时尝试从 Redis 缓存读取(手术项目变更频率低,适合缓存) - String safeOrgId = organizationId != null ? organizationId.toString() : ""; - String cacheKey = "surgery:page:" + safeOrgId + ":" + pageNo + ":" + pageSize; - boolean useCache = (searchKey == null || searchKey.trim().isEmpty()); - - if (useCache) { - Object cachedObj = redisCache.getCacheObject(cacheKey); - if (cachedObj instanceof com.baomidou.mybatisplus.extension.plugins.pagination.Page) { - log.info("从 Redis 缓存获取手术项目, key: {}, records: {}", cacheKey, - ((IPage) cachedObj).getRecords().size()); - return (IPage) cachedObj; - } - } - - // 使用 MyBatis Plus 分页查询 IPage result = doctorStationAdviceAppMapper.getSurgeryPage( new Page<>(pageNo, pageSize), PublicationStatus.ACTIVE.getValue(), @@ -2720,12 +2705,6 @@ public class DoctorStationAdviceAppServiceImpl implements IDoctorStationAdviceAp log.info("getSurgeryPage 完成: {}ms, total={}, records={}", System.currentTimeMillis() - start, result.getTotal(), result.getRecords().size()); - // 无搜索时将结果写入缓存 - if (useCache && result instanceof com.baomidou.mybatisplus.extension.plugins.pagination.Page) { - redisCache.setCacheObject(cacheKey, result, (int) CACHE_EXPIRE_HOURS, java.util.concurrent.TimeUnit.HOURS); - log.info("缓存手术项目, key: {}, 过期时间: {} 小时", cacheKey, CACHE_EXPIRE_HOURS); - } - return result; } diff --git a/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/dto/SurgeryItemDto.java b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/dto/SurgeryItemDto.java index fc41bdc79..42a9c6c1c 100644 --- a/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/dto/SurgeryItemDto.java +++ b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/doctorstation/dto/SurgeryItemDto.java @@ -45,6 +45,12 @@ public class SurgeryItemDto { @JsonProperty("unitCode_dictText") private String unitCodeDictText; + /** 拼音码(前端穿梭框本地搜索用) */ + private String pyStr; + + /** 业务编号(前端穿梭框本地搜索用) */ + private String busNo; + /** 所需标本编码(来自诊疗目录配置,对应字典 specimen_code 的 dictValue) */ private String specimenCode; } diff --git a/healthlink-his-server/healthlink-his-application/src/main/resources/mapper/doctorstation/DoctorStationAdviceAppMapper.xml b/healthlink-his-server/healthlink-his-application/src/main/resources/mapper/doctorstation/DoctorStationAdviceAppMapper.xml index 2fe602fd9..739d2fa73 100755 --- a/healthlink-his-server/healthlink-his-application/src/main/resources/mapper/doctorstation/DoctorStationAdviceAppMapper.xml +++ b/healthlink-his-server/healthlink-his-application/src/main/resources/mapper/doctorstation/DoctorStationAdviceAppMapper.xml @@ -903,7 +903,9 @@ t2.ID AS charge_item_definition_id, t2.price AS price, t1.permitted_unit_code AS unit_code, - COALESCE(sdd.dict_label, t1.permitted_unit_code) AS unit_code_dict_text + COALESCE(sdd.dict_label, t1.permitted_unit_code) AS unit_code_dict_text, + t1.py_str AS py_str, + t1.bus_no AS bus_no FROM wor_activity_definition t1 LEFT JOIN adm_charge_item_definition t2 ON t2.instance_id = t1.ID @@ -915,6 +917,7 @@ AND sdd.dict_type = 'unit_code' AND sdd.status = '0' WHERE t1.delete_flag = '0' + AND t1.status_enum = #{statusEnum} AND (t1.category_code = '手术' OR t1.category_code = '24') AND (t1.name ILIKE '%' || #{searchKey} || '%' OR t1.py_str ILIKE '%' || #{searchKey} || '%') @@ -949,6 +952,7 @@ AND sdd.dict_type = 'unit_code' AND sdd.status = '0' WHERE t1.delete_flag = '0' + AND t1.status_enum = #{statusEnum} AND t1.category_code = #{categoryCode} AND (t1.name ILIKE '%' || #{searchKey} || '%' OR t1.py_str ILIKE '%' || #{searchKey} || '%') diff --git a/healthlink-his-ui/src/views/inpatientDoctor/home/components/order/applicationForm/surgery.vue b/healthlink-his-ui/src/views/inpatientDoctor/home/components/order/applicationForm/surgery.vue index eac892821..005bcb7cb 100755 --- a/healthlink-his-ui/src/views/inpatientDoctor/home/components/order/applicationForm/surgery.vue +++ b/healthlink-his-ui/src/views/inpatientDoctor/home/components/order/applicationForm/surgery.vue @@ -5,7 +5,20 @@ -->