查询优化,新增酸连轧页面
This commit is contained in:
@@ -184,7 +184,24 @@ public class WmsRawMaterialServiceImpl implements IWmsRawMaterialService {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<WmsRawMaterial> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getRawMaterialCode()), WmsRawMaterial::getRawMaterialCode, bo.getRawMaterialCode());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getRawMaterialName()), WmsRawMaterial::getRawMaterialName, bo.getRawMaterialName());
|
||||
|
||||
// 如果同时传入了名称和规格,且值相同(搜索关键词),使用 OR 条件
|
||||
boolean hasName = StringUtils.isNotBlank(bo.getRawMaterialName());
|
||||
boolean hasSpec = StringUtils.isNotBlank(bo.getSpecification());
|
||||
if (hasName && hasSpec && bo.getRawMaterialName().equals(bo.getSpecification())) {
|
||||
// 搜索关键词:匹配名称或规格
|
||||
String searchKey = bo.getRawMaterialName();
|
||||
lqw.and(wrapper -> wrapper
|
||||
.like(WmsRawMaterial::getRawMaterialName, searchKey)
|
||||
.or()
|
||||
.like(WmsRawMaterial::getSpecification, searchKey)
|
||||
);
|
||||
} else {
|
||||
// 分别处理名称和规格
|
||||
lqw.like(hasName, WmsRawMaterial::getRawMaterialName, bo.getRawMaterialName());
|
||||
lqw.like(hasSpec, WmsRawMaterial::getSpecification, bo.getSpecification());
|
||||
}
|
||||
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSteelGrade()), WmsRawMaterial::getSteelGrade, bo.getSteelGrade());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getTargetColdGrade()), WmsRawMaterial::getTargetColdGrade, bo.getTargetColdGrade());
|
||||
lqw.eq(bo.getBaseMaterialId() != null, WmsRawMaterial::getBaseMaterialId, bo.getBaseMaterialId());
|
||||
@@ -206,8 +223,6 @@ public class WmsRawMaterialServiceImpl implements IWmsRawMaterialService {
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getInspectionResult()), WmsRawMaterial::getInspectionResult, bo.getInspectionResult());
|
||||
lqw.eq(bo.getIsEnabled() != null, WmsRawMaterial::getIsEnabled, bo.getIsEnabled());
|
||||
lqw.eq(bo.getBomId() != null, WmsRawMaterial::getBomId, bo.getBomId());
|
||||
//规格模糊匹配
|
||||
lqw.like(StringUtils.isNotBlank(bo.getSpecification()), WmsRawMaterial::getSpecification, bo.getSpecification());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getMaterial()), WmsRawMaterial::getMaterial, bo.getMaterial());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSurfaceTreatmentDesc()), WmsRawMaterial::getSurfaceTreatmentDesc, bo.getSurfaceTreatmentDesc());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getManufacturer()), WmsRawMaterial::getManufacturer, bo.getManufacturer());
|
||||
|
||||
Reference in New Issue
Block a user