“djh”
2025-03-17 47d330d27fb88e85a40e64e5423f73b0b29c088e
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
package com.gkhy.sign.service.impl;
 
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gkhy.sign.dto.rep.SignatureFlowRep;
import com.gkhy.sign.dto.req.SignatureFlowAddReq;
import com.gkhy.sign.dto.req.SignatureFlowSignReq;
import com.gkhy.sign.entity.SignatureFlow;
import com.gkhy.sign.entity.SignatureItem;
import com.gkhy.sign.mapper.SignatureFlowMapper;
import com.gkhy.sign.mapper.SignatureItemMapper;
import com.gkhy.sign.service.SignatureFlowService;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.system.mapper.SysDeptMapper;
import com.ruoyi.system.mapper.SysUserMapper;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.Date;
import java.util.List;
 
@Service
public class SignatureFlowServiceImpl extends ServiceImpl<SignatureFlowMapper, SignatureFlow> implements SignatureFlowService {
 
    @Autowired
    private SignatureFlowMapper signatureFlowMapper;
    @Autowired
    private SignatureItemMapper signatureItemMapper;
    @Autowired
    private SysUserMapper sysUserMapper;
    @Autowired
    private SysDeptMapper sysDeptMapper;
 
 
 
    @Override
    public List<SignatureFlowRep> selectFlowList(Long id) {
        return signatureFlowMapper.selectbyItemId(id);
    }
 
    @Override
    public int insertSignatureFlow(SignatureFlow signatureFlow) {
//        SignatureFlow signatureFlow1 = signatureFlowMapper.selectByItemIdAndUserId(signatureFlow);
//        if (signatureFlow1.getStatus() == 0 ){
//            throw new RuntimeException("尚未签名,不能流转");
//        }
        List<SignatureFlowRep> signatureFlowReps = signatureFlowMapper.selectbyItemId(signatureFlow.getItemId());
        signatureFlow.setSort(signatureFlowReps.size()+1);
        SysUser sysUser = sysUserMapper.selectUserById(signatureFlow.getUserId());
        SysDept sysDept = sysDeptMapper.selectDeptById(signatureFlow.getDeptId());
        signatureFlow.setUserName(sysUser.getNickName());
        signatureFlow.setDeptName(sysDept.getDeptName());
        SysUser sysUserSign = sysUserMapper.selectUserById(signatureFlow.getSignUserId());
        SysDept sysDeptSign = sysDeptMapper.selectDeptById(signatureFlow.getSignDeptId());
        signatureFlow.setSignUserName(sysUserSign.getNickName());
        signatureFlow.setSignDeptName(sysDeptSign.getDeptName());
 
        return signatureFlowMapper.insert(signatureFlow);
    }
 
    @Override
    public int saveSignatureFlow(SignatureFlowSignReq signatureFlowReq) {
 
        return signatureFlowMapper.updateByFlowItemId(signatureFlowReq);
    }
 
    @Override
    public int returnFile(SignatureFlow signatureFlow) {
        LoginUser loginUser = SecurityUtils.getLoginUser();
        signatureFlow.setStatus(3);
        SysUser sysUser = sysUserMapper.selectUserById(loginUser.getUserId());
        SysDept sysDept = sysDeptMapper.selectDeptById(loginUser.getDeptId());
        signatureFlow.setUserId(loginUser.getUserId());
        signatureFlow.setUserName(sysUser.getNickName());
        signatureFlow.setDeptId(loginUser.getDeptId());
        signatureFlow.setDeptName(sysDept.getDeptName());
        signatureFlow.setSignDeptId(sysDept.getDeptId());
        signatureFlow.setSignDeptName(sysDept.getDeptName());
        signatureFlow.setSignUserId(sysUser.getUserId());
        signatureFlow.setSignUserName(sysUser.getNickName());
        List<SignatureFlowRep> signatureFlowReps = signatureFlowMapper.selectbyItemId(signatureFlow.getItemId());
        signatureFlow.setSort(signatureFlowReps.size()+1);
        int i = signatureFlowMapper.insert(signatureFlow);
        SignatureItem signatureItem = new SignatureItem();
        if (i>0){
            signatureItem.setId(Long.valueOf(signatureFlow.getItemId()));
            signatureItem.setFilePath(signatureFlow.getFilePath());
            signatureItem.setStatus(2);
            signatureItem.setUpdateBy(SecurityUtils.getUsername());
            signatureItem.setUpdateTime(new Date());
            signatureItemMapper.updateByItemId(signatureItem);
        }
        return i;
    }
}