|
@@ -21,6 +21,7 @@ import com.lantone.qc.pub.model.label.LeaveHospitalLabel;
|
|
import com.lantone.qc.pub.model.label.ThreeLevelWardLabel;
|
|
import com.lantone.qc.pub.model.label.ThreeLevelWardLabel;
|
|
import com.lantone.qc.pub.util.DateUtil;
|
|
import com.lantone.qc.pub.util.DateUtil;
|
|
import com.lantone.qc.pub.util.StringUtil;
|
|
import com.lantone.qc.pub.util.StringUtil;
|
|
|
|
+import org.apache.commons.lang3.time.DateUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Component;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
@@ -79,8 +80,8 @@ public class THR03076 extends QCCatalogue {
|
|
drugName = structMap.get("医嘱项目名称");
|
|
drugName = structMap.get("医嘱项目名称");
|
|
value = structMap.get("医嘱单次剂量");
|
|
value = structMap.get("医嘱单次剂量");
|
|
startDateStr = structMap.get("医嘱开始时间");
|
|
startDateStr = structMap.get("医嘱开始时间");
|
|
-// startDate = DateUtil.dateZeroClear(StringUtil.parseDateTime(startDateStr));
|
|
|
|
- startDate = StringUtil.parseDateTime(startDateStr);
|
|
|
|
|
|
+ startDate = DateUtil.dateZeroClear(StringUtil.parseDateTime(startDateStr));
|
|
|
|
+// startDate = StringUtil.parseDateTime(startDateStr);
|
|
if (extData != null && extData.containsKey(startDate) && extData.get(startDate).equals(drugName)) {
|
|
if (extData != null && extData.containsKey(startDate) && extData.get(startDate).equals(drugName)) {
|
|
continue; //THR02985 医嘱有抗生素使用病程无记录,规则中没报未记录的抗生素继续走这条规则,报未记录的抗生素过滤
|
|
continue; //THR02985 医嘱有抗生素使用病程无记录,规则中没报未记录的抗生素继续走这条规则,报未记录的抗生素过滤
|
|
}
|
|
}
|
|
@@ -187,7 +188,8 @@ public class THR03076 extends QCCatalogue {
|
|
Date wardDate = StringUtil.parseDateTime(wardDateStr);
|
|
Date wardDate = StringUtil.parseDateTime(wardDateStr);
|
|
List<Double> wardUsage = wdvMap.getValue();
|
|
List<Double> wardUsage = wdvMap.getValue();
|
|
if ((adDate.before(wardDate) && !CatalogueUtil.compareTime(adDate, wardDate, 48 * 60L))
|
|
if ((adDate.before(wardDate) && !CatalogueUtil.compareTime(adDate, wardDate, 48 * 60L))
|
|
- || (wardDate.before(adDate) && !CatalogueUtil.compareTime(wardDate, adDate, 24 * 60L))) {
|
|
|
|
|
|
+ || (wardDate.before(adDate) && !CatalogueUtil.compareTime(wardDate, adDate, 24 * 60L)) ||
|
|
|
|
+ DateUtils.isSameDay(wardDate, adDate)) {
|
|
wardUsage.removeAll(adUsage);//比如adUsage有1.0、2.0,wardUsage中有2.0、3.0,removeAll之后wardUsage只剩3.0
|
|
wardUsage.removeAll(adUsage);//比如adUsage有1.0、2.0,wardUsage中有2.0、3.0,removeAll之后wardUsage只剩3.0
|
|
adDateStr = DateUtil.formatDateTime(adDate);
|
|
adDateStr = DateUtil.formatDateTime(adDate);
|
|
if (wardUsage.size() > 0 && !sb.toString().contains(drugKey + "(" + adDateStr + ")")) {
|
|
if (wardUsage.size() > 0 && !sb.toString().contains(drugKey + "(" + adDateStr + ")")) {
|
|
@@ -220,8 +222,8 @@ public class THR03076 extends QCCatalogue {
|
|
for (Map<String, String> structMap : docAdvStruct) {
|
|
for (Map<String, String> structMap : docAdvStruct) {
|
|
drugName = structMap.get("医嘱项目名称");
|
|
drugName = structMap.get("医嘱项目名称");
|
|
startDateStr = structMap.get("医嘱开始时间");
|
|
startDateStr = structMap.get("医嘱开始时间");
|
|
-// startDate = DateUtil.dateZeroClear(StringUtil.parseDateTime(startDateStr));
|
|
|
|
- startDate = StringUtil.parseDateTime(startDateStr);
|
|
|
|
|
|
+ startDate = DateUtil.dateZeroClear(StringUtil.parseDateTime(startDateStr));
|
|
|
|
+// startDate = StringUtil.parseDateTime(startDateStr);
|
|
if (antibioticDateTimes.containsKey(drugName)) {
|
|
if (antibioticDateTimes.containsKey(drugName)) {
|
|
Map<Date, Integer> map = antibioticDateTimes.get(drugName);
|
|
Map<Date, Integer> map = antibioticDateTimes.get(drugName);
|
|
if (map.containsKey(startDate)) {
|
|
if (map.containsKey(startDate)) {
|