| | |
| | | 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.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.yuanchu.mom.mapper.DeviceMapper; |
| | | import com.yuanchu.mom.mapper.TechnologyTemplateMapper; |
| | | 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)表服务实现类 |
| | |
| | | @Resource |
| | | DeviceMapper deviceMapper; |
| | | |
| | | @Resource |
| | | ElementMapper elementMapper; |
| | | |
| | | //选择设备组 |
| | | @Resource |
| | | ElementTechnologyService elementTechnologyService; |
| | | |
| | | @Resource |
| | | TechnicalModelMapper technicalModelMapper; |
| | | |
| | | |
| | | //新增工艺路线-->选择设备组 |
| | | @Override |
| | | public List<Map<String, Object>> chooseDevGroup() { |
| | | return deviceMapper.chooseDevGroup(); |
| | | } |
| | | |
| | | //新增工艺路线-->选择工序 |
| | | @Override |
| | | public List<String> chooseTech() { |
| | | return technologyTemplateMapper.chooseTech(); |
| | | } |
| | | |
| | | //新增工艺路线-->选择元件 |
| | | @Override |
| | | public List<Map<String, Object>> chooseElement() { |
| | | return elementMapper.chooseElement(); |
| | | } |
| | | |
| | | //新增工艺路线 |
| | | @Override |
| | | public void addSale(TechnologyTemplateDto technologyTemplateDto) { |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void addTechTemp(TechnologyTemplateDto technologyTemplateDto) { |
| | | /*新增工艺*/ |
| | | TechnologyTemplate technologyTemplate = new TechnologyTemplate(); |
| | | BeanUtils.copyProperties(technologyTemplateDto,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); |
| | | } |
| | | |
| | | //查询工艺路线列表 |
| | | //查询工艺路线列表-->左边二级展示 |
| | | @Override |
| | | public IPage<Map<String, Object>> selectAllTechTem(Page<Object> page, Integer type, String name, String father) { |
| | | return technologyTemplateMapper.selectAllTechTem(page,type,name,father); |
| | | 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); |
| | | } |
| | | |
| | | //根据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); |
| | | 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) |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void delTechById(Integer id) { |
| | | //删除工艺表 |
| | | TechnologyTemplate technologyTemplate = new TechnologyTemplate(); |
| | | technologyTemplate.setId(id).setState(0); |
| | | technologyTemplateMapper.updateById(technologyTemplate); |
| | | //删除中间表 |
| | | elementTechnologyService.delElemaByTechsId(id); |
| | | //删除技术指标维护表 |
| | | technicalModelMapper.delTeMoByTechId(id); |
| | | //todo:删除未完待续 |
| | | } |
| | | |
| | | //批量删除 |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void delAllTech(String ids) { |
| | | //批量删除工艺表 |
| | | technologyTemplateMapper.delAllTech(ids); |
| | | //批量删除中间表 |
| | | elementTechnologyService.delAllByTechId(ids); |
| | | //批量删除指标维护表 |
| | | technicalModelMapper.delAllByTechId(ids); |
| | | } |
| | | } |
| | | |