| | |
| | | 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)表服务实现类 |
| | |
| | | DeviceMapper deviceMapper; |
| | | |
| | | @Resource |
| | | ElementMapper elementMapper; |
| | | |
| | | @Resource |
| | | ElementTechnologyService elementTechnologyService; |
| | | |
| | | @Resource |
| | | TechnicalModelMapper technicalModelMapper; |
| | | |
| | | @Resource |
| | | TechniqueModelMapper techniqueModelMapper; |
| | | |
| | | @Resource |
| | | SelfcheckModelMapper selfcheckModelMapper; |
| | |
| | | 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(Integer type) { |
| | | public List<String> chooseTech(String 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) { |
| | | 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); |
| | |
| | | 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) |
| | |
| | | TechnologyTemplate technologyTemplate = new TechnologyTemplate(); |
| | | technologyTemplate.setId(id).setState(0); |
| | | technologyTemplateMapper.updateById(technologyTemplate); |
| | | //删除中间表 |
| | | elementTechnologyService.delElemaByTechsId(id); |
| | | //删除技术指标维护表 |
| | | technicalModelMapper.delTeMoByTechId(id); |
| | | //删除生产工艺维护表 |
| | | techniqueModelMapper.delQueByTechId(id); |
| | | //删除自检项目维护表 |
| | | selfcheckModelMapper.delSelfByTechId(id); |
| | | //删除记录内容维护表 |
| | |
| | | public void delAllTech(String ids) { |
| | | //批量删除工艺表 |
| | | technologyTemplateMapper.delAllTech(ids); |
| | | //批量删除中间表 |
| | | elementTechnologyService.delAllByTechId(ids); |
| | | //批量删除指标维护表 |
| | | technicalModelMapper.delAllByTechId(ids); |
| | | //批量删除生产工艺维护表 |
| | | techniqueModelMapper.delAllByTechId(ids); |
| | | //批量删除自检项目维护表 |
| | | selfcheckModelMapper.delAllByTechId(ids); |
| | | //批量删除记录内容维护表 |