feat(mall): 添加商品环保等级、防火等级和试用场景属性

- 在 TzProd 和 TzProdBo 模型中添加环保等级、防火等级和试用场景字段
- 在 HyBasketVo 中添加指导价字段
- 更新 TzProdController 和 TzProdServiceImpl 以支持新属性的查询
This commit is contained in:
清晨
2025-05-14 10:19:58 +08:00
parent 1640ba4b7d
commit 5452cdced6
7 changed files with 67 additions and 4 deletions

View File

@@ -22,7 +22,6 @@ import org.dromara.mall.domain.bo.TzSkuBo;
import org.dromara.mall.domain.vo.TzProdSumVo; import org.dromara.mall.domain.vo.TzProdSumVo;
import org.dromara.mall.domain.vo.TzProdVo; import org.dromara.mall.domain.vo.TzProdVo;
import org.dromara.mall.service.ITzProdService; import org.dromara.mall.service.ITzProdService;
import org.dromara.mall.service.ITzSkuService;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -42,8 +41,6 @@ public class TzProdController extends BaseController {
private final ITzProdService tzProdService; private final ITzProdService tzProdService;
private final ITzSkuService tzSkuService;
/** /**
* 查询商品列表 * 查询商品列表
*/ */

View File

@@ -212,4 +212,19 @@ public class TzProd extends TenantEntity {
*/ */
private String remark; private String remark;
/**
* 环保等级
*/
private String envLevel;
/**
* 防火等级
*/
private String fireLevel;
/**
* 试用场景
*/
private String trialScenario;
} }

View File

@@ -217,4 +217,19 @@ public class TzProdBo extends TenantEntity {
*/ */
private String remark; private String remark;
/**
* 环保等级(查询多值时逗号隔开)
*/
private String envLevel;
/**
* 防火等级(查询多值时逗号隔开)
*/
private String fireLevel;
/**
* 试用场景(查询多值时逗号隔开)
*/
private String trialScenario;
} }

View File

@@ -104,6 +104,12 @@ public class HyBasketVo implements Serializable {
@ExcelProperty(value = "SKU图片") @ExcelProperty(value = "SKU图片")
private String pic; private String pic;
/**
* 指导价
*/
@ExcelProperty(value = "指导价")
private BigDecimal guidingPrice;
/** /**
* SKU成本价格 * SKU成本价格
*/ */

View File

@@ -289,5 +289,20 @@ public class TzProdVo implements Serializable {
@ExcelProperty(value = "备注") @ExcelProperty(value = "备注")
private String remark; private String remark;
/**
* 环保等级
*/
private String envLevel;
/**
* 防火等级
*/
private String fireLevel;
/**
* 试用场景
*/
private String trialScenario;
} }

View File

@@ -85,6 +85,7 @@ public class HyBasketServiceImpl extends MPJBaseServiceImpl<HyBasketMapper,HyBas
.selectAll(HyBasket.class) .selectAll(HyBasket.class)
.select(TzProd::getProdCode, TzProd::getProdName, TzProd::getPic, TzProd::getUnit) .select(TzProd::getProdCode, TzProd::getProdName, TzProd::getPic, TzProd::getUnit)
.select(TzSku::getSkuCode, TzSku::getSkuFactoryCode, TzSku::getSkuName) .select(TzSku::getSkuCode, TzSku::getSkuFactoryCode, TzSku::getSkuName)
.selectAs(TzProd::getGuidingPrice, HyBasketVo::getGuidingPrice)
.selectAs(TzSku::getPrice, HyBasketVo::getOriPrice) .selectAs(TzSku::getPrice, HyBasketVo::getOriPrice)
.leftJoin(TzProd.class, TzProd::getProdId, HyBasket::getProdId) .leftJoin(TzProd.class, TzProd::getProdId, HyBasket::getProdId)
.leftJoin(TzSku.class, TzSku::getSkuId, HyBasket::getSkuId) .leftJoin(TzSku.class, TzSku::getSkuId, HyBasket::getSkuId)

View File

@@ -182,7 +182,21 @@ public class TzProdServiceImpl extends MPJBaseServiceImpl<TzProdMapper,TzProd> i
lqw.like(StringUtils.isNotBlank(bo.getFactoryAddress()), TzProd::getFactoryAddress, bo.getFactoryAddress()); lqw.like(StringUtils.isNotBlank(bo.getFactoryAddress()), TzProd::getFactoryAddress, bo.getFactoryAddress());
lqw.eq(bo.getStatus() != null, TzProd::getStatus, bo.getStatus()); lqw.eq(bo.getStatus() != null, TzProd::getStatus, bo.getStatus());
lqw.eq(bo.getExamineFlag() != null, TzProd::getExamineFlag, bo.getExamineFlag()); lqw.eq(bo.getExamineFlag() != null, TzProd::getExamineFlag, bo.getExamineFlag());
// lqw.like(bo.getCategoryId() != null, TzProd::getCategoryId, bo.getCategoryId());
if(bo.getEnvLevel() != null){
/*//根据逗号分割解析该字符串
String[] split = bo.getEnvLevel().split(",");
for (String s : split) {
lqw.or().like(TzProd::getEnvLevel, s);
}*/
lqw.in(TzProd::getEnvLevel, bo.getEnvLevel());
}
if(bo.getFireLevel() != null){
lqw.in(TzProd::getFireLevel, bo.getFireLevel());
}
if(bo.getTrialScenario() != null){
lqw.in(TzProd::getTrialScenario, bo.getTrialScenario());
}
if(bo.getCategoryId() != null){ if(bo.getCategoryId() != null){
lqw.or().apply("FIND_IN_SET({0}, t.category_id)", bo.getCategoryId()); lqw.or().apply("FIND_IN_SET({0}, t.category_id)", bo.getCategoryId());
} }