zss
2023-09-25 5d24aead2d1a45452942ddfc300fe6a232301a99
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
package com.yuanchu.mom.service.impl;
 
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yuanchu.mom.mapper.*;
import com.yuanchu.mom.pojo.TechnologyTemplate;
import com.yuanchu.mom.pojo.dto.TechnologyTemplateDto;
import com.yuanchu.mom.service.TechnologyTemplateService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
 
/**
 * 工艺路线维护表(TechnologyTemplate)表服务实现类
 *
 * @author zss
 * @since 2023-08-18 16:59:14
 */
@Service
public class TechnologyTemplateServiceImpl extends ServiceImpl<TechnologyTemplateMapper, TechnologyTemplate> implements TechnologyTemplateService {
 
    @Resource
    TechnologyTemplateMapper technologyTemplateMapper;
 
    @Resource
    DeviceMapper deviceMapper;
 
    @Resource
    TechnicalModelMapper technicalModelMapper;
 
    @Resource
    SelfcheckModelMapper selfcheckModelMapper;
 
    @Resource
    RecordModelMapper recordModelMapper;
 
    @Resource
    MbomModelMapper mbomModelMapper;
 
 
    //新增工艺路线-->选择类型
    @Override
    public List<String> chooseType() {
        return technologyTemplateMapper.chooseType();
    }
 
    //新增工艺路线-->选择生产设备组
    @Override
    public List<Map<String, Object>> chooseDevGroup() {
        return deviceMapper.chooseDevGroup();
    }
 
    //新增工艺路线-->选择工序
    @Override
    public List<String> chooseTech(String type) {
        return technologyTemplateMapper.chooseTech(type);
    }
 
 
    //新增工艺路线
    @Override
    @Transactional(rollbackFor = Exception.class)
    public String addTechTemp(TechnologyTemplateDto technologyTemplateDto) {
        /*校验是否添加重复*/
        if (ObjectUtils.isNotEmpty(technologyTemplateMapper.selectList(Wrappers.<TechnologyTemplate>query()
                .eq("type", technologyTemplateDto.getType())
                .eq("state", 1)
                .eq("father", technologyTemplateDto.getFather())
                .eq("name", technologyTemplateDto.getName())))) {
            return "重复添加!";
        }
        /*新增工艺*/
        TechnologyTemplate technologyTemplate = new TechnologyTemplate();
        BeanUtils.copyProperties(technologyTemplateDto, technologyTemplate);
        technologyTemplateMapper.insert(technologyTemplate);
        return "添加成功!";
    }
 
    //查询工艺路线列表-->左边一级展示
    @Override
    public List<Map<String, Object>> selectAllTechTem(String type, String message) {
        return technologyTemplateMapper.selectAllTechTem(type, message);
    }
 
    //查询工艺路线列表-->右边展示工艺和设备和元件
    @Override
    public List<Map<String, Object>> selectAllTechNam(String father) {
        return technologyTemplateMapper.selectAllTechNam(father);
    }
 
    //根据id查看详情
    @Override
    public List<Map<String, Object>> selecTechById(Integer id) {
        return technologyTemplateMapper.selecTechById(id);
    }
 
    //编辑 (工艺id)
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void writeTechById(Integer id, TechnologyTemplateDto technologyTemplateDto) {
        /*工艺表更新*/
        TechnologyTemplate technologyTemplate = new TechnologyTemplate();
        BeanUtils.copyProperties(technologyTemplateDto, technologyTemplate);
        technologyTemplate.setId(id);
        technologyTemplateMapper.updateById(technologyTemplate);
    }
 
    //删除(工艺路线id)
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void delTechById(Integer id) {
        //删除工艺路线维护表
        TechnologyTemplate technologyTemplate = new TechnologyTemplate();
        technologyTemplate.setId(id).setState(0);
        technologyTemplateMapper.updateById(technologyTemplate);
        //删除技术指标维护表
        technicalModelMapper.delTeMoByTechId(id);
        //删除自检项目维护表
        selfcheckModelMapper.delSelfByTechId(id);
        //删除记录内容维护表
        recordModelMapper.delRecordByTechId(id);
        //删除物料清单维护表
        mbomModelMapper.delMbomByTechId(id);
    }
 
    //批量删除
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void delAllTech(String ids) {
        //批量删除工艺表
        technologyTemplateMapper.delAllTech(ids);
        //批量删除指标维护表
        technicalModelMapper.delAllByTechId(ids);
        //批量删除自检项目维护表
        selfcheckModelMapper.delAllByTechId(ids);
        //批量删除记录内容维护表
        recordModelMapper.delAllByTechId(ids);
        //批量删除物料清单维护表
        mbomModelMapper.delAllByTechId(ids);
    }
}