فهرست منبع

保存病历时不判断是否覆盖,获取历史病历时判断是否覆盖

zhaops 5 سال پیش
والد
کامیت
a748cd99b3
1فایلهای تغییر یافته به همراه30 افزوده شده و 1 حذف شده
  1. 30 1
      xlcs-service/src/main/java/com/diagbot/facade/InquiryInfoFacade.java

+ 30 - 1
xlcs-service/src/main/java/com/diagbot/facade/InquiryInfoFacade.java

@@ -251,6 +251,35 @@ public class InquiryInfoFacade extends InquiryInfoServiceImpl {
 
         //业务获取
         List<HistoryInquiryDTO> historyInquiryDTOList = Lists.newLinkedList();
+        QueryWrapper<InquiryInfo> inquiryInfoQueryWrapper = new QueryWrapper<>();
+        inquiryInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("hospital_code", historyInquiryVO.getHospitalCode())
+                .eq(StringUtil.isNotBlank(historyInquiryVO.getPatName()), "pat_name", historyInquiryVO.getPatName())
+                .eq(StringUtil.isNotBlank(historyInquiryVO.getIdNum()), "id_num", historyInquiryVO.getIdNum())
+                .eq(StringUtil.isNotBlank(historyInquiryVO.getMachineId()), "machine_id", historyInquiryVO.getMachineId())
+                .orderByDesc("gmt_modified");
+        List<InquiryInfo> inquiryInfoList = this.list(inquiryInfoQueryWrapper);
+        if (ListUtil.isNotEmpty(inquiryInfoList)) {
+            if (sysSetFacade.isCover(historyInquiryVO.getHospitalCode())) {
+                List<String> keys = ListUtil.newArrayList();
+                for (int i = 0; i < inquiryInfoList.size(); i++) {
+                    InquiryInfo myInquiryInfo = inquiryInfoList.get(i);
+                    if (StringUtil.isNotBlank(myInquiryInfo.getPatName())
+                            && StringUtil.isNotBlank(myInquiryInfo.getIdNum())
+                            && (0 != myInquiryInfo.getIdType())) {
+                        String key = myInquiryInfo.getIdType() + "_" + myInquiryInfo.getIdNum()
+                                + "_" + myInquiryInfo.getPatName()
+                                + "_" + DateUtil.format(myInquiryInfo.getGmtModified(), DateUtil.DATE_FORMAT);
+                        if (keys.contains(key)) {
+                            inquiryInfoList.remove(i--);
+                        } else {
+                            keys.add(key);
+                        }
+                    }
+                }
+            }
+        }
+   /*     List<HistoryInquiryDTO> historyInquiryDTOList = Lists.newLinkedList();
         QueryWrapper<InquiryInfo> inquiryInfoQueryWrapper = new QueryWrapper<>();
         //配置了覆盖项时
         if (sysSetFacade.isCover(historyInquiryVO.getHospitalCode())) {
@@ -316,7 +345,7 @@ public class InquiryInfoFacade extends InquiryInfoServiceImpl {
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
                 .eq("hospital_code", historyInquiryVO.getHospitalCode())
                 .orderByDesc("gmt_modified");
-        List<InquiryInfo> inquiryInfoList = this.list(inquiryInfoQueryWrapper);
+       List<InquiryInfo> inquiryInfoList = this.list(inquiryInfoQueryWrapper);*/
         if (ListUtil.isNotEmpty(inquiryInfoList)) {
             List<Long> inquiryIdList = inquiryInfoList.stream().map(i -> i.getId()).collect(Collectors.toList());
             QueryWrapper<InquiryDetail> inquiryDetailQueryWrapper = new QueryWrapper<>();