提交 3a4fe055 authored 作者: 窦馨雨's avatar 窦馨雨

合并分支 'dxy' 到 'qa'

增加抽奖记录获取功能 查看合并请求 !126
......@@ -41,4 +41,9 @@ public class LotteryController {
public R getLotteryUserInfo(@RequestBody LotteryRecordVo lotteryRecordVo) {
return R.success(lotteryService.getLotteryUserInfo(lotteryRecordVo.getWxOpenId()));
}
@PostMapping("/getRecordInfo")
public R getLotteryRecordInfo(@RequestBody LotteryRecordVo lotteryRecordVo) {
return R.success(lotteryService.getLotteryRecordInfo(lotteryRecordVo.getWxOpenId()));
}
}
\ No newline at end of file
......@@ -4,6 +4,8 @@ import com.wangxiaolu.promotion.domain.lottery.entity.LotteryUserInfo;
import com.wangxiaolu.promotion.pojo.lottery.dto.LotteryRecordDto;
import com.wangxiaolu.promotion.pojo.lottery.dto.LotteryUserInfoDto;
import java.util.List;
/**
* @Author: DouXinYu
* @Date: 2026-04-07 17:41
......@@ -15,4 +17,6 @@ public interface LotteryCoreDao {
LotteryRecordDto initLottery(Double longitude, Double latitude, String receiptImage, String wxOpenId);
LotteryUserInfoDto getLotteryUserInfo(String wxOpenId);
List<LotteryRecordDto> getLotteryRecordInfo(String wxOpenId);
}
......@@ -87,22 +87,10 @@ public class LotteryCoreDaoImpl implements LotteryCoreDao {
}
if (record.getWxOpenId() != null && record.getPrizeLevel() != null) {
}
LambdaQueryWrapper<LotteryRecord> qw = new LambdaQueryWrapper<>();
qw.eq(LotteryRecord::getWxOpenId,record.getWxOpenId());
qw.eq(LotteryRecord::getCreateDate,FORMAT.format(new Date()));
List<LotteryRecord> lotteryRecordList = lotteryMapper.selectList(qw);
if (CollectionUtils.isEmpty(lotteryRecordList)){
throw new ParamException(RCode.LOTTERY_RECORD_NOT_EXIST);
}
if (lotteryRecordList.size() > 1){
throw new ParamException(RCode.LOTTERY_RECORD_ERROR);
}else if (lotteryRecordList.get(0).getPrizeLevel() != null){
throw new ParamException(RCode.LOTTERY_RECORD_ERROR);
}
LotteryUserInfo user = lotteryUserInfoMapper.selectOne(new LambdaQueryWrapper<LotteryUserInfo>().eq(LotteryUserInfo::getOpenId, record.getWxOpenId()));
if (Objects.isNull(user)) {
LotteryUserInfo lotteryUserInfo = new LotteryUserInfo();
......@@ -128,6 +116,23 @@ public class LotteryCoreDaoImpl implements LotteryCoreDao {
return BeanUtils.transitionDto(lotteryUserInfo, LotteryUserInfoDto.class);
}
/**
* 获取抽奖记录详情
* @param wxOpenId 微信openid
* @return 抽奖记录详情
*/
@Override
public List<LotteryRecordDto> getLotteryRecordInfo(String wxOpenId) {
LambdaQueryWrapper<LotteryRecord> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(LotteryRecord::getWxOpenId, wxOpenId);
queryWrapper.isNotNull(LotteryRecord::getPrizeLevel);
queryWrapper.orderByDesc(LotteryRecord::getId);
queryWrapper.last("limit 100");
List<LotteryRecord> lotteryRecordList = lotteryMapper.selectList(queryWrapper);
return BeanUtils.transitionDtos(lotteryRecordList, LotteryRecordDto.class);
}
/**
* 简单动态概率
*/
......
......@@ -3,6 +3,8 @@ package com.wangxiaolu.promotion.service.lottery;
import com.wangxiaolu.promotion.pojo.lottery.dto.LotteryRecordDto;
import com.wangxiaolu.promotion.pojo.lottery.dto.LotteryUserInfoDto;
import java.util.List;
/**
* @Author: DouXinYu
* @Date: 2026-04-07 17:38
......@@ -12,4 +14,6 @@ public interface LotteryCoreService {
LotteryRecordDto initLottery(Double longitude, Double latitude, String receiptImage, String wxOpenId);
LotteryRecordDto doDraw(Long recordId, LotteryUserInfoDto userInfo);
List<LotteryRecordDto> getLotteryRecordInfo(String wxOpenId);
}
......@@ -13,6 +13,7 @@ import com.wangxiaolu.promotion.service.lottery.LotteryCoreService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Random;
@Service
......@@ -55,7 +56,13 @@ public class LotteryCoreServiceImpl implements LotteryCoreService {
return lotteryCoreDao.doDraw(recordId,userInfo);
}
public LotteryUserInfoDto getLotteryUserInfo(String wxOpenId) {
return lotteryCoreDao.getLotteryUserInfo(wxOpenId);
}
@Override
public List<LotteryRecordDto> getLotteryRecordInfo(String wxOpenId) {
return lotteryCoreDao.getLotteryRecordInfo(wxOpenId);
}
}
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论