DESKTOP-71BH0QO\L、ming
2021-04-13 b0b52a52a98617fc467c4c846df0750a088647b7
Add:问卷调查分页查询添加参数
3个文件已修改
1个文件已添加
110 ■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/PageQuestnaireDTO.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/QuestnaireListVo.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActQuestnaireDAO.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/PageQuestnaireDTO.java
@@ -15,6 +15,8 @@
public class PageQuestnaireDTO {
    @ApiModelProperty(value = "标题")
    private String title;
    @ApiModelProperty(value = "用户Id")
    private Long userId;
    @ApiModelProperty(value = "状态 0 调研中 1已停止")
    private Integer state;
    @ApiModelProperty(value = "发布开始时间")
@@ -25,4 +27,10 @@
    private Long pageNum;
    @ApiModelProperty(value = "分页-每页记录数", example = "10")
    private Long pageSize;
    @ApiModelProperty("提供居民")
    private Boolean forMasses;
    @ApiModelProperty("提供党员")
    private Boolean forParty;
    @ApiModelProperty("提供志愿者")
    private Boolean forVolunteer;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/questnaire/QuestnaireListVo.java
New file
@@ -0,0 +1,29 @@
package com.panzhihua.common.model.vos.community.questnaire;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class QuestnaireListVo {
    @ApiModelProperty("标题")
    private String title;
    @ApiModelProperty("状态 0 调研中 1已停止")
    private Integer state;
    @ApiModelProperty("参与人数")
    private Integer joinCount;
    @ApiModelProperty("发布人")
    private String createBy;
    @ApiModelProperty("发布时间")
    private Data createAt;
    @ApiModelProperty("是否填写")
    private Boolean answer;
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActQuestnaireDAO.java
@@ -1,9 +1,15 @@
package com.panzhihua.service_community.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
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;
/**
 * @Author: llming
@@ -11,4 +17,33 @@
 */
@Mapper
public interface ComActQuestnaireDAO extends BaseMapper<ComActQuestnaireDO> {
    @Select("<script> " +
            "SELECT \n" +
            "aq.*,aqac.user_id \n" +
            "FROM \n" +
            "com_act_questnaire aq join com_act_questnaire_sub aqs on aq.id=aqs.que_Id \n" +
            "join com_act_questnaire_answer_content aqac on aqs.id=aqac.sub_id \n" +
            " where 1=1" +
            "<if test='pageQuestnaireDTO.state != null '>" +
            "and aq.state = #{pageQuestnaireDTO.state} \n" +
            " </if> " +
            "<if test='pageQuestnaireDTO.forMasses != null '>" +
            "and aq.for_masses = #{pageQuestnaireDTO.forMasses} \n" +
            " </if> " +
            "<if test='pageQuestnaireDTO.forParty != null '>" +
            "and aq.for_party = #{pageQuestnaireDTO.forParty} \n" +
            " </if> " +
            "<if test='pageQuestnaireDTO.forVolunteer != null '>" +
            "and aq.for_volunteer = #{pageQuestnaireDTO.forVolunteer} \n" +
            " </if> " +
            "<if test='pageQuestnaireDTO.startTime != null '>" +
            "AND aq.create_at BETWEEN " +
            "#{pageComActDTO.startTime} \n" +
            "AND #{pageQuestnaireDTO.endTime}" +
            " </if> " +
            "ORDER BY \n" +
            "aq.create_at DESC" +
            "</script>")
    IPage<QuestnaireListVo> selectPageList(Page page, @Param("pageQuestnaireDTO") PageQuestnaireDTO pageQuestnaireDTO, @Param("communityId") Long communityId);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActQuestnaireServiceImpl.java
@@ -17,14 +17,8 @@
import com.panzhihua.common.model.dtos.community.QuestnaireAnswersDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.questnaire.*;
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.ComActQuestnaireAnswerContentDO;
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.dao.*;
import com.panzhihua.service_community.model.dos.*;
import com.panzhihua.service_community.service.ComActQuestnaireService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
@@ -46,6 +40,8 @@
    ComActQuestnaireDAO questnaireDAO;
    @Resource
    ComActQuestnaireSubDAO questnaireSubDAO;
    @Resource
    ComActDynUserDAO userDAO;
    @Resource
    ComActQuestnaireSubSelectionDAO questnaireSubSelectionDAO;
    @Resource
@@ -102,23 +98,19 @@
    @Override
    public R pageQuestnaire(PageQuestnaireDTO pageQuestnaireDTO, Long communityId) {
        Page userPage = new Page(pageQuestnaireDTO.getPageNum(), pageQuestnaireDTO.getPageSize());
        LambdaQueryWrapper<ComActQuestnaireDO> lambdaQueryWrapper = Wrappers.lambdaQuery();
        lambdaQueryWrapper.eq(ComActQuestnaireDO::getCommunityId, communityId);
        //过滤隐藏字段
        lambdaQueryWrapper.eq(ComActQuestnaireDO::getIsHide, 0);
        if (pageQuestnaireDTO.getTitle() != null) {
            lambdaQueryWrapper.like(ComActQuestnaireDO::getTitle, pageQuestnaireDTO.getTitle());
        Page page = new Page<>();
        Long pageNum = pageQuestnaireDTO.getPageNum();
        Long pageSize = pageQuestnaireDTO.getPageSize();
        if (null == pageNum || 0 == pageNum) {
            pageNum = 1l;
        }
        if (pageQuestnaireDTO.getTitle() != null) {
            lambdaQueryWrapper.eq(ComActQuestnaireDO::getState, pageQuestnaireDTO.getState());
        if (null == pageSize || 0 == pageSize) {
            pageSize = 10l;
        }
        if (pageQuestnaireDTO.getEndTime() != null && pageQuestnaireDTO.getStartTime() != null) {
            lambdaQueryWrapper.ge(ComActQuestnaireDO::getCreateAt, pageQuestnaireDTO.getStartTime());
            lambdaQueryWrapper.lt(ComActQuestnaireDO::getCreateAt, pageQuestnaireDTO.getEndTime());
        }
        IPage<ComActQuestnaireDO> doPager = questnaireDAO.selectPage(userPage, lambdaQueryWrapper.orderByDesc(ComActQuestnaireDO::getCreateAt));
        return R.ok(doPager);
        page.setSize(pageSize);
        page.setCurrent(pageNum);
        IPage<QuestnaireListVo> voPage = questnaireDAO.selectPageList(page,pageQuestnaireDTO,communityId);
        return R.ok(voPage);
    }
    @Override