This commit is contained in:
andy 2026-04-06 08:51:00 +08:00
parent 37323443d3
commit a68ae036b6
2 changed files with 14 additions and 6 deletions

View File

@ -4,7 +4,9 @@ import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONArray; import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.aliyun.dingtalkworkflow_1_0.models.GetProcessInstanceResponseBody; 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.core.domain.entity.SysDictData;
import com.evo.common.utils.DataUtils;
import com.evo.common.utils.StringUtils; import com.evo.common.utils.StringUtils;
import com.evo.ding.processor.approveStatus.AttendanceApproveStatusChangeExchangeProcessor; import com.evo.ding.processor.approveStatus.AttendanceApproveStatusChangeExchangeProcessor;
import com.evo.personnelMatters.domain.RzLeave; 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.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
/** /**
@ -102,6 +105,7 @@ public class ApproveStatusLeaveExchangeProcessor implements AttendanceApproveSta
//获取最后一天 //获取最后一天
endTime = new Date(approveInfo.getLong("toTime")); endTime = new Date(approveInfo.getLong("toTime"));
} }
RzLeave rzLeave = getIRzLeaveService().selectRzLeaveByUserId(sysStaff.getUserId()); RzLeave rzLeave = getIRzLeaveService().selectRzLeaveByUserId(sysStaff.getUserId());
RzLeaveDetail rzLeaveDetail = new RzLeaveDetail(); RzLeaveDetail rzLeaveDetail = new RzLeaveDetail();
rzLeaveDetail.setName(sysStaff.getName()); rzLeaveDetail.setName(sysStaff.getName());
@ -109,7 +113,11 @@ public class ApproveStatusLeaveExchangeProcessor implements AttendanceApproveSta
rzLeaveDetail.setLeaveEndTime(endTime); rzLeaveDetail.setLeaveEndTime(endTime);
rzLeaveDetail.setLeaveId(rzLeave.getId()); rzLeaveDetail.setLeaveId(rzLeave.getId());
rzLeaveDetail.setType(dictCode); 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.setRemarks("钉钉"+tag);
rzLeaveDetail.setProcessInstanceId(processInstanceId); rzLeaveDetail.setProcessInstanceId(processInstanceId);
getIRzLeaveDetailService().insertRzLeaveDetail(rzLeaveDetail); getIRzLeaveDetailService().insertRzLeaveDetail(rzLeaveDetail);

View File

@ -89,11 +89,11 @@ public class RzLeaveDetailServiceImpl extends ServiceImpl<RzLeaveDetailMapper, R
//根据员工姓名查询 //根据员工姓名查询
RzLeave rzLeave = rzLeaveMapper.selectRzLeaveById(rzLeaveDetail.getLeaveId()); RzLeave rzLeave = rzLeaveMapper.selectRzLeaveById(rzLeaveDetail.getLeaveId());
//验证调休 //验证调休
if(Long.valueOf(55).equals(rzLeaveDetail.getType())){ // if(Long.valueOf(55).equals(rzLeaveDetail.getType())){
if(!autoLeavedNumber(rzLeave.getUserId(),rzLeaveDetail.getLeaveStartTime(),rzLeaveDetail.getLeaveHour())){ // if(!autoLeavedNumber(rzLeave.getUserId(),rzLeaveDetail.getLeaveStartTime(),rzLeaveDetail.getLeaveHour())){
return AjaxResult.error("当前人员的加班时长不足抵扣调休时长!!"); // return AjaxResult.error("当前人员的加班时长不足抵扣调休时长!!");
} // }
} // }
rzLeaveDetail.setDelFlag(Constants.DELETE_FLAG_0); rzLeaveDetail.setDelFlag(Constants.DELETE_FLAG_0);
if(getBaseMapper().insert(rzLeaveDetail) < 1){ if(getBaseMapper().insert(rzLeaveDetail) < 1){
return AjaxResult.error("请假详情新增失败"); return AjaxResult.error("请假详情新增失败");