修复拼团活动单独购买显示拼团价格问题;优化限时抢购和拼团信息显示
This commit is contained in:
parent
cbacab6bdf
commit
5d6ea5b48d
@ -286,6 +286,7 @@ public enum ResultCode {
|
||||
PINTUAN_MANUAL_CLOSE_ERROR(42007, "手动关闭拼团活动失败"),
|
||||
PINTUAN_ADD_ERROR(42008, "添加拼团活动失败"),
|
||||
PINTUAN_EDIT_ERROR(42009, "修改拼团活动失败"),
|
||||
PINTUAN_EDIT_ERROR_ITS_OPEN(42019, "拼团活动已开启,无法修改拼团活动!"),
|
||||
PINTUAN_DELETE_ERROR(42010, "删除拼团活动失败"),
|
||||
PINTUAN_JOIN_ERROR(42011, "不能参与自己发起的拼团活动!"),
|
||||
PINTUAN_LIMIT_NUM_ERROR(42012, "购买数量超过拼团活动限制数量!"),
|
||||
|
@ -1,12 +1,13 @@
|
||||
package cn.lili.modules.goods.entity.dto;
|
||||
|
||||
import cn.lili.common.utils.StringUtils;
|
||||
import cn.hutool.core.text.CharSequenceUtil;
|
||||
import cn.lili.common.vo.PageVO;
|
||||
import cn.lili.modules.goods.entity.enums.GoodsAuthEnum;
|
||||
import cn.lili.modules.goods.entity.enums.GoodsStatusEnum;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 商品查询条件
|
||||
@ -14,6 +15,7 @@ import lombok.Data;
|
||||
* @author pikachu
|
||||
* @since 2020-02-24 19:27:20
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class GoodsSearchParams extends PageVO {
|
||||
|
||||
@ -72,34 +74,34 @@ public class GoodsSearchParams extends PageVO {
|
||||
|
||||
public <T> QueryWrapper<T> queryWrapper() {
|
||||
QueryWrapper<T> queryWrapper = new QueryWrapper<>();
|
||||
if (StringUtils.isNotEmpty(goodsId)) {
|
||||
if (CharSequenceUtil.isNotEmpty(goodsId)) {
|
||||
queryWrapper.eq("goods_id", goodsId);
|
||||
}
|
||||
if (StringUtils.isNotEmpty(goodsName)) {
|
||||
if (CharSequenceUtil.isNotEmpty(goodsName)) {
|
||||
queryWrapper.like("goods_name", goodsName);
|
||||
}
|
||||
if (StringUtils.isNotEmpty(id)) {
|
||||
if (CharSequenceUtil.isNotEmpty(id)) {
|
||||
queryWrapper.eq("id", id);
|
||||
}
|
||||
if (StringUtils.isNotEmpty(storeId)) {
|
||||
if (CharSequenceUtil.isNotEmpty(storeId)) {
|
||||
queryWrapper.eq("store_id", storeId);
|
||||
}
|
||||
if (StringUtils.isNotEmpty(storeName)) {
|
||||
if (CharSequenceUtil.isNotEmpty(storeName)) {
|
||||
queryWrapper.like("store_name", storeName);
|
||||
}
|
||||
if (StringUtils.isNotEmpty(categoryPath)) {
|
||||
if (CharSequenceUtil.isNotEmpty(categoryPath)) {
|
||||
queryWrapper.like("category_path", categoryPath);
|
||||
}
|
||||
if (StringUtils.isNotEmpty(storeCategoryPath)) {
|
||||
if (CharSequenceUtil.isNotEmpty(storeCategoryPath)) {
|
||||
queryWrapper.like("store_category_path", storeCategoryPath);
|
||||
}
|
||||
if (selfOperated != null) {
|
||||
queryWrapper.eq("self_operated", selfOperated);
|
||||
}
|
||||
if (StringUtils.isNotEmpty(marketEnable)) {
|
||||
if (CharSequenceUtil.isNotEmpty(marketEnable)) {
|
||||
queryWrapper.eq("market_enable", marketEnable);
|
||||
}
|
||||
if (StringUtils.isNotEmpty(isAuth)) {
|
||||
if (CharSequenceUtil.isNotEmpty(isAuth)) {
|
||||
queryWrapper.eq("is_auth", isAuth);
|
||||
}
|
||||
if (quantity != null) {
|
||||
@ -108,7 +110,7 @@ public class GoodsSearchParams extends PageVO {
|
||||
if (recommend != null) {
|
||||
queryWrapper.le("recommend", recommend);
|
||||
}
|
||||
if (goodsType != null) {
|
||||
if (CharSequenceUtil.isNotEmpty(goodsType)) {
|
||||
queryWrapper.eq("goods_type", goodsType);
|
||||
}
|
||||
|
||||
@ -118,7 +120,7 @@ public class GoodsSearchParams extends PageVO {
|
||||
}
|
||||
|
||||
private <T> void betweenWrapper(QueryWrapper<T> queryWrapper) {
|
||||
if (StringUtils.isNotEmpty(price)) {
|
||||
if (CharSequenceUtil.isNotEmpty(price)) {
|
||||
String[] s = price.split("_");
|
||||
if (s.length > 1) {
|
||||
queryWrapper.ge("price", s[1]);
|
||||
|
@ -120,6 +120,7 @@ public class SkuPromotionRender implements CartRenderStep {
|
||||
return;
|
||||
case CART:
|
||||
case BUY_NOW:
|
||||
return;
|
||||
case VIRTUAL:
|
||||
//循环购物车
|
||||
for (CartVO cartVO : tradeDTO.getCartList()) {
|
||||
@ -130,6 +131,10 @@ public class SkuPromotionRender implements CartRenderStep {
|
||||
//赋予商品促销信息
|
||||
for (PromotionGoods promotionGoods : cartSkuVO.getPromotions()) {
|
||||
|
||||
// 忽略拼团活动
|
||||
if (promotionGoods.getPromotionType().equals(PromotionTypeEnum.PINTUAN.name())) {
|
||||
continue;
|
||||
}
|
||||
PromotionSkuVO promotionSkuVO = new PromotionSkuVO(promotionGoods.getPromotionType(), promotionGoods.getPromotionId());
|
||||
cartSkuVO.setPurchasePrice(promotionGoods.getPrice());
|
||||
cartSkuVO.setSubTotal(CurrencyUtil.mul(promotionGoods.getPrice(), cartSkuVO.getNum()));
|
||||
|
@ -2,18 +2,12 @@ package cn.lili.modules.promotion.serviceimpl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.lili.common.enums.PromotionTypeEnum;
|
||||
import cn.lili.common.enums.ResultCode;
|
||||
import cn.lili.trigger.util.DelayQueueTools;
|
||||
import cn.lili.trigger.enums.DelayTypeEnums;
|
||||
import cn.lili.trigger.message.PromotionMessage;
|
||||
import cn.lili.common.exception.ServiceException;
|
||||
import cn.lili.trigger.interfaces.TimeTrigger;
|
||||
import cn.lili.trigger.model.TimeExecuteConstant;
|
||||
import cn.lili.trigger.model.TimeTriggerMsg;
|
||||
import cn.lili.common.utils.DateUtil;
|
||||
import cn.lili.mybatis.util.PageUtil;
|
||||
import cn.lili.common.vo.PageVO;
|
||||
import cn.lili.common.properties.RocketmqCustomProperties;
|
||||
import cn.lili.common.utils.DateUtil;
|
||||
import cn.lili.common.vo.PageVO;
|
||||
import cn.lili.modules.goods.service.GoodsSkuService;
|
||||
import cn.lili.modules.member.entity.dos.Member;
|
||||
import cn.lili.modules.member.service.MemberService;
|
||||
@ -24,7 +18,6 @@ import cn.lili.modules.order.order.service.OrderService;
|
||||
import cn.lili.modules.promotion.entity.dos.Pintuan;
|
||||
import cn.lili.modules.promotion.entity.dos.PromotionGoods;
|
||||
import cn.lili.modules.promotion.entity.enums.PromotionStatusEnum;
|
||||
import cn.lili.common.enums.PromotionTypeEnum;
|
||||
import cn.lili.modules.promotion.entity.vos.PintuanMemberVO;
|
||||
import cn.lili.modules.promotion.entity.vos.PintuanSearchParams;
|
||||
import cn.lili.modules.promotion.entity.vos.PintuanShareVO;
|
||||
@ -33,6 +26,13 @@ import cn.lili.modules.promotion.mapper.PintuanMapper;
|
||||
import cn.lili.modules.promotion.service.PintuanService;
|
||||
import cn.lili.modules.promotion.service.PromotionGoodsService;
|
||||
import cn.lili.modules.promotion.tools.PromotionTools;
|
||||
import cn.lili.mybatis.util.PageUtil;
|
||||
import cn.lili.trigger.enums.DelayTypeEnums;
|
||||
import cn.lili.trigger.interfaces.TimeTrigger;
|
||||
import cn.lili.trigger.message.PromotionMessage;
|
||||
import cn.lili.trigger.model.TimeExecuteConstant;
|
||||
import cn.lili.trigger.model.TimeTriggerMsg;
|
||||
import cn.lili.trigger.util.DelayQueueTools;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
@ -219,7 +219,7 @@ public class PintuanServiceImpl extends ServiceImpl<PintuanMapper, Pintuan> impl
|
||||
public boolean modifyPintuan(PintuanVO pintuan) {
|
||||
PintuanVO pintuanVO = this.checkExist(pintuan.getId());
|
||||
if (!pintuan.getPromotionStatus().equals(PromotionStatusEnum.NEW.name())) {
|
||||
throw new ServiceException(ResultCode.PINTUAN_EDIT_ERROR);
|
||||
throw new ServiceException(ResultCode.PINTUAN_EDIT_ERROR_ITS_OPEN);
|
||||
}
|
||||
//检查促销时间
|
||||
PromotionTools.checkPromotionTime(pintuan.getStartTime().getTime(), pintuan.getEndTime().getTime());
|
||||
|
@ -7,6 +7,7 @@ import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.text.CharSequenceUtil;
|
||||
import cn.lili.cache.Cache;
|
||||
import cn.lili.common.enums.PromotionTypeEnum;
|
||||
import cn.lili.common.enums.ResultCode;
|
||||
import cn.lili.common.exception.ServiceException;
|
||||
import cn.lili.common.vo.PageVO;
|
||||
@ -17,7 +18,6 @@ import cn.lili.modules.promotion.entity.dos.Seckill;
|
||||
import cn.lili.modules.promotion.entity.dos.SeckillApply;
|
||||
import cn.lili.modules.promotion.entity.enums.PromotionApplyStatusEnum;
|
||||
import cn.lili.modules.promotion.entity.enums.PromotionStatusEnum;
|
||||
import cn.lili.common.enums.PromotionTypeEnum;
|
||||
import cn.lili.modules.promotion.entity.vos.*;
|
||||
import cn.lili.modules.promotion.mapper.SeckillApplyMapper;
|
||||
import cn.lili.modules.promotion.service.PromotionGoodsService;
|
||||
@ -101,11 +101,7 @@ public class SeckillApplyServiceImpl extends ServiceImpl<SeckillApplyMapper, Sec
|
||||
timelineVoS.add(seckillTimelineVO);
|
||||
}
|
||||
}
|
||||
if (timelineVoS.size() > 0) {
|
||||
return timelineVoS;
|
||||
} else {
|
||||
throw new ServiceException(ResultCode.SECKILL_NOT_START_ERROR);
|
||||
}
|
||||
return timelineVoS;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Loading…
x
Reference in New Issue
Block a user