DESKTOP-71BH0QO\L、ming
2021-04-09 4b50d6c2bb02d6a15343c759c2b719adef63a45c
Add:增加问卷编辑
1 文件已重命名
8个文件已修改
101 ■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/PageQuestnaireDTO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/QuestnaireVO.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/QuestnaiteSubSelectionVO.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/QuestnaiteSubVO.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/BaseDO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActQuestnaireDO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActQuestnaireSubSelectionDO.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActQuestnaireService.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java 56 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/PageQuestnaireDTO.java
@@ -19,9 +19,9 @@
    private Integer state;
    @ApiModelProperty(value = "问卷参与者类型 0 全部 1 志愿者 2 党员")
    private Integer parterType;
    @ApiModelProperty(value = "发布开始时间", example = "1")
    @ApiModelProperty(value = "发布开始时间")
    private Date startTime;
    @ApiModelProperty(value = "发布结束时间", example = "1")
    @ApiModelProperty(value = "发布结束时间")
    private Date endTime;
    @ApiModelProperty(value = "分页-当前页数", example = "1")
    private Long pageNum;
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/QuestnaireVO.java
File was renamed from springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/AddQuestnaireVO.java
@@ -10,13 +10,17 @@
 * @Description:
 */
@Data
public class AddQuestnaireVO {
public class QuestnaireVO {
    @ApiModelProperty(value = "问卷调查Id")
    private Long queId;
    @ApiModelProperty(value = "类型 0单选1多选2问答题", example = "0")
    private int type;
    private Integer type;
    @ApiModelProperty(value = "问卷标题")
    private String queTitle;
    @ApiModelProperty(value = "问卷描述")
    private String queDescribe;
    @ApiModelProperty(value = "问卷参与者类型 0 全部 1 志愿者 2 党员", example = "0")
    private Integer parterType;
    @ApiModelProperty(value = "题目", example = "0")
    private List<QuestnaiteSubVO> questnaiteSubVOS;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/QuestnaiteSubSelectionVO.java
@@ -9,8 +9,14 @@
 */
@Data
public class QuestnaiteSubSelectionVO {
    @ApiModelProperty(value = "问卷题目选项Id")
    private Long queSubSelectionId;
    @ApiModelProperty(value = "选项排序")
    private int sort;
    private Integer sort;
    @ApiModelProperty(value = "选项名")
    private String option;
    @ApiModelProperty(value = "选项内容")
    private String content;
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/QuestnaiteSubVO.java
@@ -11,6 +11,8 @@
 */
@Data
public class QuestnaiteSubVO {
    @ApiModelProperty(value = "问卷题目Id")
    private Long queSubId;
    @ApiModelProperty(value = "序号")
    private int sort;
    @ApiModelProperty(value = "题目内容")
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/BaseDO.java
@@ -13,7 +13,7 @@
 */
@Data
public class BaseDO {
    private Long creatBy;
    private Long createBy;
    @TableField(fill = FieldFill.INSERT)
    private Date createAt;
    private Long updateBy;
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActQuestnaireDO.java
@@ -38,6 +38,6 @@
    /**
     * 问卷参与者类型 0 全部 1 志愿者 2 党员
     */
    private Long parterType;
    private Integer parterType;
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActQuestnaireSubSelectionDO.java
@@ -21,7 +21,11 @@
    /**
     * 选项排序
     */
    private int sort;
    private Integer sort;
    /**
     * 选项
     */
    private String option;
    /**
     * 选项内容
     */
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActQuestnaireService.java
@@ -2,7 +2,7 @@
import com.panzhihua.common.model.dtos.community.PageQuestnaireDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.questnaire.AddQuestnaireVO;
import com.panzhihua.common.model.vos.community.questnaire.QuestnaireVO;
/**
 * @Author: llming
@@ -11,17 +11,21 @@
public interface ComActQuestnaireService {
    /**
     * 新增社区问卷
     *
     * @return
     */
    R AddQuestnaire(AddQuestnaireVO addQuestnaireVO, Long communityId, Long userId);
    R AddQuestnaire(QuestnaireVO questnaireVO, Long communityId, Long userId);
    /**
     * 社区问卷列表
     */
    R PageQuestnaire(PageQuestnaireDTO pageQuestnaireDTO);
    /**
     * 修改问卷状态
     */
    R editQuestnaire();
    R editQuestnaire(QuestnaireVO questnaireVO, Long communityId, Long userId);
    /**
     * 删除问卷
     */
@@ -34,7 +38,8 @@
    /**
     * 问卷答题详情
     * @param userId 用户ID
     *
     * @param userId  用户ID
     * @param questId 问卷ID
     */
    R answerInfoQuestnaire(Long userId, Long questId);
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java
@@ -1,7 +1,5 @@
package com.panzhihua.service_community.service.impl;
import java.util.Date;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -9,9 +7,10 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Lists;
import com.panzhihua.common.enums.QuestnaireState;
import com.panzhihua.common.exceptions.ServiceException;
import com.panzhihua.common.model.dtos.community.PageQuestnaireDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.questnaire.AddQuestnaireVO;
import com.panzhihua.common.model.vos.community.questnaire.QuestnaireVO;
import com.panzhihua.service_community.dao.ComActQuestnaireAnswerContentDAO;
import com.panzhihua.service_community.dao.ComActQuestnaireDAO;
import com.panzhihua.service_community.dao.ComActQuestnaireSubDAO;
@@ -47,30 +46,32 @@
    ComActQuestnaireSubSelectionServiceImpl subSelectionService;
    @Override
    public R AddQuestnaire(AddQuestnaireVO addQuestnaireVO, Long communityId, Long userId) {
    public R AddQuestnaire(QuestnaireVO questnaireVO, Long communityId, Long userId) {
        ComActQuestnaireDO comActQuestnaireDO = new ComActQuestnaireDO();
        comActQuestnaireDO.setTitle(addQuestnaireVO.getQueTitle());
        comActQuestnaireDO.setQueDescribe(addQuestnaireVO.getQueDescribe());
        comActQuestnaireDO.setTitle(questnaireVO.getQueTitle());
        comActQuestnaireDO.setQueDescribe(questnaireVO.getQueDescribe());
        comActQuestnaireDO.setState(QuestnaireState.CONTINUED.getCode());
        comActQuestnaireDO.setJoinCount(0);
        comActQuestnaireDO.setCommunityId(communityId);
        comActQuestnaireDO.setCreatBy(userId);
        comActQuestnaireDO.setCreateBy(userId);
        comActQuestnaireDO.setParterType(questnaireVO.getParterType());
        int questnaireId = questnaireDAO.insert(comActQuestnaireDO);
        addQuestnaireVO.getQuestnaiteSubVOS().forEach(sub -> {
        questnaireVO.getQuestnaiteSubVOS().forEach(sub -> {
            ComActQuestnaireSubDO comActQuestnaireSubDO = new ComActQuestnaireSubDO();
            comActQuestnaireSubDO.setType(sub.getType());
            comActQuestnaireSubDO.setContent(sub.getContent());
            comActQuestnaireSubDO.setSort(sub.getSort());
            comActQuestnaireSubDO.setQueId((long) questnaireId);
            comActQuestnaireSubDO.setCreatBy(userId);
            comActQuestnaireSubDO.setCreateBy(userId);
            int subId = questnaireSubDAO.insert(comActQuestnaireSubDO);
            ArrayList<ComActQuestnaireSubSelectionDO> subSelectionList = Lists.newArrayList();
            sub.getQuestnaiteSubSelectionVOS().forEach(subSelect -> {
                ComActQuestnaireSubSelectionDO subSelectionDO = new ComActQuestnaireSubSelectionDO();
                subSelectionDO.setQueSubId((long) subId);
                subSelectionDO.setOption(subSelect.getOption());
                subSelectionDO.setSort(subSelect.getSort());
                subSelectionDO.setContent(subSelect.getContent());
                subSelectionDO.setCreatBy(userId);
                subSelectionDO.setCreateBy(userId);
                subSelectionList.add(subSelectionDO);
            });
            subSelectionService.saveBatch(subSelectionList);
@@ -100,8 +101,39 @@
    }
    @Override
    public R editQuestnaire() {
        return null;
    public R editQuestnaire(QuestnaireVO questnaireVO, Long communityId, Long userId) {
        ComActQuestnaireDO questnaireDO = null;
        if (questnaireVO.getQueId() != null && questnaireVO.getQueId() != 0L) {
            questnaireDO = questnaireDAO.selectById(questnaireVO.getQueId());
            if (questnaireDO == null) {
                return R.fail(500, "id有误!");
            }
            questnaireDO.setTitle(questnaireDO.getTitle());
            questnaireDO.setQueDescribe(questnaireDO.getQueDescribe());
            //保存问卷调查
            questnaireDAO.updateById(questnaireDO);
            questnaireVO.getQuestnaiteSubVOS().forEach(sub -> {
                if (sub.getQueSubId() == null) {
                    throw new ServiceException("500", "问卷题目Id为空!");
                }
                ComActQuestnaireSubDO subDO = questnaireSubDAO.selectById(sub.getQueSubId());
                if (subDO == null || sub.getContent() == null) {
                    throw new ServiceException("500", "修改问卷题目数据有误!");
                }
                subDO.setContent(sub.getContent());
                questnaireSubDAO.updateById(subDO);
                sub.getQuestnaiteSubSelectionVOS().forEach(subSelection -> {
                    if (subSelection.getQueSubSelectionId() == null || subSelection.getContent() == null) {
                        throw new ServiceException("500", "问卷题目选项数据有误!");
                    }
                    ComActQuestnaireSubSelectionDO subSelectionDO = questnaireSubSelectionDAO.selectById(subSelection.getQueSubSelectionId());
                    subSelectionDO.setContent(subSelection.getContent());
                    questnaireSubSelectionDAO.updateById(subSelectionDO);
                });
            });
        }
        return R.ok();
    }
    @Override