springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/enums/QuestnaireState.java
New file @@ -0,0 +1,20 @@ package com.panzhihua.common.enums; import lombok.Getter; /** * @Author: llming * @Description:问卷状态 */ @Getter public enum QuestnaireState { CONTINUED(0, "调研中"), STOP(1, "已停止"); private final int code; private final String info; QuestnaireState(int code, String info) { this.code = code; this.info = info; } } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/enums/QuestnaireSubType.java
New file @@ -0,0 +1,20 @@ package com.panzhihua.common.enums; import lombok.Getter; /** * @Author: llming * @Description: 问卷题目类型 */ @Getter public enum QuestnaireSubType { SINGLE(0, "单选"), MULTIPLE(1, "多选"), NARRATION(2, "问答题"); private final int code; private final String info; QuestnaireSubType(int code, String info) { this.code = code; this.info = info; } } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/PageQuestnaireDTO.java
New file @@ -0,0 +1,23 @@ package com.panzhihua.common.model.dtos.community; import com.panzhihua.common.model.vos.community.questnaire.QuestnaiteSubVO; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; /** * @Author: llming * @Description: */ @Data public class PageQuestnaireDTO { @ApiModelProperty(value = "类型 0单选1多选2问答题", example = "0") private int type; @ApiModelProperty(value = "问卷标题") private String queTitle; @ApiModelProperty(value = "问卷描述") private String queDescribe; @ApiModelProperty(value = "题目", example = "0") private List<QuestnaiteSubVO> questnaiteSubVOS; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/AddQuestnaireVO.java
New file @@ -0,0 +1,22 @@ package com.panzhihua.common.model.vos.community.questnaire; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; /** * @Author: llming * @Description: */ @Data public class AddQuestnaireVO { @ApiModelProperty(value = "类型 0单选1多选2问答题", example = "0") private int type; @ApiModelProperty(value = "问卷标题") private String queTitle; @ApiModelProperty(value = "问卷描述") private String queDescribe; @ApiModelProperty(value = "题目", example = "0") private List<QuestnaiteSubVO> questnaiteSubVOS; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/QuestnaiteSubSelectionVO.java
New file @@ -0,0 +1,17 @@ package com.panzhihua.common.model.vos.community.questnaire; import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** * @Author: llming * @Description: 问卷题目选项 */ @Data public class QuestnaiteSubSelectionVO { @ApiModelProperty(value = "选项排序") private int sort; @ApiModelProperty(value = "选项内容") private String content; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/QuestnaiteSubVO.java
New file @@ -0,0 +1,22 @@ package com.panzhihua.common.model.vos.community.questnaire; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; /** * @Author: llming * @Description: 问卷题目 */ @Data public class QuestnaiteSubVO { @ApiModelProperty(value = "序号") private int sort; @ApiModelProperty(value = "题目内容") private String content; @ApiModelProperty(value = "类型 0单选1多选2问答题", example = "0") private int type; @ApiModelProperty(value = "问卷题目选项") private List<QuestnaiteSubSelectionVO> questnaiteSubSelectionVOS; } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActQuestnaireDO.java
@@ -29,7 +29,7 @@ /** * 参与人数 */ private String joinCount; private Integer joinCount; /** * 社区ID */ springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActQuestnaireSubSelectionDO.java
@@ -19,10 +19,6 @@ */ private Long queSubId; /** * 选项类型 0单选1多选2问答题 */ private int type; /** * 选项排序 */ private int sort; springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActQuestnaireService.java
@@ -1,6 +1,7 @@ package com.panzhihua.service_community.service; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.questnaire.AddQuestnaireVO; /** * @Author: llming @@ -11,7 +12,7 @@ * 新增社区问卷 * @return */ R AddQuestnaire(); R AddQuestnaire(AddQuestnaireVO addQuestnaireVO, Long communityId, Long userId); /** * 社区问卷列表 */ springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java
@@ -1,8 +1,23 @@ package com.panzhihua.service_community.service.impl; import java.util.Date; import com.google.common.collect.Lists; import com.panzhihua.common.enums.QuestnaireState; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.questnaire.AddQuestnaireVO; import com.panzhihua.service_community.dao.ComActQuestnaireAnswerContentDAO; import com.panzhihua.service_community.dao.ComActQuestnaireDAO; import com.panzhihua.service_community.dao.ComActQuestnaireSubDAO; import com.panzhihua.service_community.dao.ComActQuestnaireSubSelectionDAO; import com.panzhihua.service_community.model.dos.ComActQuestnaireDO; import com.panzhihua.service_community.model.dos.ComActQuestnaireSubDO; import com.panzhihua.service_community.model.dos.ComActQuestnaireSubSelectionDO; import com.panzhihua.service_community.service.ComActQuestnaireService; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.ArrayList; /** * @Author: llming @@ -10,13 +25,54 @@ */ @Service public class ComActQuestnaireServiceImpl implements ComActQuestnaireService { @Resource ComActQuestnaireDAO questnaireDAO; @Resource ComActQuestnaireSubDAO questnaireSubDAO; @Resource ComActQuestnaireSubSelectionDAO questnaireSubSelectionDAO; @Resource ComActQuestnaireAnswerContentDAO questnaireAnswerContentDAO; @Resource ComActQuestnaireSubServiceImpl questnaireSubService; @Resource ComActQuestnaireSubSelectionServiceImpl subSelectionService; @Override public R AddQuestnaire() { return null; public R AddQuestnaire(AddQuestnaireVO addQuestnaireVO, Long communityId, Long userId) { ComActQuestnaireDO comActQuestnaireDO = new ComActQuestnaireDO(); comActQuestnaireDO.setTitle(addQuestnaireVO.getQueTitle()); comActQuestnaireDO.setQueDescribe(addQuestnaireVO.getQueDescribe()); comActQuestnaireDO.setState(QuestnaireState.CONTINUED.getCode()); comActQuestnaireDO.setJoinCount(0); comActQuestnaireDO.setCommunityId(communityId); comActQuestnaireDO.setCreatBy(userId); int questnaireId = questnaireDAO.insert(comActQuestnaireDO); addQuestnaireVO.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); int subId = questnaireSubDAO.insert(comActQuestnaireSubDO); ArrayList<ComActQuestnaireSubSelectionDO> subSelectionList = Lists.newArrayList(); sub.getQuestnaiteSubSelectionVOS().forEach(subSelect -> { ComActQuestnaireSubSelectionDO subSelectionDO = new ComActQuestnaireSubSelectionDO(); subSelectionDO.setQueSubId((long) subId); subSelectionDO.setSort(subSelect.getSort()); subSelectionDO.setContent(subSelect.getContent()); subSelectionDO.setCreatBy(userId); subSelectionList.add(subSelectionDO); }); subSelectionService.saveBatch(subSelectionList); }); return R.ok(); } @Override public R ListQuestnaire() { //questnaireDAO. return null; } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireSubSelectionServiceImpl.java
New file @@ -0,0 +1,18 @@ package com.panzhihua.service_community.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.panzhihua.service_community.dao.ComActQuestnaireSubDAO; import com.panzhihua.service_community.dao.ComActQuestnaireSubSelectionDAO; import com.panzhihua.service_community.model.dos.ComActQuestnaireSubDO; import com.panzhihua.service_community.model.dos.ComActQuestnaireSubSelectionDO; import org.springframework.stereotype.Service; /** * @Author: llming * @Description: 问卷题目 */ @Service public class ComActQuestnaireSubSelectionServiceImpl extends ServiceImpl<ComActQuestnaireSubSelectionDAO, ComActQuestnaireSubSelectionDO> { } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireSubServiceImpl.java
New file @@ -0,0 +1,16 @@ package com.panzhihua.service_community.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.panzhihua.service_community.dao.ComActQuestnaireSubDAO; import com.panzhihua.service_community.model.dos.ComActQuestnaireSubDO; import org.springframework.stereotype.Service; /** * @Author: llming * @Description: 问卷题目 */ @Service public class ComActQuestnaireSubServiceImpl extends ServiceImpl<ComActQuestnaireSubDAO, ComActQuestnaireSubDO> { }