2 天以前 f350465db70d6f9db9494483ee0cec7793a9007b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
package com.ruoyi.approve.service.impl;
 
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.approve.bean.vo.ApproveProcessConfigNodeVo;
import com.ruoyi.approve.mapper.ApproveProcessConfigNodeMapper;
import com.ruoyi.approve.pojo.ApproveProcessConfigNode;
import com.ruoyi.approve.service.ApproveProcessConfigNodeService;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
 
import java.util.List;
 
/**
 * <p>
 * 审批流程配置节点表 服务实现类
 * </p>
 *
 * @author 芯导软件(江苏)有限公司
 * @since 2026-04-23 10:21:41
 */
@Service
@RequiredArgsConstructor
public class ApproveProcessConfigNodeServiceImpl extends ServiceImpl<ApproveProcessConfigNodeMapper, ApproveProcessConfigNode> implements ApproveProcessConfigNodeService {
 
    private final ApproveProcessConfigNodeMapper approveProcessConfigNodeMapper;
    @Override
    public List<ApproveProcessConfigNodeVo> listNode(Integer type) {
        List<ApproveProcessConfigNode> approveProcessConfigNodes = approveProcessConfigNodeMapper.selectList(new QueryWrapper<ApproveProcessConfigNode>().lambda()
                .eq(ApproveProcessConfigNode::getApproveType, type)
                .orderByAsc(ApproveProcessConfigNode::getNodeOrder)
                .orderByAsc(ApproveProcessConfigNode::getId));
        return approveProcessConfigNodes.stream()
                .map(node -> {
                    ApproveProcessConfigNodeVo vo = new ApproveProcessConfigNodeVo();
                    BeanUtils.copyProperties(node, vo);
                    return vo;
                })
                .collect(java.util.stream.Collectors.toList());
    }
 
    @Override
    public Boolean addApproveProcessConfigNodes(List<ApproveProcessConfigNode> approveProcessConfigNodes) {
        //删除旧数据
        approveProcessConfigNodeMapper.delete(new QueryWrapper<ApproveProcessConfigNode>().lambda().eq(ApproveProcessConfigNode::getApproveType, approveProcessConfigNodes.get(0).getApproveType()));
        //新增 数据
        for (ApproveProcessConfigNode node : approveProcessConfigNodes) {
            // 默认或签模式,兼容未传 approve_mode 的旧数据
            if (node.getApproveMode() == null || node.getApproveMode().isEmpty()) {
                node.setApproveMode("or");
            }
            approveProcessConfigNodeMapper.insert(node);
        }
        return true;
    }
}