package com.yuanchu.mom.service.impl; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.yuanchu.mom.mapper.TechnologyMapper; import com.yuanchu.mom.pojo.Product; import com.yuanchu.mom.pojo.dto.ProductDto; import com.yuanchu.mom.service.ProductService; import com.yuanchu.mom.mapper.ProductMapper; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.List; import java.util.Map; /** * @author Administrator * @description 针对表【product】的数据库操作Service实现 * @createDate 2023-07-26 16:00:44 */ @Service public class ProductServiceImpl extends ServiceImpl implements ProductService { @Resource private ProductMapper productMapper; @Resource TechnologyMapper technologyMapper; //根据型号id查询项目(技术指标) @Override public List> selectProductList(Integer specificationsId) { return productMapper.selectProductList(specificationsId); } //根据型号id查询所有版本 @Override public List selectVerByPro(Integer specificationsId) { return productMapper.selectVerByPro(specificationsId); } //右侧数据展示-->技术指标(检验项目) @Override public List> selectAllPro(Integer specificationsId, Integer version, String message) { return productMapper.selectAllPro(specificationsId, version, message); } //右上角新增-->技术指标-->选择工序,工艺 @Override public List> chooseTech(Integer specificationsId) { return technologyMapper.chooseTech(specificationsId); } //右上角新增-->技术指标-->选择项目父类 @Override public List> chooseFather(Integer technologyId) { return productMapper.chooseFather(technologyId); } //右上角新增-->技术指标 @Override public String addProduct(ProductDto productDto) { Product product = new Product(); String required = productDto.getRequired(); String internal = productDto.getInternal(); if (ObjectUtils.isNotEmpty(required)){ char requ = required.charAt(0); if (requ != '>' && requ != '<' && requ != '=') { return "标准值输入格式有问题!"; } } if (ObjectUtils.isNotEmpty(internal)){ char inter = internal.charAt(0); if (inter != '>' && inter != '<' && inter != '=') { return "内控值输入格式有问题!"; } } BeanUtils.copyProperties(productDto, product); productMapper.insert(product); return "新增成功!"; } //填写标准值与内控值,鼠标移开保存 @Override public String write(Integer id, String required, String internal) { //校验标准值,内控值格式 char inter = internal.charAt(0); char requ = required.charAt(0); if (inter != '>' && inter != '<' && inter != '=') { return "内控值输入格式有问题!"; } if (requ != '>' && requ != '<' && requ != '=') { return "标准值输入格式有问题!"; } Product product = new Product(); product.setId(id); product.setRequired(required); product.setInternal(internal); productMapper.updateById(product); return "保存成功!"; } //删除 @Override public void delProById(Integer id) { Product product = new Product(); product.setId(id); product.setState(0); productMapper.updateById(product); } //批量删除 @Override public void delAllPro(String ids) { productMapper.delAllPro(ids); } //查询标准BOM技术指标中该型号工艺下最新版本的检验项目 @Override public List selProByVerSpe(Integer technologyId) { return productMapper.selProByVerSpe(technologyId); } }