huanghongfa
2020-12-10 f76377ffd111434d90c5aaf5507cd33a982d4aa6
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActMicroWishServiceImpl.java
@@ -1,19 +1,22 @@
package com.panzhihua.service_community.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.ComActActivityVO;
import com.panzhihua.common.model.vos.community.ComActMicroWishVO;
import com.panzhihua.service_community.dao.ComActMicroWishDAO;
import com.panzhihua.service_community.dao.ComActMicroWishUserDAO;
import com.panzhihua.service_community.model.dos.ComActMicroWishDO;
import com.panzhihua.service_community.model.dos.ComActMicroWishUserDO;
import com.panzhihua.service_community.service.ComActMicroWishService;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -25,6 +28,8 @@
public class ComActMicroWishServiceImpl extends ServiceImpl<ComActMicroWishDAO, ComActMicroWishDO> implements ComActMicroWishService {
    @Resource
    private ComActMicroWishDAO comActMicroWishDAO;
    @Resource
    private ComActMicroWishUserDAO comActMicroWishUserDAO;
    /**
     * 分页查询微心愿
@@ -34,6 +39,7 @@
     */
    @Override
    public R pageMicroWish(ComActMicroWishVO comActMicroWishVO) {
        Long userId = comActMicroWishVO.getResponsibleId();
        Page page = new Page<>();
        Long pageNum = comActMicroWishVO.getPageNum();
        Long pageSize = comActMicroWishVO.getPageSize();
@@ -46,6 +52,19 @@
        page.setSize(pageSize);
        page.setCurrent(pageNum);
        IPage<ComActMicroWishVO> iPage = comActMicroWishDAO.pageMicroWish(page, comActMicroWishVO);
        List<ComActMicroWishVO> records = iPage.getRecords();
        if (!ObjectUtils.isEmpty(records)) {
            records.forEach(comActMicroWishVO1 -> {
                Long id = comActMicroWishVO1.getId();
                ComActMicroWishUserDO comActMicroWishUserDO = comActMicroWishUserDAO.selectOne(new QueryWrapper<ComActMicroWishUserDO>().lambda().eq(ComActMicroWishUserDO::getMicroWishId, id).eq(ComActMicroWishUserDO::getUserId, userId));
                if (ObjectUtils.isEmpty(comActMicroWishUserDO)) {
                    comActMicroWishVO1.setHaveGiveThumbsUp(0);
                } else {
                    comActMicroWishVO1.setHaveGiveThumbsUp(1);
                }
            });
            iPage.setRecords(records);
        }
        return R.ok(iPage);
    }
@@ -53,13 +72,20 @@
     * 心愿详情
     *
     * @param id 查询主键
     * @param userId 登录用户id
     * @return 心愿内容
     */
    @Override
    public R detailMicroWish(Long id) {
    public R detailMicroWish(Long id, Long userId) {
        ComActMicroWishVO comActMicroWishVO = comActMicroWishDAO.detailMicroWish(id);
        if (ObjectUtils.isEmpty(comActMicroWishVO)) {
            return R.fail();
        }
        ComActMicroWishUserDO comActMicroWishUserDO = comActMicroWishUserDAO.selectOne(new QueryWrapper<ComActMicroWishUserDO>().lambda().eq(ComActMicroWishUserDO::getUserId, userId).eq(ComActMicroWishUserDO::getMicroWishId, id));
        if (ObjectUtils.isEmpty(comActMicroWishUserDO)) {
            comActMicroWishVO.setHaveGiveThumbsUp(0);
        }else {
            comActMicroWishVO.setHaveGiveThumbsUp(1);
        }
        return R.ok(comActMicroWishVO);
    }
@@ -86,29 +112,29 @@
//        1 审核通过 2驳回 3分配人员 4发起活动 5反馈
        switch (type){
            case 1:
                comActMicroWishDO.setEvaluateAt(new Date());
                comActMicroWishDO.setExamineAt(new Date());
                comActMicroWishDO.setStatus(2);//待分配
                break;
            case 2:
                comActMicroWishDO.setEvaluateAt(new Date());
                comActMicroWishDO.setExamineAt(new Date());
                comActMicroWishDO.setRejectReason(rejectReason);
                comActMicroWishDO.setStatus(4);//驳回
                break;
            case 3:
                comActMicroWishDO.setEvaluateAt(new Date());
                comActMicroWishDO.setDistributionAt(new Date());
                comActMicroWishDO.setResponsibleId(responsibleId);
                comActMicroWishDO.setStatus(3);//进行中
                comActMicroWishDO.setForm(1);
                break;
            case 4:
                comActMicroWishDO.setEvaluateAt(new Date());
                comActMicroWishDO.setDistributionAt(new Date());
                comActMicroWishDO.setResponsibleId(responsibleId);
                comActMicroWishDO.setStatus(3);//进行中
                comActMicroWishDO.setForm(2);
//                todo 给负责人增加一个待办事件
                break;
            case 5:
                comActMicroWishDO.setEvaluateAt(new Date());
                comActMicroWishDO.setFeedbackAt(new Date());
                comActMicroWishDO.setStatus(5);//待确认
                comActMicroWishDO.setFeedback(feedback);
                comActMicroWishDO.setFeedbackPhotoPathList(feedbackPhotoPathList);
@@ -122,4 +148,42 @@
        }
        return R.fail();
    }
    /**
     * 点赞/取消点赞微心愿
     *
     * @param comActMicroWishVO 操作参数
     * @return 操作结果
     */
    @Override
    public R comActMicroWishVO(ComActMicroWishVO comActMicroWishVO) {
        Integer haveGiveThumbsUp = comActMicroWishVO.getHaveGiveThumbsUp();
        Long userId = comActMicroWishVO.getSponsorId();
        Long microWishId = comActMicroWishVO.getId();
        ComActMicroWishUserDO comActMicroWishUserDO = comActMicroWishUserDAO.selectOne(new QueryWrapper<ComActMicroWishUserDO>().lambda().eq(ComActMicroWishUserDO::getMicroWishId, microWishId).eq(ComActMicroWishUserDO::getUserId, userId));
        boolean empty = ObjectUtils.isEmpty(comActMicroWishUserDO);
        int num=0;
        if (haveGiveThumbsUp.intValue()==1) {
            if (empty) {
                ComActMicroWishUserDO comActMicroWishUserDO1=new ComActMicroWishUserDO();
                comActMicroWishUserDO1.setMicroWishId(microWishId);
                comActMicroWishUserDO1.setUserId(userId);
                num=comActMicroWishUserDAO.insert(comActMicroWishUserDO1);
            }else{
                return R.ok();
            }
        }else {
            if (empty) {
                return R.ok();
            } else {
                num= comActMicroWishUserDAO.deleteById(comActMicroWishUserDO.getId());
            }
        }
        if (num>0) {
            return R.ok();
        }
        return R.fail();
    }
}