出入库优化

This commit is contained in:
朱昊天
2026-05-08 16:46:36 +08:00
parent 22ace156f9
commit b5f5815c71
18 changed files with 289 additions and 639 deletions

View File

@@ -2,6 +2,7 @@ package com.gear.mat.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.gear.common.exception.ServiceException;
import com.gear.common.utils.StringUtils;
import com.gear.common.core.page.TableDataInfo;
import com.gear.common.core.domain.PageQuery;
@@ -146,7 +147,28 @@ public class MatMaterialServiceImpl implements IMatMaterialService {
* 保存前的数据校验
*/
private void validEntityBeforeSave(MatMaterial entity){
//TODO 做一些数据校验,如唯一约束
if (entity == null) {
return;
}
if (StringUtils.isNotBlank(entity.getMaterialName())) {
entity.setMaterialName(entity.getMaterialName().trim());
}
if (StringUtils.isNotBlank(entity.getFactory())) {
entity.setFactory(entity.getFactory().trim());
}
if (StringUtils.isBlank(entity.getMaterialName()) || StringUtils.isBlank(entity.getFactory()) || entity.getMaterialType() == null) {
return;
}
Long cnt = baseMapper.selectCount(Wrappers.<MatMaterial>lambdaQuery()
.eq(MatMaterial::getMaterialName, entity.getMaterialName())
.eq(MatMaterial::getFactory, entity.getFactory())
.eq(MatMaterial::getMaterialType, entity.getMaterialType())
.eq(MatMaterial::getDelFlag, 0)
.ne(entity.getMaterialId() != null, MatMaterial::getMaterialId, entity.getMaterialId()));
if (cnt != null && cnt > 0) {
String typeLabel = Objects.equals(entity.getMaterialType(), 2) ? "主材" : Objects.equals(entity.getMaterialType(), 1) ? "辅材" : "原料";
throw new ServiceException(typeLabel + "已存在:" + entity.getMaterialName() + " - " + entity.getFactory());
}
}
/**