From 7fa292ef97ba73d89e02a15da4c35a8a32de1a92 Mon Sep 17 00:00:00 2001
From: huanghongfa <huanghongfa123456>
Date: 星期一, 13 九月 2021 16:47:07 +0800
Subject: [PATCH] 修改活动报名bug

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActMicroWishServiceImpl.java |  129 ++++++++++++++++++++++++++++++++++++------
 1 files changed, 110 insertions(+), 19 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActMicroWishServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActMicroWishServiceImpl.java
index 493fd17..04c1763 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActMicroWishServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActMicroWishServiceImpl.java
@@ -22,6 +22,7 @@
 import com.panzhihua.service_community.model.dos.ComActMicroWishFeedbackDO;
 import com.panzhihua.service_community.model.dos.ComActMicroWishOperationRecordDO;
 import com.panzhihua.service_community.model.dos.ComActMicroWishUserDO;
+import com.panzhihua.service_community.service.ComActMicroWishOperationRecordService;
 import com.panzhihua.service_community.service.ComActMicroWishService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
@@ -50,6 +51,8 @@
     private ComActMicroWishFeedbackMapper comActMicroWishFeedbackMapper;
     @Resource
     private ComActMicroWishOperationRecordMapper comActMicroWishOperationRecordMapper;
+    @Resource
+    private ComActMicroWishOperationRecordService wishOperationRecordService;
     /**
      * 分页查询微心愿
      *
@@ -72,6 +75,31 @@
         page.setCurrent(pageNum);
         IPage<ComActMicroWishVO> iPage = comActMicroWishDAO.pageMicroWish(page, comActMicroWishVO);
 
+        List<ComActMicroWishVO> records = iPage.getRecords();
+        if (!ObjectUtils.isEmpty(records)) {
+            records.forEach(comActMicroWishVO1 -> {
+                if(userId != null){
+                    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);
+                    }
+                }
+                comActMicroWishVO1.setSponsorPhone(SensitiveUtil.desensitizedPhoneNumber(comActMicroWishVO1.getSponsorPhone()));
+            });
+            iPage.setRecords(records);
+        }
+        return R.ok(iPage);
+    }
+
+    @Override
+    public R pageMicroWishApplets(ComActMicroWishVO comActMicroWishVO) {
+        Long userId = comActMicroWishVO.getResponsibleId();
+        IPage<ComActMicroWishVO> iPage = comActMicroWishDAO.pageMicroWishApplets(new Page(comActMicroWishVO.getPageNum()
+                ,comActMicroWishVO.getPageSize()), comActMicroWishVO);
         List<ComActMicroWishVO> records = iPage.getRecords();
         if (!ObjectUtils.isEmpty(records)) {
             records.forEach(comActMicroWishVO1 -> {
@@ -121,16 +149,14 @@
             }
         }
         //查询反馈列表
-        if(comActMicroWishVO.getStatus()==5||comActMicroWishVO.getStatus()==6){
-            List<ComActMicroWishFeedbackVO> list=comActMicroWishFeedbackMapper.selectByWishId(id);
-            if(!list.isEmpty()){
-                comActMicroWishVO.setFeedbackVOList(list);
-            }
+        List<ComActMicroWishFeedbackVO> feedList=comActMicroWishFeedbackMapper.selectByWishId(id);
+        if(!feedList.isEmpty()){
+            comActMicroWishVO.setFeedbackVOList(feedList);
         }
         //查询操作记录
-        List<ComActMicroWishOperationRecordVO> list=comActMicroWishOperationRecordMapper.getByWishId(id);
-        if(!list.isEmpty()){
-            comActMicroWishVO.setOperationRecordVOList(list);
+        List<ComActMicroWishOperationRecordVO> operationList=comActMicroWishOperationRecordMapper.getByWishId(id);
+        if(!operationList.isEmpty()){
+            comActMicroWishVO.setOperationRecordVOList(operationList);
         }
         comActMicroWishVO.setSponsorPhone(SensitiveUtil.desensitizedPhoneNumber(comActMicroWishVO.getSponsorPhone()));
         //查询同类型id数组
@@ -158,40 +184,69 @@
         String feedbackPhotoPathList = comActMicroWishVO.getFeedbackPhotoPathList();
         ComActMicroWishDO comActMicroWishDO=new ComActMicroWishDO();
         comActMicroWishDO.setId(id);
+        Boolean isUpdate = false;
         Date date = new Date();
         ComActMicroWishOperationRecordDO comActMicroWishOperationRecordDO=new ComActMicroWishOperationRecordDO();
         comActMicroWishOperationRecordDO.setCreateTime(date);
         comActMicroWishOperationRecordDO.setUserId(comActMicroWishVO.getUserId());
         comActMicroWishOperationRecordDO.setWishId(comActMicroWishVO.getId());
+        ComActMicroWishDO microWishDO = this.baseMapper.selectById(id);
+        if(microWishDO == null){
+            return R.fail("未查询到该微心愿记录");
+        }
 //        1 审核通过 2驳回 3分配人员 4发起活动 5反馈
         switch (type){
             case 1:
+                isUpdate = true;
+                if(!microWishDO.getStatus().equals(ComActMicroWishDO.status.dsh)){
+                    return R.fail("该微心愿已审核,不可重复审核");
+                }
                 comActMicroWishDO.setExamineAt(date);
                 comActMicroWishDO.setAimNum(comActMicroWishVO.getAimNum());
                 comActMicroWishDO.setStatus(7);//集心中
                 comActMicroWishOperationRecordDO.setType(ComActMicroWishOperationRecordDO.type.sh);
                 comActMicroWishOperationRecordDO.setContent("审核通过");
+                comActMicroWishOperationRecordDO.setRemark("微心愿审核通过");
                 comActMicroWishOperationRecordMapper.insert(comActMicroWishOperationRecordDO);
                 break;
             case 2:
+                isUpdate = true;
+                if(!microWishDO.getStatus().equals(ComActMicroWishDO.status.dsh)){
+                    return R.fail("该微心愿已审核,不可重复审核");
+                }
                 comActMicroWishDO.setExamineAt(date);
                 comActMicroWishDO.setRejectReason(rejectReason);
                 comActMicroWishDO.setStatus(4);//驳回
                 comActMicroWishOperationRecordDO.setType(ComActMicroWishOperationRecordDO.type.bh);
-                comActMicroWishOperationRecordDO.setContent("审核未通过");
+                comActMicroWishOperationRecordDO.setContent(rejectReason);
+                comActMicroWishOperationRecordDO.setRemark("微心愿审核未通过");
                 comActMicroWishOperationRecordMapper.insert(comActMicroWishOperationRecordDO);
                 break;
             case 3:
+                isUpdate = true;
                 comActMicroWishDO.setDistributionAt(date);
                 comActMicroWishDO.setResponsibleId(responsibleId);
                 comActMicroWishDO.setStatus(3);//进行中
                 comActMicroWishDO.setForm(1);
+                //添加操作记录
+                comActMicroWishOperationRecordDO.setType(ComActMicroWishOperationRecordDO.type.fp);
+                comActMicroWishOperationRecordDO.setContent("分配心愿");
+                comActMicroWishOperationRecordDO.setRemark("分配心愿");
+                comActMicroWishOperationRecordDO.setUserId(responsibleId);
+                comActMicroWishOperationRecordMapper.insert(comActMicroWishOperationRecordDO);
                 break;
             case 4:
+                isUpdate = true;
                 comActMicroWishDO.setDistributionAt(date);
                 comActMicroWishDO.setResponsibleId(responsibleId);
                 comActMicroWishDO.setStatus(3);//待确认
                 comActMicroWishDO.setForm(2);
+                //添加操作记录
+                comActMicroWishOperationRecordDO.setType(ComActMicroWishOperationRecordDO.type.fp);
+                comActMicroWishOperationRecordDO.setContent("分配心愿");
+                comActMicroWishOperationRecordDO.setRemark("分配心愿");
+                comActMicroWishOperationRecordDO.setUserId(responsibleId);
+                comActMicroWishOperationRecordMapper.insert(comActMicroWishOperationRecordDO);
                 break;
             case 5:
                 if(comActMicroWishVO.getFeedback().length() > 200){
@@ -204,19 +259,40 @@
                 comActMicroWishFeedbackDO.setImgUrl(feedbackPhotoPathList);
                 comActMicroWishFeedbackDO.setMicroId(comActMicroWishVO.getId());
                 comActMicroWishFeedbackDO.setUserId(comActMicroWishVO.getUserId());
-                if(comActMicroWishVO.getStatus().equals(ComActMicroWishDO.status.ywc)){
-                    comActMicroWishDO.setStatus(comActMicroWishVO.getStatus());
+                if(comActMicroWishVO.getStatus() != null && comActMicroWishVO.getStatus().equals(ComActMicroWishDO.status.dqr)){
+                    isUpdate = true;
+                    comActMicroWishDO.setStatus(ComActMicroWishDO.status.dqr);
+                    comActMicroWishDO.setFinishAt(date);
+                    comActMicroWishDO.setFinish(feedback);
+                    comActMicroWishDO.setFinishPhotoPathList(feedbackPhotoPathList);
+
+                    //添加操作记录
+                    comActMicroWishOperationRecordDO.setType(ComActMicroWishOperationRecordDO.type.fk);
+                    comActMicroWishOperationRecordDO.setContent(feedback);
+                    comActMicroWishOperationRecordDO.setRemark("心愿已完成");
+                    comActMicroWishOperationRecordDO.setImgUrl(feedbackPhotoPathList);
+                    comActMicroWishOperationRecordMapper.insert(comActMicroWishOperationRecordDO);
+                }else{
+                    //添加操作记录
+                    comActMicroWishOperationRecordDO.setType(ComActMicroWishOperationRecordDO.type.fk);
+                    comActMicroWishOperationRecordDO.setContent(feedback);
+                    comActMicroWishOperationRecordDO.setRemark("社区反馈");
+                    comActMicroWishOperationRecordDO.setImgUrl(feedbackPhotoPathList);
+                    comActMicroWishOperationRecordMapper.insert(comActMicroWishOperationRecordDO);
                 }
-                else {
-                    comActMicroWishDO.setStatus(5);
-                }
+//                else {
+//                    comActMicroWishDO.setStatus(3);
+//                }
                 comActMicroWishFeedbackMapper.insert(comActMicroWishFeedbackDO);
-                break;
             default:
                 break;
         }
-        int update = comActMicroWishDAO.updateById(comActMicroWishDO);
-        if (update>0) {
+        if(isUpdate){
+            int update = comActMicroWishDAO.updateById(comActMicroWishDO);
+            if (update>0) {
+                return R.ok();
+            }
+        }else{
             return R.ok();
         }
         return R.fail();
@@ -254,6 +330,10 @@
                         comActMicroWishDO.setStatus(ComActMicroWishDO.status.dfp);
                         comActMicroWishDO.setFeedbackAt(DateUtil.date());
                         comActMicroWishDAO.updateById(comActMicroWishDO);
+
+                        //完成集心添加操作记录
+                        wishOperationRecordService.addOperationRecord("完成集心",comActMicroWishDO.getSponsorId()
+                                ,comActMicroWishDO.getId(),ComActMicroWishOperationRecordDO.type.jx,"用户完成集心",null);
                     }
                     return R.ok();
                 }
@@ -275,8 +355,8 @@
             return R.fail("心愿不存在");
         }
         Integer status = comActMicroWishDO1.getStatus();
-        if (status.intValue()!=5) {
-            return R.fail("心愿状态不是待确认");
+        if (!status.equals(ComActMicroWishDO.status.dqr)) {
+            return R.fail("心愿状态不是待确认状态");
         }
         ComActMicroWishDO comActMicroWishDO=new ComActMicroWishDO();
         comActMicroWishDO.setId(comActMicroWishVO.getId());
@@ -286,6 +366,9 @@
         comActMicroWishDO.setEvaluate(comActMicroWishVO.getEvaluate());
         int update = comActMicroWishDAO.updateById(comActMicroWishDO);
         if (update>0) {
+            //用户确认心愿添加操作记录
+            wishOperationRecordService.addOperationRecord(comActMicroWishVO.getEvaluate(),comActMicroWishDO1.getSponsorId()
+                    ,comActMicroWishDO1.getId(),ComActMicroWishOperationRecordDO.type.wc,"用户已确认",null);
             return R.ok();
         }
         return R.fail();
@@ -317,6 +400,14 @@
 
     @Override
     public R timedTaskActMicroWishAll() {
+
+        //微心愿自动确认前需要添加操作记录
+        List<Long> wishIds = comActMicroWishDAO.getWishAutoConfirmIds();
+        wishIds.forEach(wishId -> {
+            //需要添加操作记录
+            wishOperationRecordService.addOperationRecord("系统自动确认微心愿",null
+                    ,wishId, ComActMicroWishOperationRecordDO.type.zd,"系统自动确认微心愿",null);
+        });
         int num=comActMicroWishDAO.updateStatusAutoConfirm();
         log.info("定时任务--修改待自动确认微心愿状态数量【{}】",num);
         return R.ok();

--
Gitblit v1.7.1