From c87e5c5204b95a59d6ae48629488088d1eb296a8 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期二, 21 五月 2024 19:28:20 +0800 Subject: [PATCH] 提交秒杀商品模块接口 --- ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleMapper.java | 2 ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java | 33 ++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeriesDTO.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsBrandMapper.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsFlavorTypeServiceImpl.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleDTO.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsInfoTitleController.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java | 4 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillDTO.java | 41 ++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsGroupPurchaseController.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsFlavorTypeMapper.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuDTO.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuQuery.java | 2 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderService.java | 3 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillUpd.java | 61 ++++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSkuVO.java | 4 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsInfoTitleValue.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeriesMapper.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSeriesVO.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleValueService.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsBrandService.java | 8 ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml | 25 + ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsFlavorType.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsFlavorTypeVO.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsCategoryQuery.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsBrandController.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java | 12 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsCategoryServiceImpl.java | 8 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/OrderFallbackFactory.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsCategoryController.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSkuMapper.java | 3 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsCategoryDTO.java | 4 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/OrderClient.java | 11 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillQuery.java | 23 + ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleServiceImpl.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsGroupPurchase.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsFlavorTypeService.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsCategory.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleValueServiceImpl.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsFlavorTypeDTO.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSeckillController.java | 96 ++++++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsBrand.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsCategoryService.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSeriesController.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSkuService.java | 9 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeriesQuery.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSeries.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleValueDTO.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsBrandQuery.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsInfoTitle.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsInfoTitleVO.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleQuery.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSeckillVO.java | 68 ++++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java | 7 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsBrandVO.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsBrandDTO.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSkuController.java | 20 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSeckill.java | 11 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsCategoryVO.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java | 102 ++++++ ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java | 6 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsCategoryMapper.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleService.java | 8 /dev/null | 25 - ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsBrandServiceImpl.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsFlavorTypeQuery.java | 4 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java | 23 + ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsSkuController.java | 12 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuInfoDTO.java | 38 ++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java | 2 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java | 4 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsFlavorTypeController.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSku.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeriesServiceImpl.java | 8 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleValueMapper.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeriesService.java | 8 78 files changed, 683 insertions(+), 172 deletions(-) diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/OrderFallbackFactory.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/OrderFallbackFactory.java index 87b45a2..f6809a7 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/OrderFallbackFactory.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/OrderFallbackFactory.java @@ -1,5 +1,6 @@ package com.ruoyi.system.api.factory; +import com.ruoyi.common.core.domain.R; import com.ruoyi.system.api.feignClient.OrderClient; import org.springframework.cloud.openfeign.FallbackFactory; @@ -11,6 +12,11 @@ @Override public OrderClient create(Throwable cause) { - return null; + return new OrderClient() { + @Override + public R<Integer> getSeckillMembers(Long id) { + return R.fail("获取秒杀商品已购会员数失败:" + cause.getMessage()); + } + }; } } diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/OrderClient.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/OrderClient.java index 9d0edf1..bcd5961 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/OrderClient.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/OrderClient.java @@ -1,10 +1,21 @@ package com.ruoyi.system.api.feignClient; import com.ruoyi.common.core.constant.ServiceNameConstants; +import com.ruoyi.common.core.domain.R; import com.ruoyi.system.api.factory.OrderFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; @FeignClient(contextId = "orderClient", value = ServiceNameConstants.RUOYI_ORDER, fallbackFactory = OrderFallbackFactory.class) public interface OrderClient { + /** + * 获取某个商品的已购会员数 + * + * @param id 秒杀商品id + * @return 已购会员数 + */ + @GetMapping("/order/seckill-members/{id}") + R<Integer> getSeckillMembers(@PathVariable("id") Long id); } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsSkuController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsSkuController.java index 97113c6..df8f693 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsSkuController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsSkuController.java @@ -1,15 +1,15 @@ package com.ruoyi.goods.controller; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.ruoyi.common.core.domain.R; -import com.ruoyi.goods.domain.pojo.GoodsSku; +import com.ruoyi.goods.domain.GoodsSku; import com.ruoyi.goods.service.IGoodsSkuService; -import org.springframework.web.bind.annotation.*; - import javax.annotation.Resource; -import java.util.List; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.RestController; /** * <p> diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsSeckillController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsSeckillController.java deleted file mode 100644 index 656fd0c..0000000 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsSeckillController.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.ruoyi.goods.controller.mamagement; - - -import io.swagger.annotations.Api; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * <p> - * 商品秒杀表 前端控制器 - * </p> - * - * @author mitao - * @since 2024-05-16 - */ -@Slf4j -@RestController -@RequiredArgsConstructor -@RequestMapping("/mgt/goods-seckill") -@Api(value = "管理后台商品秒杀相关接口", tags = {"管理后台接口"}) -public class MgtGoodsSeckillController { - -} diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsBrandDTO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsBrandDTO.java similarity index 93% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsBrandDTO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsBrandDTO.java index 4341d3e..9e00cdc 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsBrandDTO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsBrandDTO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsBrandQuery.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsBrandQuery.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsBrandQuery.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsBrandQuery.java index c280022..42dd37b 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsBrandQuery.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsBrandQuery.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import com.ruoyi.common.core.web.page.BasePage; import io.swagger.annotations.ApiModel; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsCategoryDTO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsCategoryDTO.java similarity index 92% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsCategoryDTO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsCategoryDTO.java index 44a30b0..f398206 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsCategoryDTO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsCategoryDTO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -15,7 +15,7 @@ public class GoodsCategoryDTO implements Serializable { private static final long serialVersionUID = -340456108914762488L; - + @ApiModelProperty(value = "商品分类id", notes = "更新必传,新增不传") private Long id; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsCategoryQuery.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsCategoryQuery.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsCategoryQuery.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsCategoryQuery.java index 4090ea1..d425580 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsCategoryQuery.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsCategoryQuery.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import com.ruoyi.common.core.web.page.BasePage; import io.swagger.annotations.ApiModel; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsFlavorTypeDTO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsFlavorTypeDTO.java similarity index 93% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsFlavorTypeDTO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsFlavorTypeDTO.java index 3f04b38..81dbe5c 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsFlavorTypeDTO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsFlavorTypeDTO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsFlavorTypeQuery.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsFlavorTypeQuery.java similarity index 90% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsFlavorTypeQuery.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsFlavorTypeQuery.java index e2f4cb9..cd0345a 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsFlavorTypeQuery.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsFlavorTypeQuery.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import com.ruoyi.common.core.web.page.BasePage; import io.swagger.annotations.ApiModel; @@ -17,7 +17,7 @@ private static final long serialVersionUID = -196269784492900797L; - + @ApiModelProperty(value = "香型名称") private String flavorTypeName; } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsInfoTitleDTO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleDTO.java similarity index 93% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsInfoTitleDTO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleDTO.java index 8899af4..eabbe1a 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsInfoTitleDTO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleDTO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsInfoTitleQuery.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleQuery.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsInfoTitleQuery.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleQuery.java index 2e9d980..fb1506a 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsInfoTitleQuery.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleQuery.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import com.ruoyi.common.core.web.page.BasePage; import io.swagger.annotations.ApiModel; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsInfoTitleValueDTO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleValueDTO.java similarity index 93% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsInfoTitleValueDTO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleValueDTO.java index 0a84fdd..6c2cc52 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsInfoTitleValueDTO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsInfoTitleValueDTO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillDTO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillDTO.java new file mode 100644 index 0000000..1a67655 --- /dev/null +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillDTO.java @@ -0,0 +1,41 @@ +package com.ruoyi.goods.controller.management.DTO; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import java.time.LocalDateTime; +import java.util.List; +import javax.validation.Valid; +import javax.validation.constraints.NotEmpty; +import lombok.Data; + +/** + * @author mitao + * @date 2024/5/21 + */ +@Data +@ApiModel(value = "商品秒杀数据传输对象", description = "商品秒杀数据传输对象") +public class GoodsSeckillDTO implements Serializable { + + private static final long serialVersionUID = -3736491035819949518L; + + @ApiModelProperty(value = "商品信息") + @NotEmpty(message = "商品信息不能为空") + @Valid + private List<GoodsSkuInfoDTO> goodsSkuList; + + @ApiModelProperty(value = "分享标题") + private String shareTitle; + + @ApiModelProperty(value = "分享图片") + private String sharePic; + + @ApiModelProperty(value = "秒杀开始时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime startTime; + + @ApiModelProperty(value = "秒杀结束时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime endTime; +} diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillQuery.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillQuery.java new file mode 100644 index 0000000..fda8715 --- /dev/null +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillQuery.java @@ -0,0 +1,23 @@ +package com.ruoyi.goods.controller.management.DTO; + +import com.ruoyi.common.core.web.page.BasePage; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * @author mitao + * @date 2024/5/20 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "秒杀商品查询对象", description = "秒杀商品查询对象") +public class GoodsSeckillQuery extends BasePage { + + + private static final long serialVersionUID = 1440540784488131168L; + + @ApiModelProperty(value = "秒杀商品名称") + private String goodsSkuName; +} diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillUpd.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillUpd.java new file mode 100644 index 0000000..8defeaa --- /dev/null +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeckillUpd.java @@ -0,0 +1,61 @@ +package com.ruoyi.goods.controller.management.DTO; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import java.time.LocalDateTime; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * <p> + * 商品秒杀表 + * </p> + * + * @author mitao + * @since 2024-05-16 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "商品秒杀数据传输对象", description = "商品秒杀数据传输对象") +public class GoodsSeckillUpd implements Serializable { + + + private static final long serialVersionUID = 5347721819131215157L; + + @ApiModelProperty(value = "商品秒杀id") + @NotNull(message = "商品秒杀id不能为空") + private Long id; + + + @ApiModelProperty(value = "秒杀库存") + @NotNull(message = "秒杀库存不能为空") + private Integer seckillStock; + + @ApiModelProperty(value = "限购数量") + private Integer limitNumber; + + @ApiModelProperty(value = "分享标题") + @NotBlank(message = "分享标题不能为空") + private String shareTitle; + + @ApiModelProperty(value = "分享图片") + @NotBlank(message = "分享图片不能为空") + private String sharePic; + + @ApiModelProperty(value = "秒杀开始时间", notes = "传 2024-05-21 18:18:49 不可传:2024-05-21T18:18:49 ") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime startTime; + + @ApiModelProperty(value = "秒杀结束时间", notes = "传 2024-05-21 18:18:49 不可传:2024-05-21T18:18:49 ") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime endTime; + + @ApiModelProperty(value = "排序") + private Integer sortNum; +} diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSeriesDTO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeriesDTO.java similarity index 93% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSeriesDTO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeriesDTO.java index 0c4c0d3..bb80aea 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSeriesDTO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeriesDTO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSeriesQuery.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeriesQuery.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSeriesQuery.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeriesQuery.java index c038952..0cd2702 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSeriesQuery.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSeriesQuery.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import com.ruoyi.common.core.web.page.BasePage; import io.swagger.annotations.ApiModel; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSkuDTO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuDTO.java similarity index 98% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSkuDTO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuDTO.java index a008043..5a78ea6 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSkuDTO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuDTO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuInfoDTO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuInfoDTO.java new file mode 100644 index 0000000..cc30781 --- /dev/null +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuInfoDTO.java @@ -0,0 +1,38 @@ +package com.ruoyi.goods.controller.management.DTO; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import java.math.BigDecimal; +import javax.validation.constraints.NotNull; +import lombok.Data; + +/** + * @author mitao + * @date 2024/5/21 + */ +@Data +@ApiModel(value = "秒杀商品数据传输对象", description = "秒杀商品数据传输对象") +public class GoodsSkuInfoDTO implements Serializable { + + private static final long serialVersionUID = -6565529043925729311L; + + @ApiModelProperty(value = "商品id") + @NotNull(message = "商品id不能为空") + private Long goods_sku_id; + + @ApiModelProperty(value = "秒杀价格") + @NotNull(message = "秒杀价格不能为空") + private BigDecimal skillPrice; + + @ApiModelProperty(value = "秒杀库存") + @NotNull(message = "秒杀库存不能为空") + private Integer skillStock; + + @ApiModelProperty(value = "限购数量") + private Integer limitNumber; + + @ApiModelProperty(value = "排序") + private Integer sortNum; + +} diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSkuQuery.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuQuery.java similarity index 93% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSkuQuery.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuQuery.java index a0af9da..af83848 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/DTO/GoodsSkuQuery.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/DTO/GoodsSkuQuery.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.DTO; +package com.ruoyi.goods.controller.management.DTO; import com.ruoyi.common.core.enums.ListingStatusEnum; import com.ruoyi.common.core.web.page.BasePage; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsBrandController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsBrandController.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsBrandController.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsBrandController.java index 0d49be9..2a5b9a0 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsBrandController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsBrandController.java @@ -1,11 +1,11 @@ -package com.ruoyi.goods.controller.mamagement; +package com.ruoyi.goods.controller.management; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsBrandDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsBrandQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsBrandVO; +import com.ruoyi.goods.controller.management.DTO.GoodsBrandDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsBrandQuery; +import com.ruoyi.goods.controller.management.VO.GoodsBrandVO; import com.ruoyi.goods.service.IGoodsBrandService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsCategoryController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsCategoryController.java similarity index 92% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsCategoryController.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsCategoryController.java index 72c5007..bec2b71 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsCategoryController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsCategoryController.java @@ -1,11 +1,11 @@ -package com.ruoyi.goods.controller.mamagement; +package com.ruoyi.goods.controller.management; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsCategoryDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsCategoryQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsCategoryVO; +import com.ruoyi.goods.controller.management.DTO.GoodsCategoryDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsCategoryQuery; +import com.ruoyi.goods.controller.management.VO.GoodsCategoryVO; import com.ruoyi.goods.service.IGoodsCategoryService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsFlavorTypeController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsFlavorTypeController.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsFlavorTypeController.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsFlavorTypeController.java index 3b46386..a11c8c8 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsFlavorTypeController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsFlavorTypeController.java @@ -1,11 +1,11 @@ -package com.ruoyi.goods.controller.mamagement; +package com.ruoyi.goods.controller.management; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsFlavorTypeDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsFlavorTypeQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsFlavorTypeVO; +import com.ruoyi.goods.controller.management.DTO.GoodsFlavorTypeDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsFlavorTypeQuery; +import com.ruoyi.goods.controller.management.VO.GoodsFlavorTypeVO; import com.ruoyi.goods.service.IGoodsFlavorTypeService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsGroupPurchaseController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsGroupPurchaseController.java similarity index 92% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsGroupPurchaseController.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsGroupPurchaseController.java index 2d46ddf..18fdf83 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsGroupPurchaseController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsGroupPurchaseController.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement; +package com.ruoyi.goods.controller.management; import io.swagger.annotations.Api; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsInfoTitleController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsInfoTitleController.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsInfoTitleController.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsInfoTitleController.java index 4468cfd..32785e3 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsInfoTitleController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsInfoTitleController.java @@ -1,11 +1,11 @@ -package com.ruoyi.goods.controller.mamagement; +package com.ruoyi.goods.controller.management; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsInfoTitleDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsInfoTitleQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsInfoTitleVO; +import com.ruoyi.goods.controller.management.DTO.GoodsInfoTitleDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsInfoTitleQuery; +import com.ruoyi.goods.controller.management.VO.GoodsInfoTitleVO; import com.ruoyi.goods.service.IGoodsInfoTitleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSeckillController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSeckillController.java new file mode 100644 index 0000000..cd9caa8 --- /dev/null +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSeckillController.java @@ -0,0 +1,96 @@ +package com.ruoyi.goods.controller.management; + + +import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.utils.page.PageDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSeckillDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSeckillQuery; +import com.ruoyi.goods.controller.management.DTO.GoodsSeckillUpd; +import com.ruoyi.goods.controller.management.VO.GoodsSeckillVO; +import com.ruoyi.goods.service.IGoodsSeckillService; +import com.ruoyi.system.api.domain.dto.ListStatusDTO; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * <p> + * 商品秒杀表 前端控制器 + * </p> + * + * @author mitao + * @since 2024-05-16 + */ +@Slf4j +@RestController +@RequiredArgsConstructor +@RequestMapping("/mgt/goods-seckill") +@Api(value = "管理后台商品秒杀相关接口", tags = {"管理后台接口"}) +public class MgtGoodsSeckillController { + + private final IGoodsSeckillService goodsSeckillService; + + /** + * 获取秒杀商品列表的分页数据 + * + * @param query 秒杀商品查询对象 + * @return R<PageDTO < GoodsSeckillVO>> + */ + @ApiOperation(value = "获取秒杀商品列表的分页数据", notes = "获取秒杀商品列表的分页数据") + @PostMapping("/page") + public R<PageDTO<GoodsSeckillVO>> getGoodsSeckillPage( + @Validated @RequestBody GoodsSeckillQuery query) { + return R.ok(goodsSeckillService.getGoodsSeckillPage(query)); + } + + /** + * 添加秒杀商品 + * + * @param dto 商品秒杀数据传输对象 + */ + @ApiOperation(value = "添加秒杀商品", notes = "添加秒杀商品") + @PostMapping("/add") + public R<Void> addGoodsSeckill(@Validated @RequestBody GoodsSeckillDTO dto) { + goodsSeckillService.addGoodsSeckill(dto); + return R.ok(); + } + + /** + * 修改秒杀商品 + * + * @param upd 商品秒杀数据传输对象 + */ + @ApiOperation(value = "修改秒杀商品", notes = "修改秒杀商品") + @PutMapping + public R<Void> updGoodsSeckill(@Validated @RequestBody GoodsSeckillUpd upd) { + goodsSeckillService.updGoodsSeckill(upd); + return R.ok(); + } + + /** + * 上架/下架 秒杀商品 + * + * @param dto 商品上下架状态对象 + */ + @ApiOperation(value = "上架/下架 秒杀商品", notes = "上架/下架 秒杀商品") + @PutMapping("/upd-status") + public R<Void> updStatus(@Validated @RequestBody ListStatusDTO dto) { + goodsSeckillService.updStatus(dto); + return R.ok(); + } + + @ApiOperation("查看详情") + @GetMapping("/detail/{id}") + public R<GoodsSeckillVO> getDetail(@PathVariable("id") Long id) { + return R.ok(goodsSeckillService.getDetail(id)); + } +} diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsSeriesController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSeriesController.java similarity index 92% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsSeriesController.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSeriesController.java index aec1815..48fc579 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsSeriesController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSeriesController.java @@ -1,11 +1,11 @@ -package com.ruoyi.goods.controller.mamagement; +package com.ruoyi.goods.controller.management; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSeriesDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSeriesQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsSeriesVO; +import com.ruoyi.goods.controller.management.DTO.GoodsSeriesDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSeriesQuery; +import com.ruoyi.goods.controller.management.VO.GoodsSeriesVO; import com.ruoyi.goods.service.IGoodsSeriesService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsSkuController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSkuController.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsSkuController.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSkuController.java index 00945dc..2e7bddb 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/MgtGoodsSkuController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsSkuController.java @@ -1,18 +1,18 @@ -package com.ruoyi.goods.controller.mamagement; +package com.ruoyi.goods.controller.management; import com.fasterxml.jackson.core.JsonProcessingException; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsInfoTitleQuery; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSkuDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSkuQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsBrandVO; -import com.ruoyi.goods.controller.mamagement.VO.GoodsCategoryVO; -import com.ruoyi.goods.controller.mamagement.VO.GoodsFlavorTypeVO; -import com.ruoyi.goods.controller.mamagement.VO.GoodsInfoTitleVO; -import com.ruoyi.goods.controller.mamagement.VO.GoodsSeriesVO; -import com.ruoyi.goods.controller.mamagement.VO.GoodsSkuVO; +import com.ruoyi.goods.controller.management.DTO.GoodsInfoTitleQuery; +import com.ruoyi.goods.controller.management.DTO.GoodsSkuDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSkuQuery; +import com.ruoyi.goods.controller.management.VO.GoodsBrandVO; +import com.ruoyi.goods.controller.management.VO.GoodsCategoryVO; +import com.ruoyi.goods.controller.management.VO.GoodsFlavorTypeVO; +import com.ruoyi.goods.controller.management.VO.GoodsInfoTitleVO; +import com.ruoyi.goods.controller.management.VO.GoodsSeriesVO; +import com.ruoyi.goods.controller.management.VO.GoodsSkuVO; import com.ruoyi.goods.service.IGoodsBrandService; import com.ruoyi.goods.service.IGoodsCategoryService; import com.ruoyi.goods.service.IGoodsFlavorTypeService; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsBrandVO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsBrandVO.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsBrandVO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsBrandVO.java index b3aa6b4..37afdc1 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsBrandVO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsBrandVO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.VO; +package com.ruoyi.goods.controller.management.VO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsCategoryVO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsCategoryVO.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsCategoryVO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsCategoryVO.java index 82c2efd..4d44542 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsCategoryVO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsCategoryVO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.VO; +package com.ruoyi.goods.controller.management.VO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsFlavorTypeVO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsFlavorTypeVO.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsFlavorTypeVO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsFlavorTypeVO.java index 66a05ad..e38e7ec 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsFlavorTypeVO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsFlavorTypeVO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.VO; +package com.ruoyi.goods.controller.management.VO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsInfoTitleVO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsInfoTitleVO.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsInfoTitleVO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsInfoTitleVO.java index 736cfbd..190102b 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsInfoTitleVO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsInfoTitleVO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.VO; +package com.ruoyi.goods.controller.management.VO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSeckillVO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSeckillVO.java new file mode 100644 index 0000000..531d17c --- /dev/null +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSeckillVO.java @@ -0,0 +1,68 @@ +package com.ruoyi.goods.controller.management.VO; + +import com.ruoyi.common.core.enums.StartStatusEnum; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import java.math.BigDecimal; +import java.time.LocalDateTime; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * <p> + * 商品秒杀表 + * </p> + * + * @author mitao + * @since 2024-05-16 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "商品秒杀视图对象", description = "商品秒杀视图对象") +public class GoodsSeckillVO implements Serializable { + + + private static final long serialVersionUID = 620695205462624870L; + + @ApiModelProperty(value = "商品秒杀id") + private Long id; + + @ApiModelProperty(value = "商品名称") + private String goodsSkuName; + + @ApiModelProperty(value = "秒杀价格") + private BigDecimal seckillPrice; + + @ApiModelProperty(value = "已售数量") + private Integer soldQuantity; + + @ApiModelProperty(value = "秒杀库存") + private Integer seckillStock; + + @ApiModelProperty(value = "限购数量") + private Integer limitNumber; + + @ApiModelProperty(value = "排序") + private Integer sortNum; + + @ApiModelProperty(value = "分享标题") + private String shareTitle; + + @ApiModelProperty(value = "分享图片") + private String sharePic; + + @ApiModelProperty(value = "秒杀开始时间") + private LocalDateTime startTime; + + @ApiModelProperty(value = "秒杀结束时间") + private LocalDateTime endTime; + + @ApiModelProperty(value = "开始状态 0=未开始 1= 已开始 2=已结束") + private StartStatusEnum startStatus; + + @ApiModelProperty(value = "已购会员数") + private Integer numberOfPurchasedMembers; +} diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsSeriesVO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSeriesVO.java similarity index 91% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsSeriesVO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSeriesVO.java index 3666a72..fcdba58 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsSeriesVO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSeriesVO.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.controller.mamagement.VO; +package com.ruoyi.goods.controller.management.VO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsSkuVO.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSkuVO.java similarity index 95% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsSkuVO.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSkuVO.java index 8bd7e22..37af62d 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/mamagement/VO/GoodsSkuVO.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/VO/GoodsSkuVO.java @@ -1,7 +1,7 @@ -package com.ruoyi.goods.controller.mamagement.VO; +package com.ruoyi.goods.controller.management.VO; import com.ruoyi.common.core.enums.ListingStatusEnum; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsInfoTitleValueDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsInfoTitleValueDTO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.Serializable; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsBrand.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsBrand.java similarity index 97% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsBrand.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsBrand.java index b6b38d7..c6ce773 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsBrand.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsBrand.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.domain.pojo; +package com.ruoyi.goods.domain; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsCategory.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsCategory.java similarity index 97% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsCategory.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsCategory.java index f4e8595..32a2cc7 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsCategory.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsCategory.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.domain.pojo; +package com.ruoyi.goods.domain; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsFlavorType.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsFlavorType.java similarity index 97% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsFlavorType.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsFlavorType.java index 2f3d528..a28c1f5 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsFlavorType.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsFlavorType.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.domain.pojo; +package com.ruoyi.goods.domain; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsGroupPurchase.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsGroupPurchase.java similarity index 98% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsGroupPurchase.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsGroupPurchase.java index cb80e97..015ddbb 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsGroupPurchase.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsGroupPurchase.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.domain.pojo; +package com.ruoyi.goods.domain; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsInfoTitle.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsInfoTitle.java similarity index 97% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsInfoTitle.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsInfoTitle.java index 60b65e6..b6ff2e9 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsInfoTitle.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsInfoTitle.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.domain.pojo; +package com.ruoyi.goods.domain; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsInfoTitleValue.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsInfoTitleValue.java similarity index 98% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsInfoTitleValue.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsInfoTitleValue.java index ff50a75..bde4a1a 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsInfoTitleValue.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsInfoTitleValue.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.domain.pojo; +package com.ruoyi.goods.domain; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSeckill.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSeckill.java similarity index 93% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSeckill.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSeckill.java index 0cae2f2..602a7f3 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSeckill.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSeckill.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.domain.pojo; +package com.ruoyi.goods.domain; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; @@ -41,18 +41,15 @@ @ApiModelProperty(value = "商品id") private Long goodsSkuId; - @ApiModelProperty(value = "商品名称") - private String goodsSkuName; - - @ApiModelProperty(value = "当前库存") - private Integer currentStock; - @ApiModelProperty(value = "秒杀价格") private BigDecimal seckillPrice; @ApiModelProperty(value = "秒杀库存") private Integer seckillStock; + @ApiModelProperty(value = "已售数量") + private Integer soldQuantity; + @ApiModelProperty(value = "限购数量") private Integer limitNumber; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSeries.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSeries.java similarity index 97% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSeries.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSeries.java index 8a453cd..06515c6 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSeries.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSeries.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.domain.pojo; +package com.ruoyi.goods.domain; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSku.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSku.java similarity index 98% rename from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSku.java rename to ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSku.java index f640acb..7718272 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSku.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSku.java @@ -1,4 +1,4 @@ -package com.ruoyi.goods.domain.pojo; +package com.ruoyi.goods.domain; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsBrandMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsBrandMapper.java index d56736f..66c3ebf 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsBrandMapper.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsBrandMapper.java @@ -1,7 +1,7 @@ package com.ruoyi.goods.mapper; -import com.ruoyi.goods.domain.pojo.GoodsBrand; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.goods.domain.GoodsBrand; /** * <p> diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsCategoryMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsCategoryMapper.java index e72f22e..f0b2c46 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsCategoryMapper.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsCategoryMapper.java @@ -1,7 +1,7 @@ package com.ruoyi.goods.mapper; -import com.ruoyi.goods.domain.pojo.GoodsCategory; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.goods.domain.GoodsCategory; /** * <p> diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsFlavorTypeMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsFlavorTypeMapper.java index 3dc6106..b199001 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsFlavorTypeMapper.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsFlavorTypeMapper.java @@ -1,7 +1,7 @@ package com.ruoyi.goods.mapper; -import com.ruoyi.goods.domain.pojo.GoodsFlavorType; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.goods.domain.GoodsFlavorType; /** * <p> diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java index 8dfd552..d09c12f 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java @@ -1,7 +1,7 @@ package com.ruoyi.goods.mapper; -import com.ruoyi.goods.domain.pojo.GoodsGroupPurchase; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.goods.domain.GoodsGroupPurchase; /** * <p> diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleMapper.java index f019ae9..9f75dee 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleMapper.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleMapper.java @@ -1,7 +1,7 @@ package com.ruoyi.goods.mapper; -import com.ruoyi.goods.domain.pojo.GoodsInfoTitle; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.goods.domain.GoodsInfoTitle; /** * <p> diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleValueMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleValueMapper.java index 40ff72e..5c36726 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleValueMapper.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleValueMapper.java @@ -1,7 +1,7 @@ package com.ruoyi.goods.mapper; -import com.ruoyi.goods.domain.pojo.GoodsInfoTitleValue; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.goods.domain.GoodsInfoTitleValue; /** * <p> diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java index 3b99668..4610b63 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java @@ -1,7 +1,10 @@ package com.ruoyi.goods.mapper; -import com.ruoyi.goods.domain.pojo.GoodsSeckill; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.goods.controller.management.VO.GoodsSeckillVO; +import com.ruoyi.goods.domain.GoodsSeckill; +import org.apache.ibatis.annotations.Param; /** * <p> @@ -13,4 +16,6 @@ */ public interface GoodsSeckillMapper extends BaseMapper<GoodsSeckill> { + Page<GoodsSeckillVO> getGoodsSeckillPage(@Param("goodsSkuName") String goodsSkuName, + @Param("page") Page<GoodsSeckillVO> page); } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeriesMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeriesMapper.java index 671d7e1..4fd8e41 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeriesMapper.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeriesMapper.java @@ -1,7 +1,7 @@ package com.ruoyi.goods.mapper; -import com.ruoyi.goods.domain.pojo.GoodsSeries; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.goods.domain.GoodsSeries; /** * <p> diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSkuMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSkuMapper.java index fc5f50f..009bda9 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSkuMapper.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSkuMapper.java @@ -1,7 +1,7 @@ package com.ruoyi.goods.mapper; -import com.ruoyi.goods.domain.pojo.GoodsSku; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.goods.domain.GoodsSku; /** * <p> @@ -13,4 +13,5 @@ */ public interface GoodsSkuMapper extends BaseMapper<GoodsSku> { + } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsBrandService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsBrandService.java index 8ef2c7a..33ac4cb 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsBrandService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsBrandService.java @@ -2,10 +2,10 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsBrandDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsBrandQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsBrandVO; -import com.ruoyi.goods.domain.pojo.GoodsBrand; +import com.ruoyi.goods.controller.management.DTO.GoodsBrandDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsBrandQuery; +import com.ruoyi.goods.controller.management.VO.GoodsBrandVO; +import com.ruoyi.goods.domain.GoodsBrand; import java.util.List; /** diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsCategoryService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsCategoryService.java index 25b281c..11c8b2f 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsCategoryService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsCategoryService.java @@ -2,10 +2,10 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsCategoryDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsCategoryQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsCategoryVO; -import com.ruoyi.goods.domain.pojo.GoodsCategory; +import com.ruoyi.goods.controller.management.DTO.GoodsCategoryDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsCategoryQuery; +import com.ruoyi.goods.controller.management.VO.GoodsCategoryVO; +import com.ruoyi.goods.domain.GoodsCategory; import java.util.List; /** diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsFlavorTypeService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsFlavorTypeService.java index be9ef70..38dbfc2 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsFlavorTypeService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsFlavorTypeService.java @@ -2,10 +2,10 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsFlavorTypeDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsFlavorTypeQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsFlavorTypeVO; -import com.ruoyi.goods.domain.pojo.GoodsFlavorType; +import com.ruoyi.goods.controller.management.DTO.GoodsFlavorTypeDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsFlavorTypeQuery; +import com.ruoyi.goods.controller.management.VO.GoodsFlavorTypeVO; +import com.ruoyi.goods.domain.GoodsFlavorType; import java.util.List; /** diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java index 8a71a59..812ac44 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java @@ -1,7 +1,7 @@ package com.ruoyi.goods.service; -import com.ruoyi.goods.domain.pojo.GoodsGroupPurchase; import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.goods.domain.GoodsGroupPurchase; /** * <p> diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleService.java index ca28341..b6e3950 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleService.java @@ -2,10 +2,10 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsInfoTitleDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsInfoTitleQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsInfoTitleVO; -import com.ruoyi.goods.domain.pojo.GoodsInfoTitle; +import com.ruoyi.goods.controller.management.DTO.GoodsInfoTitleDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsInfoTitleQuery; +import com.ruoyi.goods.controller.management.VO.GoodsInfoTitleVO; +import com.ruoyi.goods.domain.GoodsInfoTitle; /** * <p> diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleValueService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleValueService.java index 5d15077..a6c7de6 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleValueService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleValueService.java @@ -1,7 +1,7 @@ package com.ruoyi.goods.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.ruoyi.goods.domain.pojo.GoodsInfoTitleValue; +import com.ruoyi.goods.domain.GoodsInfoTitleValue; /** * <p> diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java index 86397f2..8b52fbf 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java @@ -1,7 +1,13 @@ package com.ruoyi.goods.service; -import com.ruoyi.goods.domain.pojo.GoodsSeckill; import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.common.core.utils.page.PageDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSeckillDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSeckillQuery; +import com.ruoyi.goods.controller.management.DTO.GoodsSeckillUpd; +import com.ruoyi.goods.controller.management.VO.GoodsSeckillVO; +import com.ruoyi.goods.domain.GoodsSeckill; +import com.ruoyi.system.api.domain.dto.ListStatusDTO; /** * <p> @@ -13,4 +19,29 @@ */ public interface IGoodsSeckillService extends IService<GoodsSeckill> { + /** + * 添加秒杀商品 + * + * @param dto 商品秒杀数据传输对象 + */ + void addGoodsSeckill(GoodsSeckillDTO dto); + + /** + * 获取秒杀商品列表的分页数据 + * + * @param query 秒杀商品查询对象 + * @return PageDTO<GoodsSeckillVO> + */ + PageDTO<GoodsSeckillVO> getGoodsSeckillPage(GoodsSeckillQuery query); + + /** + * 修改秒杀商品 + * + * @param upd 商品秒杀数据传输对象 + */ + void updGoodsSeckill(GoodsSeckillUpd upd); + + void updStatus(ListStatusDTO dto); + + GoodsSeckillVO getDetail(Long id); } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeriesService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeriesService.java index 8a02677..6fd3259 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeriesService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeriesService.java @@ -2,10 +2,10 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSeriesDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSeriesQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsSeriesVO; -import com.ruoyi.goods.domain.pojo.GoodsSeries; +import com.ruoyi.goods.controller.management.DTO.GoodsSeriesDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSeriesQuery; +import com.ruoyi.goods.controller.management.VO.GoodsSeriesVO; +import com.ruoyi.goods.domain.GoodsSeries; import java.util.List; /** diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSkuService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSkuService.java index 2e45138..b14f61a 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSkuService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSkuService.java @@ -3,10 +3,10 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.fasterxml.jackson.core.JsonProcessingException; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSkuDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSkuQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsSkuVO; -import com.ruoyi.goods.domain.pojo.GoodsSku; +import com.ruoyi.goods.controller.management.DTO.GoodsSkuDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSkuQuery; +import com.ruoyi.goods.controller.management.VO.GoodsSkuVO; +import com.ruoyi.goods.domain.GoodsSku; import com.ruoyi.system.api.domain.dto.ListStatusDTO; /** @@ -42,4 +42,5 @@ * @return 无返回值。 */ void updStatus(ListStatusDTO dto); + } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsBrandServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsBrandServiceImpl.java index 5955dd4..0537e97 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsBrandServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsBrandServiceImpl.java @@ -5,10 +5,10 @@ import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.page.BeanUtils; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsBrandDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsBrandQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsBrandVO; -import com.ruoyi.goods.domain.pojo.GoodsBrand; +import com.ruoyi.goods.controller.management.DTO.GoodsBrandDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsBrandQuery; +import com.ruoyi.goods.controller.management.VO.GoodsBrandVO; +import com.ruoyi.goods.domain.GoodsBrand; import com.ruoyi.goods.mapper.GoodsBrandMapper; import com.ruoyi.goods.service.IGoodsBrandService; import java.util.List; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsCategoryServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsCategoryServiceImpl.java index fb7191b..1bafe3e 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsCategoryServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsCategoryServiceImpl.java @@ -5,10 +5,10 @@ import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.page.BeanUtils; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsCategoryDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsCategoryQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsCategoryVO; -import com.ruoyi.goods.domain.pojo.GoodsCategory; +import com.ruoyi.goods.controller.management.DTO.GoodsCategoryDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsCategoryQuery; +import com.ruoyi.goods.controller.management.VO.GoodsCategoryVO; +import com.ruoyi.goods.domain.GoodsCategory; import com.ruoyi.goods.mapper.GoodsCategoryMapper; import com.ruoyi.goods.service.IGoodsCategoryService; import java.util.List; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsFlavorTypeServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsFlavorTypeServiceImpl.java index c286b6d..62b7436 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsFlavorTypeServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsFlavorTypeServiceImpl.java @@ -5,10 +5,10 @@ import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.page.BeanUtils; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsFlavorTypeDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsFlavorTypeQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsFlavorTypeVO; -import com.ruoyi.goods.domain.pojo.GoodsFlavorType; +import com.ruoyi.goods.controller.management.DTO.GoodsFlavorTypeDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsFlavorTypeQuery; +import com.ruoyi.goods.controller.management.VO.GoodsFlavorTypeVO; +import com.ruoyi.goods.domain.GoodsFlavorType; import com.ruoyi.goods.mapper.GoodsFlavorTypeMapper; import com.ruoyi.goods.service.IGoodsFlavorTypeService; import java.util.List; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java index 12cb74f..0e5c883 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java @@ -1,9 +1,9 @@ package com.ruoyi.goods.service.impl; -import com.ruoyi.goods.domain.pojo.GoodsGroupPurchase; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.goods.domain.GoodsGroupPurchase; import com.ruoyi.goods.mapper.GoodsGroupPurchaseMapper; import com.ruoyi.goods.service.IGoodsGroupPurchaseService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; /** diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleServiceImpl.java index 48a64d2..0c45044 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleServiceImpl.java @@ -5,10 +5,10 @@ import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.page.BeanUtils; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsInfoTitleDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsInfoTitleQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsInfoTitleVO; -import com.ruoyi.goods.domain.pojo.GoodsInfoTitle; +import com.ruoyi.goods.controller.management.DTO.GoodsInfoTitleDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsInfoTitleQuery; +import com.ruoyi.goods.controller.management.VO.GoodsInfoTitleVO; +import com.ruoyi.goods.domain.GoodsInfoTitle; import com.ruoyi.goods.mapper.GoodsInfoTitleMapper; import com.ruoyi.goods.service.IGoodsInfoTitleService; import org.springframework.stereotype.Service; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleValueServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleValueServiceImpl.java index 98d9d19..859b52f 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleValueServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleValueServiceImpl.java @@ -1,7 +1,7 @@ package com.ruoyi.goods.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ruoyi.goods.domain.pojo.GoodsInfoTitleValue; +import com.ruoyi.goods.domain.GoodsInfoTitleValue; import com.ruoyi.goods.mapper.GoodsInfoTitleValueMapper; import com.ruoyi.goods.service.IGoodsInfoTitleValueService; import org.springframework.stereotype.Service; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java index 6bd8d67..52c5888 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java @@ -1,10 +1,29 @@ package com.ruoyi.goods.service.impl; -import com.ruoyi.goods.domain.pojo.GoodsSeckill; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.core.enums.StartStatusEnum; +import com.ruoyi.common.core.utils.StringUtils; +import com.ruoyi.common.core.utils.page.BeanUtils; +import com.ruoyi.common.core.utils.page.PageDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSeckillDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSeckillQuery; +import com.ruoyi.goods.controller.management.DTO.GoodsSeckillUpd; +import com.ruoyi.goods.controller.management.DTO.GoodsSkuInfoDTO; +import com.ruoyi.goods.controller.management.VO.GoodsSeckillVO; +import com.ruoyi.goods.domain.GoodsSeckill; +import com.ruoyi.goods.domain.GoodsSku; import com.ruoyi.goods.mapper.GoodsSeckillMapper; import com.ruoyi.goods.service.IGoodsSeckillService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.goods.service.IGoodsSkuService; +import com.ruoyi.system.api.domain.dto.ListStatusDTO; +import com.ruoyi.system.api.feignClient.OrderClient; +import java.util.List; +import java.util.Optional; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; /** * <p> @@ -14,7 +33,86 @@ * @author mitao * @since 2024-05-16 */ +@Slf4j @Service +@RequiredArgsConstructor public class GoodsSeckillServiceImpl extends ServiceImpl<GoodsSeckillMapper, GoodsSeckill> implements IGoodsSeckillService { + private final IGoodsSkuService goodsSkuService; + private final OrderClient orderClient; + + @Override + @Transactional(rollbackFor = Exception.class) + public void addGoodsSeckill(GoodsSeckillDTO dto) { + List<GoodsSkuInfoDTO> goodsSkuList = dto.getGoodsSkuList(); + List<GoodsSeckill> goodsSeckills = BeanUtils.copyList(dto.getGoodsSkuList(), + GoodsSeckill.class); + for (GoodsSeckill goodsSeckill : goodsSeckills) { + goodsSeckill.setShareTitle(dto.getShareTitle()); + goodsSeckill.setSharePic(dto.getSharePic()); + goodsSeckill.setStartTime(dto.getStartTime()); + goodsSeckill.setEndTime(dto.getEndTime()); + goodsSeckill.setStartStatus(StartStatusEnum.NOT_STARTED); + } + this.saveBatch(goodsSeckills); + } + + /** + * 获取秒杀商品列表的分页数据 + * + * @param query 秒杀商品查询对象 + * @return + */ + @Override + public PageDTO<GoodsSeckillVO> getGoodsSeckillPage(GoodsSeckillQuery query) { + Page<GoodsSeckillVO> page = baseMapper.getGoodsSeckillPage(query.getGoodsSkuName(), + new Page<GoodsSeckillVO>(query.getPageCurr(), query.getPageSize()) + ); + return PageDTO.of(page); + } + + /** + * 修改秒杀商品 + * + * @param upd 商品秒杀数据传输对象 + */ + @Override + public void updGoodsSeckill(GoodsSeckillUpd upd) { + //查询秒杀商品 + GoodsSeckill goodsSeckill = this.getById(upd.getId()); + if (StringUtils.isNull(goodsSeckill)) { + throw new RuntimeException("秒杀商品不存在"); + } + GoodsSeckill goodsSeckillUpd = BeanUtils.copyBean(upd, GoodsSeckill.class); + this.updateById(goodsSeckillUpd); + } + + /** + * 上架/下架 秒杀商品 + * + * @param dto 商品上下架状态对象 + */ + @Override + public void updStatus(ListStatusDTO dto) { + this.lambdaUpdate() + .eq(GoodsSeckill::getId, dto.getId()) + .set(GoodsSeckill::getListingStatus, dto.getListingStatus()) + .update(); + } + + @Override + public GoodsSeckillVO getDetail(Long id) { + GoodsSeckill goodsSeckill = this.getById(id); + if (StringUtils.isNull(goodsSeckill)) { + throw new RuntimeException("秒杀商品不存在"); + } + GoodsSeckillVO vo = BeanUtils.copyBean(goodsSeckill, GoodsSeckillVO.class); + GoodsSku goods = goodsSkuService.getById(goodsSeckill.getGoodsSkuId()); + Optional.of(goods).ifPresent(goodsSku -> { + vo.setGoodsSkuName(goodsSku.getSkuName()); + }); + Integer num = orderClient.getSeckillMembers(goodsSeckill.getId()).getData(); + vo.setNumberOfPurchasedMembers(num); + return vo; + } } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeriesServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeriesServiceImpl.java index 8dea9e6..e83c01d 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeriesServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeriesServiceImpl.java @@ -5,10 +5,10 @@ import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.page.BeanUtils; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSeriesDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSeriesQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsSeriesVO; -import com.ruoyi.goods.domain.pojo.GoodsSeries; +import com.ruoyi.goods.controller.management.DTO.GoodsSeriesDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSeriesQuery; +import com.ruoyi.goods.controller.management.VO.GoodsSeriesVO; +import com.ruoyi.goods.domain.GoodsSeries; import com.ruoyi.goods.mapper.GoodsSeriesMapper; import com.ruoyi.goods.service.IGoodsSeriesService; import java.util.List; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java index 63ab9f8..7503e73 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java @@ -10,12 +10,12 @@ import com.ruoyi.common.core.utils.page.Checker; import com.ruoyi.common.core.utils.page.CollUtils; import com.ruoyi.common.core.utils.page.PageDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsInfoTitleValueDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSkuDTO; -import com.ruoyi.goods.controller.mamagement.DTO.GoodsSkuQuery; -import com.ruoyi.goods.controller.mamagement.VO.GoodsSkuVO; -import com.ruoyi.goods.domain.pojo.GoodsInfoTitleValue; -import com.ruoyi.goods.domain.pojo.GoodsSku; +import com.ruoyi.goods.controller.management.DTO.GoodsInfoTitleValueDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSkuDTO; +import com.ruoyi.goods.controller.management.DTO.GoodsSkuQuery; +import com.ruoyi.goods.controller.management.VO.GoodsSkuVO; +import com.ruoyi.goods.domain.GoodsInfoTitleValue; +import com.ruoyi.goods.domain.GoodsSku; import com.ruoyi.goods.mapper.GoodsSkuMapper; import com.ruoyi.goods.service.IGoodsInfoTitleValueService; import com.ruoyi.goods.service.IGoodsSkuService; diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml index 9ac8378..ea6cddb 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml +++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml @@ -1,5 +1,28 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.goods.mapper.GoodsSeckillMapper"> - + <select id="getGoodsSeckillPage" + resultType="com.ruoyi.goods.controller.management.VO.GoodsSeckillVO"> + select + gs.id, + gsku.goods_sku_name, + gs.seckill_price, + gs.sold_quantity, + gs.seckill_stock, + gs.limit_number, + gs.sort_num, + gs.share_title, + gs.share_pic, + gs.start_time, + gs.end_time, + gs.start_status + from t_goods_seckill gs + left join t_goods_sku gsku on gs.goods_sku_id = gsku.id + <where> + <if test="goodsSkuName != null and goodsSkuName != ''"> + and gsku.goods_sku_name like concat('%',#{goodsSkuName},'%') + </if> + </where> + order by gs.create_time desc + </select> </mapper> diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java index e4bb509..bb4d88b 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java @@ -1,8 +1,14 @@ package com.ruoyi.order.controller; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.security.annotation.InnerAuth; +import com.ruoyi.order.service.IOrderService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; - import org.springframework.web.bind.annotation.RestController; /** @@ -13,8 +19,23 @@ * @author mitao * @since 2024-05-16 */ +@Slf4j @RestController @RequestMapping("/order") +@AllArgsConstructor public class OrderController { + private final IOrderService orderService; + + /** + * 获取某个商品的已购会员数 + * + * @param id 秒杀商品id + * @return 已购会员数 + */ + @InnerAuth + @GetMapping("/seckill-members/{id}") + R<Integer> getSeckillMembers(@PathVariable("id") Long id) { + return R.ok(orderService.getSeckillMembers(id)); + } } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java index 3d013c1..d6a61c7 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java @@ -1,7 +1,8 @@ package com.ruoyi.order.mapper; -import com.ruoyi.order.domain.pojo.Order; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.order.domain.pojo.Order; +import org.apache.ibatis.annotations.Param; /** * <p> @@ -13,4 +14,5 @@ */ public interface OrderMapper extends BaseMapper<Order> { + Integer getSeckillMembers(@Param("id") Long id); } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderService.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderService.java index c559908..c596773 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderService.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderService.java @@ -1,7 +1,7 @@ package com.ruoyi.order.service; -import com.ruoyi.order.domain.pojo.Order; import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.order.domain.pojo.Order; /** * <p> @@ -13,4 +13,5 @@ */ public interface IOrderService extends IService<Order> { + Integer getSeckillMembers(Long id); } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java index e425d49..311090d 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java @@ -1,9 +1,9 @@ package com.ruoyi.order.service.impl; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.order.domain.pojo.Order; import com.ruoyi.order.mapper.OrderMapper; import com.ruoyi.order.service.IOrderService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; /** @@ -17,4 +17,8 @@ @Service public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements IOrderService { + @Override + public Integer getSeckillMembers(Long id) { + return baseMapper.getSeckillMembers(id); + } } diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml index 9ef47c0..5e5619a 100644 --- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml +++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml @@ -2,4 +2,12 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.order.mapper.OrderMapper"> + <select id="getSeckillMembers" resultType="java.lang.Integer"> + select ifnull(count(1), 0) + form t_order_mall left om join t_order o + on om.order_id = o.id + where om.goods_sku_id = #{id} + group by o.member_id + </select> +</select> </mapper> -- Gitblit v1.7.1