diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/dto/ProductDTO.java b/cash-common/cash-common-service/src/main/java/com/czg/product/dto/ProductDTO.java index 2574037fd..da7273acf 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/dto/ProductDTO.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/dto/ProductDTO.java @@ -228,6 +228,11 @@ public class ProductDTO implements Serializable { */ private String consName; + /** + * 商品销售状态 sold_out=已售罄 on_sale=在售中 off_sale=已下架 + */ + private String status; + public Object getImages() { return JSON.parseArray(Convert.toStr(images, "[]")); } diff --git a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProductServiceImpl.java b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProductServiceImpl.java index ea0d73770..69333f8d4 100644 --- a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProductServiceImpl.java +++ b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProductServiceImpl.java @@ -18,6 +18,7 @@ import com.czg.product.entity.ProdConsRelation; import com.czg.product.entity.ProdSku; import com.czg.product.entity.Product; import com.czg.product.enums.ProductIsSaleTypeEnum; +import com.czg.product.enums.ProductSaleStatusEnum; import com.czg.product.enums.ProductTypeEnum; import com.czg.product.param.ProdRefundToStockParam; import com.czg.product.param.ProductIsSaleParam; @@ -86,6 +87,16 @@ public class ProductServiceImpl extends ServiceImpl impl if (StrUtil.isNotEmpty(param.getCreateEndTime())) { queryWrapper.le(Product::getCreateTime, param.getCreateEndTime()); } + if (StrUtil.isNotEmpty(param.getStatus())) { + if (ProductSaleStatusEnum.SOLD_OUT.getValue().equals(param.getStatus())) { + queryWrapper.eq(Product::getIsSoldStock, YesNoEnum.YES.value()); + } else if (ProductSaleStatusEnum.ON_SALE.getValue().equals(param.getStatus())) { + queryWrapper.eq(Product::getIsSoldStock, YesNoEnum.NO.value()); + queryWrapper.eq(Product::getIsSale, YesNoEnum.YES.value()); + } else if (ProductSaleStatusEnum.OFF_SALE.getValue().equals(param.getStatus())) { + queryWrapper.eq(Product::getIsSale, YesNoEnum.NO.value()); + } + } Long shopId = StpKit.USER.getShopId(0L); queryWrapper.eq(Product::getShopId, shopId); queryWrapper.eq(Product::getIsDel, DeleteEnum.NORMAL.value());