From 1f9b64476716a6a1de3bcb886bf4e64b123f7523 Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期四, 06 七月 2023 18:28:31 +0800 Subject: [PATCH] 管理台bug和用户端活动商品购买 --- ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java | 41 ++++++++++++++++++++++++++++++++++++++++- 1 files changed, 40 insertions(+), 1 deletions(-) diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java index b1e9c25..ac9260d 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java @@ -1,6 +1,7 @@ package com.ruoyi.goods.service.impl.activity; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.exception.ServiceException; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.bean.BeanUtils; @@ -14,14 +15,16 @@ import com.ruoyi.goods.domain.vo.*; import com.ruoyi.goods.mapper.activity.ActivityMapper; import com.ruoyi.goods.service.activity.ActivityGoodsService; +import com.ruoyi.goods.service.activity.ActivityRecordService; import com.ruoyi.goods.service.activity.ActivityService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.goods.service.activity.ActivityTotalService; import com.ruoyi.system.api.constant.AppErrorConstant; +import com.ruoyi.system.api.domain.dto.ActivityGoodsGetDto; import com.ruoyi.system.api.domain.dto.MerPageDto; import com.ruoyi.system.api.domain.dto.MgtBaseBathDto; import com.ruoyi.system.api.domain.dto.MgtUserIdByKeywordDto; import com.ruoyi.system.api.domain.poji.activity.ActivityGoods; +import com.ruoyi.system.api.domain.vo.ActivityGoodsGetVo; import com.ruoyi.system.api.domain.vo.MgtSimpleMemberVo; import com.ruoyi.system.api.domain.vo.MgtSimpleShopVo; import com.ruoyi.system.api.domain.vo.MgtUserIdByKeywordVo; @@ -57,6 +60,9 @@ @Resource private ActivityTotalService activityTotalService; + + @Resource + private ActivityRecordService activityRecordService; @Resource private RemoteShopService remoteShopService; @@ -145,6 +151,8 @@ activityGoods.setActivityNumber(dto.getActivityNumber()); activityGoods.setActivityDeadline(activity.getActivityEndTime()); activityGoods.setSellOutFlag(0); + activityGoods.setPurchaseLimitationFlag(activity.getPurchaseLimitationFlag()); + activityGoods.setLimitNumber(activity.getLimitNumber()); return activityGoods; } ).collect(Collectors.toList()); @@ -315,4 +323,35 @@ public List<AppActivityPageVo> pageAppActivity(Page page, Long shopId){ return activityMapper.pageAppActivity(page, shopId); } + + /** + * @description 获取用户活动商品信息 + * @author jqs + * @date 2023/7/6 16:18 + * @param activityGoodsGetDto + * @return ActivityGoodsGetVo + */ + @Override + public ActivityGoodsGetVo getUserActivityGoods(ActivityGoodsGetDto activityGoodsGetDto){ + ActivityGoodsGetVo activityGoodsGetVo = new ActivityGoodsGetVo(); + String activityId = activityGoodsGetDto.getActivityId(); + String goodsId = activityGoodsGetDto.getGoodsId(); + Activity activity = this.getById(activityId); + ActivityGoods activityGoods = activityGoodsService.getByGoodsId(activityId,goodsId); + activityGoodsGetVo.setActivityPrice(activityGoods.getActivityPrice()); + activityGoodsGetVo.setActivitySubscription(activityGoods.getActivitySubscription()); + activityGoodsGetVo.setActivityStatus(activity.getActivityStatus()); + Integer availableBuyNum = activityGoods.getActivityNumber() - activityGoods.getSalesNumber(); + //限购判断 + if(activityGoods.getPurchaseLimitationFlag()==1){ + Integer buyNum = activityRecordService.getUserActivityGoodsNum(goodsId,activityId,activityGoodsGetDto.getUserId()); + Integer limitBuyNum = activityGoods.getLimitNumber() - buyNum; + if(limitBuyNum<availableBuyNum){ + availableBuyNum = limitBuyNum; + } + } + activityGoodsGetVo.setPurchaseLimitationFlag(activity.getPurchaseLimitationFlag()); + activityGoodsGetVo.setAvailableBuyNum(availableBuyNum); + return activityGoodsGetVo; + } } -- Gitblit v1.7.1