Commit 7231042df47888b99eb81a86bf3c97bcf6c5d161

Authored by 痴货
1 parent b092906a

【恢复】【BUG】修改秒杀根据时间段开判断是否开启活动

yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/dal/mysql/seckill/seckillactivity/SeckillActivityMapper.java
@@ -98,10 +98,9 @@ public interface SeckillActivityMapper extends BaseMapperX<SeckillActivityDO> { @@ -98,10 +98,9 @@ public interface SeckillActivityMapper extends BaseMapperX<SeckillActivityDO> {
98 * @param dateTime 指定日期 98 * @param dateTime 指定日期
99 * @return 活动列表 99 * @return 活动列表
100 */ 100 */
101 - default List<SeckillActivityDO> selectListByIdsAndDateTimeLt(Collection<Long> ids, List<Long> confidIds, LocalDateTime dateTime) { 101 + default List<SeckillActivityDO> selectListByIdsAndDateTimeLt(Collection<Long> ids, LocalDateTime dateTime) {
102 return selectList(new LambdaQueryWrapperX<SeckillActivityDO>() 102 return selectList(new LambdaQueryWrapperX<SeckillActivityDO>()
103 .in(SeckillActivityDO::getId, ids) 103 .in(SeckillActivityDO::getId, ids)
104 - .in(SeckillActivityDO::getConfigIds,confidIds)  
105 .lt(SeckillActivityDO::getStartTime, dateTime) 104 .lt(SeckillActivityDO::getStartTime, dateTime)
106 .gt(SeckillActivityDO::getEndTime, dateTime)// 开始时间 < 指定时间 < 结束时间,也就是说获取指定时间段的活动 105 .gt(SeckillActivityDO::getEndTime, dateTime)// 开始时间 < 指定时间 < 结束时间,也就是说获取指定时间段的活动
107 .orderByDesc(SeckillActivityDO::getCreateTime)); 106 .orderByDesc(SeckillActivityDO::getCreateTime));
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/dal/mysql/seckill/seckillconfig/SeckillConfigMapper.java
@@ -27,13 +27,4 @@ public interface SeckillConfigMapper extends BaseMapperX&lt;SeckillConfigDO&gt; { @@ -27,13 +27,4 @@ public interface SeckillConfigMapper extends BaseMapperX&lt;SeckillConfigDO&gt; {
27 return selectList(SeckillConfigDO::getStatus, status); 27 return selectList(SeckillConfigDO::getStatus, status);
28 } 28 }
29 29
30 - default List<SeckillConfigDO> selectListByIdsAndDateTimeLt(LocalDateTime dateTime){  
31 - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss");  
32 - String format = formatter.format(dateTime);  
33 - return selectList(new LambdaQueryWrapper<SeckillConfigDO>()  
34 - .eq(SeckillConfigDO::getStatus, CommonStatusEnum.ENABLE.getStatus())  
35 - .lt(SeckillConfigDO::getStartTime, format)  
36 - .gt(SeckillConfigDO::getEndTime, format));  
37 - }  
38 -  
39 } 30 }
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/seckill/SeckillActivityServiceImpl.java
@@ -34,7 +34,6 @@ import java.util.Collection; @@ -34,7 +34,6 @@ import java.util.Collection;
34 import java.util.Collections; 34 import java.util.Collections;
35 import java.util.List; 35 import java.util.List;
36 import java.util.Map; 36 import java.util.Map;
37 -import java.util.stream.Collectors;  
38 37
39 import static cn.hutool.core.collection.CollUtil.isNotEmpty; 38 import static cn.hutool.core.collection.CollUtil.isNotEmpty;
40 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; 39 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
@@ -335,12 +334,9 @@ public class SeckillActivityServiceImpl implements SeckillActivityService { @@ -335,12 +334,9 @@ public class SeckillActivityServiceImpl implements SeckillActivityService {
335 if (CollUtil.isEmpty(spuIdAndActivityIdMaps)) { 334 if (CollUtil.isEmpty(spuIdAndActivityIdMaps)) {
336 return Collections.emptyList(); 335 return Collections.emptyList();
337 } 336 }
338 - // 2.查询当前时间属于哪个时间段  
339 - List<SeckillConfigDO> seckillConfigList= seckillConfigMapper.selectListByIdsAndDateTimeLt(dateTime);  
340 - List<Long> confidIds = seckillConfigList.stream().map(SeckillConfigDO::getId).collect(Collectors.toList());  
341 - // 3.查询活动详情 337 + // 2.查询活动详情
342 return seckillActivityMapper.selectListByIdsAndDateTimeLt( 338 return seckillActivityMapper.selectListByIdsAndDateTimeLt(
343 - convertSet(spuIdAndActivityIdMaps, map -> MapUtil.getLong(map, "activityId")), confidIds, dateTime); 339 + convertSet(spuIdAndActivityIdMaps, map -> MapUtil.getLong(map, "activityId")), dateTime);
344 } 340 }
345 341
346 } 342 }