package com.wms_admin.server.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.wms_admin.server.entity.ProductModel;
import com.wms_admin.server.mapper.ProductModelMapper;
import com.wms_admin.server.service.ProductModelService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
/**
*
* 服务实现类
*
*
* @author 江苏鵷雏网络科技有限公司
* @since 2023-06-07
*/
@Service
public class ProductModelServiceImpl extends ServiceImpl implements ProductModelService {
@Resource
private ProductModelMapper mapper;
@Override
public Integer AddProductModel(String productCode, String productModel, Integer productNameId) {
LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ProductModel::getProductModel, productModel);
wrapper.eq(ProductModel::getIsDelete, 0);
ProductModel productModelIsNull = mapper.selectOne(wrapper);
// 如果不为空,添加
if (ObjectUtils.isEmpty(productModelIsNull)){
ProductModel productModel1 = new ProductModel();
productModel1.setProductCode(productCode);
productModel1.setProductModel(productModel);
productModel1.setProductNameId(productNameId);
return mapper.insert(productModel1);
}
return 0;
}
@Override
public List SelectIdAllProductModel(Integer productNameId) {
LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ProductModel::getProductNameId, productNameId);
wrapper.select(ProductModel::getId, ProductModel::getProductModel, ProductModel::getProductCode);
return mapper.selectList(wrapper);
}
@Override
public Integer UpdateIdProductModel(ProductModel productModel) {
// 先查询是否存在该型号
LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ProductModel::getProductModel, productModel.getProductModel());
ProductModel productModelIsNull = mapper.selectOne(wrapper);
// 如果判断为空则允许更新
if (ObjectUtils.isEmpty(productModelIsNull)){
LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(ProductModel::getId, productModel.getId());
return mapper.update(productModel, updateWrapper);
}
return 0;
}
@Override
public Integer DeleteIdProductModel(String id) {
LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ProductModel::getId, id);
return mapper.delete(wrapper);
}
@Override
public Integer SelectProductModelId(String productModel, String productCode) {
LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ProductModel::getProductModel, productModel);
wrapper.eq(ProductModel::getProductCode, productCode);
wrapper.select(ProductModel::getId);
ProductModel productModelID = mapper.selectOne(wrapper);
return productModelID.getId();
}
@Override
public Map selectIdProductModel(Integer productModelId) {
return mapper.selectIdProductModel(productModelId);
}
}