浏览代码

修复医嘱 24 小时内的判断

xiao 3 年之前
父节点
当前提交
427aab47bf

+ 1 - 1
src/main/java/thyyxxk/webserver/service/zhuyuanyisheng/YiZhuLuRuServer.java

@@ -511,7 +511,7 @@ public class YiZhuLuRuServer {
 
         UserInfo userInfo = redisLikeService.getUserInfoByToken();
 
-        if (!DateUtil.judgmentDate(yz.getStartTime(), new Date())) {
+        if (!DateUtil.within24Hours(yz.getStartTime())) {
             return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "只能对24小时内的医嘱进行作废处理");
         }
 

+ 13 - 0
src/main/java/thyyxxk/webserver/utils/DateUtil.java

@@ -336,13 +336,26 @@ public class DateUtil {
 
     public static boolean judgmentDate(Date date1, Date date2) {
         long cha = date1.getTime() - date2.getTime();
+        System.out.println(cha);
         if (cha < 0) {
             return false;
         }
         double result = cha * 1.0 / (1000 * 60 * 60);
+        System.out.println(result);
         return result <= 24;
     }
 
+    public static boolean within24Hours(Date date) {
+        long l = System.currentTimeMillis();
+        long mills = l - date.getTime();
+        int requiredHours = (int) (mills / 1000 / 3600);
+        return requiredHours <= 24;
+    }
+
+    public static void main(String[] args) {
+        System.out.println(within24Hours(DateUtil.parse("2022-12-04 08:00:00")));
+    }
+
     public static long timeDifference(String endDate, String startDate, String tsf) {
         try {
             long diff = DateUtil.parse(endDate).getTime() - DateUtil.parse(startDate).getTime();