lxw
2022-07-20 50c9624fc74b1e837f2a1f8e2fce54450ecfdb0f
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
package com.whyc.service;
 
import com.whyc.mapper.WorksheetLinkMapper;
import com.whyc.pojo.WorksheetLink;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
import javax.annotation.Resource;
import java.util.Date;
 
@Service
public class WorksheetLinkService {
 
    @Resource
    private WorksheetMainService mainService;
 
    @Resource
    private WorksheetLinkMapper linkMapper;
 
 
    @Transactional
    public void audit(WorksheetLink link) {
        link.setDealTime(new Date());
        //更新节点信息
        linkMapper.updateById(link);
        if(link.getLinkStatus() == 2){ //驳回
            //驳回到员工进行处理
            //查询工单的员工
            Long createUserId = mainService.getInfoById(link.getMainId()).getCreateUserId();
            WorksheetLink link2 = new WorksheetLink();
            link2.setMainId(link.getMainId());
            link2.setParentId(link.getId());
            link2.setDealUserId(createUserId);
            link2.setDealType(0);
            link2.setDealDesc("工单被经理驳回,驳回信息:"+link.getDealReason());
            link2.setLinkStatus(0);
            link2.setEnableArchive(0);
            linkMapper.insert(link2);
            //更新主表状态
            mainService.updateStatusById(link.getMainId(),0);
        }else{
            //进入下一节点,总经理审批
            WorksheetLink link2 = new WorksheetLink();
            link2.setMainId(link.getMainId());
            link2.setParentId(link.getId());
            link2.setDealUserId(link.getNextUser());
            link2.setDealType(2);
            link2.setDealDesc("工单被经理审核通过,信息:"+link.getDealReason());
            link2.setLinkStatus(0);
            link2.setEnableArchive(1);
            linkMapper.insert(link2);
            //更新主表状态
            mainService.updateStatusById(link.getMainId(),2);
        }
    }
 
    @Transactional
    public void approve(WorksheetLink link) {
        link.setDealTime(new Date());
        //更新节点信息
        linkMapper.updateById(link);
        if(link.getLinkStatus() == 2){ //驳回
            //驳回到员工进行处理
            //查询工单的员工
            Long createUserId = mainService.getInfoById(link.getMainId()).getCreateUserId();
            WorksheetLink link2 = new WorksheetLink();
            link2.setMainId(link.getMainId());
            link2.setParentId(link.getId());
            link2.setDealUserId(createUserId);
            link2.setDealType(0);
            link2.setDealDesc("工单被经理驳回,驳回信息:"+link.getDealReason());
            link2.setLinkStatus(0);
            link2.setEnableArchive(0);
            linkMapper.insert(link2);
            //更新主表状态
            mainService.updateStatusById(link.getMainId(),0);
        }else{
            //审批通过,更新主表状态
            mainService.updateEndStatusById(link.getMainId(),"完结",5);
        }
    }
}