CeDo
2021-04-09 763f3d8b1b23b309aa274fba4f62d1aaec33d87e
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActQuestnaireAnswerContentDAO.java
@@ -1,9 +1,14 @@
package com.panzhihua.service_community.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.panzhihua.common.model.vos.community.questnaire.UserSubAnswerSelectionStatVO;
import com.panzhihua.service_community.model.dos.ComActQuestnaireAnswerContentDO;
import com.panzhihua.service_community.model.dos.ComActQuestnaireDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
 * @Author: llming
@@ -11,4 +16,18 @@
 */
@Mapper
public interface ComActQuestnaireAnswerContentDAO extends BaseMapper<ComActQuestnaireAnswerContentDO> {
    /**
     * 查询问卷统计信息
     * @param questId 问卷ID
     */
    @Select("<script> " +
            "SELECT  qs.id AS sub_id, ac.choice as option_name, COUNT(ac.user_id) as total, ac.answer_content as answerContent, \n" +
            " 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}\n" +
            "GROUP BY qs.id, ac.choice\n" +
            "ORDER BY qs.id"+
            "</script>")
    List<UserSubAnswerSelectionStatVO> selectQuestnaireStat(@Param("questId")Long questId);
}