Commit a55ca877097c5ad9e2587072048cb36180c5c256

Authored by YunaiV
1 parent cf6f3eaa

【代码修复】MALL:秒杀活动的商品拼接不正确的问题

Showing 8 changed files with 13 additions and 13 deletions
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/seckill/SeckillActivityController.java
... ... @@ -6,7 +6,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
6 6 import cn.iocoder.yudao.module.product.api.spu.ProductSpuApi;
7 7 import cn.iocoder.yudao.module.product.api.spu.dto.ProductSpuRespDTO;
8 8 import cn.iocoder.yudao.module.promotion.controller.admin.seckill.vo.activity.*;
9   -import cn.iocoder.yudao.module.promotion.convert.seckill.seckillactivity.SeckillActivityConvert;
  9 +import cn.iocoder.yudao.module.promotion.convert.seckill.SeckillActivityConvert;
10 10 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillActivityDO;
11 11 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillProductDO;
12 12 import cn.iocoder.yudao.module.promotion.service.seckill.SeckillActivityService;
... ...
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/seckill/SeckillConfigController.java
... ... @@ -4,7 +4,7 @@ import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
4 4 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
5 5 import cn.iocoder.yudao.framework.common.pojo.PageResult;
6 6 import cn.iocoder.yudao.module.promotion.controller.admin.seckill.vo.config.*;
7   -import cn.iocoder.yudao.module.promotion.convert.seckill.seckillconfig.SeckillConfigConvert;
  7 +import cn.iocoder.yudao.module.promotion.convert.seckill.SeckillConfigConvert;
8 8 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillConfigDO;
9 9 import cn.iocoder.yudao.module.promotion.service.seckill.SeckillConfigService;
10 10 import io.swagger.v3.oas.annotations.Operation;
... ...
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/app/seckill/AppSeckillActivityController.java
... ... @@ -12,7 +12,7 @@ import cn.iocoder.yudao.module.promotion.controller.app.seckill.vo.activity.AppS
12 12 import cn.iocoder.yudao.module.promotion.controller.app.seckill.vo.activity.AppSeckillActivityNowRespVO;
13 13 import cn.iocoder.yudao.module.promotion.controller.app.seckill.vo.activity.AppSeckillActivityPageReqVO;
14 14 import cn.iocoder.yudao.module.promotion.controller.app.seckill.vo.activity.AppSeckillActivityRespVO;
15   -import cn.iocoder.yudao.module.promotion.convert.seckill.seckillactivity.SeckillActivityConvert;
  15 +import cn.iocoder.yudao.module.promotion.convert.seckill.SeckillActivityConvert;
16 16 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillActivityDO;
17 17 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillConfigDO;
18 18 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillProductDO;
... ...
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/app/seckill/AppSeckillConfigController.java
... ... @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.promotion.controller.app.seckill;
3 3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
4 4 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
5 5 import cn.iocoder.yudao.module.promotion.controller.app.seckill.vo.config.AppSeckillConfigRespVO;
6   -import cn.iocoder.yudao.module.promotion.convert.seckill.seckillconfig.SeckillConfigConvert;
  6 +import cn.iocoder.yudao.module.promotion.convert.seckill.SeckillConfigConvert;
7 7 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillConfigDO;
8 8 import cn.iocoder.yudao.module.promotion.service.seckill.SeckillConfigService;
9 9 import io.swagger.v3.oas.annotations.Operation;
... ...
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/convert/seckill/seckillactivity/SeckillActivityConvert.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/convert/seckill/SeckillActivityConvert.java
1   -package cn.iocoder.yudao.module.promotion.convert.seckill.seckillactivity;
  1 +package cn.iocoder.yudao.module.promotion.convert.seckill;
2 2  
3 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4 4 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
... ... @@ -14,7 +14,6 @@ import cn.iocoder.yudao.module.promotion.controller.admin.seckill.vo.product.Sec
14 14 import cn.iocoder.yudao.module.promotion.controller.app.seckill.vo.activity.AppSeckillActivityDetailRespVO;
15 15 import cn.iocoder.yudao.module.promotion.controller.app.seckill.vo.activity.AppSeckillActivityNowRespVO;
16 16 import cn.iocoder.yudao.module.promotion.controller.app.seckill.vo.activity.AppSeckillActivityRespVO;
17   -import cn.iocoder.yudao.module.promotion.convert.seckill.seckillconfig.SeckillConfigConvert;
18 17 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillActivityDO;
19 18 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillConfigDO;
20 19 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillProductDO;
... ... @@ -56,10 +55,11 @@ public interface SeckillActivityConvert {
56 55 PageResult<SeckillActivityRespVO> pageResult = convertPage(page);
57 56 // 拼接商品
58 57 Map<Long, ProductSpuRespDTO> spuMap = CollectionUtils.convertMap(spuList, ProductSpuRespDTO::getId);
59   - pageResult.getList().forEach(item -> {
60   - item.setProducts(convertList2(seckillProducts));
61   - MapUtils.findAndThen(spuMap, item.getSpuId(),
62   - spu -> item.setSpuName(spu.getName()).setPicUrl(spu.getPicUrl()).setMarketPrice(spu.getMarketPrice()));
  58 + Map<Long, List<SeckillProductDO>> productMap = convertMultiMap(seckillProducts, SeckillProductDO::getActivityId);
  59 + pageResult.getList().forEach(activity -> {
  60 + activity.setProducts(convertList2(productMap.get(activity.getId())));
  61 + MapUtils.findAndThen(spuMap, activity.getSpuId(),
  62 + spu -> activity.setSpuName(spu.getName()).setPicUrl(spu.getPicUrl()).setMarketPrice(spu.getMarketPrice()));
63 63 });
64 64 return pageResult;
65 65 }
... ...
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/convert/seckill/seckillconfig/SeckillConfigConvert.java renamed to yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/convert/seckill/SeckillConfigConvert.java
1   -package cn.iocoder.yudao.module.promotion.convert.seckill.seckillconfig;
  1 +package cn.iocoder.yudao.module.promotion.convert.seckill;
2 2  
3 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4 4 import cn.iocoder.yudao.module.promotion.controller.admin.seckill.vo.config.SeckillConfigCreateReqVO;
... ...
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/seckill/SeckillActivityServiceImpl.java
... ... @@ -17,7 +17,7 @@ import cn.iocoder.yudao.module.promotion.controller.admin.seckill.vo.activity.Se
17 17 import cn.iocoder.yudao.module.promotion.controller.admin.seckill.vo.activity.SeckillActivityUpdateReqVO;
18 18 import cn.iocoder.yudao.module.promotion.controller.admin.seckill.vo.product.SeckillProductBaseVO;
19 19 import cn.iocoder.yudao.module.promotion.controller.app.seckill.vo.activity.AppSeckillActivityPageReqVO;
20   -import cn.iocoder.yudao.module.promotion.convert.seckill.seckillactivity.SeckillActivityConvert;
  20 +import cn.iocoder.yudao.module.promotion.convert.seckill.SeckillActivityConvert;
21 21 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillActivityDO;
22 22 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillConfigDO;
23 23 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillProductDO;
... ...
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/seckill/SeckillConfigServiceImpl.java
... ... @@ -8,7 +8,7 @@ import cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils;
8 8 import cn.iocoder.yudao.module.promotion.controller.admin.seckill.vo.config.SeckillConfigCreateReqVO;
9 9 import cn.iocoder.yudao.module.promotion.controller.admin.seckill.vo.config.SeckillConfigPageReqVO;
10 10 import cn.iocoder.yudao.module.promotion.controller.admin.seckill.vo.config.SeckillConfigUpdateReqVO;
11   -import cn.iocoder.yudao.module.promotion.convert.seckill.seckillconfig.SeckillConfigConvert;
  11 +import cn.iocoder.yudao.module.promotion.convert.seckill.SeckillConfigConvert;
12 12 import cn.iocoder.yudao.module.promotion.dal.dataobject.seckill.SeckillConfigDO;
13 13 import cn.iocoder.yudao.module.promotion.dal.mysql.seckill.seckillconfig.SeckillConfigMapper;
14 14 import org.springframework.stereotype.Service;
... ...