罗元桥
2021-09-16 5dc04f3291c00d66f8733a49896612ea1e3b31c5
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java
@@ -151,6 +151,7 @@
                        subSelectionDO.setCreateBy(userId);
                        subSelectionDO.setType(subSelect.getType());
                        subSelectionDO.setKey(subSelect.getKey());
                        subSelectionDO.setUrl(subSelect.getUrl());
                        subSelectionList.add(subSelectionDO);
                    }
                }
@@ -191,6 +192,9 @@
                }
                if (vo.getAdverPositionApplication().equals(ComActQuestnaireDO.isOk.yes)) {
                    sb.append("首页应用,");
                }
                if (vo.getIsCover().equals(ComActQuestnaireDO.isOk.yes)) {
                    sb.append("设置封面,");
                }
                String advertPosition = sb.toString();
                if (advertPosition.length() > 0) {
@@ -477,23 +481,19 @@
            new QueryWrapper<ComActQuestnaireSubDO>().lambda().eq(ComActQuestnaireSubDO::getQueId, questId));
        List<ComActQuestnaireSubVO> listSubVo = new ArrayList<>();
        list.forEach(subDo -> {
            ComActQuestnaireSubVO comActQuestnaireSubVO = new ComActQuestnaireSubVO();
            BeanUtils.copyProperties(subDo, comActQuestnaireSubVO);
            listSubVo.add(comActQuestnaireSubVO);
            if(!subDo.getType().equals(ComActQuestnaireSubDO.type.describe)){
                ComActQuestnaireSubVO comActQuestnaireSubVO = new ComActQuestnaireSubVO();
                BeanUtils.copyProperties(subDo, comActQuestnaireSubVO);
                listSubVo.add(comActQuestnaireSubVO);
            }
        });
        questnaireAnswersDTO.setSubs(listSubVo);
        /**
         * 查询用户回答
         */
        List<ComActQuestnaireAnswerContentDO> questnaireAnswerContentDOList =
        List<ComActQuestnaireAnswerContentVO> questnaireAnswerContentDOList =
            questnaireAnswerContentDAO.selectListByQuestnaire(questId);
        List<ComActQuestnaireAnswerContentVO> vos = new ArrayList<>();
        questnaireAnswerContentDOList.forEach(dos -> {
            ComActQuestnaireAnswerContentVO vo = new ComActQuestnaireAnswerContentVO();
            BeanUtils.copyProperties(dos, vo);
            vos.add(vo);
        });
        questnaireAnswersDTO.setAnswers(vos);
        questnaireAnswersDTO.setAnswers(questnaireAnswerContentDOList);
        return R.ok(questnaireAnswersDTO);
    }
@@ -509,10 +509,10 @@
    @Override
    public R pageQuestnaireAnswer(PageQuestnaireAnswerDTO pageQuestnaireAnswerDTO) {
        if (pageQuestnaireAnswerDTO.getPageNum() == null || pageQuestnaireAnswerDTO.getPageNum().longValue() == 0) {
            pageQuestnaireAnswerDTO.setPageNum(1l);
            pageQuestnaireAnswerDTO.setPageNum(1L);
        }
        if (pageQuestnaireAnswerDTO.getPageSize() == null || pageQuestnaireAnswerDTO.getPageSize().longValue() == 0) {
            pageQuestnaireAnswerDTO.setPageSize(10l);
            pageQuestnaireAnswerDTO.setPageSize(10L);
        }
        Page userPage = new Page(pageQuestnaireAnswerDTO.getPageNum(), pageQuestnaireAnswerDTO.getPageSize());
        IPage<ComActQuestnaireAnswerContentVO> doPager =
@@ -583,8 +583,7 @@
                Long queSubId = questnaireSubDO.getId();
                // 根据上传的类型查询不同的题目选项
                if (questnaiteSub.getType().equals(QuestnaiteSubVO.type.danxuan)) {
                if (questnaiteSub.getType().equals(QuestnaiteSubVO.type.danxuan) || questnaiteSub.getType().equals(QuestnaiteSubVO.type.imgselect)) {
                    // 单选题处理
                    ComActQuestnaireSubSelectionDO subSelectionDO =
                        questnaireSubSelectionDAO.selectOne(new QueryWrapper<ComActQuestnaireSubSelectionDO>().lambda()
@@ -632,7 +631,7 @@
                        answerContentDO.setAnswerContent(subSelectionDO.getContent());
                        answerContentList.add(answerContentDO);
                    }
                } else if (questnaiteSub.getType().equals(QuestnaiteSubVO.type.wenda)) {
                } else {
                    // 问答题处理
                    String values = questnaiteSub.getValues();
                    ComActQuestnaireAnswerContentDO answerContentDO = new ComActQuestnaireAnswerContentDO();
@@ -648,8 +647,6 @@
        }
        // 新增用户填写的答卷
        if (!answerContentList.isEmpty()) {
            answerContentService.saveBatch(answerContentList);
            // 更新回答用户数量
            Integer joinCount = questnaireDO.getJoinCount();
            questnaireDO.setJoinCount(joinCount != null ? joinCount + 1 : 1);
@@ -663,6 +660,11 @@
            userAnswerDO.setJsonObject(answerQuestnaireVO.getJsonObject());
            comActQuestnaireUserAnswerMapper.insert(userAnswerDO);
            answerContentList.forEach(answerContent -> {
                answerContent.setAnswerId(userAnswerDO.getId());
            });
            answerContentService.saveBatch(answerContentList);
        }
        return R.ok();
    }