diff --git a/cash-api/product-server/src/main/java/com/czg/controller/user/UProductController.java b/cash-api/product-server/src/main/java/com/czg/controller/user/UProductController.java index 3f09f8c1..6e711cfe 100644 --- a/cash-api/product-server/src/main/java/com/czg/controller/user/UProductController.java +++ b/cash-api/product-server/src/main/java/com/czg/controller/user/UProductController.java @@ -1,10 +1,12 @@ package com.czg.controller.user; import com.czg.log.annotation.OperationLog; -import com.czg.product.param.MiniHomeProductParam; import com.czg.product.param.ShopProductSkuParam; import com.czg.product.service.UProductService; -import com.czg.product.vo.*; +import com.czg.product.vo.ShopGroupProductVo; +import com.czg.product.vo.ShopProductInfoVo; +import com.czg.product.vo.ShopProductSkuInfoVo; +import com.czg.product.vo.ShopProductVo; import com.czg.resp.CzgResult; import com.czg.utils.AssertUtil; import com.czg.validator.ValidatorUtil; @@ -30,17 +32,6 @@ import java.util.List; public class UProductController { private final UProductService uProductService; - - /** - * 小程序点餐-首页-商品列表 - */ - //@GetMapping("/miniApp/home/queryProduct") - //@OperationLog("小程序点餐-首页-商品列表") - public CzgResult queryProductForMiniAppHome(MiniHomeProductParam param) { - MiniAppHomeProductVo data = uProductService.queryProductForMiniAppHome(param); - return CzgResult.success(data); - } - /** * 小程序点餐-热销商品列表 */ diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsGroupService.java b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsGroupService.java index af15cc48..acfc931b 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsGroupService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsGroupService.java @@ -14,20 +14,63 @@ import java.util.List; * @since 1.0 2025-02-20 */ public interface ConsGroupService extends IService { + /** + * 获取耗材分组分页 + * + * @param param 查询参数 + * @return 耗材分组分页 + */ Page getConsGroupPage(ConsGroupDTO param); + /** + * 获取耗材分组列表 + * + * @param param 查询参数 + * @return 耗材分组列表 + */ List getConsGroupList(ConsGroupDTO param); + /** + * 获取耗材分组详情 + * + * @param id 耗材分组id + * @return 耗材分组详情 + */ ConsGroupDTO getConsGroupById(Long id); - boolean addConsGroup(ConsGroupDTO dto); + /** + * 新增耗材分组 + * + * @param dto 耗材分组dto + */ + void addConsGroup(ConsGroupDTO dto); - boolean updateConsGroup(ConsGroupDTO dto); + /** + * 更新耗材分组 + * + * @param dto 耗材分组dto + */ + void updateConsGroup(ConsGroupDTO dto); - boolean deleteConsGroup(Long id); + /** + * 删除耗材分组 + * + * @param id 耗材分组id + */ + void deleteConsGroup(Long id); - boolean disableConsGroup(Long id); + /** + * 禁用耗材分组 + * + * @param id 耗材分组id + */ + void disableConsGroup(Long id); - boolean enableConsGroup(Long id); + /** + * 启用耗材分组 + * + * @param id 耗材分组id + */ + void enableConsGroup(Long id); } \ No newline at end of file diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsInfoService.java b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsInfoService.java index 68c67ae3..c58ff85e 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsInfoService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ConsInfoService.java @@ -15,24 +15,81 @@ import java.util.List; * @since 1.0 2025-02-20 */ public interface ConsInfoService extends IService { + /** + * 获取耗材信息分页 + * + * @param param 查询参数 + * @return 耗材信息分页 + */ Page getConsInfoPage(ConsInfoDTO param); + /** + * 获取耗材信息列表 + * + * @param param 查询参数 + * @return 耗材信息列表 + */ List getConsInfoList(ConsInfoDTO param); + /** + * 获取耗材信息详情 + * + * @param id 耗材信息ID + * @return 耗材信息详情 + */ ConsInfoDTO getConsInfoById(Long id); + /** + * 新增耗材信息 + * + * @param dto 耗材信息DTO + * @return 新增耗材信息是否成功 + */ boolean addConsInfo(ConsInfoDTO dto); + /** + * 更新耗材信息 + * + * @param dto 耗材信息DTO + * @return 更新耗材信息是否成功 + */ boolean updateConsInfo(ConsInfoDTO dto); + /** + * 删除耗材信息 + * + * @param id 耗材信息ID + * @return 删除耗材信息是否成功 + */ boolean deleteConsInfo(Long id); - boolean disableConsInfo(Long id); + /** + * 禁用耗材信息 + * + * @param id 耗材信息ID + */ + void disableConsInfo(Long id); - boolean enableConsInfo(Long id); + /** + * 启用耗材信息 + * + * @param id 耗材信息ID + */ + void enableConsInfo(Long id); - boolean onOffConsInfo(Long id, Integer isStock); + /** + * 是否检测耗材 + * + * @param id 耗材信息ID + * @param isStock 是否检测耗材 + */ + void onOffConsInfo(Long id, Integer isStock); + /** + * 修改耗材单位 + * + * @param param 修改单位参数 + */ void modifySubUnit(ConsSubUnitParam param); } \ No newline at end of file diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProdConsRelationService.java b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProdConsRelationService.java index 4cd3a5cb..8e786fd3 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProdConsRelationService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProdConsRelationService.java @@ -14,9 +14,20 @@ import java.util.List; * @since 1.0 2025-02-20 */ public interface ProdConsRelationService extends IService { - + /** + * 获取商品耗材绑定关系列表 + * + * @param param 查询参数 + * @return 商品耗材绑定关系列表 + */ List getProdConsRelationList(ProdConsRelationDTO param); - boolean saveProdConsRelation(ProdConsBindDTO dto); + /** + * 保存商品耗材绑定关系 + * + * @param dto 商品耗材绑定关系DTO + * @return 保存结果 + */ + void saveProdConsRelation(ProdConsBindDTO dto); } \ No newline at end of file diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProdGroupService.java b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProdGroupService.java index c95b88f8..530a0a7f 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProdGroupService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProdGroupService.java @@ -14,20 +14,63 @@ import java.util.List; * @since 1.0 2025-02-17 */ public interface ProdGroupService extends IService { + /** + * 获取商品分组分页 + * + * @param param 查询参数 + * @return 商品分组分页 + */ Page getProdGroupPage(ProdGroupDTO param); + /** + * 获取商品分组列表 + * + * @param param 查询参数 + * @return 商品分组列表 + */ List getProdGroupList(ProdGroupDTO param); + /** + * 获取商品分组详情 + * + * @param id 商品分组ID + * @return 商品分组详情 + */ ProdGroupDTO getProdGroupById(Long id); - boolean addProdGroup(ProdGroupDTO dto); - - boolean deleteProdGroup(Long id); + /** + * 添加商品分组 + * + * @param dto 商品分组DTO + */ + void addProdGroup(ProdGroupDTO dto); - boolean updateProdGroup(ProdGroupDTO dto); + /** + * 删除商品分组 + * + * @param id 商品分组ID + */ + void deleteProdGroup(Long id); - boolean disableProdGroup(Long id); + /** + * 更新商品分组 + * + * @param dto 商品分组DTO + */ + void updateProdGroup(ProdGroupDTO dto); - boolean enableProdGroup(Long id); + /** + * 禁用商品分组 + * + * @param id 商品分组ID + */ + void disableProdGroup(Long id); + + /** + * 启用商品分组 + * + * @param id 商品分组ID + */ + void enableProdGroup(Long id); } \ No newline at end of file diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProductService.java b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProductService.java index ac95faa2..76f8923a 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProductService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ProductService.java @@ -17,23 +17,76 @@ import java.util.List; * @since 1.0 2025-02-16 */ public interface ProductService extends IService { + /** + * 获取商品分页 + * + * @param param 查询参数 + * @return 分页数据 + */ Page getProductPage(ProductDTO param); + /** + * 获取商品列表 + * + * @param param 查询参数 + * @return 商品列表数据 + */ List getProductList(ProductDTO param); + /** + * 获取商品详情 + * + * @param id 商品ID + * @return 商品详情数据 + */ ProductDTO getProductById(Long id); - boolean addProduct(ProductDTO dto); + /** + * 添加商品 + * + * @param dto 商品信息 + */ + void addProduct(ProductDTO dto); - boolean updateProduct(ProductDTO dto); + /** + * 更新商品 + * + * @param dto 商品信息 + */ + void updateProduct(ProductDTO dto); - boolean deleteProduct(Long id); + /** + * 删除商品 + * + * @param id 商品ID + */ + void deleteProduct(Long id); - boolean onOffProduct(ProductIsSaleParam param); + /** + * 上架/下架商品 + * + * @param param 商品上架/下架参数 + */ + void onOffProduct(ProductIsSaleParam param); - boolean markProductIsSoldOut(ProductIsSoldOutParam param); + /** + * 标记商品售罄 + * + * @param param 入参 + */ + void markProductIsSoldOut(ProductIsSoldOutParam param); + /** + * 退货到库存 + * + * @param param 退货到库存参数 + */ void refundToStock(ProdRefundToStockParam param); + /** + * 库存预警 + * + * @param warnLine 预警线 + */ void stockWarning(Integer warnLine); } \ No newline at end of file diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdCategoryService.java b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdCategoryService.java index c37195d3..4af1e0a3 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdCategoryService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdCategoryService.java @@ -15,20 +15,61 @@ import java.util.List; */ public interface ShopProdCategoryService extends IService { + /** + * 获取店铺商品分类分页 + * + * @param param 查询参数 + * @return 店铺商品分类分页 + */ Page getShopProdCategoryPage(ShopProdCategoryDTO param); + /** + * 获取店铺商品分类列表 + * @param param 查询参数 + * @return 店铺商品分类列表 + */ List getShopProdCategoryList(ShopProdCategoryDTO param); + /** + * 获取店铺商品分类详情 + * @param id id + * @return 店铺商品分类详情 + */ ShopProdCategoryDTO getShopProdCategoryById(Long id); - boolean addShopProdCategory(ShopProdCategoryDTO dto); + /** + * 添加店铺商品分类 + * + * @param dto 商品分类信息 + */ + void addShopProdCategory(ShopProdCategoryDTO dto); - boolean updateShopProdCategory(ShopProdCategoryDTO dto); + /** + * 更新店铺商品分类 + * + * @param dto 商品分类信息 + */ + void updateShopProdCategory(ShopProdCategoryDTO dto); - boolean deleteShopProdCategory(Long id); + /** + * 删除店铺商品分类 + * + * @param id 商品分类id + */ + void deleteShopProdCategory(Long id); - boolean disableShopProdCategory(Long id); + /** + * 禁用店铺商品分类 + * + * @param id 商品分类id + */ + void disableShopProdCategory(Long id); - boolean enableShopProdCategory(Long id); + /** + * 启用店铺商品分类 + * + * @param id 商品分类id + */ + void enableShopProdCategory(Long id); } \ No newline at end of file diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdSpecService.java b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdSpecService.java index 3d23c4a9..fdd3dbdc 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdSpecService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdSpecService.java @@ -14,21 +14,64 @@ import java.util.List; * @since 1.0 2025-02-13 */ public interface ShopProdSpecService extends IService { + /** + * 获取商品规格分页数据 + * + * @param param 查询参数 + * @return 分页数据 + */ Page getShopProdSpecPage(ShopProdSpecDTO param); + /** + * 获取商品规格列表数据 + * + * @param param 查询参数 + * @return 列表数据 + */ List getShopProdSpecList(ShopProdSpecDTO param); + /** + * 根据id获取商品规格详情 + * + * @param id 规格id + * @return 商品规格详情数据 + */ ShopProdSpecDTO getShopProdSpecById(Long id); - boolean addShopProdSpec(ShopProdSpecDTO dto); - - boolean deleteShopProdSpec(Long id); + /** + * 添加商品规格 + * + * @param dto 商品规格DTO + */ + void addShopProdSpec(ShopProdSpecDTO dto); - boolean updateShopProdSpec(ShopProdSpecDTO dto); + /** + * 删除商品规格 + * + * @param id 规格id + */ + void deleteShopProdSpec(Long id); - boolean disableShopProdSpec(Long id); + /** + * 更新商品规格 + * + * @param dto 商品规格DTO + */ + void updateShopProdSpec(ShopProdSpecDTO dto); - boolean enableShopProdSpec(Long id); + /** + * 禁用商品规格 + * + * @param id 规格id + */ + void disableShopProdSpec(Long id); + + /** + * 启用商品规格 + * + * @param id 规格id + */ + void enableShopProdSpec(Long id); /** * 快速添加商品规格 diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdUnitService.java b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdUnitService.java index 3dc7e7bb..be9b3989 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdUnitService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopProdUnitService.java @@ -15,20 +15,61 @@ import java.util.List; */ public interface ShopProdUnitService extends IService { + /** + * 获取商品单位分页 + * + * @param param 查询参数 + * @return 商品单位分页数据 + */ Page getShopProdUnitPage(ShopProdUnitDTO param); + /** + * 获取商品单位列表 + * @param param 查询参数 + * @return 商品单位列表数据 + */ List getShopProdUnitList(ShopProdUnitDTO param); + /** + * 获取商品单位详情 + * @param id 商品单位ID + * @return 商品单位详情数据 + */ ShopProdUnitDTO getShopProdUnitById(Long id); - boolean addShopProdUnit(ShopProdUnitDTO dto); + /** + * 新增商品单位 + * + * @param dto 商品单位数据 + */ + void addShopProdUnit(ShopProdUnitDTO dto); - boolean updateShopProdUnit(ShopProdUnitDTO dto); + /** + * 更新商品单位 + * + * @param dto 商品单位数据 + */ + void updateShopProdUnit(ShopProdUnitDTO dto); - boolean deleteShopProdUnit(Long id); + /** + * 删除商品单位 + * + * @param id 商品单位ID + */ + void deleteShopProdUnit(Long id); - boolean disableShopProdUnit(Long id); + /** + * 禁用商品单位 + * + * @param id 商品单位ID + */ + void disableShopProdUnit(Long id); - boolean enableShopProdUnit(Long id); + /** + * 启用商品单位 + * + * @param id 商品单位ID + */ + void enableShopProdUnit(Long id); } \ No newline at end of file diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopVendorService.java b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopVendorService.java index a6ddaca4..2086d50e 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopVendorService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/service/ShopVendorService.java @@ -14,16 +14,47 @@ import java.util.List; * @since 1.0 2025-02-20 */ public interface ShopVendorService extends IService { + /** + * 供应商分页查询 + * + * @param param 查询参数 + * @return 分页结果 + */ Page getShopVendorPage(ShopVendorDTO param); + /** + * 供应商列表查询 + * @param param 查询参数 + * @return 查询结果 + */ List getShopVendorList(ShopVendorDTO param); + /** + * 供应商明细 + * @param id 供应商id + * @return 供应商信息 + */ ShopVendorDTO getShopVendorById(Long id); - boolean addShopVendor(ShopVendorDTO dto); + /** + * 添加供应商 + * + * @param dto 供应商信息 + */ + void addShopVendor(ShopVendorDTO dto); - boolean updateShopVendor(ShopVendorDTO dto); + /** + * 修改供应商 + * + * @param dto 供应商信息 + */ + void updateShopVendor(ShopVendorDTO dto); - boolean deleteShopVendor(Long id); + /** + * 删除供应商 + * + * @param id 供应商id + */ + void deleteShopVendor(Long id); } \ No newline at end of file diff --git a/cash-common/cash-common-service/src/main/java/com/czg/product/service/UProductService.java b/cash-common/cash-common-service/src/main/java/com/czg/product/service/UProductService.java index 8813563f..222a1742 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/product/service/UProductService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/product/service/UProductService.java @@ -1,9 +1,11 @@ package com.czg.product.service; import com.czg.product.entity.Product; -import com.czg.product.param.MiniHomeProductParam; import com.czg.product.param.ShopProductSkuParam; -import com.czg.product.vo.*; +import com.czg.product.vo.ShopGroupProductVo; +import com.czg.product.vo.ShopProductInfoVo; +import com.czg.product.vo.ShopProductSkuInfoVo; +import com.czg.product.vo.ShopProductVo; import com.mybatisflex.core.service.IService; import java.util.List; @@ -15,13 +17,30 @@ import java.util.List; */ public interface UProductService extends IService { - MiniAppHomeProductVo queryProductForMiniAppHome(MiniHomeProductParam param); - + /** + * 用户端获取热门商品 + * + * @return 热门商品 + */ List queryHotsProductList(); + /** + * 用户端获取分组商品 + * @return 分组商品 + */ List queryGroupProductList(); + /** + * 用户端获取商品详情 + * @param id 商品ID + * @return 商品详情 + */ ShopProductInfoVo getProductInfo(Long id); + /** + * 用户端获取商品SKU详情 + * @param param 商品SKU查询参数 + * @return 商品详情 + */ ShopProductSkuInfoVo getProductSkuInfo(ShopProductSkuParam param); } diff --git a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ConsGroupServiceImpl.java b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ConsGroupServiceImpl.java index bfd5435b..ff081a37 100644 --- a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ConsGroupServiceImpl.java +++ b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ConsGroupServiceImpl.java @@ -76,7 +76,7 @@ public class ConsGroupServiceImpl extends ServiceImpl consIds = dto.getConsIds(); if (CollUtil.isEmpty(consIds)) { - return true; + return; } for (Long consId : consIds) { ConsGroupRelation relation = new ConsGroupRelation(); @@ -97,11 +97,10 @@ public class ConsGroupServiceImpl extends ServiceImpl consIds = dto.getConsIds(); if (CollUtil.isEmpty(consIds)) { - return true; + return; } consGroupRelationMapper.deleteByQuery(query().eq(ConsGroupRelation::getGroupId, entity.getId())); for (Long consId : consIds) { @@ -122,19 +121,18 @@ public class ConsGroupServiceImpl extends ServiceImpl i } @Override - public boolean disableConsInfo(Long id) { + public void disableConsInfo(Long id) { Long shopId = StpKit.USER.getShopId(0L); - return UpdateChain.of(ConsInfo.class) + UpdateChain.of(ConsInfo.class) .set(ConsInfo::getStatus, StatusEnum.DISABLE.value()) .eq(ConsInfo::getId, id) .eq(ConsInfo::getShopId, shopId) @@ -153,9 +153,9 @@ public class ConsInfoServiceImpl extends ServiceImpl i } @Override - public boolean enableConsInfo(Long id) { + public void enableConsInfo(Long id) { Long shopId = StpKit.USER.getShopId(0L); - return UpdateChain.of(ConsInfo.class) + UpdateChain.of(ConsInfo.class) .set(ConsInfo::getStatus, StatusEnum.ENABLED.value()) .eq(ConsInfo::getId, id) .eq(ConsInfo::getShopId, shopId) @@ -163,12 +163,11 @@ public class ConsInfoServiceImpl extends ServiceImpl i } @Override - public boolean onOffConsInfo(Long id, Integer isStock) { + public void onOffConsInfo(Long id, Integer isStock) { Long shopId = StpKit.USER.getShopId(0L); ConsInfo entity = super.getOne(query().eq(ConsInfo::getId, id).eq(ConsInfo::getShopId, shopId)); entity.setIsStock(isStock); super.updateById(entity); - return false; } @Override diff --git a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProdConsRelationServiceImpl.java b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProdConsRelationServiceImpl.java index 73e36df6..d4768126 100644 --- a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProdConsRelationServiceImpl.java +++ b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProdConsRelationServiceImpl.java @@ -50,7 +50,7 @@ public class ProdConsRelationServiceImpl extends ServiceImpl consList = dto.getConsList(); @@ -73,7 +73,7 @@ public class ProdConsRelationServiceImpl extends ServiceImpl entityList = BeanUtil.copyToList(consList, ProdConsRelation.class); - return super.saveBatch(entityList); + super.saveBatch(entityList); } } \ No newline at end of file diff --git a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProdGroupServiceImpl.java b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProdGroupServiceImpl.java index c5f5bcef..d1a55d8e 100644 --- a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProdGroupServiceImpl.java +++ b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ProdGroupServiceImpl.java @@ -82,7 +82,7 @@ public class ProdGroupServiceImpl extends ServiceImpl impl @Override @Transactional(rollbackFor = Exception.class) - public boolean addProduct(ProductDTO dto) { + public void addProduct(ProductDTO dto) { Long shopId = StpKit.USER.getShopId(0L); boolean exists = super.exists(query().eq(Product::getName, dto.getName()).eq(Product::getShopId, shopId)); if (exists) { @@ -194,11 +194,10 @@ public class ProductServiceImpl extends ServiceImpl impl } prodSkuMapper.insertBatch(prodSkuList); } - return true; } @Override - public boolean updateProduct(ProductDTO dto) { + public void updateProduct(ProductDTO dto) { Long shopId = StpKit.USER.getShopId(0L); dto.setShopId(shopId); boolean exists = super.exists(query().eq(Product::getName, dto.getName()).eq(Product::getShopId, shopId).ne(Product::getId, dto.getId())); @@ -249,13 +248,12 @@ public class ProductServiceImpl extends ServiceImpl impl .eq(ProdSku::getShopId, shopId) .update(); } - return true; } @Override - public boolean deleteProduct(Long id) { + public void deleteProduct(Long id) { Long shopId = StpKit.USER.getShopId(0L); - return UpdateChain.of(Product.class) + UpdateChain.of(Product.class) .set(Product::getIsDel, DeleteEnum.DELETED.value()) .eq(Product::getId, id) .eq(Product::getShopId, shopId) @@ -264,7 +262,7 @@ public class ProductServiceImpl extends ServiceImpl impl @Override @Transactional(rollbackFor = Exception.class) - public boolean onOffProduct(ProductIsSaleParam param) { + public void onOffProduct(ProductIsSaleParam param) { Long shopId = StpKit.USER.getShopId(0L); String type = param.getType(); Long id = param.getId(); @@ -280,12 +278,11 @@ public class ProductServiceImpl extends ServiceImpl impl .eq(Product::getShopId, shopId) .update(); } - return true; } @Override @Transactional(rollbackFor = Exception.class) - public boolean markProductIsSoldOut(ProductIsSoldOutParam param) { + public void markProductIsSoldOut(ProductIsSoldOutParam param) { Long shopId = StpKit.USER.getShopId(0L); String type = param.getType(); Long id = param.getId(); @@ -301,7 +298,6 @@ public class ProductServiceImpl extends ServiceImpl impl .eq(Product::getShopId, shopId) .update(); } - return true; } @Override diff --git a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopProdCategoryServiceImpl.java b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopProdCategoryServiceImpl.java index b334c88c..50b5ced9 100644 --- a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopProdCategoryServiceImpl.java +++ b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopProdCategoryServiceImpl.java @@ -58,7 +58,7 @@ public class ShopProdCategoryServiceImpl extends ServiceImpl imp private final ProdGroupMapper prodGroupMapper; private final ProdGroupRelationMapper prodGroupRelationMapper; - private QueryWrapper buildQueryWrapper(MiniHomeProductParam param) { - Long shopId = StpKit.USER.getShopId(0L); - String weekDayEnName = getWeekDayEnName(); - LocalTime now = LocalTime.now().withNano(0); - QueryWrapper queryWrapper = query(); - queryWrapper.select(PRODUCT.ALL_COLUMNS) - .select(SHOP_PROD_UNIT.NAME.as(ProductDTO::getUnitName)) - .select(SHOP_PROD_CATEGORY.NAME.as(ProductDTO::getCategoryName)) - .select(SHOP_PROD_SPEC.NAME.as(ProductDTO::getSpecName), SHOP_PROD_SPEC.FULL_NAME.as(ProductDTO::getSpecFullName)) - .from(PRODUCT) - .leftJoin(SHOP_PROD_UNIT).on(SHOP_PROD_UNIT.ID.eq(PRODUCT.UNIT_ID)) - .leftJoin(SHOP_PROD_CATEGORY).on(SHOP_PROD_CATEGORY.ID.eq(PRODUCT.CATEGORY_ID)) - .leftJoin(SHOP_PROD_SPEC).on(SHOP_PROD_SPEC.ID.eq(PRODUCT.SPEC_ID)) - .where(PRODUCT.SHOP_ID.eq(shopId)) - .and(PRODUCT.DAYS.like(weekDayEnName)) - .and(PRODUCT.START_TIME.le(now)) - .and(PRODUCT.END_TIME.ge(now)) - .and(PRODUCT.IS_DEL.eq(DeleteEnum.NORMAL.value())) - .and(PRODUCT.IS_SALE.eq(YesNoEnum.YES.value())) - .orderBy(PRODUCT.SORT, false) - .orderBy(PRODUCT.ID, false); - if (CollUtil.isNotEmpty(param.getProductIdList())) { - queryWrapper.and(PRODUCT.ID.in(param.getProductIdList())); - } - return queryWrapper; - } - - private QueryWrapper buildHotsQueryWrapper(MiniHomeProductParam param) { - // 查询在可售时间内的热门商品 - QueryWrapper queryWrapper = buildQueryWrapper(param); - queryWrapper.and(PRODUCT.IS_HOT.eq(YesNoEnum.YES.value())); - return queryWrapper; - } - - private List buildProductList(QueryWrapper queryWrapper) { - List dtoList = productMapper.selectListByQueryAs(queryWrapper, ProductDTO.class); - if (CollUtil.isEmpty(dtoList)) { - return Collections.emptyList(); - } - List prodIdList = dtoList.stream().map(ProductDTO::getId).distinct().toList(); - List skuList = prodSkuMapper.selectListByQueryAs(query() - .in(ProdSku::getProductId, prodIdList) - .eq(ProdSku::getIsDel, DeleteEnum.NORMAL.value()) - .eq(ProdSku::getIsGrounding, YesNoEnum.YES.value()) - , ProdSkuDTO.class); - Map> collect = skuList.stream().collect(Collectors.groupingBy(ProdSkuDTO::getProductId)); - List products = new ArrayList<>(); - for (ProductDTO dto : dtoList) { - MiniAppHomeProductInfoVo prod = new MiniAppHomeProductInfoVo(); - prod.setId(dto.getId()); - prod.setName(dto.getName()); - prod.setCoverImg(dto.getCoverImg()); - prod.setImages(dto.getImages()); - prod.setUnitName(dto.getUnitName()); - prod.setCategoryName(dto.getCategoryName()); - prod.setType(dto.getType()); - prod.setGroupType(dto.getGroupType()); - prod.setSelectSpecInfo(dto.getSelectSpecInfo()); - prod.setIsSoldStock(dto.getIsSoldStock()); - prod.setStockNumber(dto.getStockNumber()); - prod.setIsSale(dto.getIsSale()); - - List list = collect.getOrDefault(dto.getId(), Collections.emptyList()); - Optional lowPriceIsPresent = list.stream().map(ProdSkuDTO::getSalePrice).min(BigDecimal::compareTo); - lowPriceIsPresent.ifPresent(prod::setLowPrice); - - Optional lowMemberPriceIsPresent = list.stream().map(ProdSkuDTO::getMemberPrice).min(BigDecimal::compareTo); - lowMemberPriceIsPresent.ifPresent(prod::setLowMemberPrice); - - prod.setSkuList(list); - products.add(prod); - } - return products; - } - - @Override - public MiniAppHomeProductVo queryProductForMiniAppHome(MiniHomeProductParam param) { - Long shopId = StpKit.USER.getShopId(0L); - MiniAppHomeProductVo vo = new MiniAppHomeProductVo(); - - List hots = buildProductList(buildHotsQueryWrapper(param)); - vo.setHots(hots); - // 查询可用商品分组,构建分组商品数据 - QueryWrapper queryWrapper = query() - .eq(ProdGroup::getShopId, shopId) - .eq(ProdGroup::getStatus, StatusEnum.ENABLED.value()) - .orderBy(ProdGroup::getSort, true); - if (param.getProdGroupId() != null) { - queryWrapper.eq(ProdGroup::getId, param.getProdGroupId()); - } - List groupList = prodGroupMapper.selectListByQueryAs(queryWrapper, MiniAppHomeProdGroupVo.class); - for (MiniAppHomeProdGroupVo dto : groupList) { - List productIdList = prodGroupRelationMapper.selectObjectListByQueryAs(query().select(ProdGroupRelation::getProductId).eq(ProdGroupRelation::getProdGroupId, dto.getId()).orderBy(ProdGroupRelation::getSort, true), Long.class); - if (CollUtil.isNotEmpty(productIdList)) { - param.setProductIdList(productIdList); - List products = buildProductList(buildQueryWrapper(param)); - dto.setProducts(products); - } else { - dto.setProducts(new ArrayList<>()); - } - } - vo.setProductInfo(groupList); - return vo; - } - @Override public List queryHotsProductList() { Long shopId = StpKit.USER.getShopId(0L);