|
@@ -23,12 +23,14 @@ import com.qs.mp.admin.service.ITicketService;
|
|
import com.qs.mp.common.core.domain.AjaxResult;
|
|
import com.qs.mp.common.core.domain.AjaxResult;
|
|
import com.qs.mp.common.core.page.TableDataInfo;
|
|
import com.qs.mp.common.core.page.TableDataInfo;
|
|
import com.qs.mp.common.enums.*;
|
|
import com.qs.mp.common.enums.*;
|
|
|
|
+import com.qs.mp.common.utils.DateUtils;
|
|
import com.qs.mp.common.utils.LogUtil;
|
|
import com.qs.mp.common.utils.LogUtil;
|
|
import com.qs.mp.common.utils.StringUtils;
|
|
import com.qs.mp.common.utils.StringUtils;
|
|
import com.qs.mp.framework.security.handle.HostHolder;
|
|
import com.qs.mp.framework.security.handle.HostHolder;
|
|
import com.qs.mp.user.domain.UserHitPrize;
|
|
import com.qs.mp.user.domain.UserHitPrize;
|
|
import com.qs.mp.user.domain.UserTicketOrderItem;
|
|
import com.qs.mp.user.domain.UserTicketOrderItem;
|
|
import com.qs.mp.user.domain.vo.TicketHitPrizeBarrageVO;
|
|
import com.qs.mp.user.domain.vo.TicketHitPrizeBarrageVO;
|
|
|
|
+import com.qs.mp.user.service.IUserExchangeOrderService;
|
|
import com.qs.mp.user.service.IUserHitPrizeService;
|
|
import com.qs.mp.user.service.IUserHitPrizeService;
|
|
import com.qs.mp.user.service.IUserTicketOrderItemService;
|
|
import com.qs.mp.user.service.IUserTicketOrderItemService;
|
|
import com.qs.mp.utils.SecurityUtils;
|
|
import com.qs.mp.utils.SecurityUtils;
|
|
@@ -36,10 +38,10 @@ import com.qs.mp.web.controller.common.BaseApiController;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
|
|
-import java.util.ArrayList;
|
|
|
|
-import java.util.HashMap;
|
|
|
|
-import java.util.List;
|
|
|
|
-import java.util.Map;
|
|
|
|
|
|
+import java.lang.reflect.Array;
|
|
|
|
+import java.time.LocalDateTime;
|
|
|
|
+import java.time.LocalTime;
|
|
|
|
+import java.util.*;
|
|
|
|
|
|
import io.swagger.annotations.ApiResponse;
|
|
import io.swagger.annotations.ApiResponse;
|
|
import io.swagger.annotations.ApiResponses;
|
|
import io.swagger.annotations.ApiResponses;
|
|
@@ -83,6 +85,9 @@ public class UserTicketController extends BaseApiController {
|
|
@Autowired
|
|
@Autowired
|
|
private HostHolder hostHolder;
|
|
private HostHolder hostHolder;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private IUserExchangeOrderService userExchangeOrderService;
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 盲票进货列表
|
|
* 盲票进货列表
|
|
*/
|
|
*/
|
|
@@ -265,6 +270,34 @@ public class UserTicketController extends BaseApiController {
|
|
List<TicketHitPrizeBarrageVO> listOne = new ArrayList<>();
|
|
List<TicketHitPrizeBarrageVO> listOne = new ArrayList<>();
|
|
List<TicketHitPrizeBarrageVO> listTwo = new ArrayList<>();
|
|
List<TicketHitPrizeBarrageVO> listTwo = new ArrayList<>();
|
|
|
|
|
|
|
|
+ // 获取除当前用户外最近10条盲豆大于1000的商品兑换数据
|
|
|
|
+ QueryWrapper<TicketHitPrizeBarrageVO> queryWrapper = new QueryWrapper<>();
|
|
|
|
+ queryWrapper.ge("t1.order_coin", 1000);
|
|
|
|
+ queryWrapper.notIn("t1.user_id", userId);
|
|
|
|
+ queryWrapper.orderByDesc("t1.created_time");
|
|
|
|
+ queryWrapper.last("limit 10");
|
|
|
|
+ List<TicketHitPrizeBarrageVO> exchangeList = userExchangeOrderService.listByWrapper(queryWrapper);
|
|
|
|
+
|
|
|
|
+ // 获取当前用户当天的商品兑换数据
|
|
|
|
+ LocalDateTime startTime = LocalDateTime.of(LocalDateTime.now().toLocalDate(), LocalTime.MIN);
|
|
|
|
+ LocalDateTime endTime = LocalDateTime.now().withNano(0);
|
|
|
|
+ queryWrapper.clear();
|
|
|
|
+ queryWrapper.eq("t1.user_id", userId);
|
|
|
|
+ queryWrapper.between("t1.created_time", startTime, endTime);
|
|
|
|
+ List<TicketHitPrizeBarrageVO> userExchangeList = userExchangeOrderService.listByWrapper(queryWrapper);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if (CollectionUtils.isNotEmpty(userExchangeList)) {
|
|
|
|
+ exchangeList.addAll(userExchangeList);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ for (TicketHitPrizeBarrageVO ticketHitPrizeBarrageVO : exchangeList) {
|
|
|
|
+ // 设置为兑换类型
|
|
|
|
+ ticketHitPrizeBarrageVO.setType(2);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
// 获取用户当天中奖的 2 条弹幕
|
|
// 获取用户当天中奖的 2 条弹幕
|
|
if (userId != 0L) {
|
|
if (userId != 0L) {
|
|
List<TicketHitPrizeBarrageVO> ticketHitPrizeBarrageVOList = userHitPrizeService.hitPrizeBarrageByUserId(userId);
|
|
List<TicketHitPrizeBarrageVO> ticketHitPrizeBarrageVOList = userHitPrizeService.hitPrizeBarrageByUserId(userId);
|
|
@@ -275,6 +308,9 @@ public class UserTicketController extends BaseApiController {
|
|
ticketHitPrizeBarrageVOList.get(i).setPrizeInfo(ticketHitPrizeBarrageVOList.get(i).getPrizeInfo() + ticketHitPrizeBarrageVOList.get(i).getValue() + "颗");
|
|
ticketHitPrizeBarrageVOList.get(i).setPrizeInfo(ticketHitPrizeBarrageVOList.get(i).getPrizeInfo() + ticketHitPrizeBarrageVOList.get(i).getValue() + "颗");
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ // 设置类型为中奖
|
|
|
|
+ ticketHitPrizeBarrageVOList.get(i).setType(1);
|
|
|
|
+
|
|
if (i % 2 == 0) {
|
|
if (i % 2 == 0) {
|
|
listOne.add(ticketHitPrizeBarrageVOList.get(i));
|
|
listOne.add(ticketHitPrizeBarrageVOList.get(i));
|
|
}else {
|
|
}else {
|
|
@@ -286,6 +322,19 @@ public class UserTicketController extends BaseApiController {
|
|
// 获取除该用户外,最近中奖的 40 条弹幕信息
|
|
// 获取除该用户外,最近中奖的 40 条弹幕信息
|
|
List<TicketHitPrizeBarrageVO> ticketHitPrizeBarrageVOList = userHitPrizeService.hitPrizeBarrage(userId);
|
|
List<TicketHitPrizeBarrageVO> ticketHitPrizeBarrageVOList = userHitPrizeService.hitPrizeBarrage(userId);
|
|
|
|
|
|
|
|
+
|
|
|
|
+ for (TicketHitPrizeBarrageVO ticketHitPrizeBarrageVO : ticketHitPrizeBarrageVOList) {
|
|
|
|
+ // 设置为中奖类型
|
|
|
|
+ ticketHitPrizeBarrageVO.setType(1);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 增加兑奖信息并且按时间排序
|
|
|
|
+ ticketHitPrizeBarrageVOList.addAll(exchangeList);
|
|
|
|
+
|
|
|
|
+ ticketHitPrizeBarrageVOList.sort(Comparator.comparing(TicketHitPrizeBarrageVO::getCreatedTime));
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
// 获取除该用户外,近 6 个月,8 条高级中奖弹幕信息
|
|
// 获取除该用户外,近 6 个月,8 条高级中奖弹幕信息
|
|
List<TicketHitPrizeBarrageVO> expensiveHitPrizeBarrageList = userHitPrizeService.expensiveHitPrizeBarrage(userId);
|
|
List<TicketHitPrizeBarrageVO> expensiveHitPrizeBarrageList = userHitPrizeService.expensiveHitPrizeBarrage(userId);
|
|
int count = 0;
|
|
int count = 0;
|
|
@@ -305,6 +354,8 @@ public class UserTicketController extends BaseApiController {
|
|
|
|
|
|
// 插入大奖弹幕
|
|
// 插入大奖弹幕
|
|
if (count != 0 && i % 5 == 0) {
|
|
if (count != 0 && i % 5 == 0) {
|
|
|
|
+ // 设置类型为中奖
|
|
|
|
+ expensiveHitPrizeBarrageList.get(index).setType(1);
|
|
if (index % 2 == 0) {
|
|
if (index % 2 == 0) {
|
|
listOne.add(expensiveHitPrizeBarrageList.get(index));
|
|
listOne.add(expensiveHitPrizeBarrageList.get(index));
|
|
}else {
|
|
}else {
|