zss
2023-09-15 22899f74279a47f4ec79e1325f8489d948ced005
base-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyTemplateServiceImpl.java
@@ -1,25 +1,19 @@
package com.yuanchu.mom.service.impl;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yuanchu.mom.mapper.*;
import com.yuanchu.mom.pojo.ElementTechnology;
import com.yuanchu.mom.pojo.TechnologyTemplate;
import com.yuanchu.mom.pojo.dto.TechnologyTemplateDto;
import com.yuanchu.mom.service.ElementTechnologyService;
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.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
 * 工艺路线维护表(TechnologyTemplate)表服务实现类
@@ -35,12 +29,6 @@
    @Resource
    DeviceMapper deviceMapper;
    @Resource
    ElementMapper elementMapper;
    @Resource
    ElementTechnologyService elementTechnologyService;
    @Resource
    TechnicalModelMapper technicalModelMapper;
@@ -66,42 +54,37 @@
    //新增工艺路线-->选择工序
    @Override
    public List<String> chooseTech() {
        return technologyTemplateMapper.chooseTech();
    public List<String> chooseTech(Integer type) {
        return technologyTemplateMapper.chooseTech(type);
    }
    //新增工艺路线-->选择元件
    @Override
    public List<Map<String, Object>> chooseElement() {
        return elementMapper.chooseElement();
    }
    //新增工艺路线
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void addTechTemp(TechnologyTemplateDto technologyTemplateDto) {
    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);
        /*新增工艺元件中间表*/
        String[] split = technologyTemplateDto.getElementId().split(",");
        List<ElementTechnology> elementTechnologies = Arrays.stream(split).map(s -> {
            ElementTechnology elementTechnology = new ElementTechnology();
            elementTechnology.setTechTemId(technologyTemplate.getId());
            elementTechnology.setElementId(Integer.parseInt(s));
            return elementTechnology;
        }).collect(Collectors.toList());
        elementTechnologyService.saveBatch(elementTechnologies);
        return "添加成功!";
    }
    //查询工艺路线列表-->左边二级展示
    //查询工艺路线列表-->左边一级展示
    @Override
    public List<Map<String, Object>> selectAllTechTem(Integer type, String message) {
        return technologyTemplateMapper.selectAllTechTem(type, message);
    }
    //查询工艺路线列表-->右边展示工艺和设备
    //查询工艺路线列表-->右边展示工艺和设备和元件
    @Override
    public List<Map<String, Object>> selectAllTechNam(String father) {
        return technologyTemplateMapper.selectAllTechNam(father);
@@ -122,18 +105,6 @@
        BeanUtils.copyProperties(technologyTemplateDto, technologyTemplate);
        technologyTemplate.setId(id);
        technologyTemplateMapper.updateById(technologyTemplate);
        /*更改中间表*/
        //批量删除原有的中间表(根据工序id)
        elementTechnologyService.delElemaByTechsId(id);
        //批量添加中间表
        String[] split = technologyTemplateDto.getElementId().split(",");
        List<ElementTechnology> elementTechnologies = Arrays.stream(split).map(s -> {
            ElementTechnology elementTechnology = new ElementTechnology();
            elementTechnology.setTechTemId(technologyTemplate.getId());
            elementTechnology.setElementId(Integer.parseInt(s));
            return elementTechnology;
        }).collect(Collectors.toList());
        elementTechnologyService.saveBatch(elementTechnologies);
    }
    //删除(工艺路线id)
@@ -144,8 +115,6 @@
        TechnologyTemplate technologyTemplate = new TechnologyTemplate();
        technologyTemplate.setId(id).setState(0);
        technologyTemplateMapper.updateById(technologyTemplate);
        //删除中间表
        elementTechnologyService.delElemaByTechsId(id);
        //删除技术指标维护表
        technicalModelMapper.delTeMoByTechId(id);
        //删除生产工艺维护表
@@ -164,8 +133,6 @@
    public void delAllTech(String ids) {
        //批量删除工艺表
        technologyTemplateMapper.delAllTech(ids);
        //批量删除中间表
        elementTechnologyService.delAllByTechId(ids);
        //批量删除指标维护表
        technicalModelMapper.delAllByTechId(ids);
        //批量删除生产工艺维护表