puhanshu
2021-10-22 f8b116ce4c5edea7e33c31347d2065ce33fa5f53
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActEvaluateServiceImpl.java
@@ -6,7 +6,6 @@
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;
@@ -21,6 +20,7 @@
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;
@@ -75,7 +75,9 @@
            //需要签到类型
            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("未签到,不能评价");
            }
@@ -145,7 +147,7 @@
    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();
@@ -155,4 +157,37 @@
        }
        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);
    }
}