fix(mes,wms):修复物料编码重复校验逻辑

- 修改BaseMaterialInfoServiceImpl中的物料编码重复校验逻辑
- 使用JoinWrappers替换原有的buildQueryWrapper方法
- 确保物料编码精确匹配而非模糊匹配
- 避免因模糊匹配导致的误判重复问题
master
zangch@mesnac.com 2 months ago
parent 6eb1b471b4
commit df6159887f

@ -203,7 +203,10 @@ public class BaseMaterialInfoServiceImpl implements IBaseMaterialInfoService {
if (StringUtils.isNotBlank(entity.getMaterialCode())) {
BaseMaterialInfoBo query = new BaseMaterialInfoBo();
query.setMaterialCode(entity.getMaterialCode());
MPJLambdaWrapper<BaseMaterialInfo> lqw = buildQueryWrapper(query);
MPJLambdaWrapper<BaseMaterialInfo> lqw = JoinWrappers.lambda(BaseMaterialInfo.class)
.selectAll(BaseMaterialInfo.class)
//buildQueryWrapper中getMaterialCodee是like相似搜索
.eq(StringUtils.isNotBlank(query.getMaterialCode()), BaseMaterialInfo::getMaterialCode, query.getMaterialCode());
BaseMaterialInfo baseMaterialInfo = baseMapper.selectOne(lqw);
if (!ObjectUtils.isEmpty(baseMaterialInfo)
&& !baseMaterialInfo.getMaterialId().equals(entity.getMaterialId())) {

@ -211,7 +211,10 @@ public class BaseMaterialInfoServiceImpl implements IBaseMaterialInfoService {
if (StringUtils.isNotBlank(entity.getMaterialCode())) {
BaseMaterialInfoBo query = new BaseMaterialInfoBo();
query.setMaterialCode(entity.getMaterialCode());
MPJLambdaWrapper<BaseMaterialInfo> lqw = buildQueryWrapper(query);
MPJLambdaWrapper<BaseMaterialInfo> lqw = JoinWrappers.lambda(BaseMaterialInfo.class)
.selectAll(BaseMaterialInfo.class)
//buildQueryWrapper中getMaterialCodee是like相似搜索
.eq(StringUtils.isNotBlank(query.getMaterialCode()), BaseMaterialInfo::getMaterialCode, query.getMaterialCode());
BaseMaterialInfo baseMaterialInfo = baseMapper.selectOne(lqw);
if (!ObjectUtils.isEmpty(baseMaterialInfo)
&& !baseMaterialInfo.getMaterialId().equals(entity.getMaterialId())) {

Loading…
Cancel
Save