refactor(wms): 外出申请默认创建单条任务
- 将通用审批任务创建方法拆分为请假和外出专用方法 - 新增 createOutApprovalTasks 方法处理外出审批流程 - 新增 createLeaveApprovalTasks 方法处理请假审批流程 - 优化导入语句,使用通配符导入 domain 包下的所有类 - 移除未使用的 WmsApproval、WmsLeaveRequest 和 WmsDept 导入 - 为外出审批添加部门领导查询和审批任务创建逻辑
This commit is contained in:
@@ -13,8 +13,7 @@ import com.klp.common.core.domain.entity.SysUser;
|
||||
import com.klp.common.core.service.UserService;
|
||||
import com.klp.common.helper.LoginHelper;
|
||||
import com.klp.common.utils.StringUtils;
|
||||
import com.klp.domain.WmsApprovalTask;
|
||||
import com.klp.domain.WmsDept;
|
||||
import com.klp.domain.*;
|
||||
import com.klp.mapper.*;
|
||||
import com.klp.system.mapper.SysDeptMapper;
|
||||
import com.klp.system.mapper.SysUserMapper;
|
||||
@@ -24,7 +23,6 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import com.klp.domain.bo.WmsApprovalBo;
|
||||
import com.klp.domain.vo.WmsApprovalVo;
|
||||
import com.klp.domain.WmsApproval;
|
||||
import com.klp.domain.bo.WmsApprovalTaskBo;
|
||||
import com.klp.domain.vo.WmsApprovalTaskVo;
|
||||
import com.klp.service.IWmsApprovalService;
|
||||
@@ -36,7 +34,6 @@ import java.util.stream.Collectors;
|
||||
|
||||
import com.klp.domain.vo.WmsLeaveRequestVo;
|
||||
import com.klp.domain.vo.WmsOutRequestVo;
|
||||
import com.klp.domain.WmsLeaveRequest;
|
||||
|
||||
/**
|
||||
* 通用审批(支持请假/外出等申请的审批)Service业务层处理
|
||||
@@ -260,13 +257,42 @@ public class WmsApprovalServiceImpl implements IWmsApprovalService {
|
||||
bo.setApprovalId(add.getApprovalId());
|
||||
|
||||
if ("leave".equals(add.getApplyType()) && add.getApplyId() != null) {
|
||||
createApprovalTasks(add.getApprovalId(), add.getApplyId(), add.getApplyType(), add.getApprovalType(), bo.getDeptId());
|
||||
createLeaveApprovalTasks(add.getApprovalId(), add.getApplyId(), add.getApplyType(), add.getApprovalType(), bo.getDeptId());
|
||||
}
|
||||
if ("out".equals(add.getApplyType()) && add.getApplyId() != null) {
|
||||
createOutApprovalTasks(add.getApprovalId(), add.getApplyId(), add.getApplyType(), add.getApprovalType(), bo.getDeptId());
|
||||
}
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
private void createApprovalTasks(Long approvalId, Long applyId, String applyType, String approvalType, Long deptId) {
|
||||
private void createOutApprovalTasks(Long approvalId, Long applyId, String applyType, String approvalType, Long deptId) {
|
||||
if (!"out".equals(applyType)) {
|
||||
return;
|
||||
}
|
||||
WmsOutRequest outRequest = outRequestMapper.selectById(applyId);
|
||||
if (outRequest == null) {
|
||||
return;
|
||||
}
|
||||
WmsApproval updateApproval = new WmsApproval();
|
||||
updateApproval.setApprovalId(approvalId);
|
||||
updateApproval.setApprovalType(approvalType);
|
||||
updateApproval.setRequiredApprovers(1);
|
||||
// 根据applicantId查询审批人name和id
|
||||
WmsDept dept = wmsDeptMapper.selectById(deptId);
|
||||
SysUser leader = userMapper.selectById(dept.getLeader());
|
||||
if (leader != null) {
|
||||
WmsApprovalTaskBo taskBo = new WmsApprovalTaskBo();
|
||||
taskBo.setApprovalId(approvalId);
|
||||
taskBo.setApproverId(dept.getLeader());
|
||||
taskBo.setApproverName(leader.getNickName());
|
||||
taskBo.setTaskStatus("pending");
|
||||
approvalTaskMapper.insert(BeanUtil.toBean(taskBo, WmsApprovalTask.class));
|
||||
}
|
||||
baseMapper.updateById(updateApproval);
|
||||
}
|
||||
|
||||
private void createLeaveApprovalTasks(Long approvalId, Long applyId, String applyType, String approvalType, Long deptId) {
|
||||
if (!"leave".equals(applyType)) {
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user