From 02f18587bd8860b305e2c688e20465be166bb48c Mon Sep 17 00:00:00 2001
From: huanghongfa <huanghongfa123456>
Date: 星期四, 22 七月 2021 15:14:03 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/test' into test

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java |  287 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 277 insertions(+), 10 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java
index dac6d40..6f50b96 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java
@@ -4,18 +4,27 @@
 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.dtos.community.ComActEasyPhotoCommentDTO;
+import com.panzhihua.common.model.dtos.community.PageComActEasyPhotoCommentDTO;
+import com.panzhihua.common.model.dtos.community.ComActEasyPhotoCommentUserDTO;
 import com.panzhihua.common.model.vos.R;
+import com.panzhihua.common.model.vos.community.ComActEasyPhotoCommentVO;
 import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO;
-import com.panzhihua.service_community.dao.ComActEasyPhotoDAO;
-import com.panzhihua.service_community.dao.ComActEasyPhotoUserDAO;
-import com.panzhihua.service_community.model.dos.ComActEasyPhotoDO;
-import com.panzhihua.service_community.model.dos.ComActEasyPhotoUserDO;
+import com.panzhihua.common.model.vos.community.TodoEventsVO;
+import com.panzhihua.common.utlis.DateUtils;
+import com.panzhihua.common.utlis.SensitiveUtil;
+import com.panzhihua.common.utlis.StringUtils;
+import com.panzhihua.service_community.dao.*;
+import com.panzhihua.service_community.model.dos.*;
 import com.panzhihua.service_community.service.ComActEasyPhotoService;
+import com.panzhihua.service_community.service.ComActUserWalletService;
 import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.util.ObjectUtils;
 
 import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -30,6 +39,14 @@
     private ComActEasyPhotoDAO comActEasyPhotoDAO;
     @Resource
     private ComActEasyPhotoUserDAO comActEasyPhotoUserDAO;
+    @Resource
+    private ComActEasyPhotoCommentDAO comActEasyPhotoCommentDAO ;
+    @Resource
+    private ComActEasyPhotoCommentUserDAO comActEasyPhotoCommentUserDAO ;
+    @Resource
+    private ComActEasyPhotoActivityMapper comActEasyPhotoActivityMapper;
+    @Resource
+    private ComActUserWalletService comActUserWalletService;
     /**
      * 分页查询随手拍
      *
@@ -41,10 +58,11 @@
         Page page = new Page<>();
         Long pageNum = comActEasyPhotoVO.getPageNum();
         Long pageSize = comActEasyPhotoVO.getPageSize();
-        if (ObjectUtils.isEmpty(pageNum)||0==pageNum) {
+        Long userId = comActEasyPhotoVO.getLogInUserId();
+        if (null==pageNum||0==pageNum) {
             pageNum = 1l;
         }
-        if (ObjectUtils.isEmpty(pageSize)||0==pageSize) {
+        if (null==pageSize||0==pageSize) {
             pageSize = 10l;
         }
         page.setSize(pageSize);
@@ -54,13 +72,13 @@
         if (!ObjectUtils.isEmpty(records)) {
             records.forEach(comActEasyPhotoVO1 -> {
                 Long id = comActEasyPhotoVO1.getId();
-                Long sponsorId = comActEasyPhotoVO1.getSponsorId();
-                ComActEasyPhotoUserDO comActEasyPhotoUserDO = comActEasyPhotoUserDAO.selectOne(new QueryWrapper<ComActEasyPhotoUserDO>().lambda().eq(ComActEasyPhotoUserDO::getEasyPhotoId, id).eq(ComActEasyPhotoUserDO::getUserId, sponsorId));
+                ComActEasyPhotoUserDO comActEasyPhotoUserDO = comActEasyPhotoUserDAO.selectOne(new QueryWrapper<ComActEasyPhotoUserDO>().lambda().eq(ComActEasyPhotoUserDO::getEasyPhotoId, id).eq(ComActEasyPhotoUserDO::getUserId, userId));
                 if (ObjectUtils.isEmpty(comActEasyPhotoUserDO)) {
                     comActEasyPhotoVO1.setHaveGiveThumbsUp(0);
                 }else {
                     comActEasyPhotoVO1.setHaveGiveThumbsUp(1);
                 }
+                comActEasyPhotoVO1.setPhone(SensitiveUtil.desensitizedPhoneNumber(comActEasyPhotoVO1.getPhone()));
             });
             iPage.setRecords(records);
         }
@@ -77,14 +95,26 @@
     @Override
     public R detailEasyPhoto(Long id, Long userId) {
         ComActEasyPhotoVO comActEasyPhotoVO=comActEasyPhotoDAO.detailEasyPhoto(id);
-        if (ObjectUtils.isEmpty(comActEasyPhotoVO)) {
-            return R.fail();
+        Integer status = comActEasyPhotoVO.getStatus();
+        if (ObjectUtils.isEmpty(comActEasyPhotoVO)||null== status) {
+            return R.fail("随手拍不存在");
         }
         ComActEasyPhotoUserDO comActEasyPhotoUserDO = comActEasyPhotoUserDAO.selectOne(new QueryWrapper<ComActEasyPhotoUserDO>().lambda().eq(ComActEasyPhotoUserDO::getEasyPhotoId, id).eq(ComActEasyPhotoUserDO::getUserId, userId));
         if (ObjectUtils.isEmpty(comActEasyPhotoUserDO)) {
             comActEasyPhotoVO.setHaveGiveThumbsUp(0);
         } else {
             comActEasyPhotoVO.setHaveGiveThumbsUp(1);
+        }
+
+        if (status.intValue()==4) {
+            Date feedbackAt = comActEasyPhotoVO.getFeedbackAt();
+            if (null==feedbackAt) {
+                comActEasyPhotoVO.setFeedbackAt(comActEasyPhotoVO.getExamineAt());
+            }
+        }
+        comActEasyPhotoVO.setPhone(SensitiveUtil.desensitizedPhoneNumber(comActEasyPhotoVO.getPhone()));
+        if(comActEasyPhotoVO.getAddrRemark()==null){
+            comActEasyPhotoVO.setAddrRemark("");
         }
         return R.ok(comActEasyPhotoVO);
     }
@@ -99,6 +129,18 @@
     public R addEasyPhoto(ComActEasyPhotoVO comActEasyPhotoVO) {
         ComActEasyPhotoDO comActEasyPhotoDO=new ComActEasyPhotoDO();
         BeanUtils.copyProperties(comActEasyPhotoVO,comActEasyPhotoDO);
+        //查询是否在活动时间内
+        Date nowDate = DateUtils.getCurrentDate(DateUtils.ymdhms_format);
+        List<ComActEasyPhotoActivityDO> photoActivityDOS = comActEasyPhotoActivityMapper.selectList(
+                new QueryWrapper<ComActEasyPhotoActivityDO>().lambda().eq(ComActEasyPhotoActivityDO::getCommunityId,comActEasyPhotoVO.getCommunityId())
+                        .le(ComActEasyPhotoActivityDO::getActivityStartAt,nowDate).ge(ComActEasyPhotoActivityDO::getActivityEndAt,nowDate)
+                        .eq(ComActEasyPhotoActivityDO::getStatus,ComActEasyPhotoActivityDO.status.jxz));
+        if(!photoActivityDOS.isEmpty()){
+            ComActEasyPhotoActivityDO photoActivityDO = photoActivityDOS.get(0);
+            photoActivityDO.setCount(photoActivityDO.getCount() + 1);
+            comActEasyPhotoDO.setActivityId(photoActivityDO.getId());
+            comActEasyPhotoActivityMapper.updateById(photoActivityDO);
+        }
         int insert = comActEasyPhotoDAO.insert(comActEasyPhotoDO);
         if (insert>0) {
             return R.ok();
@@ -141,4 +183,229 @@
         }
         return R.fail();
     }
+
+    /**
+     * 审核反馈随手拍
+     *
+     * @param comActEasyPhotoVO 操作参数
+     * @return 操作结果
+     */
+    @Override
+    public R putEasypHotoStatus(ComActEasyPhotoVO comActEasyPhotoVO) {
+        Integer type = comActEasyPhotoVO.getType();
+//        操作类型 1审核通过 2驳回  3反馈
+        ComActEasyPhotoDO cmActEasyPhotoDO=new ComActEasyPhotoDO();
+        cmActEasyPhotoDO.setId(comActEasyPhotoVO.getId());
+        cmActEasyPhotoDO.setHandlerId(comActEasyPhotoVO.getUserId());
+//        cmActEasyPhotoDO.setActivityType(comActEasyPhotoVO.getActivityType());
+        Date date = new Date();
+        switch (type){
+            case 1:
+                cmActEasyPhotoDO = this.comActEasyPhotoDAO.selectById(comActEasyPhotoVO.getId());
+                if(!cmActEasyPhotoDO.getStatus().equals(ComActEasyPhotoDO.status.dsh)){
+                    return R.fail("该随手拍已审核,不可重复操作");
+                }
+                Integer isNeedFeedBack = comActEasyPhotoVO.getIsNeedFeedBack();
+                if (isNeedFeedBack==1) {
+                    cmActEasyPhotoDO.setStatus(2);//进行中
+                    cmActEasyPhotoDO.setIsNeedFeedBack(1);
+                }else{
+                    cmActEasyPhotoDO.setStatus(4);//已完成
+                }
+                cmActEasyPhotoDO.setExamineAt(date);
+                //审核通过判断随手拍是否有活动并计算用户收益
+                comActUserWalletService.examineAddMoney(comActEasyPhotoVO.getActivityType(),comActEasyPhotoVO.getId(),comActEasyPhotoVO.getUserId());
+                break;
+            case 2:
+                cmActEasyPhotoDO = this.comActEasyPhotoDAO.selectById(comActEasyPhotoVO.getId());
+                if(!cmActEasyPhotoDO.getStatus().equals(ComActEasyPhotoDO.status.dsh)){
+                    return R.fail("该随手拍已审核,不可重复操作");
+                }
+                cmActEasyPhotoDO.setStatus(3);//已驳回
+                cmActEasyPhotoDO.setExamineAt(date);
+                cmActEasyPhotoDO.setRejectReason(comActEasyPhotoVO.getRejectReason());
+                break;
+            case 3:
+                cmActEasyPhotoDO = this.comActEasyPhotoDAO.selectById(comActEasyPhotoVO.getId());
+                if(!cmActEasyPhotoDO.getStatus().equals(ComActEasyPhotoDO.status.dfk)){
+                    return R.fail("该随手拍不是待反馈状态,不可进行反馈");
+                }
+                cmActEasyPhotoDO.setHandleResult(comActEasyPhotoVO.getHandleResult());
+                cmActEasyPhotoDO.setHandlePhotoList(comActEasyPhotoVO.getHandlePhotoList());
+                cmActEasyPhotoDO.setStatus(4);//已完成
+                cmActEasyPhotoDO.setFeedbackAt(date);
+                break;
+            default:break;
+        }
+        int update = comActEasyPhotoDAO.updateById(cmActEasyPhotoDO);
+        if (update>0) {
+            return R.ok();
+        }
+        return R.fail();
+    }
+
+    /**
+     * 随手拍是否有待审核和带反馈的事件
+     *
+     * @param communityId 社区id
+     * @param userId      登录用户id
+     * @return 待处理事件集合
+     */
+    @Override
+    public List<TodoEventsVO> selectNeedToDo(Long communityId, Long userId) {
+        List<TodoEventsVO> todoEventsVOS=comActEasyPhotoDAO.selectNeedToDo(communityId,userId);
+        return todoEventsVOS;
+    }
+
+    /**
+     * 小程序分页查询随手拍
+     *
+     * @param comActEasyPhotoVO 查询参数
+     * @return 返回结果
+     */
+    @Override
+    public R pageEasyPhotoApplets(ComActEasyPhotoVO comActEasyPhotoVO) {
+        Page page = new Page<>();
+        Long pageNum = comActEasyPhotoVO.getPageNum();
+        Long pageSize = comActEasyPhotoVO.getPageSize();
+        Long userId = comActEasyPhotoVO.getLogInUserId();
+        if (null==pageNum||0==pageNum) {
+            pageNum = 1l;
+        }
+        if (null==pageSize||0==pageSize) {
+            pageSize = 10l;
+        }
+        page.setSize(pageSize);
+        page.setCurrent(pageNum);
+        IPage<ComActEasyPhotoVO> iPage = comActEasyPhotoDAO.pageEasyPhotoApplets(page, comActEasyPhotoVO);
+        List<ComActEasyPhotoVO> records = iPage.getRecords();
+        if (!ObjectUtils.isEmpty(records)) {
+            records.forEach(comActEasyPhotoVO1 -> {
+                Long id = comActEasyPhotoVO1.getId();
+                Integer status = comActEasyPhotoVO1.getStatus();
+                Date feedbackAt = comActEasyPhotoVO1.getFeedbackAt();
+                List<ComActEasyPhotoUserDO> comActEasyPhotoUserDO =
+                        comActEasyPhotoUserDAO.selectList(new QueryWrapper<ComActEasyPhotoUserDO>().lambda().eq(ComActEasyPhotoUserDO::getEasyPhotoId, id).eq(ComActEasyPhotoUserDO::getUserId, userId));
+                if (comActEasyPhotoUserDO==null||comActEasyPhotoUserDO.size()==0) {
+                    comActEasyPhotoVO1.setHaveGiveThumbsUp(0);
+                }else {
+                    comActEasyPhotoVO1.setHaveGiveThumbsUp(1);
+                }
+                if(status.intValue()==4&&null==feedbackAt){
+                    comActEasyPhotoVO1.setFeedbackAt(comActEasyPhotoVO1.getExamineAt());
+                }
+            });
+            iPage.setRecords(records);
+        }
+        return R.ok(iPage);
+    }
+
+    /**
+     * 随手拍评论分页查询
+     *
+     * @param pageComActEasyPhotoCommentDTO 查询参数
+     * @return 查询结果
+     */
+    @Override
+    public R pageComActEasyPhotoComment(PageComActEasyPhotoCommentDTO pageComActEasyPhotoCommentDTO) {
+        Page page = new Page<>();
+        Long pageNum = pageComActEasyPhotoCommentDTO.getPageNum();
+        Long pageSize = pageComActEasyPhotoCommentDTO.getPageSize();
+        if (null==pageNum||0==pageNum) {
+            pageNum = 1l;
+        }
+        if (null==pageSize||0==pageSize) {
+            pageSize = 10l;
+        }
+        page.setSize(pageSize);
+        page.setCurrent(pageNum);
+        IPage<ComActEasyPhotoCommentVO> iPage = comActEasyPhotoCommentDAO.pageComActEasyPhotoComment(page, pageComActEasyPhotoCommentDTO);
+        if(!iPage.getRecords().isEmpty()){
+            for (ComActEasyPhotoCommentVO commentVO:iPage.getRecords()) {
+                if(StringUtils.isEmpty(commentVO.getName())){
+                    commentVO.setName(commentVO.getNickName());
+                }
+            }
+        }
+        return R.ok(iPage);
+    }
+
+    /**
+     * 评论点赞/取消点赞
+     *
+     * @param comActEasyPhotoCommentUserDTO 操作
+     * @return 操作结果
+     */
+    @Override
+    public R commentSign(ComActEasyPhotoCommentUserDTO comActEasyPhotoCommentUserDTO) {
+        Long id = comActEasyPhotoCommentUserDTO.getId();
+        if (null==id||0==id) {
+            return R.fail("主键不能为空");
+        }
+        ComActEasyPhotoCommentDO comActEasyPhotoCommentDO = comActEasyPhotoCommentDAO.selectById(id);
+        if (ObjectUtils.isEmpty(comActEasyPhotoCommentDO)) {
+            return R.fail("评论不存在");
+        }
+        Integer type = comActEasyPhotoCommentUserDTO.getType();
+        if (null==type||type.intValue()>2||type.intValue()==0) {
+            return R.fail("操作类型错误");
+        }
+        Long userId = comActEasyPhotoCommentUserDTO.getUserId();
+        int num=0;
+        if (type.intValue()==1) {
+            ComActEasyPhotoCommentUserDO comActEasyPhotoCommentUserDO=new ComActEasyPhotoCommentUserDO();
+            comActEasyPhotoCommentUserDO.setUserId(userId);
+            comActEasyPhotoCommentUserDO.setEasyPhotoCommentId(id);
+            ComActEasyPhotoCommentUserDO actEasyPhotoCommentUserDO = comActEasyPhotoCommentUserDAO.selectOne(new QueryWrapper<ComActEasyPhotoCommentUserDO>().lambda().eq(ComActEasyPhotoCommentUserDO::getUserId, userId).eq(ComActEasyPhotoCommentUserDO::getEasyPhotoCommentId, id));
+            if (!ObjectUtils.isEmpty(actEasyPhotoCommentUserDO)) {
+                num=1;
+            }else{
+                num=comActEasyPhotoCommentUserDAO.insert(comActEasyPhotoCommentUserDO);
+            }
+        }else{
+            num=comActEasyPhotoCommentUserDAO.delete(new QueryWrapper<ComActEasyPhotoCommentUserDO>().lambda().eq(ComActEasyPhotoCommentUserDO::getUserId,userId).eq(ComActEasyPhotoCommentUserDO::getEasyPhotoCommentId,id));
+        }
+        if (num>0) {
+            return R.ok();
+        } else {
+            return R.fail();
+        }
+
+    }
+
+    /**
+     * 随手拍--评论--新增评论
+     *
+     * @param comActEasyPhotoCommentDTO 新增内容
+     * @return 新增结果
+     */
+    @Override
+    public R addComActEasyPhotoComment(ComActEasyPhotoCommentDTO comActEasyPhotoCommentDTO) {
+        Long id = comActEasyPhotoCommentDTO.getId();
+        ComActEasyPhotoDO comActEasyPhotoDO = comActEasyPhotoDAO.selectById(id);
+        if (ObjectUtils.isEmpty(comActEasyPhotoDO)) {
+            return R.fail("随手拍不存在");
+        }
+        ComActEasyPhotoCommentDO comActEasyPhotoCommentDO=new ComActEasyPhotoCommentDO();
+        comActEasyPhotoCommentDO.setComment(comActEasyPhotoCommentDTO.getComment());
+        comActEasyPhotoCommentDO.setUserId(comActEasyPhotoCommentDTO.getUserId());
+        comActEasyPhotoCommentDO.setEasyPhotoId(id);
+        int insert = comActEasyPhotoCommentDAO.insert(comActEasyPhotoCommentDO);
+        if (insert>0) {
+            return R.ok();
+        }
+        return R.fail();
+    }
+
+    /**
+     * 社区随手拍列表统计
+     * @param communityId   社区id
+     * @return  统计结果
+     */
+    @Override
+    public R easyPhotoStatistics(Long communityId){
+        return R.ok(this.baseMapper.getEasyPhotoStatistics(communityId));
+    }
+
+
 }

--
Gitblit v1.7.1