| | |
| | | public class TGameServiceImpl extends ServiceImpl<TGameMapper, TGame> implements ITGameService { |
| | | |
| | | @Override |
| | | public Integer countIntegral(Integer userid, TGame game, CompleteGameDTO completeStudy, List<TIntegralRecord> integralRecordList) { |
| | | // 本次游戏可获得积分数量 |
| | | Integer availableIntegral = completeStudy.getAvailableIntegral(); |
| | | public Integer countIntegral(Integer userid, TGame game, CompleteGameDTO completeStudy, |
| | | Integer gameAvailableIntegral, List<TIntegralRecord> integralRecordList) { |
| | | // 积分明细集合为空,当前为第一次完成游戏 |
| | | if (integralRecordList.isEmpty()) { |
| | | return availableIntegral; |
| | | return gameAvailableIntegral; |
| | | } else { |
| | | // 积分明细不为空,根据正确率及已获取积分数量计算本次答题可获取的积分数量 |
| | | List<Integer> integralList = integralRecordList.stream().map(TIntegralRecord::getIntegral).collect(Collectors.toList()).stream().map(Integer::parseInt).collect(Collectors.toList()); |
| | | List<Integer> integralList = integralRecordList.stream().map(TIntegralRecord::getIntegral).collect(Collectors.toList()) |
| | | .stream().map(Integer::parseInt).collect(Collectors.toList()); |
| | | int sumIntegral = integralList.stream().mapToInt(Integer::intValue).sum(); |
| | | if (availableIntegral > sumIntegral) { |
| | | return availableIntegral - sumIntegral; |
| | | if (gameAvailableIntegral > sumIntegral) { |
| | | return gameAvailableIntegral - sumIntegral; |
| | | } else { |
| | | return null; |
| | | } |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public TGame gameHearing(Integer quarter, Integer week) { |
| | | return baseMapper.gameHearing(quarter, week); |
| | | } |
| | | } |