package vip.xiaonuo.quality.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.beans.factory.annotation.Autowired;
import vip.xiaonuo.common.pojo.CommonResult;
import vip.xiaonuo.quality.entity.QualityReagentStock;
import vip.xiaonuo.quality.mapper.QualityReagentStockMapper;
import vip.xiaonuo.quality.param.QualityStockPageParam;
import vip.xiaonuo.quality.service.IQualityReagentStockService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
*
* 质量试剂仓库 服务实现类
*
*
* @author author
* @since 2025-03-10
*/
@Service
public class QualityReagentStockServiceImpl extends ServiceImpl implements IQualityReagentStockService {
@Autowired
private QualityReagentStockMapper stockMapper;
@Override
public Page page(QualityStockPageParam stockPageParam) {
String orgId = stockPageParam.getOrgId();
String reagName = stockPageParam.getReagName();
Integer pageNum = stockPageParam.getPageNum();
Integer pageSize = stockPageParam.getPageSize();
Page page = new Page<>(pageNum, pageSize);
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
queryWrapper.like(StringUtils.isNotBlank(reagName),"reagent",reagName);
return stockMapper.selectPage(page,queryWrapper);
}
@Override
public CommonResult add(QualityReagentStock qualityReagentStock) {
String orgId = qualityReagentStock.getOrgId();
String reagent = qualityReagentStock.getReagent();
if ("".equals(orgId) || null == orgId) {
return CommonResult.error();
}
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.eq("org_id", orgId).eq("reagent", reagent);
QualityReagentStock reagentStock = stockMapper.selectOne(queryWrapper);
if (ObjectUtil.isEmpty(reagentStock)) {
stockMapper.insert(qualityReagentStock);
} else {
return CommonResult.error();
}
return CommonResult.ok();
}
@Override
public CommonResult edit(QualityReagentStock qualityReagentStock) {
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.eq("org_id", qualityReagentStock.getOrgId()).eq("reagent", qualityReagentStock.getReagent())
.ne("id", qualityReagentStock.getId());
QualityReagentStock reagentStock = stockMapper.selectOne(queryWrapper);
if (ObjectUtil.isEmpty(reagentStock)) {
stockMapper.updateById(qualityReagentStock);
} else {
return CommonResult.error();
}
return CommonResult.ok();
}
}