diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ShopProductInfoVo.java b/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ShopProductInfoVo.java index 52461243..257236c6 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ShopProductInfoVo.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ShopProductInfoVo.java @@ -3,14 +3,12 @@ package com.czg.product.vo; import cn.hutool.core.convert.Convert; import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.annotation.JSONField; -import com.czg.product.dto.ProdSkuDTO; import lombok.Data; import java.io.Serial; import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalTime; -import java.util.List; /** * 商品规格详情 @@ -107,10 +105,6 @@ public class ShopProductInfoVo implements Serializable { */ @JSONField(serialize = false) private LocalTime endTime; - /** - * 商品规格列表 - */ - private List skuList; public Object getImages() { return JSON.parseArray(Convert.toStr(images, "[]")); diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ShopProductVo.java b/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ShopProductVo.java index d8934a3a..b1e66a51 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ShopProductVo.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/vo/ShopProductVo.java @@ -1,12 +1,14 @@ package com.czg.product.vo; import com.alibaba.fastjson2.annotation.JSONField; +import com.czg.product.dto.ProdSkuDTO; import lombok.Data; import java.io.Serial; import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalTime; +import java.util.List; /** * 热销商品 @@ -80,6 +82,10 @@ public class ShopProductVo implements Serializable { * 是否热销 1-是 0-否 */ private Integer isHot; + /** + * 商品规格列表 + */ + private List skuList; /** * 商品每周销售日 如:Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday */ diff --git a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopProdUnitServiceImpl.java b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopProdUnitServiceImpl.java index 5c7f8651..d82ffac9 100644 --- a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopProdUnitServiceImpl.java +++ b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopProdUnitServiceImpl.java @@ -36,7 +36,11 @@ public class ShopProdUnitServiceImpl extends ServiceImpl { + q.eq(ShopProdUnit::getShopId, shopId).or(q1 -> { + q1.eq(ShopProdUnit::getShopId, 0).eq(ShopProdUnit::getIsSystem, YesNoEnum.YES.value()); + }); + }); queryWrapper.orderBy(ShopProdUnit::getId, false); return queryWrapper; } @@ -63,7 +67,12 @@ public class ShopProdUnitServiceImpl extends ServiceImpl { + q.eq(ShopProdUnit::getShopId, shopId).or(q1 -> { + q1.eq(ShopProdUnit::getShopId, 0).eq(ShopProdUnit::getIsSystem, YesNoEnum.YES.value()); + }); + })); if (exists) { throw new CzgException("单位名称已存在"); } @@ -81,7 +90,14 @@ public class ShopProdUnitServiceImpl extends ServiceImpl { + q.eq(ShopProdUnit::getShopId, shopId).or(q1 -> { + q1.eq(ShopProdUnit::getShopId, 0).eq(ShopProdUnit::getIsSystem, YesNoEnum.YES.value()); + }); + }) + ); if (exists) { throw new CzgException("单位名称已存在"); } @@ -91,12 +107,26 @@ public class ShopProdUnitServiceImpl extends ServiceImpl imp List list = productMapper.selectHotsProductList(shopId); list.forEach(item -> { item.setIsSaleTime(calcIsSaleTime(item.getDays(), item.getStartTime(), item.getEndTime())); + List skuList = prodSkuMapper.selectListByQueryAs(query().eq(ProdSku::getProductId, item.getId()).eq(ProdSku::getIsDel, DeleteEnum.NORMAL.value()), ProdSkuDTO.class); + item.setSkuList(skuList); }); return list; } @@ -71,6 +73,8 @@ public class UProductServiceImpl extends ServiceImpl imp List productAllList = productMapper.selectGroupProductList(shopId); productAllList.forEach(item -> { item.setIsSaleTime(calcIsSaleTime(item.getDays(), item.getStartTime(), item.getEndTime())); + List skuList = prodSkuMapper.selectListByQueryAs(query().eq(ProdSku::getProductId, item.getId()).eq(ProdSku::getIsDel, DeleteEnum.NORMAL.value()), ProdSkuDTO.class); + item.setSkuList(skuList); }); Map productKv = productAllList.stream().collect(Collectors.toMap(ShopProductVo::getId, shopProductVo -> shopProductVo)); for (ShopGroupProductVo group : groupList) { @@ -98,8 +102,6 @@ public class UProductServiceImpl extends ServiceImpl imp if (data == null) { throw new CzgException("商品不可售"); } - List skuList = prodSkuMapper.selectListByQueryAs(query().eq(ProdSku::getProductId, data.getId()).eq(ProdSku::getIsDel, DeleteEnum.NORMAL.value()), ProdSkuDTO.class); - data.setSkuList(skuList); return data; }