diff --git a/yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/date/DateUtils.java b/yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/date/DateUtils.java index e9f8e911..11d0e724 100644 --- a/yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/date/DateUtils.java +++ b/yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/date/DateUtils.java @@ -265,4 +265,17 @@ public class DateUtils { } return list; } + + public static Date buildTimeYYYYMMddHHmm(String yyyy_MM_dd, String HH_mm) { + String[] yyyy_MM_dds = yyyy_MM_dd.split("-"); + String[] time = HH_mm.split(":"); + return buildTime(Integer.parseInt(yyyy_MM_dds[0]), Integer.parseInt(yyyy_MM_dds[1]), Integer.parseInt(yyyy_MM_dds[2]), + Integer.parseInt(time[0]), Integer.parseInt(time[1]), 0); + } + + public static Date buildTimeYYYYMMdd(String yyyy_MM_dd) { + String[] yyyy_MM_dds = yyyy_MM_dd.split("-"); + return buildTime(Integer.parseInt(yyyy_MM_dds[0]), Integer.parseInt(yyyy_MM_dds[1]), Integer.parseInt(yyyy_MM_dds[2]), + 0, 0, 0); + } } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogInstanceServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogInstanceServiceImpl.java index b1c18797..e28d5690 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogInstanceServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogInstanceServiceImpl.java @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.system.service.worklog; +import cn.hutool.core.date.DateUtil; import cn.hutool.json.JSONObject; import cn.iocoder.yudao.framework.common.util.date.DateUtils; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; @@ -108,14 +109,15 @@ public class LogInstanceServiceImpl implements LogInstanceService { logInstance.setName(adminUserDO.getNickname() + "的" + logFormDo.getName()); // 插入提交状态 - Date endTime = null; Date thisDate = new Date(); if (logRuleDO.getType() == 1) { - endTime = DateUtils.buildHHmmTime(logRuleDO.getEndTime()); + Date endTime = DateUtils.buildTimeYYYYMMddHHmm(createReqVO.getTime(), logRuleDO.getEndTime()); + logInstance.setStatus(thisDate.getTime() < endTime.getTime() ? 1 : 2); } else { - endTime = DateUtils.buildWeekHHmmTime(logRuleDO.getEndTime()); + Date beginTime = DateUtil.beginOfWeek(thisDate); + Date endTime = DateUtils.buildWeekHHmmTime(logRuleDO.getEndTime()); + logInstance.setStatus(DateUtil.isIn(thisDate, beginTime, endTime) ? 1 : 2); } - logInstance.setStatus(thisDate.getTime() < endTime.getTime() ? 1 : 2); // 插入 logInstanceMapper.insert(logInstance);