Explorar o código

新增个性化规则

hecc %!s(int64=2) %!d(string=hai) anos
pai
achega
d418060759

+ 14 - 6
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/xiamen/threelevelward/THR03010.java

@@ -11,10 +11,11 @@ import com.lantone.qc.pub.util.DateUtil;
 import com.lantone.qc.pub.util.StringUtil;
 import org.apache.commons.lang3.time.DateUtils;
 import org.springframework.stereotype.Component;
-
-import java.text.SimpleDateFormat;
 import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
 import java.util.Date;
+import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 
@@ -97,16 +98,23 @@ public class THR03010 extends QCCatalogue {
                     }
                 }
 
+                HashSet<Date> dateHashSet = new HashSet<>();
+                for (Date date : wordDateList){
+                    dateHashSet.add(DateUtil.getFirstTimeOfDay(date));
+                }
+                ArrayList<Date> dateList = new ArrayList(dateHashSet);
+                Collections.sort(dateList, Comparator.comparing(Date :: getTime));
+
                 //如果记录时间没有3天
-                if (wordDateList.size() < 3) {
+                if (dateList.size() < 3) {
                     status.set("-1");
                     return;
                 }
                 //如果住院当天开始做记录
-                if (DateUtils.isSameDay(stringDate.get(0), wordDateList.get(0))) {
+                if (DateUtils.isSameDay(stringDate.get(0), dateList.get(0))) {
                     for (int i = 1; i <= 2; i++) {
                         //如果时间不相等则时间不连续
-                        if (!DateUtils.isSameDay(stringDate.get(i), wordDateList.get(i))) {
+                        if (!DateUtils.isSameDay(stringDate.get(i), dateList.get(i))) {
                             status.set("-1");
                             return;
                         }
@@ -117,7 +125,7 @@ public class THR03010 extends QCCatalogue {
                 else {
                     for (int i = 0; i <= 3; i++) {
                         //如果时间不相等则时间不连续
-                        if (!DateUtils.isSameDay(stringDate.get(i + 1), wordDateList.get(i))) {
+                        if (!DateUtils.isSameDay(stringDate.get(i + 1), dateList.get(i))) {
                             status.set("-1");
                             return;
                         }