huanghongfa
2021-04-15 791769e1a6c6a2f4cb4d10d910c7c647a1494c0e
Merge remote-tracking branch 'origin/master'
10个文件已修改
106 ■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityQuestnaireApi.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActQuestnaireAnswerContentVO.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/UserAnswerContentVO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityQuestnaireApi.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActQuestnaireAnswerContentDAO.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActQuestnaireDAO.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActQuestnaireAnswerContentDO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngVillageServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityQuestnaireApi.java
@@ -39,8 +39,10 @@
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        Integer isPartymember = loginUserInfo.getIsPartymember();
        Integer isVolunteer = loginUserInfo.getIsVolunteer();
        pageQuestnaireDTO.setForParty(1 == isPartymember);
        pageQuestnaireDTO.setForVolunteer(1 == isVolunteer);
        pageQuestnaireDTO.setForParty(1 == isPartymember.intValue());
        pageQuestnaireDTO.setForVolunteer(1 == isVolunteer.intValue());
        pageQuestnaireDTO.setUserId(loginUserInfo.getUserId());
        pageQuestnaireDTO.setState(0);
        return communityService.pageQuestnaire(pageQuestnaireDTO, loginUserInfo.getCommunityId());
    }
@@ -80,7 +82,7 @@
    }
    @ApiOperation(value = "在线统计详细", response = ComActQuestnaireAnswerContentVO.class)
    @GetMapping("/stat/details")
    @PostMapping("/stat/details")
    public R statDetails(@RequestBody PageQuestnaireSubDetailsDTO pageQuestnaireSubDetailsDTO) {
        //问卷调查
        return communityService.qaQeustAnswerDetails(pageQuestnaireSubDetailsDTO);
@@ -107,9 +109,10 @@
    }
    @ApiOperation(value = "继续调研/停止调研")
    @GetMapping("/toggle")
    @PostMapping("/toggle")
    public R toggle(@RequestBody EditComActQuestnaireVo editComActQuestnaireVo) {
        return communityService.editQuestnaireDO(editComActQuestnaireVo);
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        return communityService.editQuestnaireDO(editComActQuestnaireVo, loginUserInfo.getUserId());
    }
    @ApiOperation(value = "删除问卷")
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActQuestnaireAnswerContentVO.java
@@ -1,5 +1,6 @@
package com.panzhihua.common.model.vos.community;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -20,7 +21,10 @@
    @ApiModelProperty("用户姓名")
    private String userName;
    @ApiModelProperty("创建时间")
    private String createAt;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createAt;
    @ApiModelProperty("选项类型 0 固定选项 1 自定义选项")
    private Integer type;
    @ApiModelProperty("题目选项ID")
    private Long selectionId;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/UserAnswerContentVO.java
@@ -23,4 +23,7 @@
    @ApiModelProperty(value = "选项类型 0 固定选项 1 自定义选项", example = "0")
    private Integer type;
    @ApiModelProperty(value = "题目选项ID", example = "0")
    private Long selectionId;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
@@ -1683,7 +1683,7 @@
     * @return
     */
    @PostMapping("/questnaire/editquestnairedo")
    R editQuestnaireDO(@RequestBody EditComActQuestnaireVo editComActQuestnaireVo);
    R editQuestnaireDO(@RequestBody EditComActQuestnaireVo editComActQuestnaireVo, @RequestParam("userId") Long userId);
    /**
     * 删除问卷  ——隐藏
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityQuestnaireApi.java
@@ -70,9 +70,10 @@
    }
    @ApiOperation(value = "继续调研/停止调研")
    @GetMapping("/toggle")
    @PostMapping("/toggle")
    public R toggle(@RequestBody EditComActQuestnaireVo editComActQuestnaireVo) {
        return communityService.editQuestnaireDO(editComActQuestnaireVo);
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        return communityService.editQuestnaireDO(editComActQuestnaireVo, loginUserInfo.getUserId());
    }
    @ApiOperation(value = "删除问卷")
@@ -96,14 +97,14 @@
    }
    @ApiOperation(value = "查看详细-调查结果-查看详细信息", response = ComActQuestnaireAnswerContentVO.class)
    @GetMapping("/stat/details")
    @PostMapping("/stat/details")
    public R statDetails(@RequestBody PageQuestnaireSubDetailsDTO pageQuestnaireSubDetailsDTO) {
        //问卷调查
        return communityService.qaQeustAnswerDetails(pageQuestnaireSubDetailsDTO);
    }
    @ApiOperation(value = "答卷情况-分页", response = ComActQuestnaireAnswerContentVO.class)
    @GetMapping("/answer/page")
    @PostMapping("/answer/page")
    public R pageAnswer(@RequestBody PageQuestnaireAnswerDTO pageQuestnaireAnswerDTO) {
        //问卷调查回答 用户分页数据
        return communityService.pageQuestnaireAnswer(pageQuestnaireAnswerDTO);
@@ -115,6 +116,13 @@
        return communityService.answerInfoQuestnaire(userId, questId);
    }
    @ApiOperation(value = "编辑问卷")
    @PostMapping("/edit")
    public R editQuestnaire(@RequestBody QuestnaireVO questnaireVO) {
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        return communityService.editQuestnaire(questnaireVO);
    }
    @ApiOperation(value = "导出数据", response = ComCvtBusinessVO.class)
    @GetMapping("/export")
    public R export(@RequestParam("questId") Long questId) {
@@ -124,7 +132,8 @@
        //Long communityId = loginUserInfo.getCommunityId();
        //生成动态模板excel通过ftp工具上传到主节点,然后返回模板下载地址
        String ftpUrl = "/mnt/data/web/excel/";
        String name = "问卷调查答题情况.xlsx";
        String fileNameBottom = new SimpleDateFormat("yyyyMMddhhmmss").format(new Date());
        String name = "问卷调查答题情况-" + fileNameBottom + ".xlsx";
        try {
            SFTPUtil sftp = new SFTPUtil(sftpConfig.getUserName(), sftpConfig.getPassword(), sftpConfig.getHost(), sftpConfig.getPort());
            sftp.login();
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActQuestnaireAnswerContentDAO.java
@@ -29,7 +29,7 @@
            " CONCAT(ROUND( COUNT(ac.user_id) /(SELECT COUNT(*) FROM com_act_questnaire_answer_content WHERE sub_id = qs.id) *100), '%')  AS proportion\n" +
            "FROM com_act_questnaire qn LEFT JOIN com_act_questnaire_sub qs ON qn.id = qs.que_Id\n" +
            " LEFT JOIN com_act_questnaire_answer_content ac ON qs.id = ac.sub_id\n" +
            "WHERE qn.id=#{questId} AND ac.type IS NOT NULL  \n" +
            "WHERE qn.id=#{questId}  \n" +
            "GROUP BY qs.id, ac.choice\n" +
            "ORDER BY qs.id"+
            "</script>")
@@ -41,8 +41,8 @@
     */
    @Select("<script> " +
            "SELECT ac.* \n" +
            "FROM com_act_questnaire qn LEFT JOIN com_act_questnaire_sub qs ON qn.id = qs.que_Id\n" +
            " LEFT JOIN com_act_questnaire_answer_content ac ON qs.id = ac.sub_id\n" +
            "FROM com_act_questnaire_answer_content ac left JOIN com_act_questnaire_sub qs  ON ac.sub_id = qs.id \n" +
            " LEFT JOIN   com_act_questnaire qn ON qs.que_Id = qn.id \n" +
            "WHERE qn.id=#{questId}\n" +
            "ORDER BY ac.user_id, qs.id "+
            "</script>")
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActQuestnaireDAO.java
@@ -6,7 +6,6 @@
import com.panzhihua.common.model.dtos.community.PageQuestnaireDTO;
import com.panzhihua.common.model.vos.community.questnaire.QuestnaireListVo;
import com.panzhihua.service_community.model.dos.ComActQuestnaireDO;
import com.panzhihua.service_community.model.dos.ComActQuestnaireSubSelectionDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@@ -22,7 +21,7 @@
            "FROM \n" +
            " com_act_questnaire aq \n" +
            " LEFT JOIN sys_user u on aq.create_by = u.user_id \n" +
            " where is_hide=0 " +
            " where aq.is_hide=0 " +
            "<if test='communityId != null and communityId!=0 '>\n" +
            " and aq.community_id = #{communityId}\n" +
            " </if> " +
@@ -32,9 +31,12 @@
            "<if test='pageQuestnaireDTO.forMasses != null '>\n" +
            " and aq.for_masses = #{pageQuestnaireDTO.forMasses} \n" +
            " </if> \n" +
            "<if test='pageQuestnaireDTO.title != null '>\n" +
            " and aq.title like concat('%', #{pageQuestnaireDTO.title},'%') \n" +
            " </if> \n" +
            "<if test='pageQuestnaireDTO.forParty==true and pageQuestnaireDTO.forVolunteer==true '>\n" +   //既是党员又是志愿者
            " and ( aq.for_party = 1 OR aq.for_party=1 OR (aq.for_party!=1 AND aq.for_volunteer!=1) )  \n" +
            " and ( aq.for_party = 1 OR aq.for_volunteer=1 OR (aq.for_party!=1 AND aq.for_volunteer!=1) )  \n" +
            " </if> \n" +
            "<if test='pageQuestnaireDTO.forParty==true and pageQuestnaireDTO.forVolunteer==false '>\n" +     //党员 不是志愿者
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActQuestnaireAnswerContentDO.java
@@ -38,4 +38,8 @@
     * 选项类型 0 固定选项 1 自定义选项
     */
    private Integer type;
    /**
     *
     */
    private Long selectionId;
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java
@@ -83,16 +83,23 @@
                ArrayList<ComActQuestnaireSubSelectionDO> subSelectionList = Lists.newArrayList();
                if(sub.getQuestnaiteSubSelectionVOS()!=null) {
                    sub.getQuestnaiteSubSelectionVOS().forEach(subSelect -> {
                    List<QuestnaiteSubSelectionVO> l = sub.getQuestnaiteSubSelectionVOS();
                    for(int i=0; i<l.size(); i++){
                        QuestnaiteSubSelectionVO subSelect = l.get(i);
                        ComActQuestnaireSubSelectionDO subSelectionDO = new ComActQuestnaireSubSelectionDO();
                        subSelectionDO.setQueSubId(comActQuestnaireSubDO.getId());
                        subSelectionDO.setOptionName(subSelect.getOptionName());
                        if(subSelect.getType()==1){
                            //添加选项名称
                            subSelectionDO.setOptionName(subSelect.getOptionName());
                        }else {
                            subSelectionDO.setOptionName(String.valueOf(Character.toChars('A' + i)));
                        }
                        subSelectionDO.setSort(subSelect.getSort());
                        subSelectionDO.setContent(subSelect.getContent());
                        subSelectionDO.setCreateBy(userId);
                        subSelectionDO.setType(subSelect.getType());
                        subSelectionList.add(subSelectionDO);
                    });
                    }
                }
                subSelectionService.saveBatch(subSelectionList);
            });
@@ -133,8 +140,8 @@
            if (questnaireDO == null) {
                return R.fail(500, "id有误!");
            }
            questnaireDO.setTitle(questnaireDO.getTitle());
            questnaireDO.setQueDescribe(questnaireDO.getQueDescribe());
            questnaireDO.setTitle(questnaireVO.getQueTitle());
            questnaireDO.setQueDescribe(questnaireVO.getQueDescribe());
            //保存问卷调查
            questnaireDAO.updateById(questnaireDO);
            questnaireVO.getQuestnaiteSubVOS().forEach(sub -> {
@@ -159,6 +166,8 @@
                });
            });
        }else{
            return R.fail("参数有误");
        }
        return R.ok();
    }
@@ -193,6 +202,10 @@
    public R statQuestnaire(Long questId) {
        ComActQuestnaireDO comActQuestnaireDO = questnaireDAO.selectOne(new QueryWrapper<ComActQuestnaireDO>().lambda().eq(ComActQuestnaireDO::getId, questId).eq(ComActQuestnaireDO::getIsHide, 0));
        if(comActQuestnaireDO==null){
            return R.fail("问卷已删除!");
        }
        QuestnaireAnswerStatVO usersAnswerStatVO = new QuestnaireAnswerStatVO();
        //问卷信息
        ComActQuestnaireVO comActQuestnaireVO = new ComActQuestnaireVO();
@@ -218,7 +231,8 @@
            usersSubAnswerStatVO.setTotal(0);
            usearSubAnswerSelectionStatVOList.forEach(stat -> {
                if (stat.getSubId() == comActQuestnaireSubDO.getId()) {
                if (stat.getSubId().equals(comActQuestnaireSubDO.getId())
                        && stat.getTotal()>0) {
                    userSubAnswerSelectionStatVOList.add(stat);
                }
            });
@@ -336,6 +350,12 @@
    @Override
    public R pageQuestnaireAnswer(PageQuestnaireAnswerDTO pageQuestnaireAnswerDTO) {
        if(pageQuestnaireAnswerDTO.getPageNum()==null||pageQuestnaireAnswerDTO.getPageNum().longValue()==0){
            pageQuestnaireAnswerDTO.setPageNum(1l);
        }
        if(pageQuestnaireAnswerDTO.getPageSize()==null||pageQuestnaireAnswerDTO.getPageSize().longValue()==0){
            pageQuestnaireAnswerDTO.setPageSize(10l);
        }
        Page userPage = new Page(pageQuestnaireAnswerDTO.getPageNum(), pageQuestnaireAnswerDTO.getPageSize());
        IPage<ComActQuestnaireAnswerContentVO> doPager = questnaireAnswerContentDAO.selectAnswersByPage(userPage, pageQuestnaireAnswerDTO);
        return R.ok(doPager);
@@ -366,7 +386,15 @@
            answerContentDO.setUserId(userId);
            answerContentDOList.add(answerContentDO);
        }
        answerContentService.saveBatch(answerContentDOList);
        boolean batchAddSuccess = answerContentService.saveBatch(answerContentDOList);
        if(batchAddSuccess) {
            /**
             * 更新回答用户数量
             */
            Integer joinCount = questnaireDO.getJoinCount();
            questnaireDO.setJoinCount(joinCount != null ? joinCount + 1 : 1);
            questnaireDAO.updateById(questnaireDO);
        }
        return R.ok();
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngVillageServiceImpl.java
@@ -56,6 +56,9 @@
        }
        BeanUtils.copyProperties(comMngVillageVO, comMngVillageDO);
        ComActDO comActDO = comActDAO.selectById(comMngVillageDO.getCommunityId());
        if(comActDO==null){
            return R.fail("社区没有绑定街道,请绑定后操作!");
        }
        comMngVillageDO.setStreetId(comActDO.getStreetId());
        int insert = comActVillageDAO.insert(comMngVillageDO);
        if (insert > 0) {