From 415bbfd4ba5a96d92905d6e32a45b84405e764e1 Mon Sep 17 00:00:00 2001 From: Jack <46790855@qq.com> Date: Fri, 7 Nov 2025 16:57:46 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A0=8D=E4=BB=B7=E5=AD=97=E6=AE=B5=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=EF=BC=8C=E8=A1=A5=E5=85=85=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mall/common/constant/CommonConstant.java | 7 +++ .../activity/ShopActivityCutprice.java | 3 ++ .../mobile/UserActivityController.java | 2 +- .../service/ShopActivityCutpriceService.java | 11 +++++ .../impl/ShopActivityCutpriceServiceImpl.java | 48 ++++++++++++++++--- .../service/ShopStoreActivityBaseService.java | 16 +++++-- .../ShopStoreActivityBaseServiceImpl.java | 34 +++++++++++-- 7 files changed, 106 insertions(+), 15 deletions(-) diff --git a/mall-common/src/main/java/com/suisung/mall/common/constant/CommonConstant.java b/mall-common/src/main/java/com/suisung/mall/common/constant/CommonConstant.java index ee2e5dfa..d5f40048 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/constant/CommonConstant.java +++ b/mall-common/src/main/java/com/suisung/mall/common/constant/CommonConstant.java @@ -136,4 +136,11 @@ public class CommonConstant { public final static Integer Store_Biz_State_Closed = 2; //3-开业(活动)筹备中; public final static Integer Store_Biz_State_PreActivity = 3; + + //用户砍价订单状态:1-砍价已完成下单;2-砍价未下单已取消;3-砍价助力进行中;4-砍价过期失效;6-砍价助力已完成待下单; + public static final Integer CutPrice_Order_State_Finished = 1; + public static final Integer CutPrice_Order_State_Canceled = 2; + public static final Integer CutPrice_Order_State_ING = 3; + public static final Integer CutPrice_Order_State_Expired = 4; + public static final Integer CutPrice_Order_State_CutFinished = 6; } diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/activity/ShopActivityCutprice.java b/mall-common/src/main/java/com/suisung/mall/common/modules/activity/ShopActivityCutprice.java index 11e4a8e7..a385fb36 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/modules/activity/ShopActivityCutprice.java +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/activity/ShopActivityCutprice.java @@ -59,6 +59,9 @@ public class ShopActivityCutprice implements Serializable { @ApiModelProperty(value = "砍价过期时间戳") private Long expired_at; + @ApiModelProperty(value = "用户砍价订单状态:1-砍价已完成下单;2-砍价未下单已取消;3-砍价助力进行中;4-砍价过期失效;6-砍价助力已完成待下单;") + private Integer state; + @Version @ApiModelProperty(value = "乐观锁") private Integer version; diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/activity/controller/mobile/UserActivityController.java b/mall-shop/src/main/java/com/suisung/mall/shop/activity/controller/mobile/UserActivityController.java index 0b2255c0..b58226a1 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/activity/controller/mobile/UserActivityController.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/activity/controller/mobile/UserActivityController.java @@ -112,7 +112,7 @@ public class UserActivityController extends BaseControllerImpl { return CommonResult.success(shopActivityCutpriceHistoryService.listsUserCutPriceHistory(page, rows, is_sponsor)); } - @ApiOperation(value = "砍价活动详情", notes = "砍价活动详情") + @ApiOperation(value = "砍价活动详情", notes = "砍价活动详情(注:除了获取活动详情信息,还创建砍价订单记录和查询砍价历史历史)") @RequestMapping(value = "/getCutPriceActivity", method = RequestMethod.GET) public CommonResult getCutPriceActivityDetail() { return CommonResult.success(shopActivityCutpriceService.getCutPriceActivity()); diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/activity/service/ShopActivityCutpriceService.java b/mall-shop/src/main/java/com/suisung/mall/shop/activity/service/ShopActivityCutpriceService.java index fc346813..9f3b2260 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/activity/service/ShopActivityCutpriceService.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/activity/service/ShopActivityCutpriceService.java @@ -3,6 +3,7 @@ package com.suisung.mall.shop.activity.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.suisung.mall.common.api.CommonResult; import com.suisung.mall.common.modules.activity.ShopActivityCutprice; +import com.suisung.mall.common.modules.store.ShopStoreActivityBase; import com.suisung.mall.core.web.service.IBaseService; import org.springframework.data.util.Pair; @@ -38,4 +39,14 @@ public interface ShopActivityCutpriceService extends IBaseService canDoOrderCutPriceActivity(Integer ac_id, Integer order_user_id); + + /** + * 检查砍价活动是否过期和库存是否足够 + * + * @param shopStoreActivityBase 砍价活动基础信息 + * @return Pair 检查结果,Boolean表示是否通过检查,String表示错误信息 + */ + Pair checkCutPriceExpiredAndStock(ShopStoreActivityBase shopStoreActivityBase); + + } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/activity/service/impl/ShopActivityCutpriceServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/activity/service/impl/ShopActivityCutpriceServiceImpl.java index 7f5faf68..50e8cbb1 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/activity/service/impl/ShopActivityCutpriceServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/activity/service/impl/ShopActivityCutpriceServiceImpl.java @@ -260,7 +260,7 @@ public class ShopActivityCutpriceServiceImpl extends BaseServiceImpl 0) { participant_id = user.getId(); } @@ -298,8 +298,12 @@ public class ShopActivityCutpriceServiceImpl extends BaseServiceImpl historyQueryWrapper = new QueryWrapper<>(); historyQueryWrapper.eq("ac_id", ac_id).eq("user_id", participant_id); @@ -336,7 +351,10 @@ public class ShopActivityCutpriceServiceImpl extends BaseServiceImpl 检查结果,Boolean表示是否通过检查,String表示错误信息 + */ + @Override + public Pair checkCutPriceExpiredAndStock(ShopStoreActivityBase shopStoreActivityBase) { + + boolean isActivityTimeValid = shopStoreActivityBaseService.isActivityTimeValid(shopStoreActivityBase.getActivity_starttime(), shopStoreActivityBase.getActivity_endtime(), new Date()); + if (!isActivityTimeValid) { + return Pair.of(false, I18nUtil._("该活动已过期,下次早点来。")); + } + + + return null; + } + } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreActivityBaseService.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreActivityBaseService.java index 82329b93..c457c7fe 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreActivityBaseService.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStoreActivityBaseService.java @@ -63,11 +63,21 @@ public interface ShopStoreActivityBaseService extends IBaseService