From a68ae036b6fcc4293ea9d45e192085451ede0ef1 Mon Sep 17 00:00:00 2001 From: andy <1042025947@qq.com> Date: Mon, 6 Apr 2026 08:51:00 +0800 Subject: [PATCH] 1 --- .../impl/ApproveStatusLeaveExchangeProcessor.java | 10 +++++++++- .../service/impl/RzLeaveDetailServiceImpl.java | 10 +++++----- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/evo-admin/src/main/java/com/evo/ding/processor/approveStatus/impl/ApproveStatusLeaveExchangeProcessor.java b/evo-admin/src/main/java/com/evo/ding/processor/approveStatus/impl/ApproveStatusLeaveExchangeProcessor.java index d4f06af..ab5ddfd 100644 --- a/evo-admin/src/main/java/com/evo/ding/processor/approveStatus/impl/ApproveStatusLeaveExchangeProcessor.java +++ b/evo-admin/src/main/java/com/evo/ding/processor/approveStatus/impl/ApproveStatusLeaveExchangeProcessor.java @@ -4,7 +4,9 @@ import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONArray; import com.alibaba.fastjson2.JSONObject; import com.aliyun.dingtalkworkflow_1_0.models.GetProcessInstanceResponseBody; +import com.evo.common.constant.Constants; import com.evo.common.core.domain.entity.SysDictData; +import com.evo.common.utils.DataUtils; import com.evo.common.utils.StringUtils; import com.evo.ding.processor.approveStatus.AttendanceApproveStatusChangeExchangeProcessor; import com.evo.personnelMatters.domain.RzLeave; @@ -15,6 +17,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; import java.util.Date; /** @@ -102,6 +105,7 @@ public class ApproveStatusLeaveExchangeProcessor implements AttendanceApproveSta //获取最后一天 endTime = new Date(approveInfo.getLong("toTime")); } + RzLeave rzLeave = getIRzLeaveService().selectRzLeaveByUserId(sysStaff.getUserId()); RzLeaveDetail rzLeaveDetail = new RzLeaveDetail(); rzLeaveDetail.setName(sysStaff.getName()); @@ -109,7 +113,11 @@ public class ApproveStatusLeaveExchangeProcessor implements AttendanceApproveSta rzLeaveDetail.setLeaveEndTime(endTime); rzLeaveDetail.setLeaveId(rzLeave.getId()); rzLeaveDetail.setType(dictCode); - rzLeaveDetail.setLeaveHour(extValueJson.getInteger("durationInHour")); + if("调休".equals(tag)){ + rzLeaveDetail.setLeaveHour(new BigDecimal(extValueJson.getDouble("durationInDay")).multiply(Constants.DAY_WORK_HOUR).intValue()); + }else{ + rzLeaveDetail.setLeaveHour(extValueJson.getInteger("durationInHour")); + } rzLeaveDetail.setRemarks("钉钉"+tag); rzLeaveDetail.setProcessInstanceId(processInstanceId); getIRzLeaveDetailService().insertRzLeaveDetail(rzLeaveDetail); diff --git a/evo-admin/src/main/java/com/evo/personnelMatters/service/impl/RzLeaveDetailServiceImpl.java b/evo-admin/src/main/java/com/evo/personnelMatters/service/impl/RzLeaveDetailServiceImpl.java index 49ec8e0..d0aa50b 100644 --- a/evo-admin/src/main/java/com/evo/personnelMatters/service/impl/RzLeaveDetailServiceImpl.java +++ b/evo-admin/src/main/java/com/evo/personnelMatters/service/impl/RzLeaveDetailServiceImpl.java @@ -89,11 +89,11 @@ public class RzLeaveDetailServiceImpl extends ServiceImpl