ソースを参照

义乌中心医院:住院期间连续三天未记录更新

wangsy 4 年 前
コミット
ee58be0e66

+ 13 - 9
kernel/src/main/java/com/lantone/qc/kernel/catalogue/ywzxyy/threelevelward/THR0588.java

@@ -64,8 +64,8 @@ public class THR0588 extends QCCatalogue {
         /******************************************术后首程********************************************************/
         if (inputInfo.getOperationDocs().size() > 0) {
             List<String> recordDateList = inputInfo.getOperationDocs().stream().map(OperationDoc::getOperationDiscussionDoc).filter(Objects::nonNull)
-                    .map(OperationDiscussionDoc::getStructureMap).filter(i -> StringUtil.isNotBlank(i.get("病历日期")))
-                    .map(i -> i.get("病历日期")).collect(Collectors.toList());
+                    .map(OperationDiscussionDoc::getStructureMap).filter(i -> StringUtil.isNotBlank(i.get("记录时间")))
+                    .map(i -> i.get("记录时间")).collect(Collectors.toList());
             for (String recordDateStr : recordDateList) {
                 Date recordDate = StringUtil.parseDateTime(recordDateStr);
                 if (recordDate == null) {
@@ -78,8 +78,8 @@ public class THR0588 extends QCCatalogue {
         if (inputInfo.getTransferRecordDocs() != null) {
             TransferRecordDoc transferRecordDocs = inputInfo.getTransferRecordDocs();
             List<String> intoRecordDateList = transferRecordDocs.getTransferIntoDocs()
-                    .stream().map(TransferIntoDoc::getStructureMap).filter(i -> StringUtil.isNotBlank(i.get("病历日期")))
-                    .map(i -> i.get("病历日期")).collect(Collectors.toList());
+                    .stream().map(TransferIntoDoc::getStructureMap).filter(i -> StringUtil.isNotBlank(i.get("记录时间")))
+                    .map(i -> i.get("记录时间")).collect(Collectors.toList());
             for (String recordDateStr : intoRecordDateList) {
                 Date recordDate = StringUtil.parseDateTime(recordDateStr);
                 if (recordDate == null) {
@@ -88,8 +88,8 @@ public class THR0588 extends QCCatalogue {
                 dateThreeLevelDay.add(recordDate);
             }
             intoRecordDateList = transferRecordDocs.getTransferOutDocs()
-                    .stream().map(TransferOutDoc::getStructureMap).filter(i -> StringUtil.isNotBlank(i.get("病历日期")))
-                    .map(i -> i.get("病历日期")).collect(Collectors.toList());
+                    .stream().map(TransferOutDoc::getStructureMap).filter(i -> StringUtil.isNotBlank(i.get("记录时间")))
+                    .map(i -> i.get("记录时间")).collect(Collectors.toList());
             for (String recordDateStr : intoRecordDateList) {
                 Date recordDate = StringUtil.parseDateTime(recordDateStr);
                 if (recordDate == null) {
@@ -101,8 +101,8 @@ public class THR0588 extends QCCatalogue {
         /******************************************阶段小结********************************************************/
         if (inputInfo.getStagesSummaryDocs().size() > 0) {
             List<String> intoRecordDateList = inputInfo.getStagesSummaryDocs().stream().map(StagesSummaryDoc::getStructureMap)
-                    .filter(i -> StringUtil.isNotBlank(i.get("病历日期")))
-                    .map(i -> i.get("病历日期")).collect(Collectors.toList());
+                    .filter(i -> StringUtil.isNotBlank(i.get("记录时间")))
+                    .map(i -> i.get("记录时间")).collect(Collectors.toList());
             for (String recordDateStr : intoRecordDateList) {
                 Date recordDate = StringUtil.parseDateTime(recordDateStr);
                 if (recordDate == null) {
@@ -111,13 +111,17 @@ public class THR0588 extends QCCatalogue {
                 dateThreeLevelDay.add(recordDate);
             }
         }
+        //出院日期
+        if(leaveDate != null){
+            dateThreeLevelDay.add(leaveDate);
+        }
         dateThreeLevelDay = dateThreeLevelDay.stream().sorted().collect(Collectors.toList());
         int timeCha = 259200000;
         //获取连续3天无查房记录的时间
         for (int i = 0; i < dateThreeLevelDay.size(); i++) {
             if (i + 1 < dateThreeLevelDay.size()) {
                 if (DateUtil.dateZeroClear(dateThreeLevelDay.get(i + 1)).getTime() - DateUtil.dateZeroClear(dateThreeLevelDay.get(i)).getTime() > timeCha &&
-                        dateThreeLevelDay.get(i + 1).before(leaveDate)) {
+                        !dateThreeLevelDay.get(i + 1).after(leaveDate)) {
                     infoAppend(sb, dateThreeLevelDay.get(i), dateThreeLevelDay.get(i + 1));
                 }
             }