| | |
| | | package com.ruoyi.goods.controller.concole; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.goods.api.domain.GetLotteryEventList; |
| | | import com.ruoyi.goods.api.domain.TLotteryEvent; |
| | | import com.ruoyi.goods.api.domain.TUserLotteryEvent; |
| | | import com.ruoyi.goods.service.lottery.ILotteryEventService; |
| | | import com.ruoyi.goods.service.lottery.IUserLotteryEventService; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.time.LocalDateTime; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | |
| | | @Resource |
| | | private ILotteryEventService lotteryEventService; |
| | | |
| | | @Resource |
| | | private IUserLotteryEventService userLotteryEventService; |
| | | |
| | | |
| | | /** |
| | | * 根据开启方式获取活动列表 |
| | | * |
| | | * @param activityType |
| | | * @param getLotteryEventList |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @PostMapping("/getLotteryEventList") |
| | | public R<List<TLotteryEvent>> getLotteryEventList(@RequestParam("activityType") Integer activityType) { |
| | | List<TLotteryEvent> list = lotteryEventService.list(new LambdaQueryWrapper<TLotteryEvent>().eq(TLotteryEvent::getActivityType, activityType) |
| | | public R<List<TLotteryEvent>> getLotteryEventList(@RequestBody GetLotteryEventList getLotteryEventList) { |
| | | Integer activityType = getLotteryEventList.getActivityType(); |
| | | Long userId = getLotteryEventList.getUserId(); |
| | | List<TLotteryEvent> list = lotteryEventService.list(new LambdaQueryWrapper<TLotteryEvent>().eq(TLotteryEvent::getActivityType, activityType) |
| | | .eq(TLotteryEvent::getDelFlag, 0).last(" and now() between start_time and end_time")); |
| | | //分享抽奖,需要判断最后一次抽奖间隔时间 |
| | | if(activityType == 3 && !list.isEmpty()){ |
| | | TLotteryEvent lotteryEvent = list.get(0); |
| | | Integer intervalTime = lotteryEvent.getIntervalTime(); |
| | | TUserLotteryEvent one = userLotteryEventService.getOne(new QueryWrapper<TUserLotteryEvent>().eq("user_id", userId).eq("lottery_event_id", lotteryEvent.getId()).last(" order by create_time desc limit 0, 1")); |
| | | //当前时间小于间隔时间 |
| | | if(null != one && one.getCreateTime().plusDays(intervalTime).compareTo(LocalDateTime.now()) > 0){ |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | } |
| | | return R.ok(list); |
| | | } |
| | | |
| | | |
| | | } |