diff --git a/src/main/java/com/example/caseData/controller/CaseExchangeController.java b/src/main/java/com/example/caseData/controller/CaseExchangeController.java index ea6c352..e8adc29 100644 --- a/src/main/java/com/example/caseData/controller/CaseExchangeController.java +++ b/src/main/java/com/example/caseData/controller/CaseExchangeController.java @@ -249,36 +249,39 @@ public class CaseExchangeController { } } - // 过期状态 - if (g.getCaseExchangeVote().getEndTime().isAfter(LocalDateTime.now())) { - g.getCaseExchangeVote().setIsEnabled(1); - }else{ - g.getCaseExchangeVote().setIsEnabled(0); - } - - // 用户投票状态 - if (userId != null) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(UserVoteExchangeModel::getUserId, userId); - queryWrapper.eq(UserVoteExchangeModel::getExchangeId, exchangeId); - queryWrapper.eq(UserVoteExchangeModel::getVoteId, g.getCaseExchangeVote().getVoteId()); - UserVoteExchangeModel userVoteExchange = userVoteExchangeDao.selectOne(queryWrapper); - if (userVoteExchange != null) { - // 已投过票 + // 处理投票数据 + if (g.getCaseExchangeVote() != null){ + if (g.getCaseExchangeVote().getEndTime().isAfter(LocalDateTime.now())) { + g.getCaseExchangeVote().setIsEnabled(1); + }else{ g.getCaseExchangeVote().setIsEnabled(0); } + + // 用户投票状态 + if (userId != null) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(UserVoteExchangeModel::getUserId, userId); + queryWrapper.eq(UserVoteExchangeModel::getExchangeId, exchangeId); + queryWrapper.eq(UserVoteExchangeModel::getVoteId, g.getCaseExchangeVote().getVoteId()); + UserVoteExchangeModel userVoteExchange = userVoteExchangeDao.selectOne(queryWrapper); + if (userVoteExchange != null) { + // 已投过票 + g.getCaseExchangeVote().setIsEnabled(0); + } + } + + // 处理投票数据 + Integer voteNum = 0; + for (CaseExchangeVoteOptionDto dto : g.getCaseExchangeVote().getCaseExchangeVoteOption()){ + voteNum += dto.getVoteNum(); + } + + for (CaseExchangeVoteOptionDto dto : g.getCaseExchangeVote().getCaseExchangeVoteOption()){ + Integer proportion = (int) (Math.round((double) dto.getVoteNum() / voteNum * 10000) / 100.0); + dto.setProportion(proportion); + } } - // 处理投票数据 - Integer voteNum = 0; - for (CaseExchangeVoteOptionDto dto : g.getCaseExchangeVote().getCaseExchangeVoteOption()){ - voteNum += dto.getVoteNum(); - } - - for (CaseExchangeVoteOptionDto dto : g.getCaseExchangeVote().getCaseExchangeVoteOption()){ - Integer proportion = (int) (Math.round((double) dto.getVoteNum() / voteNum * 10000) / 100.0); - dto.setProportion(proportion); - } return Response.success(g); }