From 99b5466e5f1922cdade49fda35a9b8196be3ca61 Mon Sep 17 00:00:00 2001 From: liujiang <569804566@qq.com> Date: Sun, 1 Jun 2025 16:10:44 +0800 Subject: [PATCH] =?UTF-8?q?master=EF=BC=9A=E5=95=86=E5=9F=8E=E9=A6=96?= =?UTF-8?q?=E9=A1=B5=E5=95=86=E5=93=81=E8=AF=A6=E6=83=85=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=AE=8C=E5=96=84=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xkt/StoreProductController.java | 10 +++++ .../controller/xkt/vo/advert/AdvertResVO.java | 2 - .../xkt/vo/express/TrackRecordQueryVO.java | 1 - .../xkt/vo/order/StoreOrderPrintReqVO.java | 1 - .../xkt/vo/order/StoreOrderPrintRespVO.java | 2 +- .../controller/xkt/vo/store/StoreAuditVO.java | 2 - .../xkt/vo/store/StoreSimpleResVO.java | 2 - .../StoreCusProdDiscountVO.java | 1 - .../xkt/vo/storeFactory/StoreFactoryVO.java | 1 - .../xkt/vo/storeProd/StoreProdPCResVO.java | 1 - .../xkt/vo/storeProd/StoreProdResVO.java | 1 - .../StoreProdStatusCateCountResVO.java | 35 ++++++++++++++++++ .../storeProd/StoreProdStatusCateNumVO.java | 26 +++++++++++++ .../xkt/vo/storeProd/StoreProdStatusVO.java | 1 - .../xkt/vo/storeProd/StoreProdVO.java | 1 - .../vo/userFavorite/UserFavBatchDeleteVO.java | 2 - .../xkt/vo/userSubscriptions/UserSubscVO.java | 1 - .../src/main/resources/application-druid.yml | 4 +- .../src/main/resources/application.yml | 6 +-- .../xkt/dto/store/StoreSimpleResDTO.java | 2 +- .../StoreProdStatusCateCountDTO.java | 30 +++++++++++++++ .../StoreProdStatusCateCountResDTO.java | 37 +++++++++++++++++++ .../StoreProdStatusCateNumDTO.java | 23 ++++++++++++ .../com/ruoyi/xkt/mapper/StoreMapper.java | 11 +----- .../ruoyi/xkt/mapper/StoreProductMapper.java | 18 ++++----- .../xkt/service/IStoreProductService.java | 7 ++++ .../impl/StoreHomepageServiceImpl.java | 8 ++-- .../service/impl/StoreProductServiceImpl.java | 17 +++++++++ .../xkt/service/impl/StoreServiceImpl.java | 7 +++- 29 files changed, 211 insertions(+), 49 deletions(-) create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusCateCountResVO.java create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusCateNumVO.java create mode 100644 xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateCountDTO.java create mode 100644 xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateCountResDTO.java create mode 100644 xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateNumDTO.java diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreProductController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreProductController.java index fca0cbec1..843f21afe 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreProductController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreProductController.java @@ -158,6 +158,16 @@ public class StoreProductController extends XktBaseController { return R.ok(BeanUtil.toBean(storeProdService.getStatusNum(storeId), StoreProdStatusCountResVO.class)); } + /** + * 获取商品各个状态下的分类数量 + */ + @ApiOperation(value = "获取商品各个状态下的分类数量", httpMethod = "POST", response = R.class) + @PostMapping(value = "/status/cate/num/{storeId}") + public R> getStatusCateNum(@Validated @RequestBody StoreProdStatusCateNumVO cateCountVO) { + return R.ok(BeanUtil.copyToList(storeProdService.getStatusCateNum( + BeanUtil.toBean(cateCountVO, StoreProdStatusCateNumDTO.class)), StoreProdStatusCateCountResVO.class)); + } + /** * 导出档口商品列表 diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/advert/AdvertResVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/advert/AdvertResVO.java index df6527af1..d77bfd365 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/advert/AdvertResVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/advert/AdvertResVO.java @@ -6,8 +6,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.util.Date; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/express/TrackRecordQueryVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/express/TrackRecordQueryVO.java index 5e8823e05..f1eb5bfb6 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/express/TrackRecordQueryVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/express/TrackRecordQueryVO.java @@ -5,7 +5,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import javax.validation.constraints.NotEmpty; -import java.util.Date; import java.util.List; /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/order/StoreOrderPrintReqVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/order/StoreOrderPrintReqVO.java index fabe0c5e5..73785efa7 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/order/StoreOrderPrintReqVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/order/StoreOrderPrintReqVO.java @@ -5,7 +5,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; import java.util.List; /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/order/StoreOrderPrintRespVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/order/StoreOrderPrintRespVO.java index 6b023e8de..9759041c8 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/order/StoreOrderPrintRespVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/order/StoreOrderPrintRespVO.java @@ -14,7 +14,7 @@ public class StoreOrderPrintRespVO { @ApiModelProperty(value = "物流单号") private String expressWaybillNo; - + @ApiModelProperty(value = "文件流Base64编码") private String result; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreAuditVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreAuditVO.java index 15bc6bc82..96570603b 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreAuditVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreAuditVO.java @@ -5,9 +5,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; /** * @author liujiang diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreSimpleResVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreSimpleResVO.java index 10269a64c..f374443e8 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreSimpleResVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/store/StoreSimpleResVO.java @@ -1,6 +1,5 @@ package com.ruoyi.web.controller.xkt.vo.store; -import com.fasterxml.jackson.annotation.JsonInclude; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -12,7 +11,6 @@ import lombok.Data; */ @ApiModel("档口返回基本数据") @Data -@JsonInclude(JsonInclude.Include.NON_NULL) public class StoreSimpleResVO { @ApiModelProperty(value = "档口模板ID") diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeCusProdDiscount/StoreCusProdDiscountVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeCusProdDiscount/StoreCusProdDiscountVO.java index aa43c7185..688c315c9 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeCusProdDiscount/StoreCusProdDiscountVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeCusProdDiscount/StoreCusProdDiscountVO.java @@ -7,7 +7,6 @@ import lombok.Data; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; /** * @author liujiang diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeFactory/StoreFactoryVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeFactory/StoreFactoryVO.java index 5883914e0..96c28bb60 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeFactory/StoreFactoryVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeFactory/StoreFactoryVO.java @@ -7,7 +7,6 @@ import lombok.Data; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; /** * @author liujiang diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdPCResVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdPCResVO.java index 8c7dde1c1..b62efdfc7 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdPCResVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdPCResVO.java @@ -1,7 +1,6 @@ package com.ruoyi.web.controller.xkt.vo.storeProd; import com.fasterxml.jackson.annotation.JsonFormat; -import com.ruoyi.xkt.dto.storeProductFile.StoreProdFileResDTO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdResVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdResVO.java index fbdc4ad26..9c7e7b789 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdResVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdResVO.java @@ -6,7 +6,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import java.math.BigDecimal; import java.util.Date; import java.util.List; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusCateCountResVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusCateCountResVO.java new file mode 100644 index 000000000..4f709152d --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusCateCountResVO.java @@ -0,0 +1,35 @@ +package com.ruoyi.web.controller.xkt.vo.storeProd; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口商品各个状态下分类数量") +@Data +public class StoreProdStatusCateCountResVO { + + @ApiModelProperty(value = "商品状态") + private Integer prodStatus; + @ApiModelProperty(value = "状态下分类数量") + List cateCountList; + + @Data + @Accessors(chain = true) + public static class SPSCCCateCountVO { + @ApiModelProperty(value = "商品分类ID") + private Long prodCateId; + @ApiModelProperty(value = "商品分类名称") + private String prodCateName; + @ApiModelProperty(value = "商品分类数量") + private Integer cateCount; + } + +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusCateNumVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusCateNumVO.java new file mode 100644 index 000000000..96fef4629 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusCateNumVO.java @@ -0,0 +1,26 @@ +package com.ruoyi.web.controller.xkt.vo.storeProd; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.util.List; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口状态下分类数量") +@Data +public class StoreProdStatusCateNumVO { + + @NotNull(message = "档口ID不能为空!") + @ApiModelProperty(value = "档口ID", required = true) + private Long storeId; + @ApiModelProperty(value = "商品状态列表") + @NotNull(message = "商品状态列表不能为空!") + List prodStatusList; + +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusVO.java index 1183f8abb..5a433de66 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdStatusVO.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.util.List; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdVO.java index 402d7ebe9..73e0144e8 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProd/StoreProdVO.java @@ -9,7 +9,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import lombok.RequiredArgsConstructor; import javax.validation.Valid; import javax.validation.constraints.NotBlank; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/userFavorite/UserFavBatchDeleteVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/userFavorite/UserFavBatchDeleteVO.java index 481c4319c..4fc586481 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/userFavorite/UserFavBatchDeleteVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/userFavorite/UserFavBatchDeleteVO.java @@ -5,8 +5,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.Valid; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.util.List; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/userSubscriptions/UserSubscVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/userSubscriptions/UserSubscVO.java index 39de17067..3bdd0238b 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/userSubscriptions/UserSubscVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/userSubscriptions/UserSubscVO.java @@ -6,7 +6,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import javax.validation.constraints.NotNull; -import java.util.List; /** * @author liujiang diff --git a/ruoyi-admin/src/main/resources/application-druid.yml b/ruoyi-admin/src/main/resources/application-druid.yml index 9df68401a..68946b6a3 100644 --- a/ruoyi-admin/src/main/resources/application-druid.yml +++ b/ruoyi-admin/src/main/resources/application-druid.yml @@ -6,9 +6,9 @@ spring: druid: # 主库数据源 master: - url: jdbc:mysql://47.100.64.234:3377/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 + url: jdbc:mysql://127.0.0.1:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 username: root - password: hongtu56@Mysql0212 + password: 123456 # 从库数据源 slave: # 从数据源开关/默认关闭 diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index e77e5e96e..58ed6a7fa 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -100,13 +100,13 @@ spring: # redis 配置 redis: # 地址 - host: 47.100.64.234 + host: 127.0.0.1 # 端口,默认为6379 - port: 6699 + port: 6379 # 数据库索引 database: 0 # 密码 - password: hongtu56@Redis0212 + password: # 连接超时时间 timeout: 10s lettuce: diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreSimpleResDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreSimpleResDTO.java index 626a9950a..13cafeb36 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreSimpleResDTO.java +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/store/StoreSimpleResDTO.java @@ -14,7 +14,7 @@ import lombok.experimental.Accessors; */ @ApiModel("档口返回基本数据") @Data -@JsonInclude(JsonInclude.Include.NON_NULL) +@Accessors(chain = true) public class StoreSimpleResDTO { @ApiModelProperty(value = "档口模板ID") diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateCountDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateCountDTO.java new file mode 100644 index 000000000..f44c9dc4c --- /dev/null +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateCountDTO.java @@ -0,0 +1,30 @@ +package com.ruoyi.xkt.dto.storeProduct; + +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口商品各个状态下分类数量") +@Data +@JsonInclude(JsonInclude.Include.NON_NULL) +public class StoreProdStatusCateCountDTO { + + @ApiModelProperty(value = "商品状态") + private Integer prodStatus; + @ApiModelProperty(value = "商品分类ID") + private Long prodCateId; + @ApiModelProperty(value = "商品分类名称") + private String prodCateName; + @ApiModelProperty(value = "商品分类数量") + private Integer cateCount; + +} diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateCountResDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateCountResDTO.java new file mode 100644 index 000000000..c6f458c2c --- /dev/null +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateCountResDTO.java @@ -0,0 +1,37 @@ +package com.ruoyi.xkt.dto.storeProduct; + +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口商品各个状态下分类数量") +@Data +@Accessors(chain = true) +public class StoreProdStatusCateCountResDTO { + + @ApiModelProperty(value = "商品状态") + private Integer prodStatus; + @ApiModelProperty(value = "状态下分类数量") + List cateCountList; + + @Data + @Accessors(chain = true) + public static class SPSCCCateCountDTO { + @ApiModelProperty(value = "商品分类ID") + private Long prodCateId; + @ApiModelProperty(value = "商品分类名称") + private String prodCateName; + @ApiModelProperty(value = "商品分类数量") + private Integer cateCount; + } + +} diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateNumDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateNumDTO.java new file mode 100644 index 000000000..2a1ff5ed4 --- /dev/null +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/storeProduct/StoreProdStatusCateNumDTO.java @@ -0,0 +1,23 @@ +package com.ruoyi.xkt.dto.storeProduct; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口状态下分类数量") +@Data +public class StoreProdStatusCateNumDTO { + + @ApiModelProperty(value = "档口ID") + private Long storeId; + @ApiModelProperty(value = "商品状态列表") + List prodStatusList; + +} diff --git a/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreMapper.java b/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreMapper.java index 97d2e08f0..c53137b08 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreMapper.java +++ b/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreMapper.java @@ -19,14 +19,6 @@ import java.util.List; @Repository public interface StoreMapper extends BaseMapper { - /** - * 查询档口列表 - * - * @param store 档口 - * @return 档口集合 - */ - List selectStoreList(Store store); - /** * 修改档口 * @@ -41,9 +33,8 @@ public interface StoreMapper extends BaseMapper { * PC 商城首页 获取档口基本信息 * * @param storeId 档口ID - * @param userId 用户ID * @return StoreBasicResDTO */ - StoreSimpleResDTO getSimpleInfo(@Param("storeId") Long storeId, @Param("userId") Long userId); + StoreSimpleResDTO getSimpleInfo(@Param("storeId") Long storeId); } diff --git a/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreProductMapper.java b/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreProductMapper.java index baec54916..a15f7055e 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreProductMapper.java +++ b/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreProductMapper.java @@ -35,14 +35,6 @@ public interface StoreProductMapper extends BaseMapper { */ List fuzzyQueryResPicList(@Param("storeId") Long storeId, @Param("prodArtNum") String prodArtNum); - /** - * 查询档口的在售、尾货、下架数量 - * - * @param storeId 档口ID - * @return StoreProdCountDTO - */ - StoreProdStatusCountDTO selectStatusCount(Long storeId); - /** * 档口商品ID列表 * @@ -120,11 +112,19 @@ public interface StoreProductMapper extends BaseMapper { /** * 获取档口各个状态的数量 - * @param storeId 档口ID + * + * @param storeId 档口ID * @param statusList 状态列表 * @return StoreProdStatusCountResDTO */ StoreProdStatusCountResDTO getStatusNum(@Param("storeId") Long storeId, @Param("statusList") List statusList); + /** + * 获取档口各个状态的分类数量 + * + * @param cateNumDTO 查询入参 + * @return StoreProdStatusCateCountResDTO + */ + List getStatusCateNum(StoreProdStatusCateNumDTO cateNumDTO); } diff --git a/xkt/src/main/java/com/ruoyi/xkt/service/IStoreProductService.java b/xkt/src/main/java/com/ruoyi/xkt/service/IStoreProductService.java index a3acf7855..c70478272 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/service/IStoreProductService.java +++ b/xkt/src/main/java/com/ruoyi/xkt/service/IStoreProductService.java @@ -134,4 +134,11 @@ public interface IStoreProductService { */ StoreProdStatusCountResDTO getStatusNum(Long storeId); + /** + * 获取商品状态下分类数量 + * + * @param dto 查询入参 + * @return StoreProdStatusCateCountResDTO + */ + List getStatusCateNum(StoreProdStatusCateNumDTO dto); } diff --git a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreHomepageServiceImpl.java b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreHomepageServiceImpl.java index d8e901ef8..246b9b490 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreHomepageServiceImpl.java +++ b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreHomepageServiceImpl.java @@ -7,12 +7,10 @@ import com.ruoyi.common.constant.HttpStatus; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.xkt.domain.*; import com.ruoyi.xkt.dto.storeHomepage.*; -import com.ruoyi.xkt.dto.storeProdCateAttr.StoreProdCateAttrDTO; -import com.ruoyi.xkt.dto.storeProdDetail.StoreProdDetailDTO; import com.ruoyi.xkt.dto.storeProduct.StoreProdPriceAndMainPicAndTagDTO; -import com.ruoyi.xkt.dto.storeProduct.StoreProdStatusCountDTO; -import com.ruoyi.xkt.dto.storeProductFile.StoreProdFileResDTO; -import com.ruoyi.xkt.enums.*; +import com.ruoyi.xkt.enums.AdDisplayType; +import com.ruoyi.xkt.enums.HomepageJumpType; +import com.ruoyi.xkt.enums.HomepageType; import com.ruoyi.xkt.mapper.*; import com.ruoyi.xkt.service.IStoreHomepageService; import lombok.RequiredArgsConstructor; diff --git a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductServiceImpl.java b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductServiceImpl.java index 162c080c4..e2b3dfb5b 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductServiceImpl.java +++ b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductServiceImpl.java @@ -709,6 +709,23 @@ public class StoreProductServiceImpl implements IStoreProductService { .asList(EProductStatus.ON_SALE.getValue(), EProductStatus.TAIL_GOODS.getValue(), EProductStatus.OFF_SALE.getValue())); } + /** + * 获取商品状态下分类数量 + * + * @param cateNumDTO 查询入参 + * @return StoreProdStatusCateCountResDTO + */ + @Override + @Transactional(readOnly = true) + public List getStatusCateNum(StoreProdStatusCateNumDTO cateNumDTO) { + List statusCateNumList = this.storeProdMapper.getStatusCateNum(cateNumDTO); + List countList = new ArrayList<>(); + statusCateNumList.stream().collect(Collectors.groupingBy(StoreProdStatusCateCountDTO::getProdStatus)) + .forEach((prodStatus, cateList) -> countList.add(new StoreProdStatusCateCountResDTO().setProdStatus(prodStatus) + .setCateCountList(BeanUtil.copyToList(cateList, StoreProdStatusCateCountResDTO.SPSCCCateCountDTO.class)))); + return countList; + } + /** * 获取当前商品的sku列表 * diff --git a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreServiceImpl.java b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreServiceImpl.java index 1c54835ff..af61b57ec 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreServiceImpl.java +++ b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreServiceImpl.java @@ -356,7 +356,12 @@ public class StoreServiceImpl implements IStoreService { @Override @Transactional (readOnly = true) public StoreSimpleResDTO getSimpleInfo(Long storeId) { - return this.storeMapper.getSimpleInfo(storeId, SecurityUtils.getUserId()); + StoreSimpleResDTO simpleDTO = this.storeMapper.getSimpleInfo(storeId); + final Long userId = SecurityUtils.getUserId(); + UserSubscriptions userSub = ObjectUtils.isEmpty(userId) ? null + : this.userSubMapper.selectOne(new LambdaQueryWrapper().eq(UserSubscriptions::getUserId, userId) + .eq(UserSubscriptions::getStoreId, storeId).eq(UserSubscriptions::getDelFlag, Constants.UNDELETED)); + return simpleDTO.setFocus(ObjectUtils.isNotEmpty(userSub) ? Boolean.TRUE : Boolean.FALSE); } }