| | |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import java.util.stream.Collectors; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.ComActActEvaluateVO; |
| | | import com.panzhihua.common.model.vos.community.MyActivityEvaluateVO; |
| | | import com.panzhihua.service_community.dao.ComActActEvaluateDAO; |
| | | import com.panzhihua.service_community.dao.ComActActRegistDAO; |
| | | import com.panzhihua.service_community.dao.ComActActSignDAO; |
| | |
| | | //需要签到类型 |
| | | int registCount = comActActRegistDAO.selectCount(new QueryWrapper<ComActActRegistDO>() |
| | | .lambda().eq(ComActActRegistDO::getUserId, userId).eq(ComActActRegistDO::getActivityId, activityId)); |
| | | if (registCount <= 0) { |
| | | int evaluateCount = this.baseMapper.selectCount(new QueryWrapper<ComActActEvaluateDO>().lambda() |
| | | .eq(ComActActEvaluateDO::getUserId, userId).eq(ComActActEvaluateDO::getActivityId, activityId)); |
| | | if (registCount <= evaluateCount) { |
| | | //未签到,不能评价 |
| | | return R.fail("未签到,不能评价"); |
| | | } |
| | |
| | | public R listEvaluate(Long userId) { |
| | | List<ComActActEvaluateDO> comActActEvaluateDOList = this.baseMapper.selectList(new QueryWrapper<ComActActEvaluateDO>() |
| | | .lambda().eq(ComActActEvaluateDO::getUserId, userId)); |
| | | ArrayList<ComActActEvaluateVO> comActActEvaluateVOS = new ArrayList<>(); |
| | | List<ComActActEvaluateVO> comActActEvaluateVOS = new ArrayList<>(); |
| | | if (!ObjectUtils.isEmpty(comActActEvaluateDOList)) { |
| | | comActActEvaluateDOList.forEach(comActActEvaluateDO -> { |
| | | ComActActEvaluateVO comActActEvaluateVO = new ComActActEvaluateVO(); |
| | |
| | | } |
| | | return R.ok(comActActEvaluateVOS); |
| | | } |
| | | |
| | | /** |
| | | * 我的评价 |
| | | * @param userId |
| | | * @param activityId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public R listMyActivityEvaluate(Long userId, Long activityId) { |
| | | ComActActivityDO comActActivityDO = comActActivityDAO.selectById(activityId); |
| | | if (isNull(comActActivityDO)) { |
| | | return R.fail("活动不存在"); |
| | | } |
| | | List<ComActActEvaluateDO> comActActEvaluateDOList = this.baseMapper.selectList(new QueryWrapper<ComActActEvaluateDO>() |
| | | .lambda().eq(ComActActEvaluateDO::getUserId, userId).eq(ComActActEvaluateDO::getActivityId, activityId)); |
| | | List<ComActActEvaluateVO> comActActEvaluateVOS = new ArrayList<>(); |
| | | if (!ObjectUtils.isEmpty(comActActEvaluateDOList)) { |
| | | comActActEvaluateDOList.forEach(comActActEvaluateDO -> { |
| | | ComActActEvaluateVO comActActEvaluateVO = new ComActActEvaluateVO(); |
| | | BeanUtils.copyProperties(comActActEvaluateDO, comActActEvaluateVO); |
| | | comActActEvaluateVOS.add(comActActEvaluateVO); |
| | | }); |
| | | } |
| | | int registCount = comActActRegistDAO.selectCount(new QueryWrapper<ComActActRegistDO>() |
| | | .lambda().eq(ComActActRegistDO::getActivityId, activityId).eq(ComActActRegistDO::getUserId, userId)); |
| | | |
| | | MyActivityEvaluateVO evaluateVO = new MyActivityEvaluateVO(); |
| | | evaluateVO.setMyEvaluateList(comActActEvaluateVOS); |
| | | boolean needDisplay = registCount > comActActEvaluateVOS.size() && |
| | | new Date().before(DateUtils.addDays(comActActivityDO.getEndAt(), 3)); |
| | | evaluateVO.setIsDisplay(needDisplay ? 1 : 0); |
| | | return R.ok(evaluateVO); |
| | | } |
| | | } |