From 85ee847ebfe6dd7e12fb417c99c45561cbd9632b Mon Sep 17 00:00:00 2001 From: puhanshu <a9236326> Date: 星期一, 13 九月 2021 17:18:02 +0800 Subject: [PATCH] 修复签到/评价未在正确的时间内进行的问题 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActEvaluateServiceImpl.java | 34 +++++++++++++++++++++++++++++++--- 1 files changed, 31 insertions(+), 3 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActEvaluateServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActEvaluateServiceImpl.java index 4b4c523..a6c2f48 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActEvaluateServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActEvaluateServiceImpl.java @@ -1,5 +1,8 @@ package com.panzhihua.service_community.service.impl; +import static java.util.Objects.isNull; +import static java.util.Objects.nonNull; + import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -52,9 +55,33 @@ */ @Override public R activityEvaluate(ComActActEvaluateVO comActActEvaluateVO) { - ComActActEvaluateDO currentUserEvaluateForThisActivity = this.baseMapper.selectOne(new QueryWrapper<ComActActEvaluateDO>().lambda() - .eq(ComActActEvaluateDO::getActivityId, comActActEvaluateVO.getActivityId()) - .eq(ComActActEvaluateDO::getUserId, comActActEvaluateVO.getUserId())); + Long activityId = comActActEvaluateVO.getActivityId(); + Long userId = comActActEvaluateVO.getUserId(); + if (isNull(activityId)) { + return R.fail("参数有误"); + } + ComActActivityDO comActActivityDO = comActActivityDAO.selectById(activityId); + if (isNull(comActActivityDO)) { + return R.fail("活动不存在"); + } + Date beginAt = comActActivityDO.getBeginAt(); + Date nowDate = new Date(); + Integer isQrCode = comActActivityDO.getIsQrCode(); + if (nonNull(isQrCode) && isQrCode.equals(1)) { + //需要签到类型 + int evaluateCount = this.baseMapper.selectCount(new QueryWrapper<ComActActEvaluateDO>() + .lambda().eq(ComActActEvaluateDO::getUserId, userId).eq(ComActActEvaluateDO::getActivityId, activityId)); + if (evaluateCount <= 0) { + //未签到,不能评价 + return R.fail("未签到,不能评价"); + } + } else { + if (nowDate.before(beginAt)) { + return R.fail("活动还未开始,暂不支持评价"); + } + } + ComActActEvaluateDO currentUserEvaluateForThisActivity = this.baseMapper.selectOne(new QueryWrapper<ComActActEvaluateDO>() + .lambda().eq(ComActActEvaluateDO::getActivityId, activityId).eq(ComActActEvaluateDO::getUserId, userId)); if (Objects.nonNull(currentUserEvaluateForThisActivity)) { return R.fail("该用户已评论过了,请勿重复评论"); } @@ -90,6 +117,7 @@ comActActEvaluateDO.setUserId(comActActSignDO.getUserId()); comActActEvaluateDO.setCreateAt(new Date()); comActActEvaluateDO.setStarLevel(5); + comActActEvaluateDO.setEvaluateContent("系统默认好评!"); return comActActEvaluateDO; }).collect(Collectors.toList()); boolean result = this.saveBatch(comActActEvaluateDOList); -- Gitblit v1.7.1