yangys
2025-07-08 f379dade90ec59e08c037cba4917308e3dfdb928
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
package org.springblade.mdm.flow.excution;
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import lombok.AllArgsConstructor;
import org.springblade.mdm.basesetting.producedivision.entity.ProduceDivision;
import org.springblade.mdm.basesetting.producedivision.mapper.ProduceDivisionMapper;
import org.springblade.mdm.basesetting.producedivision.service.ProduceDivisionService;
import org.springblade.mdm.flow.vo.TaskAssignVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
 
/**
 * 获取自动匹配的专业组长,编制人员,教研员,和高师
 */
@AllArgsConstructor
@Service
public class AutoAssignUsersService {
 
    //private final ProduceDivisionMapper divMapper;
    private final ProduceDivisionService divService;
 
    public Map<String,Object> autoAssignUsers(TaskAssignVO startVO){
        LambdaQueryWrapper<ProduceDivision> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(ProduceDivision::getDrawingNo,startVO.getDrawingNo());
        Optional<ProduceDivision> optDiv = divService.getOneOpt(queryWrapper);
 
        if(!optDiv.isPresent()){
            throw new RuntimeException("未找到主制分工表数据");
        }
 
        ProduceDivision division = optDiv.get();
        Map<String,Object> result = new HashMap<String,Object>();
        result.put("teamLeader",division.getTeamLeaderId());
        result.put("programmer",division.getProgrammerId());
        result.put("checker",division.getCheckerId());
        result.put("senior",division.getSeniorId());
 
        return result;
    }
}