From 132cb0d089c7734f3eb3e858bd741fbc60dbdc9d Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期二, 20 一月 2026 16:46:25 +0800
Subject: [PATCH] 【丽水】获取随访统计比例 查询优化
---
smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java | 65 +++++++++++++++++++++++++++++++-
1 files changed, 63 insertions(+), 2 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
index 3d1cb8f..f9a5cb8 100644
--- a/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
@@ -66,6 +66,8 @@
@Autowired
private RedisCache redisCache;
+ @Autowired
+ private PatArchivetagServiceImpl patArchivetagServiceImpl;
/**
@@ -565,8 +567,11 @@
@Override
public List<PatArchive> patInfoByContion(PatArchiveReq patArchive) {
List<PatArchive> patArchives = new ArrayList<>();
- if(ObjectUtils.isNotEmpty(patArchive.getPageNum())){
- patArchive.setPageNum(patArchive.getPageNum()*patArchive.getPageSize()-patArchive.getPageNum());
+ if (ObjectUtils.isNotEmpty(patArchive.getPageNum()) && ObjectUtils.isNotEmpty(patArchive.getPageSize())) {
+ patArchive.setPn((patArchive.getPageNum() - 1) * patArchive.getPageSize());
+ patArchive.setPs(patArchive.getPageSize());
+ patArchive.setPageNum(null);
+ patArchive.setPageSize(null);
}
//鏍规嵁鏉′欢鑾峰彇鎮h�呬俊鎭�
// List<PatArchive> patArchiveList = patArchiveMapper.patInfoByContion(patArchive);
@@ -789,13 +794,69 @@
} else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 4) {
// 鏌ョ湅浣忛櫌 1 鏌ョ湅闂ㄨ瘖 2 鏌ョ湅浣撴 3 鏌ョ湅鍑洪櫌 4
patArchiveReq.setCry(1);
+ log.info("--------鏌ョ湅鍑洪櫌鐨勫叆鍙傚�间负锛歿}", patArchiveReq);
List<PatArchiveOthreInfo> patArchives1 = patArchiveMapper.selectPatArchiveInfoByInhospQC(patArchiveReq);
+ log.info("--------鏌ョ湅鍑洪櫌鐨勮繑鍙傚�间负锛歿}", patArchives1.size());
if (CollectionUtils.isNotEmpty(patArchives1)) {
patArchiveList.addAll(patArchives1);
}
}
+// //鏌ヨtagName
+// List<Long> patIds = patArchiveList.stream().map(PatArchiveOthreInfo::getId).distinct().collect(Collectors.toList());
+// Map<Long, String> patTagMap= patArchivetagMapper.getTagsByPatIds(patArchiveReq.getOrgid(),patIds);
+// //瑁呴厤tagName
+// if(ObjectUtils.isNotEmpty(patTagMap)){
+// patArchiveList.forEach(patArchiveOthreInfo -> {
+// String tagName = patTagMap.get(patArchiveOthreInfo.getId());
+// if(StringUtils.isNotEmpty(tagName)){
+// patArchiveOthreInfo.setTag(tagName);
+// }
+// });
+// }
return patArchiveList;
}
+
+ /**
+ * 鑾峰彇鎮h�呬俊鎭�(鍘婚噸)
+ *
+ * @param patArchiveReq
+ * @return
+ */
+// @Override
+ /**
+ * 鑾峰彇鎮h�呬俊鎭�绘暟锛堝幓閲嶏級
+ *
+ * @param patArchiveReq
+ * @return
+ */
+ @Override
+ public Long getPatientInfoQCCount(PatArchiveReq patArchiveReq) {
+ if (CollectionUtils.isEmpty(patArchiveReq.getLeavehospitaldistrictcodes()) || patArchiveReq.getLeavehospitaldistrictcodes().size() == 0) {
+ patArchiveReq.setLeavehospitaldistrictcodes(null);
+ }
+ if (CollectionUtils.isEmpty(patArchiveReq.getLeaveldeptcodes()) || patArchiveReq.getLeaveldeptcodes().size() == 0) {
+ patArchiveReq.setLeaveldeptcodes(null);
+ }
+
+ Long count = 0L;
+ if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 1) {
+ // 鏌ョ湅浣忛櫌 1 鏌ョ湅闂ㄨ瘖 2 鏌ョ湅浣撴 3 鏌ョ湅鍑洪櫌 4
+ patArchiveReq.setCry(0);
+ count = patArchiveMapper.countPatArchiveInfoByInhospQC(patArchiveReq);
+ } else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 2) {
+ // 鏌ョ湅浣忛櫌 1 鏌ョ湅闂ㄨ瘖 2 鏌ョ湅浣撴 3 鏌ョ湅鍑洪櫌 4
+ count = patArchiveMapper.countPatArchiveInfoByOuthospQC(patArchiveReq);
+ } else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 3) {
+ // 鏌ョ湅浣忛櫌 1 鏌ョ湅闂ㄨ瘖 2 鏌ョ湅浣撴 3 鏌ョ湅鍑洪櫌 4
+ count = patArchiveMapper.countPatArchiveInfoByPhysicalQC(patArchiveReq);
+ } else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 4) {
+ // 鏌ョ湅浣忛櫌 1 鏌ョ湅闂ㄨ瘖 2 鏌ョ湅浣撴 3 鏌ョ湅鍑洪櫌 4
+ patArchiveReq.setCry(1);
+ count = patArchiveMapper.countPatArchiveInfoByInhospQC(patArchiveReq);
+ }
+
+ return count;
+ }
}
--
Gitblit v1.9.3