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 implements TechnologyTemplateService { @Resource TechnologyTemplateMapper technologyTemplateMapper; @Resource DeviceMapper deviceMapper; @Resource TechnicalModelMapper technicalModelMapper; @Resource SelfcheckModelMapper selfcheckModelMapper; @Resource RecordModelMapper recordModelMapper; @Resource MbomModelMapper mbomModelMapper; //新增工艺路线-->选择类型 @Override public List chooseType() { return technologyTemplateMapper.chooseType(); } //新增工艺路线-->选择生产设备组 @Override public List> chooseDevGroup() { return deviceMapper.chooseDevGroup(); } //新增工艺路线-->选择工序 @Override public List chooseTech(String type) { return technologyTemplateMapper.chooseTech(type); } //新增工艺路线 @Override @Transactional(rollbackFor = Exception.class) public String addTechTemp(TechnologyTemplateDto technologyTemplateDto) { /*校验是否添加重复*/ if (ObjectUtils.isNotEmpty(technologyTemplateMapper.selectList(Wrappers.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> selectAllTechTem(String type, String message) { return technologyTemplateMapper.selectAllTechTem(type, message); } //查询工艺路线列表-->右边展示工艺和设备和元件 @Override public List> selectAllTechNam(String father) { return technologyTemplateMapper.selectAllTechNam(father); } //根据id查看详情 @Override public List> 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); } }