feat(approval): 完善审批流程并新增部门管理功能
- 修改审批任务服务接口返回类型为Map以支持复杂数据结构 - 新增WMS部门管理模块,包括实体、业务对象、控制器和实现类 - 添加部门树形结构支持和部门负责人管理功能 - 更新审批流程逻辑,集成部门领导审批机制 - 重构审批任务查询方法以关联审批详情和申请人信息 - 添加部门ID字段到请假和外出申请相关实体中 - 优化多级审批流程,支持基于部门层级的审批链路 - 移除废弃的导入语句并整理代码结构
This commit is contained in:
@@ -0,0 +1,101 @@
|
||||
package com.klp.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.klp.common.utils.StringUtils;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.klp.domain.bo.WmsDeptBo;
|
||||
import com.klp.domain.vo.WmsDeptVo;
|
||||
import com.klp.domain.WmsDept;
|
||||
import com.klp.mapper.WmsDeptMapper;
|
||||
import com.klp.service.IWmsDeptService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* WMS系统部门(树形结构)Service业务层处理
|
||||
*
|
||||
* @author klp
|
||||
* @date 2026-03-02
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class WmsDeptServiceImpl implements IWmsDeptService {
|
||||
|
||||
private final WmsDeptMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询WMS系统部门(树形结构)
|
||||
*/
|
||||
@Override
|
||||
public WmsDeptVo queryById(Long deptId){
|
||||
return baseMapper.selectVoById(deptId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 查询WMS系统部门(树形结构)列表
|
||||
*/
|
||||
@Override
|
||||
public List<WmsDeptVo> queryList(WmsDeptBo bo) {
|
||||
LambdaQueryWrapper<WmsDept> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<WmsDept> buildQueryWrapper(WmsDeptBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<WmsDept> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getParentId() != null, WmsDept::getParentId, bo.getParentId());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getDeptName()), WmsDept::getDeptName, bo.getDeptName());
|
||||
lqw.eq(bo.getOrderNum() != null, WmsDept::getOrderNum, bo.getOrderNum());
|
||||
lqw.eq(bo.getLeader() != null, WmsDept::getLeader, bo.getLeader());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getStatus()), WmsDept::getStatus, bo.getStatus());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增WMS系统部门(树形结构)
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(WmsDeptBo bo) {
|
||||
WmsDept add = BeanUtil.toBean(bo, WmsDept.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setDeptId(add.getDeptId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改WMS系统部门(树形结构)
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(WmsDeptBo bo) {
|
||||
WmsDept update = BeanUtil.toBean(bo, WmsDept.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(WmsDept entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除WMS系统部门(树形结构)
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user