浏览代码

FIRP0225 出院时间与出院记录时间不一致,具体到天 问题更新(时间精确到天数即可)
DateUtil工具类修改方法,转中文日期方法中多空格

hecc 3 年之前
父节点
当前提交
8b91a49550

+ 12 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstpagerecord/FIRP0225.java

@@ -5,9 +5,12 @@ import com.lantone.qc.kernel.util.CatalogueUtil;
 import com.lantone.qc.pub.Content;
 import com.lantone.qc.pub.model.InputInfo;
 import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.util.DateUtil;
 import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.Map;
 
 /**
@@ -22,14 +25,20 @@ public class FIRP0225 extends QCCatalogue {
         status.set("0");
         if (inputInfo.getFirstPageRecordDoc() != null && inputInfo.getFirstPageRecordDoc().getStructureMap() != null
                 && inputInfo.getLeaveHospitalDoc() != null && inputInfo.getLeaveHospitalDoc().getStructureMap() != null) {
-            Map<String, String> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureMap();
+             Map<String, String> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureMap();
             Map<String, String> leaveHospitalStructureMap = inputInfo.getLeaveHospitalDoc().getStructureMap();
             String firstDischargeTime = firstpageStructureMap.get(Content.dischargeTime);//病案首页出院时间
             String dischargeTime = leaveHospitalStructureMap.get(Content.dischargeTime);//出院小结出院时间
-            if (StringUtil.isBlank(firstDischargeTime) || StringUtil.isBlank(dischargeTime)){
+
+            Date firstDate = DateUtil.parseDate(firstDischargeTime,DateUtil.DATE_TIME_FORMAT); //将带字符串的YYYY-DD-MM HH:MM:SS 转成日期
+            Date dischargeDate = DateUtil.parseDateTime(dischargeTime,DateUtil.FORMAT_LONG_CN_MI);
+            String firstDatStr = DateUtil.format(firstDate, DateUtil.DATE_FORMAT);  //将对应的YYYY-MM-DD HH:MM:SS 日期转成对应的YYYY-MM-DD字符串
+            String dischargeDateStr = DateUtil.format(dischargeDate, DateUtil.DATE_FORMAT);
+
+            if (StringUtil.isBlank(firstDatStr) || StringUtil.isBlank(dischargeDateStr)){
                 return;
             }
-            if (!CatalogueUtil.equalsDate(firstDischargeTime, dischargeTime, "yyyy-MM-dd")) {
+            if (!CatalogueUtil.equalsDate(firstDatStr, dischargeDateStr, "yyyy-MM-dd")) {
                 status.set("-1");
             }
         }

+ 3 - 3
public/src/main/java/com/lantone/qc/pub/util/DateUtil.java

@@ -62,17 +62,17 @@ public class DateUtil {
     /**
      * 中文全称  如:2010年12月01日  23时15分06秒
      */
-    public static String FORMAT_LONG_CN = "yyyy年MM月dd日  HH时mm分ss秒";
+    public static String FORMAT_LONG_CN = "yyyy年MM月dd日 HH时mm分ss秒";
 
     /**
      * 中文全称精确到分钟  如:2010年12月01日  23时15分
      */
-    public static String FORMAT_LONG_CN_MI = "yyyy年MM月dd日  HH时mm分";
+    public static String FORMAT_LONG_CN_MI = "yyyy年MM月dd日 HH时mm分";
 
     /**
      * 精确到毫秒的完整中文时间
      */
-    public static String FORMAT_FULL_CN = "yyyy年MM月dd日  HH时mm分ss秒SSS毫秒";
+    public static String FORMAT_FULL_CN = "yyyy年MM月dd日 HH时mm分ss秒SSS毫秒";
 
 
     /**